public class CANMessage
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected int[] |
data
Hier wird die Nutzlast der CAN-Message gespeichert.
|
protected int |
eid
Die Extended Object ID.
|
static int |
FRAME_EXT
Flag, ob es sich hierbei um ein Extended Frame handelt.
|
static int |
FRAME_REMOTE
Flag, ob es sich hierbei um ein Remote Frame handelt.
|
protected int |
length
Die Länge der CAN-Message.
|
static int |
RX_STAT_FRAME_EXTENDED
Die empfangene CAN-Message ist ein Extended Frame
|
static int |
RX_STAT_FRAME_REMOTE
Die empfangene CAN-Message ist ein Remote Frame.
|
protected int |
sid
Die Standard Object ID.
|
protected int |
status
Der Zustand der CAN-Message.
|
Constructor and Description |
---|
CANMessage(int sid,
int eid,
int status)
Dieser Konstruktor initialisiert diese CAN-Message mit IDs und Status.
|
Modifier and Type | Method and Description |
---|---|
void |
addDataByte(int i)
Diese Methode fügt dieser CAN-Message ein Byte hinzu.
|
void |
addDataWord(int i)
Diese Methode fügt dieser CAN-Message ein Wort hinzu.
|
void |
dump(java.lang.String comment)
Diese Methode loggt diese CAN-Message im Klartext aus.
|
byte[] |
getBytes()
Diese Methode gibt diese CAN-Meldung als Folge von Bytes zurück, so dass sie sofort
versendet werden können.
|
int |
getData(int idx)
Diese Methode gibt ein Datenbyte aus der CAN-Message zurück.
|
int |
getEid()
Diese Methode gibt die Extended-ID zurück.
|
java.lang.Integer |
getId()
Diese Methode baut aus der Standard-ID und der Extended-ID eine 32-Bit-ID zusammen.
|
int |
getSid()
Diese Methode gibt die Standard-ID zurück.
|
boolean |
isExtended()
Diese Methode gibt zurück, ob es sich bei dieser CAN-Message um ein Extended Frame handelt.
|
int |
length()
Diese Methode gibt die Länge der CAN-Meldung zurück.
|
void |
modifyData(int idx,
int value)
Diese Methode modifiziert ein Datenbyte in der CAN-Message.
|
void |
setEid(int eid)
Diese Methode setzt die Standard-ID.
|
void |
setExtended(boolean ext)
Diese Methode definiert, ob diese CAN-Message ein Standard Frame oder ein Extended Frame sein soll.
|
void |
setSid(int sid)
Diese Methode setzt die Standard-ID.
|
(package private) void |
setStatus(int status)
Diese Methode setzt den Zustand dieser CAN-Message.
|
public static final int FRAME_REMOTE
public static final int FRAME_EXT
public static final int RX_STAT_FRAME_REMOTE
public static final int RX_STAT_FRAME_EXTENDED
protected int sid
protected int eid
protected int status
FRAME_REMOTE
,
FRAME_EXT
protected int length
protected final int[] data
public CANMessage(int sid, int eid, int status)
sid
- Die 11-bittige Standard-ID.eid
- Die 18-bittige zusätzliche Extended-IDstatus
- Flag, ob die Extended-ID gültig ist, bzw. ob es sich um ein Remote Frame handelt.FRAME_EXT
,
FRAME_REMOTE
public final byte[] getBytes()
public final void addDataByte(int i)
IllegalStateException
geworfen wird.i
- Das hinzuzufügende Byte.public final void addDataWord(int i)
IllegalStateException
geworfen wird. Das Wort wird in Little Endian gespeichert.
(Low Byte first).i
- Das hinzuzufügende Wort.public final int getData(int idx)
ArrayIndexOutOfBoundsException
.idx
- Der Datenindex.public final void modifyData(int idx, int value)
ArrayIndexOutOfBoundsException
.idx
- Der Datenindex.value
- Das zu modifizierende Byte.public final int getSid()
public final void setSid(int sid)
sid
- Die zu setzende Standard-ID.public final int getEid()
public final void setEid(int eid)
eid
- Die zu setzende Standard-ID.void setStatus(int status)
status
- Der neue Zustand dieser CAN-Message.FRAME_EXT
,
FRAME_REMOTE
public final void setExtended(boolean ext)
ext
- Flag, das zwischen Standard und Extended Frame unterscheidet.public java.lang.Integer getId()
public boolean isExtended()
public int length()
public void dump(java.lang.String comment)
comment
- Ein ergänzender Kommentar.Copyright © 2011 all committers of this modelrailway project