ifw-ccf 5.0.2
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
ifw::ccf::control::Config Class Reference

Provides access to the command line options and the configuration parameters stored in the configuration file. More...

#include <config.hpp>

Inheritance diagram for ifw::ccf::control::Config:
ifw::ccf::common::Config ifw::ccf::Base

Public Member Functions

 Config ()
 
virtual ~Config ()
 
void LoadConfig (const std::string &filename="", bool reset=false)
 See ifw::core::utils::bat::Config.
 
int16_t GetNbOfProcThreads ()
 
std::string GetProcThreadName (const uint16_t nb)
 Get the Processing Thread name from the number.
 
const std::vector< std::string > & GetProcThreadNames ()
 Get the Processing Thread names.
 
const PipelineInfoGetPipelineInfo (const std::string &proc_thread_name)
 Get pipeline (processing thread) info.
 
const std::map< std::string, RecipeInfo > & GetRecipesForProcThread (const std::string &proc_thread_name)
 Get Recipes defined for a given Processing Trhead.
 
const std::map< std::string, PublisherInfo > & GetPubsForProcThread (const std::string &proc_thread_name)
 Get the Processing Thread names.
 
const PublisherInfoGetPubInfo (const std::string &proc_thread_name, const std::string &pub_thread_name)
 Get the info about the Publisher from the Processing and Publisher Thread numbers.
 
- Public Member Functions inherited from ifw::ccf::common::Config
 Config ()
 
 ~Config ()
 
bool ParseOptions (int argc, char *argv[])
 Parse command line options.
 
void SetLogProperties (const std::string &filename)
 Set the log properties file.
 
void LoadConfig (const std::string &filename="", bool reset=false)
 Load the configuration file.
 
void GetPars (std::map< std::string, std::string > &pars, const std::string &pattern="*")
 Return map with all parameters in the object. Staging pars take precedence.
 
elt::configng::CiiConfigInstanceNode & GetNode (const std::vector< std::string > &names)
 Get the reference to a specific node in the CII Cfg Service namespace.
 
bool HasNode (const std::vector< std::string > &names, elt::configng::CiiConfigInstanceNode &node)
 Probe if a given node is defined. If yes, return the reference to the node.
 
template<class TYPE >
bool HasPar (const std::vector< std::string > &names, TYPE &value)
 Probe if a given key is defined. Set the value variable if found and return true.
 
bool HasPar (const std::vector< std::string > &names)
 Probe if a given parameter is defined. Return true if found.
 
template<class TYPE >
TYPE Get (const std::vector< std::string > &names)
 Get a parameter value from the configuration.
 
template<class TYPE >
void Set (const std::vector< std::string > &names, TYPE &value)
 Set the value of a parameter in the CII Cfg Service namespace.
 
uint32_t GetMaxFrameSize (const std::string &device="")
 Return the maximum frame size in bytes with the associated camera/configuration.
 
virtual uint32_t GetMaxFrameSizeUser (const std::string &device="")
 
const DeviceInfoGetDeviceInfo (const std::string &device="") const
 Return reference to Device Info structure.
 
void GetDeviceProperties (std::map< std::string, DeviceProperty > &device_properties, const std::string &device="") const
 Get device properties.
 
template<class TYPE >
bool HasDeviceProperty (const std::string &name, TYPE &value, const std::string &device="")
 
const bpo::variables_map & GetOptions () const
 Return map with command line options.
 
std::string GetDeviceName (const std::string &device="") const
 Return name of a specific device. If "" is given the first (maybe only) device defined,.
 
bool HasDeviceProperty (const std::string &name, DeviceProperty &property, const std::string &device="")
 Check if a certain Device Property is defined in the configuration.
 
template<class TYPE >
void SetDeviceProperty (const std::string &property, TYPE value, const std::string &device="")
 
- Public Member Functions inherited from ifw::ccf::Base
 Base ()
 
 ~Base ()
 
const std::string & GetClassName () const
 Return the allocated name of the class.
 

Static Public Member Functions

static ConfigInstance ()
 Return reference to unique instance of the configuration class.
 
- Static Public Member Functions inherited from ifw::ccf::common::Config
static ConfigInstance ()
 Return reference to unique instance of the configuration class.
 
static ifw::core::utils::bat::Config & BatCfg ()
 Return reference to internal BAT configuration object.
 
static const elt::configng::CiiConfigInstanceNamespace & CiiCfg ()
 Return reference to internal CII Configuration namespace object.
 
- Static Public Member Functions inherited from ifw::ccf::Base
static ifw::ccf::mptk::ManagerMptk ()
 Return reference to internal MPTK instance (singleton).
 

Static Public Attributes

static Configs_instance = nullptr
 
- Static Public Attributes inherited from ifw::ccf::common::Config
static Configs_instance = nullptr
 
static ifw::core::utils::bat::Config s_bat_cfg
 
static std::vector< std::string > s_devices
 
static std::map< std::string, DeviceInfos_device_info
 

Additional Inherited Members

- Protected Member Functions inherited from ifw::ccf::Base
void SetClassName (const std::string &class_name)
 Set the name of the class in question.
 

Detailed Description

Provides access to the command line options and the configuration parameters stored in the configuration file.

Constructor & Destructor Documentation

◆ Config()

ifw::ccf::control::Config::Config ( )

◆ ~Config()

ifw::ccf::control::Config::~Config ( )
virtual

Member Function Documentation

◆ GetNbOfProcThreads()

int16_t ifw::ccf::control::Config::GetNbOfProcThreads ( )
Returns
The number of Processing Threads.

◆ GetPipelineInfo()

const PipelineInfo & ifw::ccf::control::Config::GetPipelineInfo ( const std::string & proc_thread_name)

Get pipeline (processing thread) info.

◆ GetProcThreadName()

std::string ifw::ccf::control::Config::GetProcThreadName ( const uint16_t nb)

Get the Processing Thread name from the number.

◆ GetProcThreadNames()

const std::vector< std::string > & ifw::ccf::control::Config::GetProcThreadNames ( )

Get the Processing Thread names.

◆ GetPubInfo()

const PublisherInfo & ifw::ccf::control::Config::GetPubInfo ( const std::string & proc_thread_name,
const std::string & pub_thread_name )

Get the info about the Publisher from the Processing and Publisher Thread numbers.

◆ GetPubsForProcThread()

const std::map< std::string, PublisherInfo > & ifw::ccf::control::Config::GetPubsForProcThread ( const std::string & proc_thread_name)

Get the Processing Thread names.

◆ GetRecipesForProcThread()

const std::map< std::string, RecipeInfo > & ifw::ccf::control::Config::GetRecipesForProcThread ( const std::string & proc_thread_name)

Get Recipes defined for a given Processing Trhead.

◆ Instance()

Config & ifw::ccf::control::Config::Instance ( )
static

Return reference to unique instance of the configuration class.

◆ LoadConfig()

void ifw::ccf::control::Config::LoadConfig ( const std::string & filename = "",
bool reset = false )

See ifw::core::utils::bat::Config.

Member Data Documentation

◆ s_instance

Config * ifw::ccf::control::Config::s_instance = nullptr
static

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