|
| Value (const agx::Name &name, const agxData::Format *format) |
|
| Value (const agx::Name &name, const agxData::Type *type) |
|
| Value (const agxData::Format *format) |
|
| Value (const agxData::Type *type) |
|
void | addListener (EventListener *listener) |
|
void | bind (const agx::Path &path) |
| Set bind path which will auto-bind when resolved.
|
|
void | bind (Value *binding) |
| Explicit binding, also disables auto-binding.
|
|
virtual void | buildNavigationTree (agxJson::Value &eNode) const override |
|
Value * | clone () const |
|
virtual void | configure (agx::TiXmlElement *eValue) override |
|
template<typename T > |
const T & | get () const |
|
Value * | getBinding () |
|
const Value * | getBinding () const |
|
const agx::Path & | getBindPath () const |
|
virtual agxData::Data * | getData () |
|
agxData::Format * | getFormat () |
|
const agxData::Format * | getFormat () const |
|
Value * | getRootBinding () |
|
const Value * | getRootBinding () const |
|
agxData::Type * | getType () |
|
const agxData::Type * | getType () const |
|
bool | hasListener (EventListener *listener) |
|
bool | isTypeCompatible (const Value *other) |
|
bool | isValid () const |
|
void | print () const |
|
void * | ptr () |
|
const void * | ptr () const |
|
virtual void | rebind () override |
| Rebind with the current auto-bind path.
|
|
void | removeListener (EventListener *listener) |
|
virtual void | save (agx::TiXmlElement *eParent) const override |
|
template<typename T > |
void | set (const T &value) |
|
void | set (const Value *other) |
| Explicitly set the value, removes active binding and disables autobinding.
|
|
void | set (const ValueRef &other) |
|
void | set (Value *other) |
|
void | set (ValueRef &other) |
|
void | setDefaultValue () |
| Set the default value of the format.
|
|
void | setExpression (const agx::String &expression) |
| Configure value using an expression.
|
|
void | setFormat (agxData::Format *format) |
|
template<typename T > |
void | signal (const T &value) |
| Wrapper for this->getRootBinding()->set()
|
|
virtual void | snapshot (agx::TiXmlNode *eParent, const agx::String &directory) const override |
|
agx::String | toString () const |
|
template<typename T > |
T | transform () const |
|
void | unbind (bool removeAutoBindPath=true) |
| Unbind, also disables auto-binding.
|
|
| Object (const Name &name=Name(), Model *model=Object::ClassModel()) |
|
void | addListener (EventListener *listener) |
|
virtual void | buildNavigationTree (agxJson::Value &eNode) const |
|
virtual void | configure (TiXmlElement *) |
|
agx::String | fullName () const |
|
agx::String | fullPath () const |
|
agx::String | fullPath (const agx::Object *root) const |
|
template<typename T > |
T * | getAutoScopedResource (const agx::Path &path) |
|
template<typename T > |
const T * | getAutoScopedResource (const agx::Path &path) const |
|
agx::Object * | getAutoScopedResource (const agx::Path &path, agx::Model *model=nullptr) |
|
const agx::Object * | getAutoScopedResource (const agx::Path &path, agx::Model *model=nullptr) const |
|
agx::Object * | getContext () |
|
template<typename T > |
T * | getContext () |
|
const agx::Object * | getContext () const |
|
template<typename T > |
const T * | getContext () const |
|
agx::UInt32 | getId () const |
|
const agx::Name & | getImplementationName () const |
|
agx::Model * | getModel () |
|
const agx::Model * | getModel () const |
|
const agx::Name & | getName () const |
|
agx::Object * | getNextSibling () |
|
const agx::Object * | getNextSibling () const |
|
agx::Path | getPath () const |
|
agx::Path | getPath (const agx::Object *root) const |
|
template<typename T > |
T * | getResource (const agx::Path &path) |
|
template<typename T > |
const T * | getResource (const agx::Path &path) const |
|
agx::Object * | getResource (const agx::Path &path, agx::Model *model=nullptr) |
|
const agx::Object * | getResource (const agx::Path &path, agx::Model *model=nullptr) const |
|
virtual agx::Object * | getResourceImpl (const agx::Path &path, agx::Model *model) |
|
agx::Object * | getRootContext () |
|
const agx::Object * | getRootContext () const |
|
bool | hasListener (EventListener *listener) |
|
bool | hasParent (const agx::Object *node) const |
|
bool | isUnique () const |
|
virtual void | printSubtree () const |
|
virtual void | rebind () |
|
void | removeListener (EventListener *listener) |
|
virtual void | save (TiXmlElement *) const |
|
virtual void | setContext (agx::Object *context) |
|
void | setId (UInt32 id) |
|
void | setModel (agx::Model *model) |
| Set the object model (handled automatically).
|
|
void | setName (const agx::Name &name) |
| Set the name of the object.
|
|
virtual void | snapshot (TiXmlNode *, const String &) const |
|
| Referenced () |
| Default constructor.
|
|
| Referenced (const Referenced &) |
|
template<typename T > |
T * | as () |
| Subclass casting.
|
|
template<typename T > |
const T * | as () const |
|
template<typename T > |
T * | asSafe () |
| Safe subclass casting, return nullptr if template type does not match.
|
|
template<typename T > |
const T * | asSafe () const |
|
int | getReferenceCount () const |
|
template<typename T > |
bool | is () const |
| Subclass test.
|
|
Referenced & | operator= (const Referenced &) |
| Assignment operator. Will increment the number of references to the referenced object.
|
|
void | reference (void *ptr=nullptr) const |
| Explicitly increment the reference count by one, indicating that this object has another pointer which is referencing it.
|
|
void | unreference (void *ptr=nullptr) const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it.
|
|
void | unreference_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it.
|
|
|
static agx::Model * | ClassModel () |
|
static void | copy (Value *target, const Value *source) |
|
static Value * | load (agx::TiXmlElement *eValue, agx::Device *device) |
|
static agx::Model * | ClassModel () |
|
static agx::String | generateName (const agx::String &bindPath) |
|
static const HashSet< Object * > & | getActiveObjects () |
|
static bool | getEnableRebind () |
| Should rebinding be allowed? Right now a global setting.
|
|
static Object * | load (const String &path, Device *device, const String &type, const String &attribute, const String &value) |
|
template<typename T > |
static T * | load (const String &path, Device *device, const String &type, const String &attribute, const String &value) |
|
static Object * | load (const String &path, Device *device, const String &type="", size_t instance=0) |
|
template<typename T > |
static T * | load (const String &path, Device *device, const String &type="", size_t instance=0) |
|
static void | load (const String &path, Device *device, ObjectPtrVector &loadedObjects) |
|
static Object * | load (TiXmlElement *eObject, Device *device) |
|
template<typename T > |
static T * | load (TiXmlElement *eObject, Device *device) |
|
static TiXmlDocument | openDocument (const String &path) |
|
static void | setEnableRebind (bool flag) |
| Sets if rebinding of objects should be allowed (Right now a global setting).
|
|
template<typename T > |
static bool | ValidateCast (const Referenced *object) |
|
Abstract representation of a value.
The value has a name and specified format, and since it is an agx::Object it can be inserted as a node in the system hierarchy.
Values can bind to other values, and is automatically synchronized when the reference value is updated.
Definition at line 48 of file Value.h.