otsdaq  v1_01_03
 All Classes Namespaces Functions
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
ots::FEVInterface Class Referenceabstract
+ Inheritance diagram for ots::FEVInterface:

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)
 
virtual void initLocalGroup (int local_group_comm_)
 
void configureSlowControls (void)
 
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
 
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 configure (void)=0
 
virtual void halt (void)=0
 
virtual void pause (void)=0
 
virtual void resume (void)=0
 
virtual void start (std::string runNumber)=0
 
virtual void stop (void)=0
 
virtual bool running (void)
 
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)
 
- Public Member Functions inherited from ots::Configurable
 Configurable (const ConfigurationTree &theXDAQContextConfigTree, const std::string &theConfigurationPath)
 

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)
 
const std::string & getFEMacroInputArgument (frontEndMacroInArgs_t &argsIn, const std::string &argName)
 
std::string & getFEMacroOutputArgument (frontEndMacroOutArgs_t &argsOut, const std::string &argName)
 
- Protected Member Functions inherited from ots::WorkLoop
const std::string & getWorkLoopName (void)
 

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_
 
std::array< std::string, 3 > testarr_
 
- Protected Attributes inherited from ots::WorkLoop
volatile bool continueWorkLoop_
 
- Protected Attributes inherited from ots::Configurable
const ConfigurationTree theXDAQContextConfigTree_
 
const std::string theConfigurationPath_
 

Detailed Description

Definition at line 25 of file FEVInterface.h.


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