slsReceiverUsers Class Reference

Class for implementing the SLS data receiver in the users application. Callbacks can be defined for processing and/or saving data. More...

#include <slsReceiverUsers.h>

List of all members.

Public Member Functions

 slsReceiverUsers (int argc, char *argv[], int &success)
 ~slsReceiverUsers ()
int start ()
void stop ()
int64_t getReceiverVersion ()
void registerCallBackStartAcquisition (int(*func)(char *filepath, char *filename, uint64_t fileindex, uint32_t datasize, void *), void *arg)
void registerCallBackAcquisitionFinished (void(*func)(uint64_t nf, void *), void *arg)
void registerCallBackRawDataReady (void(*func)(uint64_t frameNumber, uint32_t expLength, uint32_t packetNumber, uint64_t bunchId, uint64_t timestamp, uint16_t modId, uint16_t xCoord, uint16_t yCoord, uint16_t zCoord, uint32_t debug, uint16_t roundRNumber, uint8_t detType, uint8_t version, char *datapointer, uint32_t datasize, void *), void *arg)

Public Attributes

slsReceiver * receiver

Detailed Description

Class for implementing the SLS data receiver in the users application. Callbacks can be defined for processing and/or saving data.

slsReceiverUsers is a class that can be instantiated in the users software to receive the data from the detectors. Callbacks can be defined for processing and/or saving data

Definition at line 16 of file slsReceiverUsers.h.


Constructor & Destructor Documentation

slsReceiverUsers::slsReceiverUsers ( int  argc,
char *  argv[],
int &  success 
)

Constructor reads config file, creates socket, assigns function table

Parameters:
argc from command line
argv from command line
succecc socket creation was successfull
slsReceiverUsers::~slsReceiverUsers (  ) 

Destructor


Member Function Documentation

int64_t slsReceiverUsers::getReceiverVersion (  ) 

get get Receiver Version

Returns:
id
void slsReceiverUsers::registerCallBackAcquisitionFinished ( void(*)(uint64_t nf, void *)  func,
void *  arg 
)

register callback for end of acquisition

Parameters:
func end of acquisition callback. Argument nf is total frames caught
Returns:
nothing
void slsReceiverUsers::registerCallBackRawDataReady ( void(*)(uint64_t frameNumber, uint32_t expLength, uint32_t packetNumber, uint64_t bunchId, uint64_t timestamp, uint16_t modId, uint16_t xCoord, uint16_t yCoord, uint16_t zCoord, uint32_t debug, uint16_t roundRNumber, uint8_t detType, uint8_t version, char *datapointer, uint32_t datasize, void *)  func,
void *  arg 
)

register callback to be called when data are available (to process and/or save the data).

Parameters:
func raw data ready callback. arguments are frameNumber, expLength, packetNumber, bunchId, timestamp, modId, xCoord, yCoord, zCoord, debug, roundRNumber, detType, version, dataPointer, dataSize
Returns:
nothing
void slsReceiverUsers::registerCallBackStartAcquisition ( int(*)(char *filepath, char *filename, uint64_t fileindex, uint32_t datasize, void *)  func,
void *  arg 
)

register calbback for starting the acquisition

Parameters:
func callback to be called when starting the acquisition. Its arguments are filepath, filename, fileindex, datasize
Returns:
value is insignificant at the moment, we write depending on file write enable, users get data to write depending on call backs registered
int slsReceiverUsers::start (  ) 

starts listening on the TCP port for client comminication

Returns:
0 for success or 1 for FAIL in creating TCP server
void slsReceiverUsers::stop (  ) 

stops listening to the TCP & UDP port and exit receiver program


Member Data Documentation

Definition at line 75 of file slsReceiverUsers.h.


The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Defines

Generated on 28 Aug 2017 by  doxygen 1.6.1