otsdaq
v2_05_02_indev
|
Classes | |
struct | frontEndMacroStruct_t |
struct | macroStruct_t |
Public Types | |
using | frontEndMacroArg_t = std::pair< const std::string, std::string > |
using | frontEndMacroArgs_t = std::vector< frontEndMacroArg_t > & |
using | frontEndMacroConstArgs_t = const std::vector< frontEndMacroArg_t > & |
using | frontEndMacroFunction_t = void(ots::FEVInterface::*)([[maybe_unused]] const frontEndMacroStruct_t &feMacroStruct, [[maybe_unused]] FEVInterface::frontEndMacroConstArgs_t argsIn,[[maybe_unused]] FEVInterface::frontEndMacroArgs_t argsOut) |
Public Member Functions | |
FEVInterface (const std::string &interfaceUID, const ConfigurationTree &theXDAQContextConfigTree, const std::string &configurationPath) | |
const std::string & | getInterfaceUID (void) const |
virtual std::string | getInterfaceType (void) const |
virtual void | universalRead (char *address, char *returnValue)=0 |
virtual void | universalWrite (char *address, char *writeValue)=0 |
const unsigned int & | getUniversalAddressSize (void) |
const unsigned int & | getUniversalDataSize (void) |
void | runSequenceOfCommands (const std::string &treeLinkName) |
virtual void | configure (void) |
virtual void | start (std::string) |
virtual void | stop (void) |
virtual void | halt (void) |
virtual void | pause (void) |
virtual void | resume (void) |
virtual bool | running (void) |
virtual void | configureSlowControls (void) |
void | addSlowControlsChannels (ConfigurationTree slowControlsGroupLink, const std::string &subInterfaceID, std::map< std::string, FESlowControlsChannel > *mapOfSlowControlsChannels) |
virtual void | resetSlowControlsChannelIterator (void) |
virtual FESlowControlsChannel * | getNextSlowControlsChannel (void) |
virtual unsigned int | getSlowControlsChannelCount (void) |
virtual void | getSlowControlsValue (FESlowControlsChannel &channel, std::string &readValue) |
bool | slowControlsRunning (void) |
void | startSlowControlsWorkLoop (void) |
void | stopSlowControlsWorkLoop (void) |
const std::map< std::string, frontEndMacroStruct_t > & | getMapOfFEMacroFunctions (void) |
void | runSelfFrontEndMacro (const std::string &feMacroName, const std::vector< FEVInterface::frontEndMacroArg_t > &inputArgs, std::vector< FEVInterface::frontEndMacroArg_t > &outputArgs) |
template<class T > | |
void | sendToFrontEnd (const std::string &targetInterfaceID, const T &value) const |
void | runFrontEndMacro (const std::string &targetInterfaceID, const std::string &feMacroName, const std::vector< FEVInterface::frontEndMacroArg_t > &inputArgs, std::vector< FEVInterface::frontEndMacroArg_t > &outputArgs) const |
template<class T > | |
void | receiveFromFrontEnd (const std::string &requester, T &retValue, unsigned int timeoutInSeconds=1) const |
void | receiveFromFrontEnd (const std::string &requester, std::string &retValue, unsigned int timeoutInSeconds=1) const |
template<class T > | |
T | receiveFromFrontEnd (const std::string &requester="*", unsigned int timeoutInSeconds=1) const |
std::string | receiveFromFrontEnd (const std::string &requester="*", unsigned int timeoutInSeconds=1) const |
Public Member Functions inherited from ots::WorkLoop | |
WorkLoop (const std::string &name) | |
void | startWorkLoop (void) |
bool | stopWorkLoop (void) |
bool | isActive (void) const |
Public Member Functions inherited from ots::Configurable | |
Configurable (const ConfigurationTree &theXDAQContextConfigTree, const std::string &theConfigurationPath) | |
ConfigurationTree | getSelfNode () const |
const ConfigurationManager * | getConfigurationManager () const |
const std::string & | getContextUID () const |
const std::string & | getApplicationUID () const |
unsigned int | getApplicationLID () const |
std::string | getContextAddress () const |
unsigned int | getContextPort () const |
Public Member Functions inherited from ots::VStateMachine | |
VStateMachine (const std::string &name) | |
virtual void | paused (void) |
virtual void | halted (void) |
virtual void | configured (void) |
virtual void | initial (void) |
virtual void | inError (void) |
virtual std::string | getStatusProgressDetail (void) |
void | setTransitionName (const std::string &transitionName) |
const std::string & | getTransitionName (void) |
void | setIterationIndex (unsigned int i) |
void | setSubIterationIndex (unsigned int i) |
unsigned int | getIterationIndex (void) |
unsigned int | getSubIterationIndex (void) |
void | indicateIterationWork (void) |
void | clearIterationWork (void) |
bool | getIterationWork (void) |
void | indicateSubIterationWork (void) |
void | clearSubIterationWork (void) |
bool | getSubIterationWork (void) |
Static Public Member Functions | |
static void | sendAsyncErrorToGateway (FEVInterface *fe, const std::string &errMsg, bool isSoftError) |
static const std::string & | getFEMacroConstArgument (frontEndMacroConstArgs_t args, const std::string &argName) |
static std::string & | getFEMacroArgument (frontEndMacroArgs_t args, const std::string &argName) |
Public Attributes | |
FEVInterfacesManager * | parentInterfaceManager_ |
Public Attributes inherited from ots::VStateMachine | |
CoreSupervisorBase * | parentSupervisor_ |
Protected Member Functions | |
void | runMacro (FEVInterface::macroStruct_t ¯o, std::map< std::string, uint64_t > &variableMap) |
bool | workLoopThread (toolbox::task::WorkLoop *workLoop) |
void | registerFEMacroFunction (const std::string &feMacroName, frontEndMacroFunction_t feMacroFunction, const std::vector< std::string > &namesOfInputArgs, const std::vector< std::string > &namesOfOutputArgs, uint8_t requiredUserPermissions=1, const std::string &allowedCallingFEs="*") |
template<class T > | |
std::string & | setFEMacroArgumentValue (frontEndMacroArgs_t args, const std::string &argName, const T &value) const |
template<class T > | |
std::string & | emplaceFEMacroArgumentValue (frontEndMacroArgs_t args, const std::string &argName, const T &value) const |
Protected Member Functions inherited from ots::WorkLoop | |
const std::string & | getWorkLoopName (void) const |
Protected Attributes | |
std::map< std::string, FESlowControlsChannel > | mapOfSlowControlsChannels_ |
std::map< std::string, FESlowControlsChannel > ::iterator | slowControlsChannelsIterator_ |
FESlowControlsWorkLoop | slowControlsWorkLoop_ |
std::string | interfaceUID_ |
std::string | mfSubject_ |
unsigned int | universalAddressSize_ = 0 |
unsigned int | universalDataSize_ = 0 |
std::map< std::string, frontEndMacroStruct_t > | mapOfFEMacroFunctions_ |
Protected Attributes inherited from ots::WorkLoop | |
volatile bool | continueWorkLoop_ |
Protected Attributes inherited from ots::Configurable | |
const ConfigurationTree | theXDAQContextConfigTree_ |
const std::string | theConfigurationPath_ |
const std::string | theConfigurationRecordName_ |
Protected Attributes inherited from ots::VStateMachine | |
std::map< std::string, std::map< unsigned int, std::string > > | iterationAliasMap_ |
std::map< std::string, std::map< unsigned int, std::string > > | subIterationAliasMap_ |
Friends | |
class | FEVInterfacesManager |
Definition at line 49 of file FEVInterface.h.