tdaq-develop-2025-02-12
ots::XDAQContextTable Class Reference
Inheritance diagram for ots::XDAQContextTable:
ots::TableBase

Classes

struct  ColApplication
 XDAQ App Column names. More...
 
struct  ColApplicationProperty
 XDAQ App Property Column names. More...
 
struct  ColContext
 XDAQ Context Column names. More...
 
struct  XDAQApplication
 
struct  XDAQApplicationProperty
 
struct  XDAQContext
 

Public Member Functions

void init (ConfigurationManager *configManager)
 Methods.
 
void extractContexts (ConfigurationManager *configManager)
 
void outputXDAQXML (std::ostream &out)
 
std::string getContextUID (const std::string &url) const
 
std::string getApplicationUID (const std::string &url, unsigned int id) const
 
std::string getContextOfApplication (ConfigurationManager *configManager, const std::string &appUID) const
 only considers ON contexts and applications
 
std::string getContextOfGateway (ConfigurationManager *configManager) const
 only considers ON contexts and applications
 
const std::vector< XDAQContext > & getContexts (void) const
 
std::string getContextAddress (const std::string &contextUID="X", bool wantHttp=false) const
 
const XDAQContextgetTheARTDAQSupervisorContext (void) const
 artdaq specific get methods
 
- Public Member Functions inherited from ots::TableBase
 TableBase (bool specialTable, const std::string &specialTableName)
 
 TableBase (const std::string &tableName, std::string *accumulatedExceptions=0)
 
virtual ~TableBase (void)
 
void destroy (void)
 
void reset (bool keepTemporaryVersions=false)
 
void deactivate (void)
 
bool isActive (void)
 isActive
 
void print (std::ostream &out=std::cout) const
 always prints active view
 
std::string getTypeId (void)
 
void setupMockupView (TableVersion version)
 
void changeVersionAndActivateView (TableVersion temporaryVersion, TableVersion version)
 
bool isStored (const TableVersion &version) const
 
bool eraseView (TableVersion version)
 
void trimCache (unsigned int trimSize=-1)
 
void trimTemporary (TableVersion targetVersion=TableVersion())
 
TableVersion checkForDuplicate (TableVersion needleVersion, TableVersion ignoreVersion=TableVersion()) const
 
bool diffTwoVersions (TableVersion v1, TableVersion v2, std::stringstream *diffReport=0, std::map< std::string, std::vector< std::string >> *v1ModifiedRecords=0) const
 
const std::string & getTableName (void) const
 Getters.
 
const std::string & getTableDescription (void) const
 
std::set< TableVersiongetStoredVersions (void) const
 
const TableViewgetView (TableVersion version=TableVersion(TableVersion::INVALID)) const
 
TableViewgetViewP (TableVersion version=TableVersion(TableVersion::INVALID))
 
TableViewgetMockupViewP (void)
 
const TableVersiongetViewVersion (void) const
 always the active one
 
TableViewgetTemporaryView (TableVersion temporaryVersion)
 
TableVersion getNextTemporaryVersion (void) const
 
TableVersion getNextVersion (void) const
 
virtual std::string getStructureStatusAsJSON (ConfigurationManager *configManager) const
 
void setTableName (const std::string &tableName)
 Setters.
 
void setTableDescription (const std::string &tableDescription)
 
bool setActiveView (TableVersion version)
 
TableVersion copyView (const TableView &sourceView, TableVersion destinationVersion, const std::string &author, bool looseColumnMatching=false)
 
TableVersion mergeViews (const TableView &sourceViewA, const TableView &sourceViewB, TableVersion destinationVersion, const std::string &author, const std::string &mergeApproach, std::map< std::pair< std::string, std::string >, std::string > &uidConversionMap, std::map< std::pair< std::string, std::pair< std::string, std::string > >, std::string > &groupidConversionMap, bool fillRecordConversionMaps, bool applyRecordConversionMaps, bool generateUniqueDataColumns=false, std::stringstream *mergeRepoert=nullptr)
 
TableVersion createTemporaryView (TableVersion sourceViewVersion=TableVersion(), TableVersion destTemporaryViewVersion=TableVersion::getNextTemporaryVersion())
 source of -1, from MockUp, else from valid view version More...
 
bool latestAndMockupColumnNumberMismatch (void) const
 
unsigned int getNumberOfStoredViews (void) const
 

Static Public Member Functions

static ConfigurationTree getContextNode (const ConfigurationManager *configManager, const std::string &contextUID)
 
static ConfigurationTree getApplicationNode (const ConfigurationManager *configManager, const std::string &contextUID, const std::string &appUID)
 
static ConfigurationTree getSupervisorConfigNode (const ConfigurationManager *configManager, const std::string &contextUID, const std::string &appUID)
 
- Static Public Member Functions inherited from ots::TableBase
static std::string convertToCaps (std::string &str, bool isConfigName=false)
 

Static Public Attributes

static struct ots::XDAQContextTable::ColContext colContext_ = XDAQContextTable::ColContext()
 
static struct ots::XDAQContextTable::ColApplication colApplication_ = XDAQContextTable::ColApplication()
 
static struct ots::XDAQContextTable::ColApplicationProperty colAppProperty_ = XDAQContextTable::ColApplicationProperty()
 
static const std::set< std::string > FETypeClassNames_ = { "ots::FESupervisor", "ots::FEDataManagerSupervisor", "ots::ARTDAQFEDataManagerSupervisor"}
 
static const std::set< std::string > DMTypeClassNames_ = { "ots::DataManagerSupervisor", "ots::FEDataManagerSupervisor", "ots::ARTDAQFEDataManagerSupervisor"}
 
static const std::set< std::string > LogbookTypeClassNames_ = { "ots::LogbookSupervisor", "ots::ECLSupervisor"}
 
static const std::set< std::string > MacroMakerTypeClassNames_ = { "ots::MacroMakerSupervisor"}
 
static const std::set< std::string > ChatTypeClassNames_ = { "ots::ChatSupervisor"}
 
static const std::set< std::string > ConsoleTypeClassNames_ = { "ots::ConsoleSupervisor"}
 
static const std::set< std::string > ConfigurationGUITypeClassNames_ = { "ots::ConfigurationGUISupervisor"}
 
static const std::set< std::string > CodeEditorTypeClassNames_ = { "ots::CodeEditorSupervisor"}
 
static const std::set< std::string > VisualizerTypeClassNames_ = { "ots::VisualSupervisor"}
 
static const std::set< std::string > SlowControlsTypeClassNames_ = { "ots::SlowControlsDashboardSupervisor"}
 
static const std::string GATEWAY_SUPERVISOR_CLASS = "ots::GatewaySupervisor"
 
static const std::string WIZARD_SUPERVISOR_CLASS = "ots::WizardSupervisor"
 
static const std::string DEPRECATED_SUPERVISOR_CLASS = "ots::Supervisor"
 
static const std::string ARTDAQ_SUPERVISOR_CLASS = "ots::ARTDAQSupervisor"
 
static const std::map< std::string, std::string > AppClassModuleLookup_
 NOTE!!! std::next + offset reads std::set from right-to-left above (end to beginning) More...
 
- Static Public Attributes inherited from ots::TableBase
static const std::string GROUP_CACHE_PREPEND = "GroupCache_"
 
static const std::string JSON_DOC_PREPEND = "JSONDoc_"
 

Additional Inherited Members

- Public Attributes inherited from ots::TableBase
const unsigned int MAX_VIEWS_IN_CACHE
 
- Protected Attributes inherited from ots::TableBase
std::string tableName_
 
std::string tableDescription_
 
TableViewactiveTableView_
 
TableView mockupTableView_
 
std::map< TableVersion, TableViewtableViews_
 

Detailed Description

Definition at line 12 of file XDAQContextTable.h.

Member Function Documentation

◆ extractContexts()

void XDAQContextTable::extractContexts ( ConfigurationManager configManager)

extractContexts Could be called by other tables if they need to access the context. This doesn't re-write config files, it just re-makes constructs in software.

Definition at line 213 of file XDAQContextTable.cc.

◆ getContextUID()

std::string XDAQContextTable::getContextUID ( const std::string &  url) const

void outputAppPriority (std::ostream &out, const std::string& stateMachineCommand); void outputXDAQScript (std::ostream &out); void outputARTDAQScript (std::ostream &out);

Definition at line 678 of file XDAQContextTable.cc.

◆ outputXDAQXML()

void XDAQContextTable::outputXDAQXML ( std::ostream &  out)

<xc:Application class="ots::FESupervisor" id="${FEW_SUPERVISOR_ID}" instance="1" network="local" group="daq"/>

Definition at line 532 of file XDAQContextTable.cc.

Member Data Documentation

◆ AppClassModuleLookup_

const std::map< std::string, std::string > XDAQContextTable::AppClassModuleLookup_
static
Initial value:
= {
std::make_pair(XDAQContextTable::GATEWAY_SUPERVISOR_CLASS, "${OTSDAQ_LIB}/libGatewaySupervisor.so"),
std::make_pair(XDAQContextTable::ARTDAQ_SUPERVISOR_CLASS, "${OTSDAQ_LIB}/libARTDAQSupervisor.so"),
std::make_pair(*(std::next(XDAQContextTable::FETypeClassNames_.begin(),2)), "${OTSDAQ_LIB}/libCoreSupervisors.so"),
std::make_pair(*(std::next(XDAQContextTable::FETypeClassNames_.begin(),1)), "${OTSDAQ_LIB}/libCoreSupervisors.so"),
std::make_pair(*(XDAQContextTable::FETypeClassNames_.begin()), "${OTSDAQ_LIB}/libCoreSupervisors.so"),
std::make_pair(*(std::next(XDAQContextTable::DMTypeClassNames_.begin(),2)), "${OTSDAQ_LIB}/libCoreSupervisors.so"),
std::make_pair(*(std::next(XDAQContextTable::DMTypeClassNames_.begin(),1)), "${OTSDAQ_LIB}/libCoreSupervisors.so"),
std::make_pair(*(XDAQContextTable::DMTypeClassNames_.begin()), "${OTSDAQ_LIB}/libCoreSupervisors.so"),
std::make_pair(*(std::next(XDAQContextTable::LogbookTypeClassNames_.begin(),1)), "${OTSDAQ_UTILITIES_LIB}/libLogbook.so"),
std::make_pair(*(XDAQContextTable::LogbookTypeClassNames_.begin()), "${OTSDAQ_UTILITIES_LIB}/libECLWriter.so"),
std::make_pair(*(XDAQContextTable::MacroMakerTypeClassNames_.begin()), "${OTSDAQ_UTILITIES_LIB}/libMacroMaker.so"),
std::make_pair(*(XDAQContextTable::ChatTypeClassNames_.begin()), "${OTSDAQ_UTILITIES_LIB}/libChat.so"),
std::make_pair(*(XDAQContextTable::ConsoleTypeClassNames_.begin()), "${OTSDAQ_UTILITIES_LIB}/libConsole.so"),
std::make_pair(*(XDAQContextTable::ConfigurationGUITypeClassNames_.begin()), "${OTSDAQ_UTILITIES_LIB}/libConfigurationGUI.so"),
std::make_pair(*(XDAQContextTable::CodeEditorTypeClassNames_.begin()), "${OTSDAQ_LIB}/libCodeEditor.so"),
std::make_pair(*(XDAQContextTable::VisualizerTypeClassNames_.begin()), "${OTSDAQ_UTILITIES_LIB}/libVisualization.so"),
std::make_pair(*(XDAQContextTable::SlowControlsTypeClassNames_.begin()), "${OTSDAQ_UTILITIES_LIB}/libSlowControlsDashboard.so")
}

NOTE!!! std::next + offset reads std::set from right-to-left above (end to beginning)

Definition at line 138 of file XDAQContextTable.h.


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