org.universAAL.lddi.knx.utils
Class KnxTelegram

Package class diagram package KnxTelegram
java.lang.Object
  extended by org.universAAL.lddi.knx.utils.KnxTelegram

public class KnxTelegram
extends Object

Structure of a KNX telegram. Minimum 9 bytes. 0 1 2 3 4 5 6 7 8 9 - N-1 Controlbyte IP-Fill-Byte Sourceaddress Destaddress DRL TPCI/APCI APCI/Data Data

Author:
Thomas Fuxreiter (foex@gmx.at)

Constructor Summary
KnxTelegram()
          Constructor Create an empty object and set fields separately.
KnxTelegram(byte[] knxMessage)
          Constructor
 
Method Summary
 void createDefaultControlByte()
          Create a default control byte 1 0 1 1 1 1 0 0 (default priority and no repeat bit)
 byte[] getByteArray()
           
 byte[] getDataByte()
           
 int getDataLength()
           
 byte[] getDestByte()
           
 byte getDrlByte()
           
 KnxPacketPriority getPriority()
           
 byte[] getSourceByte()
           
 void setDataBytes(byte[] data)
          first byte of data byte array is apci/data byte.
 void setDataLength(int length)
          Set the data length in the DRL byte (bits 0-3)
 void setDestByte(byte[] destByte)
           
 void setKnxCommandType(KnxCommand valueWrite)
          Set KNX command type.
 void setPriority(KnxPacketPriority prio)
          Set KNX priority.
 void setRepeatBit()
          Set Repeat Bit in KNX telegram (5. bit in control byte)
 void setSourceByte(byte[] sourceByte)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

KnxTelegram

public KnxTelegram(byte[] knxMessage)
Constructor

Parameters:
knxMessage -

KnxTelegram

public KnxTelegram()
Constructor Create an empty object and set fields separately.

Method Detail

toString

public String toString()
Overrides:
toString in class Object
Returns:
knx telegram in readable format.

createDefaultControlByte

public void createDefaultControlByte()
Create a default control byte 1 0 1 1 1 1 0 0 (default priority and no repeat bit)


setRepeatBit

public void setRepeatBit()
Set Repeat Bit in KNX telegram (5. bit in control byte)


setPriority

public void setPriority(KnxPacketPriority prio)
Set KNX priority.


setDataLength

public void setDataLength(int length)
Set the data length in the DRL byte (bits 0-3)


setDataBytes

public void setDataBytes(byte[] data)
first byte of data byte array is apci/data byte. last 5 bits of the apci/data byte are reserved for data! other data bytes go to extraDataByte[]


getDataByte

public byte[] getDataByte()
Returns:
apci/data byte and extra data bytes

setKnxCommandType

public void setKnxCommandType(KnxCommand valueWrite)
Set KNX command type.


getByteArray

public byte[] getByteArray()
Returns:
byte array of this telegram.

getSourceByte

public byte[] getSourceByte()
Returns:
the sourceByte

setSourceByte

public void setSourceByte(byte[] sourceByte)
Parameters:
sourceByte - the sourceByte to set

getDestByte

public byte[] getDestByte()
Returns:
the destByte

setDestByte

public void setDestByte(byte[] destByte)
Parameters:
destByte - the destByte to set

getPriority

public KnxPacketPriority getPriority()
Returns:
the priority

getDrlByte

public byte getDrlByte()
Returns:
the drlByte

getDataLength

public int getDataLength()
Returns:
the dataLength


Copyright © 2014 universAAL Consortium. All Rights Reserved.