![]() |
Radium Engine
1.5.0
|
Object associated with one or multiple semantic names. More...
#include <Core/Utils/ObjectWithSemantic.hpp>
Public Types | |
using | SemanticName = std::string |
using | SemanticNameCollection = std::set< SemanticName > |
Store in set to allow for logarithmic search. | |
Public Member Functions | |
ObjectWithSemantic (const ObjectWithSemantic &other) | |
bool | hasSemantic (const SemanticName &name) const |
const SemanticNameCollection & | semantics () const |
ObjectWithSemantic & | operator= (const ObjectWithSemantic &other) |
ObjectWithSemantic & | operator= (ObjectWithSemantic &&other) |
bool | shareSemantic (const ObjectWithSemantic &other) const |
bool | sameSemantics (const ObjectWithSemantic &other) const |
Protected Member Functions | |
template<class... SemanticNames> | |
ObjectWithSemantic (SemanticNames... names) | |
ObjectWithSemantic (const SemanticNameCollection &otherNames) | |
Object associated with one or multiple semantic names.
Holds a static collection of names (SemanticNameCollection) that are defined by the inheriting class when calling the protected constructor. Provides #hasSemantic to test if one object has a given semantic name, as well as #shareSemantic and #sameSemantics to compare different objects.
Definition at line 17 of file ObjectWithSemantic.hpp.