$treeview $search $mathjax $extrastylesheet
otsdaq  v2_03_00
$projectbrief
$projectbrief
$searchbox

ots::FEVInterface Class Reference

Inheritance diagram for ots::FEVInterface:
ots::VStateMachine ots::WorkLoop ots::Configurable ots::FEProducerVInterface

List of all members.

Classes

struct  frontEndMacroStruct_t
struct  macroStruct_t

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)
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 (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 >
receiveFromFrontEnd (const std::string &requester="*", unsigned int timeoutInSeconds=1) const
std::string receiveFromFrontEnd (const std::string &requester="*", unsigned int timeoutInSeconds=1) const

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

FEVInterfacesManagerparentInterfaceManager_

Protected Member Functions

void runMacro (FEVInterface::macroStruct_t &macro, 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 Attributes

std::string interfaceUID_
unsigned int universalAddressSize_ = 0
unsigned int universalDataSize_ = 0
std::map< std::string,
FESlowControlsChannel
mapOfSlowControlsChannels_
FESlowControlsWorkLoop slowControlsWorkLoop_
std::map< std::string,
frontEndMacroStruct_t
mapOfFEMacroFunctions_

Friends

class FEVInterfacesManager

Detailed Description

Definition at line 53 of file FEVInterface.h.


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

Generated on 14 Mar 2019 for otsdaq by  doxygen 1.6.1