Namespaces | Functions
colaa Namespace Reference

Namespaces

 detail
 

Functions

void addFrameToBuffer (UINT8 *sendBuffer, UINT8 *cmdBuffer, UINT16 *len)
 
UINT16 addINT32ToBuffer (UINT8 *buffer, INT32 value)
 
UINT16 addINT8ToBuffer (UINT8 *buffer, INT8 value)
 
UINT16 addStringToBuffer (UINT8 *buffer, const std::string &text)
 
UINT16 addUINT16ToBuffer (UINT8 *buffer, UINT16 value)
 
UINT16 addUINT32ToBuffer (UINT8 *buffer, UINT32 value)
 
UINT16 addUINT8ToBuffer (UINT8 *buffer, UINT8 value)
 
std::string convertRxBufferToString (UINT8 *buffer, UINT16 bufferLen)
 
INT16 decodeINT16 (const std::string &rxData)
 
INT16 decodeINT16 (std::string *rxData)
 
INT32 decodeINT32 (const std::string &rxData)
 
INT32 decodeINT32 (std::string *rxData)
 
double decodeReal (const std::string &rxData)
 set of more efficient functions that do not copy strings (should be prefered in use together with the colaa::tokenizer) More...
 
double decodeReal (std::string *rxData)
 
std::string decodeString (std::string *rxData, UINT16 len)
 
UINT16 decodeUINT16 (BYTE *buffer)
 
UINT16 decodeUINT16 (const std::string &rxData)
 
UINT16 decodeUINT16 (std::string *rxData)
 
UINT32 decodeUINT32 (const std::string &rxData)
 
UINT32 decodeUINT32 (std::string *rxData)
 
UINT8 decodeUINT8 (const std::string &rxData)
 
UINT8 decodeUINT8 (std::string *rxData)
 
UINT32 decodeXByte (std::string *rxData, UINT16 len)
 
std::string getNextStringToken (std::string *rxData)
 
std::string getNextStringToken (UINT8 *rxData)
 
bool GetNibble (unsigned char data, unsigned char &rNibble)
 
UINT16 getValueOfChar (UINT8 c)
 
UINT8 nibbleToAscii (UINT8 value)
 

Detailed Description

Parser functions for a partly implementation of the CoLa-A protocol, needed for communication with SICK sensors.

Function Documentation

◆ addFrameToBuffer()

void colaa::addFrameToBuffer ( UINT8 sendBuffer,
UINT8 cmdBuffer,
UINT16 len 
)

Erzeuge den zu sendenden Kommandostring, inklusive sog. "23-Frame". Der String wird im CoLa-A Format erzeugt und im Puffer abgelegt. sendBuffer = Ziel-Puffer fuer die erzeugten Daten cmdBuffer = Quelle-Puffer mit den Kommandodaten, aber ohne 23-Frame len = Zeiger auf Laenge des cmdBuffer; bei Rueckgabe Laenge des sendBuffers.

Definition at line 82 of file colaa.cpp.

◆ addINT32ToBuffer()

UINT16 colaa::addINT32ToBuffer ( UINT8 buffer,
INT32  value 
)

Int32-Wert in den Puffer schreiben (als Text). Wird erstmal als HEX-Wert geschrieben...

Return value: Laenge des hinzugefuegten Strings

Definition at line 185 of file colaa.cpp.

◆ addINT8ToBuffer()

UINT16 colaa::addINT8ToBuffer ( UINT8 buffer,
INT8  value 
)

Int8-Wert in den Puffer schreiben (als Text).

Return value: Laenge des hinzugefuegten Strings

Definition at line 139 of file colaa.cpp.

◆ addStringToBuffer()

UINT16 colaa::addStringToBuffer ( UINT8 buffer,
const std::string &  text 
)

Fuegt den Text in den Puffer ein (Kopie!).

Return: Anzahl eingefuegte Zeichen.

Definition at line 224 of file colaa.cpp.

◆ addUINT16ToBuffer()

UINT16 colaa::addUINT16ToBuffer ( UINT8 buffer,
UINT16  value 
)

Schreibe den UINT16-Wert als ASCII-HEX-String in den Puffer. Es werden 1 bis 4 Bytes (die 4 Nibbles) geschrieben.

Return value: #Bytes

Definition at line 125 of file colaa.cpp.

◆ addUINT32ToBuffer()

UINT16 colaa::addUINT32ToBuffer ( UINT8 buffer,
UINT32  value 
)

Schreibe den UINT32-Wert als ASCII-HEX-String in den Puffer. Es werden 1 bis 8 Bytes geschrieben, je nach Zahlenwert.

Return value: #Bytes

Definition at line 200 of file colaa.cpp.

◆ addUINT8ToBuffer()

UINT16 colaa::addUINT8ToBuffer ( UINT8 buffer,
UINT8  value 
)

Schreibe den UINT8-Wert als ASCII-HEX-String in den Puffer. Es werden 1 bis 2 Bytes geschrieben.

Return value: #Bytes

Definition at line 111 of file colaa.cpp.

◆ convertRxBufferToString()

std::string colaa::convertRxBufferToString ( UINT8 buffer,
UINT16  bufferLen 
)

Lese ein XByte-Array bekannter Laenge (1..4 Bytes) und verpacke es als UINT32-Wert. Das 1. empfangene Byte steht in den unteren 8 Bit des Ergebniswerts, usw.

HINWEIS: der Iterator wird weitergeschoben len-1 mal. Um das nächste Element zu lesen muss vorher ++tok aufgerufen werden.

Parameters
begin= Startpunkt, von wo aus einzelne Stringtokens in Zahlen verwandelt werden
end= Ende des containers, ueber den iteriert wird
len= Anzahl der Bytes (= Array-Elemente)

Definition at line 793 of file colaa.cpp.

◆ decodeINT16() [1/2]

INT16 colaa::decodeINT16 ( const std::string &  rxData)

Lese einen INT16-Wert aus dem Empfangspuffer.

Definition at line 534 of file colaa.cpp.

◆ decodeINT16() [2/2]

INT16 colaa::decodeINT16 ( std::string *  rxData)

Lese einen INT16-Wert aus dem Empfangspuffer.

Definition at line 472 of file colaa.cpp.

◆ decodeINT32() [1/2]

INT32 colaa::decodeINT32 ( const std::string &  rxData)

Lese einen INT-Wert aus dem Empfangspuffer. Ergebnis ist ein INT32-Wert.

Definition at line 545 of file colaa.cpp.

◆ decodeINT32() [2/2]

INT32 colaa::decodeINT32 ( std::string *  rxData)

Lese einen INT-Wert aus dem Empfangspuffer. Ergebnis ist ein INT32-Wert.

Definition at line 483 of file colaa.cpp.

◆ decodeReal() [1/2]

double colaa::decodeReal ( const std::string &  rxData)

set of more efficient functions that do not copy strings (should be prefered in use together with the colaa::tokenizer)

Lese eine Real-Zahl aus dem Empfangspuffer. Im Fehlerfall wird NaN zurueckgegeben.

Definition at line 383 of file colaa.cpp.

◆ decodeReal() [2/2]

double colaa::decodeReal ( std::string *  rxData)

Lese eine Real-Zahl aus dem Empfangspuffer. Im Fehlerfall wird NaN zurueckgegeben.

Definition at line 332 of file colaa.cpp.

◆ decodeString()

std::string colaa::decodeString ( std::string *  rxData,
UINT16  len 
)

Lese einen String aus dem Empfangspuffer. Der Empfangspuffer wird anschliessend um die Stringlaenge + 1 Zeichen (Trenn-Leerzeichen) gekuerzt.

Ist der Parameter len = 0 (oder fehlt ganz), dann wird der naechste verfuegbare String ausgelesen. Ist len > 0, dann werden genau len Zeichen gelesen.

Definition at line 603 of file colaa.cpp.

◆ decodeUINT16() [1/3]

UINT16 colaa::decodeUINT16 ( BYTE buffer)

Definition at line 627 of file colaa.cpp.

◆ decodeUINT16() [2/3]

UINT16 colaa::decodeUINT16 ( const std::string &  rxData)

Lese einen UINT16-Wert aus dem Empfangspuffer.

Definition at line 662 of file colaa.cpp.

◆ decodeUINT16() [3/3]

UINT16 colaa::decodeUINT16 ( std::string *  rxData)

Definition at line 636 of file colaa.cpp.

◆ decodeUINT32() [1/2]

UINT32 colaa::decodeUINT32 ( const std::string &  rxData)

Lese einen INT-Wert aus dem Empfangspuffer. Es wird vorausgesetzt, dass der übergebene String nur den Token für die Zahl enthält. Ergebnis ist ein INT32-Wert.

Definition at line 690 of file colaa.cpp.

◆ decodeUINT32() [2/2]

UINT32 colaa::decodeUINT32 ( std::string *  rxData)

Lese einen UINT32-Wert aus dem Empfangspuffer.

Definition at line 434 of file colaa.cpp.

◆ decodeUINT8() [1/2]

UINT8 colaa::decodeUINT8 ( const std::string &  rxData)

Lese einen UINT8-Wert aus dem Empfangspuffer.

Definition at line 675 of file colaa.cpp.

◆ decodeUINT8() [2/2]

UINT8 colaa::decodeUINT8 ( std::string *  rxData)

Lese einen UINT8-Wert aus dem Empfangspuffer.

Definition at line 649 of file colaa.cpp.

◆ decodeXByte()

UINT32 colaa::decodeXByte ( std::string *  rxData,
UINT16  len 
)

Lese ein XByte-Array bekannter Laenge (1..4 Bytes) und verpacke es als UINT32-Wert. Das 1. empfangene Byte steht in den unteren 8 Bit des Ergebniswerts, usw.

len = Anzahl der Bytes (= Array-Elemente)

Definition at line 735 of file colaa.cpp.

◆ getNextStringToken() [1/2]

std::string colaa::getNextStringToken ( std::string *  rxData)

Isoliere das naechste String-Token. Es geht bis zu naechsten Leerzeichen; fuehrende Leerzeichen werden entfernt. Der Ursprungs-String wird um das Token gekuerzt.

Definition at line 246 of file colaa.cpp.

◆ getNextStringToken() [2/2]

std::string colaa::getNextStringToken ( UINT8 rxData)

Isoliere das naechste String-Token. Es geht bis zu naechsten Leerzeichen; fuehrende Leerzeichen werden entfernt. Der Ursprungs-Buffer bleibt erhalten!

Definition at line 271 of file colaa.cpp.

◆ GetNibble()

bool colaa::GetNibble ( unsigned char  data,
unsigned char &  rNibble 
)

Definition at line 305 of file colaa.cpp.

◆ getValueOfChar()

UINT16 colaa::getValueOfChar ( UINT8  c)

Definition at line 27 of file colaa.cpp.

◆ nibbleToAscii()

UINT8 colaa::nibbleToAscii ( UINT8  value)

Definition at line 53 of file colaa.cpp.



sick_scan
Author(s): Michael Lehning , Jochen Sprickerhof , Martin Günther
autogenerated on Thu Sep 8 2022 02:30:19