tdaq-develop-2025-02-12
ots::FEOtsUDPTemplateInterface Class Reference
Inheritance diagram for ots::FEOtsUDPTemplateInterface:
ots::OtsUDPHardware ots::OtsUDPFirmwareDataGen ots::FrontEndHardwareBase ots::OtsUDPFirmwareCore ots::FrontEndFirmwareBase

Public Member Functions

 FEOtsUDPTemplateInterface (const std::string &interfaceUID, const ConfigurationTree &theXDAQContextConfigTree, const std::string &interfaceConfigurationPath)
 
void configure (void) override
 
void halt (void) override
 void FEOtsUDPTemplateInterface::configureDetector(const DACStream& theDACStream)
 
void pause (void) override
 
void resume (void) override
 
void start (std::string runNumber) override
 
void stop (void) override
 
bool running (void) override
 
virtual void universalRead (char *address, char *readValue) override
 
virtual void universalWrite (char *address, char *writeValue) override
 
void varTest (__ARGS__)
 < FEMacro 'varTest' generated, Oct-11-2018 11:36:28, by 'admin' using More...
 
void varTest2 (__ARGS__)
 < FEMacro 'varTest2' generated, Oct-11-2018 02:28:57, by 'admin' using More...
 
void test (__ARGS__)
 < FEMacro 'test' generated, Jan-20-2020 09:41:49, by 'admin' using MacroMaker. More...
 
- Public Member Functions inherited from ots::OtsUDPHardware
 OtsUDPHardware (std::string hostIPAddress, unsigned int hostPort, std::string boardIPAddress, unsigned int boardPort, unsigned int version=-1, bool verbose=false)
 
virtual void write (const std::string &sendBuffer)
 
virtual void write (const std::vector< std::string > &sendBuffers)
 
virtual void writeAndAcknowledge (const std::string &sendBuffer, int timeoutSeconds=-1)
 
virtual void writeAndAcknowledge (const std::vector< std::string > &sendBuffers, int timeoutSeconds=-1)
 
virtual void read (const std::string &sendBuffer, std::string &receiveBuffer, int timeoutSeconds=-1)
 return -1 on failure
 
virtual void read (const std::vector< std::string > &sendBuffers, std::vector< std::string > &receiveBuffers, int timeoutSeconds=-1)
 
virtual int flushRead ()
 return count of 'things' flushed
 
void read (const std::string &sendBuffer, uint64_t &receiveQuadWord, int timeoutSeconds=-1)
 
void read (const std::string &sendBuffer, std::vector< uint64_t > &receiveQuadWords, int timeoutSeconds=-1)
 
void read (const std::vector< std::string > &sendBuffers, std::vector< std::vector< uint64_t > > &receiveQuadWordsVector, int timeoutSeconds=-1)
 
int clearReadSocket ()
 
- Public Member Functions inherited from ots::FrontEndHardwareBase
 FrontEndHardwareBase (unsigned int version=-1)
 
- Public Member Functions inherited from ots::OtsUDPFirmwareDataGen
 OtsUDPFirmwareDataGen (unsigned int version)
 
virtual void init (void)
 
- Public Member Functions inherited from ots::OtsUDPFirmwareCore
 OtsUDPFirmwareCore (unsigned int version)
 
virtual std::string write (char *address, char *data)
 
virtual void write (std::string &buffer, char *address, char *data, bool clearBuffer=true)
 
virtual void write (std::string &buffer, uint32_t address, uint32_t data, bool clearBuffer=true)
 
virtual void write (std::string &buffer, uint64_t address, uint64_t data, bool clearBuffer=true)
 
virtual void waitClear (std::string &, uint32_t, uint32_t, uint32_t=255, bool=true)
 
virtual std::string read (char *address)
 
virtual void read (std::string &buffer, char *address, bool clearBuffer=true)
 
virtual void read (std::string &buffer, uint64_t address, bool clearBuffer=true)
 
virtual void read (std::string &buffer, uint32_t address, bool clearBuffer=true)
 
virtual void setDataDestination (std::string &buffer, const std::string &ip, const uint16_t port, bool clearBuffer=true)
 
virtual uint32_t createRegisterFromValue (std::string &readBuffer, std::string &receivedValue)
 return data lower 32 bits
 
void writeAdvanced (std::string &buffer, const char *address, const char *data, uint8_t size=1, uint8_t commandTypeOptions=0, bool clearBuffer=true)
 low level functionality
 
void writeAdvanced (std::string &buffer, const uint64_t &address, const char *data, uint8_t size, uint8_t commandTypeOptions=0, bool clearBuffer=true)
 
void writeAdvanced (std::string &buffer, const uint64_t &address, const uint64_t &data, uint8_t commandTypeOptions=0, bool clearBuffer=true)
 
void writeAdvanced (std::string &buffer, const uint64_t &address, const std::vector< uint64_t > &data, uint8_t commandTypeOptions=0, bool clearBuffer=true)
 
void readAdvanced (std::string &buffer, char *address, uint8_t size=1, uint8_t commandTypeOptions=0, bool clearBuffer=true)
 
void readAdvanced (std::string &buffer, const uint64_t &address, uint8_t size=1, uint8_t commandTypeOptions=0, bool clearBuffer=true)
 
void writeDataDestinationIP (std::string &buffer, const uint64_t value, bool clearBuffer=true)
 
void writeDataDestinationMAC (std::string &buffer, const uint64_t value, bool clearBuffer=true)
 
void writeDataDestinationPort (std::string &buffer, const uint64_t value, bool clearBuffer=true)
 
void readDataDestinationIP (std::string &buffer)
 
void readDataDestinationMAC (std::string &buffer)
 
void readDataDestinationPort (std::string &buffer)
 
void setDataDestinationAsSelf (std::string &buffer)
 
virtual void setControlDestination (std::string &buffer, const std::string &ip, const uint16_t port)
 control destination read/write
 
void writeControlDestinationIP (std::string &buffer, const uint64_t value)
 
void writeControlDestinationMAC (std::string &buffer, const uint64_t value)
 
void writeControlDestinationPort (std::string &buffer, const uint64_t value)
 
void readControlDestinationIP (std::string &buffer)
 
void readControlDestinationMAC (std::string &buffer)
 
void readControlDestinationPort (std::string &buffer)
 
void setControlDestinationAsSelf (std::string &buffer)
 
void UDPFirmwareSpecialPing (std::string &buffer)
 other
 
void UDPFirmwareSpecialNoOp (std::string &buffer)
 
void readUDPFirmwareVersion (std::string &buffer)
 
void softEthernetReset (std::string &buffer)
 
void hardEthernetReset (std::string &buffer)
 
void clearEthernetReset (std::string &buffer)
 
void startBurst (std::string &buffer)
 
void stopBurst (std::string &buffer)
 
- Public Member Functions inherited from ots::FrontEndFirmwareBase
 FrontEndFirmwareBase (unsigned int version=-1)
 
unsigned int getVersion ()
 
virtual void waitSet (std::string &, uint32_t, uint32_t, uint32_t=255, bool=true)
 
virtual unsigned int getNumberOfBufferedCommands (std::string &)
 

Additional Inherited Members

- Public Attributes inherited from ots::FrontEndFirmwareBase
const unsigned int version_
 
- Static Public Attributes inherited from ots::OtsUDPFirmwareCore
static const uint8_t FIFO_ADDRESS_CMD_TYPE = (1 << 3)
 command type options that can be OR'd More...
 
- Protected Member Functions inherited from ots::OtsUDPHardware
 OtsUDPHardware (std::string boardIPAddress, unsigned int boardPort, unsigned int version=-1, bool verbose=false)
 This one is often (e.g. FENIMPlusInterface) called by FEs inheriting OtsUDPHardware. More...
 
- Protected Member Functions inherited from ots::OtsUDPFirmwareDataGen
void setNumberOfBurstWords (std::string &buffer, uint64_t numberOfWords)
 
void setBurstWordsRate (std::string &buffer, uint64_t interval)
 
- Protected Attributes inherited from ots::OtsUDPHardware
Socket OtsUDPBoard_
 
std::string acknowledgment_
 
bool verbose_
 
- Protected Attributes inherited from ots::FrontEndHardwareBase
unsigned int version_
 

Detailed Description

Definition at line 12 of file FEOtsUDPTemplateInterface.h.

Member Function Documentation

◆ test()

void FEOtsUDPTemplateInterface::test ( __ARGS__  )

< FEMacro 'test' generated, Jan-20-2020 09:41:49, by 'admin' using MacroMaker.

test FEMacro 'test' generated, Jan-20-2020 09:41:49, by 'admin' using MacroMaker. Macro Notes: Testing notes

Definition at line 542 of file FEOtsUDPTemplateInterfaceImpl.cc.

◆ universalRead()

void ots::FEOtsUDPTemplateInterface::universalRead ( char *  address,
char *  returnValue 
)
overridevirtual

NOTE: buffer for address must be at least size universalAddressSize_ NOTE: buffer for returnValue must be max UDP size to handle return possibility

Definition at line 405 of file FEOtsUDPTemplateInterfaceImpl.cc.

◆ universalWrite()

void ots::FEOtsUDPTemplateInterface::universalWrite ( char *  address,
char *  writeValue 
)
overridevirtual

NOTE: buffer for address must be at least size universalAddressSize_ NOTE: buffer for writeValue must be at least size universalDataSize_

Definition at line 432 of file FEOtsUDPTemplateInterfaceImpl.cc.

◆ varTest()

void FEOtsUDPTemplateInterface::varTest ( __ARGS__  )

< FEMacro 'varTest' generated, Oct-11-2018 11:36:28, by 'admin' using

varTest FEMacro 'varTest' generated, Oct-11-2018 11:36:28, by 'admin' using MacroMaker. Macro Notes: This is a great test!

Definition at line 454 of file FEOtsUDPTemplateInterfaceImpl.cc.

◆ varTest2()

void FEOtsUDPTemplateInterface::varTest2 ( __ARGS__  )

< FEMacro 'varTest2' generated, Oct-11-2018 02:28:57, by 'admin' using

varTest2 FEMacro 'varTest2' generated, Oct-11-2018 02:28:57, by 'admin' using MacroMaker. Macro Notes: [Modified 14:28 10/11/2018] This is a great test!

Definition at line 521 of file FEOtsUDPTemplateInterfaceImpl.cc.


The documentation for this class was generated from the following files: