|
DUNE-DAQ
DUNE Trigger and Data Acquisition software
|
OksObject describes instance of OksClass. More...
#include <object.hpp>
Classes | |
| struct | SortById |
| struct | OksUid |
| struct | BindInfo |
Public Types | |
| typedef void(* | notify_obj) (OksObject *, void *) |
| typedef std::map< const std::string *, OksObject *, SortById > | SMap |
| typedef std::unordered_map< const std::string *, OksObject *, oks::hash_str, oks::equal_str > | Map |
| typedef std::unordered_set< OksObject *, oks::hash_obj_ptr, oks::equal_obj_ptr > | FSet |
| typedef std::set< OksObject *, std::less< OksObject * > > | Set |
| typedef std::list< OksObject * > | List |
| typedef std::list< OksObject *, boost::fast_pool_allocator< OksObject * > > | FList |
Public Member Functions | |
| OksObject (const OksClass *oks_class, const char *object_id=0, bool skip_init=false) | |
| OKS object constructor. | |
| OksObject (const OksObject &parent_object, const char *object_id=0) | |
| OKS object copy constructor. | |
| bool | operator== (const OksObject &) const |
| The equality operator. | |
| bool | operator!= (const OksObject &) const =delete |
| void * | operator new (size_t) |
| void | operator delete (void *ptr) |
| const OksClass * | GetClass () const |
| const std::string & | GetId () const |
| void | set_id (const std::string &id) |
| Set object ID. | |
| OksFile * | get_file () const |
| void | set_file (OksFile *file, bool update_owner=true) |
| Move object to different file. | |
| OksData * | GetAttributeValue (const std::string &name) const |
| Get value of attribute by name. | |
| OksData * | GetAttributeValue (const OksDataInfo *i) const noexcept |
| Get value of attribute by offset. | |
| OksData * | GetRelationshipValue (const std::string &) const |
| Get value of relationship by name. | |
| OksData * | GetRelationshipValue (const OksDataInfo *i) const noexcept |
| Get value of relationship by offset. | |
| void | SetAttributeValue (const std::string &name, OksData *data) |
| Set value of attribute by name. | |
| void | SetAttributeValue (const OksDataInfo *data_info, OksData *data) |
| Set value of attribute by offset. | |
| void | SetRelationshipValue (const std::string &name, OksData *data, bool skip_non_null_check=false) |
| Set value of relationship by name. | |
| void | SetRelationshipValue (const OksDataInfo *data_info, OksData *data, bool skip_non_null_check=false) |
| Set value of relationship by offset. | |
| void | SetRelationshipValue (const std::string &name, OksObject *object) |
| Set value of single-value relationship by name. | |
| void | SetRelationshipValue (const OksDataInfo *data_info, OksObject *object) |
| Set value of single-value relationship by offset. | |
| void | AddRelationshipValue (const std::string &name, OksObject *object) |
| Add object value to multi-value relationship by name. | |
| void | AddRelationshipValue (const OksDataInfo *data_info, OksObject *object) |
| Add object value to multi-value relationship by offset. | |
| void | RemoveRelationshipValue (const std::string &name, OksObject *object) |
| Remove object value from multi-value relationship by name. | |
| void | RemoveRelationshipValue (const OksDataInfo *data_info, OksObject *object) |
| Remove object value from multi-value relationship by offset. | |
| void | SetRelationshipValue (const std::string &rel_name, const std::string &class_name, const std::string &object_id) |
| Set class-name and object-id value of single-value relationship by name. | |
| void | AddRelationshipValue (const std::string &rel_name, const std::string &class_name, const std::string &object_i) |
| Add class-name and object-id value to multi-value relationship by name. | |
| void | RemoveRelationshipValue (const std::string &rel_name, const std::string &class_name, const std::string &object_i) |
| Remove class-name and object-id value from multi-value relationship by name. | |
| const std::list< OksRCR * > * | reverse_composite_rels () const |
| Return information about composite parents. The method returns list of the OKS object's reverse composite relationships. | |
| FList * | get_all_rels (const std::string &name="*") const |
| Return objects referencing this one via relationship with given name. | |
| void | SetTransientData (void *d) const |
| Set transient user data associated with given object. Such data are not stored on file and only exist while OksKernel object is not destroyed. | |
| void * | GetTransientData () const |
| Get transient user data associated with given object. Return data set using SetTransientData() method. | |
| void | set_int32_id (int32_t object_id) |
| Set object id is used to assign an object unique integer number. Such data are not stored on file and only exist while OksKernel object is not destroyed. | |
| int32_t | get_int32_id () const |
| Get object id associated with given object. Return integer number set using set_int32_id() method. | |
| bool | SatisfiesQueryExpression (OksQueryExpression *query_exp) const |
| Check if object satisfies query expression. | |
| bool | satisfies (const OksObject *goal, const oks::QueryPathExpression &expresssion, OksObject::List &path) const |
| OksObject::List * | find_path (const oks::QueryPath &query) const |
| bool | is_consistent (const std::set< OksFile * > &, const char *msg) const |
| std::string | report_dangling_references () const |
| void | references (OksObject::FSet &refs, unsigned long recursion_depth, bool add_self=false, oks::ClassSet *classes=0) const |
| bool | is_duplicated () const |
| void | add_RCR (OksObject *, const OksRelationship *) |
| void | remove_RCR (OksObject *, const OksRelationship *) noexcept |
Static Public Member Functions | |
| static void | destroy (OksObject *obj, bool fast=false) |
| Destroy OKS object. | |
| static bool | are_equal_fast (const OksObject *o1, const OksObject *o2) |
| The fast equal method. | |
Private Member Functions | |
| ~OksObject () | |
| void | __report_type_cvt_warning (const oks::ReadFileParams &, const OksAttribute &, const OksData &, const OksData::Type, int32_t) const |
| void | __report_cardinality_cvt_warning (const oks::ReadFileParams &, const OksRelationship &) const |
| int32_t | __get_num (const oks::ReadFileParams ¶ms) |
| void | read_body (const oks::ReadFileParams &, bool) |
| OksObject (const oks::ReadFileParams &, OksClass *, const std::string &) | |
| OksObject (size_t, const OksData *) | |
| OksObject (OksClass *c, const std::string &id, void *user_data, int32_t object_id, int32_t duplicated_object_id_idx, OksFile *f) | |
| OksObject & | operator= (const OksObject &) |
| void | init1 (const OksFile *=0) |
| void | init2 (bool skip_init=false) |
| void | init3 () |
| void | init3 (OksClass *c) |
| void | check_ids () |
| void | notify () |
| void | check_class_type (const OksRelationship *, const OksClass *) |
| void | check_class_type (const OksRelationship *r, const OksObject *o) |
| void | check_non_null (const OksRelationship *, const OksObject *) |
| void | check_file_lock (const OksAttribute *, const OksRelationship *) |
| void | set_unique_id () |
| void | put (OksXmlOutputStream &, bool force_defaults) const |
| void | bind_objects () |
| void | unbind_file (const OksFile *) |
| bool | check_links_and_report (const OksObject *, const std::set< OksFile * > &, const std::string &, const char *) const |
| notify_obj | get_change_notify () const |
| void | create_notify () |
| void | change_notify () |
| void | delete_notify () |
Static Private Member Functions | |
| static OksObject * | read (const oks::ReadFileParams &) |
| static void | put_object_attributes (OksXmlOutputStream &, const OksData &) |
| static void | bind (OksData *, const BindInfo &) |
Private Attributes | |
| struct dunedaq::oks::OksObject::OksUid | uid |
| OksData * | data |
| std::list< OksRCR * > * | p_rcr |
| void * | p_user_data |
| int32_t | p_int32_id |
| int32_t | p_duplicated_object_id_idx |
| OksFile * | file |
Static Private Attributes | |
| static const char | obj_xml_tag [] = "obj" |
| static const char | obj2_xml_tag [] = "o" |
| static const char | attribute_xml_tag [] = "attr" |
| static const char | relationship_xml_tag [] = "rel" |
| static const char | class_xml_attribute [] = "class" |
| static const char | class2_xml_attribute [] = "c" |
| static const char | id_xml_attribute [] = "id" |
| static const char | id2_xml_attribute [] = "i" |
| static const char | name_xml_attribute [] = "name" |
| static const char | type_xml_attribute [] = "type" |
| static const char | num_xml_attribute [] = "num" |
| static const char | value_xml_attribute [] = "val" |
| static const char | data_xml_tag [] = "data" |
| static const char | ref_xml_tag [] = "ref" |
Friends | |
| class | OksClass |
| struct | OksData |
| class | OksKernel |
| class | OksIndex |
| class | OksObjectSortBy |
| struct | OksLoadObjectsJob |
| struct | oks::ReadFileParams |
| struct | oks::ReloadObjects |
| std::ostream & | operator<< (std::ostream &out, const OksObject &obj) |
| Detailed stream operator. | |
| std::ostream & | operator<< (std::ostream &s, const OksObject *o) |
| Short stream operator. | |
OksObject describes instance of OksClass.
This class implements OKS object that is an instance of OKS class. Each object has unique ID string in a scope of class and its derived sub-classes. The properties of object are described by values of its attributes (i.e. values of primitive types like strings, integers, floats, see also OksAttribute) and relationships (i.e. references on others OKS objects, see also OksRelationship).
Definition at line 840 of file object.hpp.
| typedef std::list<OksObject *, boost::fast_pool_allocator<OksObject *> > dunedaq::oks::OksObject::FList |
Definition at line 882 of file object.hpp.
| typedef std::unordered_set<OksObject *, oks::hash_obj_ptr, oks::equal_obj_ptr> dunedaq::oks::OksObject::FSet |
Definition at line 871 of file object.hpp.
| typedef std::list<OksObject *> dunedaq::oks::OksObject::List |
Definition at line 880 of file object.hpp.
| typedef std::unordered_map<const std::string *, OksObject *, oks::hash_str, oks::equal_str> dunedaq::oks::OksObject::Map |
Map of pointers to OksObject (unsorted)
Definition at line 870 of file object.hpp.
| typedef void(* dunedaq::oks::OksObject::notify_obj) (OksObject *, void *) |
Definition at line 853 of file object.hpp.
| typedef std::set<OksObject *, std::less<OksObject *> > dunedaq::oks::OksObject::Set |
Definition at line 876 of file object.hpp.
| typedef std::map<const std::string *, OksObject *, SortById> dunedaq::oks::OksObject::SMap |
Map of pointers to OksObject sorted by object Id
Definition at line 865 of file object.hpp.
| dunedaq::oks::OksObject::OksObject | ( | const OksClass * | oks_class, |
| const char * | object_id = 0, | ||
| bool | skip_init = false ) |
OKS object constructor.
Create new OKS object providing class and object ID. If the object ID is not set, the OKS creates new object with random unique ID. To create a new object the OKS kernel active data file has to be set.
In case of problems the error message is printed and the uid.class_id is set to 0 to flag the error.
The parameters are:
| oks_class | pointer to OKS class |
| object_id | optional object unique ID |
| skip_init | if true, skip initialization of OKS data |
Definition at line 1180 of file object.cpp.
| dunedaq::oks::OksObject::OksObject | ( | const OksObject & | parent_object, |
| const char * | object_id = 0 ) |
OKS object copy constructor.
Create new OKS object as copy of parent. If the object ID is not set, the OKS creates new object with random unique ID. To create a new object the OKS kernel active data file has to be set.
In case of problems the error message is printed and the uid.class_id is set to 0 to flag the error.
The parameters are:
| parent_object | pointer to OKS class |
| object_id | optional object unique ID |
Definition at line 1206 of file object.cpp.
|
private |
Definition at line 1369 of file object.cpp.
|
private |
Construct OKS object from input stream.
| oks::exception | is thrown in case of errors. |
Definition at line 1157 of file object.cpp.
|
private |
Definition at line 1281 of file object.cpp.
|
private |
Definition at line 1288 of file object.cpp.
|
private |
Definition at line 507 of file object.cpp.
|
private |
Definition at line 490 of file object.cpp.
|
private |
Definition at line 456 of file object.cpp.
| void dunedaq::oks::OksObject::add_RCR | ( | OksObject * | o, |
| const OksRelationship * | r ) |
Definition at line 2579 of file object.cpp.
| void dunedaq::oks::OksObject::AddRelationshipValue | ( | const OksDataInfo * | data_info, |
| OksObject * | object ) |
Add object value to multi-value relationship by offset.
In case of problems (e.g. wrong class type, relationship is single-value or RCR cannot be set) the oks::exception is thrown.
The parameters are:
| data_info | describes offset of relationship's value for given OKS class |
| object | the object to be added |
| oks::exception | is thrown in case of problems. |
Definition at line 2308 of file object.cpp.
| void dunedaq::oks::OksObject::AddRelationshipValue | ( | const std::string & | name, |
| OksObject * | object ) |
Add object value to multi-value relationship by name.
In case of problems (e.g. no relationship with such name, wrong class type, relationship is single-value or RCR cannot be set) the oks::exception is thrown.
The parameters are:
| name | name of relationship |
| object | the object to be added |
| oks::exception | is thrown in case of problems. |
Definition at line 2341 of file object.cpp.
| void dunedaq::oks::OksObject::AddRelationshipValue | ( | const std::string & | rel_name, |
| const std::string & | class_name, | ||
| const std::string & | object_i ) |
Add class-name and object-id value to multi-value relationship by name.
In case of problems (e.g. no relationship with such name, unknown class) the oks::exception is thrown.
The parameters are:
| rel_name | name of relationship |
| class_name | class name of the referenced object |
| object_id | ID of the referenced object |
| oks::exception | is thrown in case of problems. |
Definition at line 2479 of file object.cpp.
The fast equal method.
This method replaces operator!= used by OKS library in the past, since the operator causes problems starting from gcc62 assuming &reference != nullptr
The method returns false, if comparing objects belong to classes with different names or their IDs are not equal.
Definition at line 1605 of file object.cpp.
Definition at line 2631 of file object.cpp.
|
private |
Binds objects and returns true on success
Definition at line 2736 of file object.cpp.
|
private |
Invoke change object notification.
Definition at line 2898 of file object.cpp.
|
private |
Definition at line 2036 of file object.cpp.
|
inlineprivate |
Definition at line 1486 of file object.hpp.
|
private |
Definition at line 3196 of file object.cpp.
|
private |
Definition at line 167 of file object.cpp.
|
private |
Definition at line 2921 of file object.cpp.
|
private |
Definition at line 2024 of file object.cpp.
|
private |
Invoke create object notification.
Definition at line 2884 of file object.cpp.
|
private |
Invoke delete object notification.
Definition at line 2911 of file object.cpp.
Destroy OKS object.
This the the only way available to user to destroy OKS object since ~OksObject() is private.
When an object is destroyed, it shall not be referenced by other objects.
In case of problems the oks::exception is thrown.
The parameters are:
| obj | the object to be destroyed |
| fast | if true, skip extra protection checks |
Definition at line 1306 of file object.cpp.
| OksObject::List * dunedaq::oks::OksObject::find_path | ( | const oks::QueryPath & | query | ) | const |
Definition at line 941 of file query.cpp.
| OksObject::FList * dunedaq::oks::OksObject::get_all_rels | ( | const std::string & | name = "*" | ) | const |
Return objects referencing this one via relationship with given name.
The method returns list of objects which have a reference on given one. If the relationship name is set to "*", then the method takes into account all relationships of all objects. The method performs full scan of all OKS objects and it is not recommended at large scale to build complete graph of relations between all database object; if only composite parents are needed, them the reverse_composite_rels() method has to be used.
The parameters are:
| name | the name of relationship used to reference given object (by default ANY relationship) |
Definition at line 3134 of file object.cpp.
|
private |
Definition at line 2874 of file object.cpp.
|
inline |
|
inline |
Get object id associated with given object. Return integer number set using set_int32_id() method.
Definition at line 1363 of file object.hpp.
|
inlinenoexcept |
Get value of attribute by offset.
The method returns pointer on OksData value for given attribute offset. The method is optimised for performance and does not check validity of offset.
The parameter is:
| data_info | describes offset of attribute's value for given OKS class |
Definition at line 1067 of file object.hpp.
| OksData * dunedaq::oks::OksObject::GetAttributeValue | ( | const std::string & | name | ) | const |
Get value of attribute by name.
The method returns pointer on OksData value for given attribute.
In case of problems (e.g. no attribute with such name) the oks::exception is thrown.
The parameter is:
| name | name of attribute |
| oks::exception | is thrown in case of problems. |
Definition at line 1924 of file object.cpp.
|
inline |
|
inline |
|
inlinenoexcept |
Get value of relationship by offset.
The method returns pointer on OksData value for given relationship offset. The method is optimised for performance and does not check validity of offset.
The parameter is:
| data_info | describes offset of relationship's value for given OKS class |
Definition at line 1100 of file object.hpp.
| OksData * dunedaq::oks::OksObject::GetRelationshipValue | ( | const std::string & | name | ) | const |
Get value of relationship by name.
The method returns pointer on OksData value for given relationship.
In case of problems (e.g. no relationship with such name) the oks::exception is thrown.
The parameter is:
| name | name of relationship |
| oks::exception | is thrown in case of problems. |
Definition at line 2009 of file object.cpp.
|
inline |
Get transient user data associated with given object. Return data set using SetTransientData() method.
Definition at line 1348 of file object.hpp.
|
private |
Definition at line 187 of file object.cpp.
|
private |
Definition at line 280 of file object.cpp.
|
private |
Definition at line 326 of file object.cpp.
|
private |
| bool dunedaq::oks::OksObject::is_consistent | ( | const std::set< OksFile * > & | includes, |
| const char * | msg ) const |
The method checks the schema constraints for given object and the file's includes. Return false, if object is inconsistent.
Definition at line 2993 of file object.cpp.
|
inline |
Definition at line 1395 of file object.hpp.
|
inlineprivate |
Definition at line 1480 of file object.hpp.
|
inline |
|
inline |
Fast new operator to reduce resources consumption.
Definition at line 965 of file object.hpp.
The equality operator.
The operator returns true, if comparing objects belong to the same class or classes with equal names (e.g. belonging to different OksKernels) and their attributes and relationships are equal.
Definition at line 1617 of file object.cpp.
|
private |
Definition at line 1785 of file object.cpp.
|
staticprivate |
Definition at line 1759 of file object.cpp.
|
staticprivate |
Read OKS object from input stream.
| oks::exception | is thrown in case of errors, e.g. bad input stream, duplicated object, abstract class of object. |
Definition at line 368 of file object.cpp.
|
private |
Definition at line 518 of file object.cpp.
| void dunedaq::oks::OksObject::references | ( | OksObject::FSet & | refs, |
| unsigned long | recursion_depth, | ||
| bool | add_self = false, | ||
| oks::ClassSet * | classes = 0 ) const |
The method puts to set objects recursively referenced by given object.
Definition at line 3115 of file object.cpp.
|
noexcept |
Definition at line 2607 of file object.cpp.
| void dunedaq::oks::OksObject::RemoveRelationshipValue | ( | const OksDataInfo * | data_info, |
| OksObject * | object ) |
Remove object value from multi-value relationship by offset.
In case of problems (e.g. relationship is single-value or there is no such object) the oks::exception is thrown.
The parameters are:
| data_info | describes offset of relationship's value for given OKS class |
| object | the object to be removed from relationship |
| oks::exception | is thrown in case of problems. |
Definition at line 2356 of file object.cpp.
| void dunedaq::oks::OksObject::RemoveRelationshipValue | ( | const std::string & | name, |
| OksObject * | object ) |
Remove object value from multi-value relationship by name.
In case of problems (e.g. no relationship with such name, relationship is single-value or there is no such object) the oks::exception is thrown.
The parameters are:
| name | name of relationship |
| object | the object to be removed from relationship |
| oks::exception | is thrown in case of problems. |
Definition at line 2394 of file object.cpp.
| void dunedaq::oks::OksObject::RemoveRelationshipValue | ( | const std::string & | rel_name, |
| const std::string & | class_name, | ||
| const std::string & | object_i ) |
Remove class-name and object-id value from multi-value relationship by name.
In case of problems (e.g. no relationship with such name, no such object) the oks::exception is thrown.
The parameters are:
| rel_name | name of relationship |
| class_name | class name of the referenced object |
| object_id | ID of the referenced object |
| oks::exception | is thrown in case of problems. |
Definition at line 2533 of file object.cpp.
| std::string dunedaq::oks::OksObject::report_dangling_references | ( | ) | const |
The method returns string containing dangling references for given object.
Definition at line 2962 of file object.cpp.
|
inline |
Return information about composite parents. The method returns list of the OKS object's reverse composite relationships.
Definition at line 1315 of file object.hpp.
| bool dunedaq::oks::OksObject::satisfies | ( | const OksObject * | goal, |
| const oks::QueryPathExpression & | expresssion, | ||
| OksObject::List & | path ) const |
Definition at line 955 of file query.cpp.
| bool dunedaq::oks::OksObject::SatisfiesQueryExpression | ( | OksQueryExpression * | query_exp | ) | const |
Check if object satisfies query expression.
The method parses query expression structures and applies them to the object's values. In case of incorrect query expression parameter the method throws exception.
| query_exp | the query expression |
| std::exception | is thrown in case of problems. |
Definition at line 635 of file query.cpp.
Move object to different file.
Move object to an existing file. Both, present file where object is stored and new destination file have to be writable by user.
The parameters are:
| file | destination file |
| update_owner | mark original file as updated |
| oks::exception | is thrown in case of problems. |
Definition at line 1489 of file object.cpp.
| void dunedaq::oks::OksObject::set_id | ( | const std::string & | id | ) |
Set object ID.
The ID has to be unique in scope of object's class and all classes participating in inheritance hierarchy of this class.
| id | new identity of the object In case of problems the oks::exception is thrown. |
Definition at line 1511 of file object.cpp.
|
inline |
Set object id is used to assign an object unique integer number. Such data are not stored on file and only exist while OksKernel object is not destroyed.
Definition at line 1356 of file object.hpp.
|
private |
Definition at line 144 of file object.cpp.
| void dunedaq::oks::OksObject::SetAttributeValue | ( | const OksDataInfo * | data_info, |
| OksData * | data ) |
Set value of attribute by offset.
It the type of data do not match to the defined by the attribute of object's class, then the method tries to convert them and to print out warning message.
In case of problems (e.g. data are out of range) the oks::exception is thrown.
The parameters are:
| data_info | describes offset of attribute's value for given OKS class |
| data | new attribute value |
| oks::exception | is thrown in case of problems. |
Definition at line 1939 of file object.cpp.
| void dunedaq::oks::OksObject::SetAttributeValue | ( | const std::string & | name, |
| OksData * | data ) |
Set value of attribute by name.
It the type of data do not match to the defined by the attribute of object's class, then the method tries to convert them and to print out warning message.
In case of problems (e.g. no attribute with such name, data are out of range) the oks::exception is thrown.
The parameters are:
| name | name of attribute |
| data | new attribute value |
| oks::exception | is thrown in case of problems. |
Definition at line 1995 of file object.cpp.
| void dunedaq::oks::OksObject::SetRelationshipValue | ( | const OksDataInfo * | data_info, |
| OksData * | data, | ||
| bool | skip_non_null_check = false ) |
Set value of relationship by offset.
In case of problems (e.g. wrong class type or cardinality constraint) the oks::exception is thrown.
The parameters are:
| data_info | describes offset of relationship's value for given OKS class |
| data | new relationship value |
| skip_non_null_check | if true, ignore low cardinality constraint |
| oks::exception | is thrown in case of problems. |
Definition at line 2060 of file object.cpp.
| void dunedaq::oks::OksObject::SetRelationshipValue | ( | const OksDataInfo * | data_info, |
| OksObject * | object ) |
Set value of single-value relationship by offset.
In case of problems (e.g. wrong class type or relationship is multi-value) the oks::exception is thrown.
The parameters are:
| data_info | describes offset of relationship's value for given OKS class |
| object | new relationship value |
| oks::exception | is thrown in case of problems. |
Definition at line 2209 of file object.cpp.
| void dunedaq::oks::OksObject::SetRelationshipValue | ( | const std::string & | name, |
| OksData * | data, | ||
| bool | skip_non_null_check = false ) |
Set value of relationship by name.
In case of problems (e.g. no relationship with such name, wrong class type or cardinality constraint) the oks::exception is thrown.
The parameters are:
| name | name of relationship |
| data | new relationship value |
| skip_non_null_check | if true, ignore low cardinality constraint |
| oks::exception | is thrown in case of problems. |
Definition at line 2194 of file object.cpp.
| void dunedaq::oks::OksObject::SetRelationshipValue | ( | const std::string & | name, |
| OksObject * | object ) |
Set value of single-value relationship by name.
In case of problems (e.g. no relationship with such name, wrong class type or relationship is multi-value) the oks::exception is thrown.
The parameters are:
| name | name of relationship |
| object | new relationship value |
| oks::exception | is thrown in case of problems. |
Definition at line 2252 of file object.cpp.
| void dunedaq::oks::OksObject::SetRelationshipValue | ( | const std::string & | rel_name, |
| const std::string & | class_name, | ||
| const std::string & | object_id ) |
Set class-name and object-id value of single-value relationship by name.
In case of problems (e.g. no relationship with such name, wrong class type or relationship is multi-value) the oks::exception is thrown.
The parameters are:
| rel_name | name of relationship |
| class_name | class name of the referenced object |
| object_id | ID of the referenced object |
| oks::exception | is thrown in case of problems. |
Definition at line 2408 of file object.cpp.
|
inline |
Set transient user data associated with given object. Such data are not stored on file and only exist while OksKernel object is not destroyed.
Definition at line 1340 of file object.hpp.
|
private |
Definition at line 2830 of file object.cpp.
|
friend |
Definition at line 848 of file object.hpp.
|
friend |
Definition at line 849 of file object.hpp.
|
friend |
Definition at line 842 of file object.hpp.
|
friend |
Definition at line 843 of file object.hpp.
|
friend |
Definition at line 845 of file object.hpp.
|
friend |
Definition at line 844 of file object.hpp.
|
friend |
Definition at line 847 of file object.hpp.
|
friend |
Definition at line 846 of file object.hpp.
|
friend |
Detailed stream operator.
Send to stream complete description of OKS object:
Definition at line 1654 of file object.cpp.
|
friend |
Short stream operator.
Send to stream OKS object reference in format "foo@bar" (i.e. object "foo" from class "bar")
Definition at line 1638 of file object.cpp.
|
staticprivate |
Definition at line 1520 of file object.hpp.
|
staticprivate |
Definition at line 1523 of file object.hpp.
|
staticprivate |
Definition at line 1522 of file object.hpp.
|
private |
Definition at line 1410 of file object.hpp.
|
staticprivate |
Definition at line 1531 of file object.hpp.
|
private |
Definition at line 1415 of file object.hpp.
|
staticprivate |
Definition at line 1525 of file object.hpp.
|
staticprivate |
Definition at line 1524 of file object.hpp.
|
staticprivate |
Definition at line 1526 of file object.hpp.
|
staticprivate |
Definition at line 1528 of file object.hpp.
|
staticprivate |
Definition at line 1519 of file object.hpp.
|
staticprivate |
Definition at line 1518 of file object.hpp.
|
private |
Definition at line 1414 of file object.hpp.
|
private |
Definition at line 1413 of file object.hpp.
|
private |
Definition at line 1411 of file object.hpp.
|
mutableprivate |
Definition at line 1412 of file object.hpp.
|
staticprivate |
Definition at line 1532 of file object.hpp.
|
staticprivate |
Definition at line 1521 of file object.hpp.
|
staticprivate |
Definition at line 1527 of file object.hpp.
|
private |
|
staticprivate |
Definition at line 1530 of file object.hpp.