DABC (Data Acquisition Backbone Core)
2.9.9
|
Command definition class. More...
#include <dabc/Parameter.h>
Public Member Functions | |
CommandDefinition & | AddArg (const std::string &name, const std::string &kind="string", bool required=true, const RecordField &dflt=RecordField()) |
int | FindArg (const std::string &name) const |
bool | GetArg (int n, std::string &name, std::string &kind, bool &required, std::string &dflt) const |
bool | HasArg (const std::string &name) const |
Command | MakeCommand () const |
Create command according command definition, all default and required parameters will be specified. More... | |
int | NumArgs () const |
CommandDefinition & | SetArgMinMax (const std::string &name, const RecordField &min, const RecordField &max) |
![]() | |
bool | AddChild (Object *obj) |
Add child to list of object children. More... | |
const char * | ClassName () const |
Return class name of referenced object, if object not assigned, returns "---". More... | |
void | Destroy () throw () |
Release reference and starts destroyment of referenced object. More... | |
Reference | FindChild (const char *name) const |
Searches for child in referenced object. More... | |
bool | GetAllChildRef (ReferencesVector *vect) const |
Return references for all childs. More... | |
Reference | GetChild (unsigned n) const |
Return reference on child n. More... | |
Reference | GetFolder (const std::string &name, bool force=false) throw () |
Return folder of specified name, no special symbols are allowed. More... | |
const char * | GetName () const |
Return name of referenced object, if object not assigned, returns "---". More... | |
Object * | GetObject () const |
Return pointer on the object. More... | |
Object * | GetParent () const |
Returns pointer on parent object. More... | |
Reference | GetParentRef () const |
Returns reference on parent object. More... | |
bool | IsName (const char *name) const |
Returns true if object name is the same as specified one. More... | |
std::string | ItemName (bool compact=true) const |
Produce string, which can be used as name argument in dabc::mgr.FindItem(name) call. More... | |
bool | null () const |
Returns true if reference contains nullptr. More... | |
unsigned | NumChilds () const |
Return number of childs in referenced object. More... | |
unsigned | NumReferences () const |
Returns number of references on the object. More... | |
bool | operator! () const |
Returns true if reference contains nullptr. More... | |
bool | operator!= (const Reference &src) const |
Compare operator - return true if references refer to different object. More... | |
bool | operator!= (Object *obj) const |
Compare operator - return true if reference refer to different objects. More... | |
Object * | operator() () const |
Return pointer on the object. More... | |
Reference & | operator<< (Reference &src) throw () |
Move operator - reference moved from source to target. More... | |
Reference & | operator= (const Reference &src) throw () |
Assignment operator - copy reference. More... | |
Reference & | operator= (Object *obj) throw () |
Assignment operator - copy reference. More... | |
bool | operator== (const Reference &src) const |
Compare operator - return true if references refer to same object. More... | |
bool | operator== (Object *obj) const |
Compare operator - return true if reference refer to same object. More... | |
void | Print (int lvl=0, const char *from=0) const |
Show on debug output content of reference. More... | |
Reference (const Reference &src) throw () | |
Copy constructor, if source is transient than source reference will be emptied. More... | |
Reference (Object *obj=nullptr) | |
Constructor, creates reference on the object. More... | |
std::string | RelativeName (const dabc::Reference &topitem) |
Produce name, which can be used to find item, calling topitem.FindChild(). More... | |
void | Release () throw () |
Releases reference on the object. More... | |
bool | RemoveChild (const char *name, bool cleanup=true) |
Remove child with given name and return reference on that child. More... | |
bool | RemoveChilds (bool cleanup=true) |
Remove all childs in referenced object If cleanup true (default) and object is owner, all objects will be destroyed. More... | |
void | SetAutoDestroy (bool on=true) |
Set autodestroy flag for the object Once enabled, object will be destroyed when last reference will be cleared. More... | |
void | SetObject (Object *obj, bool withmutex=true) |
Direct set of object to reference. More... | |
Reference | Take () |
Copy reference to output object. More... | |
virtual | ~Reference () |
Destructor, releases reference on the object. More... | |
Protected Member Functions | |
std::string | ArgName (int n) const |
![]() | |
bool | AcquireRefWithoutMutex (Reference &ref) |
Special method, which allows to generate new reference when object mutex is locked. More... | |
void | Assign (const Reference &src) |
Method used in copy constructor and assigned operations. More... | |
Mutex * | ObjectMutex () const |
template<class T > | |
bool | verify_object (Object *src, T *&tgt) |
Method used in reference constructor/assignments to verify is object is suitable. More... | |
Additional Inherited Members | |
![]() | |
Object * | fObj |
pointer on the object More... | |
Command definition class.
This class should be used to create command description, which than can be used to provide interactive user interface created with CreatePar(name, "cmddef") call or CreateCmdDef(name)
Definition at line 333 of file Parameter.h.
|
protected |
Definition at line 579 of file Parameter.cxx.
dabc::CommandDefinition & dabc::CommandDefinition::AddArg | ( | const std::string & | name, |
const std::string & | kind = "string" , |
||
bool | required = true , |
||
const RecordField & | dflt = RecordField() |
||
) |
Definition at line 593 of file Parameter.cxx.
dabc::CommandDefinition & dabc::CommandDefinition::SetArgMinMax | ( | const std::string & | name, |
const RecordField & | min, | ||
const RecordField & | max | ||
) |
Definition at line 618 of file Parameter.cxx.
int dabc::CommandDefinition::NumArgs | ( | ) | const |
Definition at line 574 of file Parameter.cxx.
int dabc::CommandDefinition::FindArg | ( | const std::string & | name | ) | const |
Definition at line 584 of file Parameter.cxx.
|
inline |
Definition at line 352 of file Parameter.h.
bool dabc::CommandDefinition::GetArg | ( | int | n, |
std::string & | name, | ||
std::string & | kind, | ||
bool & | required, | ||
std::string & | dflt | ||
) | const |
Definition at line 632 of file Parameter.cxx.
dabc::Command dabc::CommandDefinition::MakeCommand | ( | ) | const |
Create command according command definition, all default and required parameters will be specified.
Definition at line 656 of file Parameter.cxx.