otsdaq  v2_01_00
ots::FEVInterface Class Referenceabstract
Inheritance diagram for ots::FEVInterface:
ots::VStateMachine ots::WorkLoop ots::Configurable

Classes

struct  frontEndMacroStruct_t
 

Public Types

using frontEndMacroInArg_t = std::pair< const std::string, const std::string >
 
using frontEndMacroInArgs_t = const std::vector< frontEndMacroInArg_t > &
 
using frontEndMacroOutArg_t = std::pair< const std::string, std::string >
 
using frontEndMacroOutArgs_t = std::vector< frontEndMacroOutArg_t > &
 
using frontEndMacroFunction_t = void(ots::FEVInterface::*)(frontEndMacroInArgs_t, frontEndMacroOutArgs_t)
 

Public Member Functions

 FEVInterface (const std::string &interfaceUID, const ConfigurationTree &theXDAQContextConfigTree, const std::string &configurationPath)
 
const std::string & getInterfaceUID (void) const
 
const std::string & getDaqHardwareType (void) const
 
const std::string & getFirmwareType (void) const
 
const std::string & getInterfaceType (void) const
 
virtual int universalRead (char *address, char *returnValue)=0
 
virtual void universalWrite (char *address, char *writeValue)=0
 
const unsigned int & getUniversalAddressSize (void)
 
const unsigned int & getUniversalDataSize (void)
 
FrontEndHardwareBase * getHardwareP (void) const
 
FrontEndFirmwareBase * getFirmwareP (void) const
 
void runSequenceOfCommands (const std::string &treeLinkName)
 
void configure (void)
 
void start (std::string runNumber)
 
void stop (void)
 
void halt (void)
 
void pause (void)
 
void resume (void)
 
bool running (void)
 
void configureSlowControls (void)
 
bool slowControlsRunning (void)
 
void startSlowControlsWorkLooop (void)
 
void stopSlowControlsWorkLooop (void)
 
const std::map< std::string,
frontEndMacroStruct_t > & 
getMapOfFEMacroFunctions ()
 
- Public Member Functions inherited from ots::VStateMachine
virtual void paused (void)
 
virtual void halted (void)
 
virtual void configured (void)
 
virtual void initial (void)
 
virtual void inError (void)
 
- Public Member Functions inherited from ots::WorkLoop
 WorkLoop (std::string name)
 
void startWorkLoop (void)
 
bool stopWorkLoop (void)
 
bool isActive (void)
 
- Public Member Functions inherited from ots::Configurable
 Configurable (const ConfigurationTree &theXDAQContextConfigTree, const std::string &theConfigurationPath)
 
ConfigurationTree getSelfNode () const
 
const ConfigurationManagergetConfigurationManager () const
 
const std::string & getContextUID () const
 
const std::string & getApplicationUID () const
 
unsigned int getApplicationLID () const
 
std::string getContextAddress () const
 
unsigned int getContextPort () const
 

Static Public Member Functions

static const std::string & getFEMacroInputArgument (frontEndMacroInArgs_t &argsIn, const std::string &argName)
 

Protected Member Functions

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)
 
template<class T >
std::string & setFEMacroOutputArgumentValue (frontEndMacroOutArgs_t &argsOut, const std::string &argName, const T &value) const
 
- Protected Member Functions inherited from ots::WorkLoop
const std::string & getWorkLoopName (void)
 

Static Protected Member Functions

static std::string & getFEMacroOutputArgument (frontEndMacroOutArgs_t &argsOut, const std::string &argName)
 

Protected Attributes

std::string interfaceUID_
 
std::string interfaceType_
 
std::string daqHardwareType_
 
std::string firmwareType_
 
FrontEndHardwareBase * theFrontEndHardware_ = nullptr
 
FrontEndFirmwareBase * theFrontEndFirmware_ = nullptr
 
unsigned int universalAddressSize_ = 0
 
unsigned int universalDataSize_ = 0
 
std::map< std::string,
FESlowControlsChannel
mapOfSlowControlsChannels_
 
FESlowControlsWorkLoop slowControlsWorkLoop_
 
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_
 

Detailed Description

Definition at line 35 of file FEVInterface.h.


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