AGX Dynamics 2.42.3.0
Loading...
Searching...
No Matches
agxData::GenericFormat Class Reference

#include <Format.h>

+ Inheritance diagram for agxData::GenericFormat:

Public Member Functions

 GenericFormat (size_t size)
 
virtual void constructElement (void *element) const override
 Construct elements.
 
virtual void constructElements (void *buffer, size_t numElements) const override
 
virtual void copyElement (void *target, const void *source) const override
 Copy elements.
 
virtual void copyElements (void *target, const void *source, size_t numElements) const override
 
virtual void destroyElement (void *element) const override
 Destroy elements.
 
virtual void destroyElements (void *buffer, size_t numElements) const override
 
virtual void initializeElement (void *element, const void *value) const override
 Initialize elements.
 
virtual void initializeElements (void *buffer, const void *value, size_t numElements) const override
 
virtual void moveElement (void *target, void *source) const override
 Move elements.
 
virtual void moveElements (void *target, void *source, size_t numElements) const override
 
virtual void swapElements (void *element1, void *element2) const override
 Swap elements.
 
- Public Member Functions inherited from agxData::Format
 Format (const agx::Name &formatName, const agx::Name &implementationName, size_t size, TransformFunction byteSwapFunction, TransformFunction copyFunction)
 
virtual void constructElement (void *element) const
 Construct elements.
 
virtual void constructElements (void *buffer, size_t numElements) const
 
virtual void copyElement (void *target, const void *source) const
 Copy elements.
 
virtual void copyElements (void *buffer, const void *source, size_t numElements) const
 
virtual void destroyElement (void *element) const
 Destroy elements.
 
virtual void destroyElements (void *buffer, size_t numElements) const
 
agx::String fullName () const
 
agxData::Value * getDefaultValue ()
 
const agxData::Value * getDefaultValue () const
 
const agx::Name & getImplementationName () const
 
size_t getSize () const
 
const TransformerTable & getTransformers () const
 
Type * getType ()
 
const Type * getType () const
 
virtual void initializeElement (void *element, const void *value) const
 Initialize elements.
 
virtual void initializeElements (void *buffer, const void *value, size_t numElements) const
 
virtual void moveElement (void *target, void *source) const
 Move elements.
 
virtual void moveElements (void *target, void *source, size_t numElements) const
 
virtual void permuteElements (void *target, void *source, const agx::Index *permutation, size_t numElements) const
 Permute elements.
 
void swapByteOrder (void *target, const void *source, size_t numElements) const
 Swap byte order of elements in a buffer.
 
virtual void swapElements (void *element1, void *element2) const
 Swap elements.
 
- Public Member Functions inherited from agx::Model
 Model (const agx::Name &name, agx::Model *source)
 
 Model (const agx::Name &name, const agx::Name &implementation=agx::Name())
 
virtual void buildNavigationTree (agxJson::Value &eNode) const override
 
agx::String fullInheritancePath () const
 The active instances of this model.
 
agx::String fullName () const
 
agx::String fullPath () const
 
const agx::Name & getImplementationName () const
 
agx::Namespace * getNamespace ()
 
const agx::Namespace * getNamespace () const
 
agx::Path getPath () const
 
agx::Path getPath (const agx::Object *root) const
 
agx::Model * getSource ()
 
const agx::Model * getSource () const
 
const agx::String & getSourcePath () const
 
bool hasParent (const agx::Model *parent) const
 
bool hasSource (const agx::Model *source) const
 
template<typename T >
bool is () const
 Subclass test.
 
bool is (const agx::Model *other) const
 
bool isShutdown () const
 
void setSource (Model *source)
 
void setSourcePath (const String &path)
 
- Public Member Functions inherited from agx::Component
 Component (const agx::Name &name=agx::Name(), agx::Model *model=agx::Component::ClassModel(), agx::Device *device=nullptr)
 
virtual void addObject (agx::Object *object, bool assignContext=true)
 Add an object to the component.
 
virtual String autoComplete (const String &partialName, StringVector &matchingNames) const
 
virtual void buildNavigationTree (agxJson::Value &eNode) const override
 
void configure (Model *model)
 
virtual void configure (TiXmlElement *eComponent) override
 
agx::Device * getDevice ()
 
template<typename T >
T * getDevice ()
 
const agx::Device * getDevice () const
 
template<typename T >
const T * getDevice () const
 
size_t getNumObjects (const agx::Name &name) const
 
agx::Object * getObject (const agx::Name &name, agx::Model *model, size_t index=0)
 
const agx::Object * getObject (const agx::Name &name, agx::Model *model, size_t index=0) const
 
agx::Object * getObject (const agx::Name &name, size_t index=0)
 
template<typename T >
T * getObject (const agx::Name &name, size_t index=0)
 
const agx::Object * getObject (const agx::Name &name, size_t index=0) const
 
template<typename T >
const T * getObject (const agx::Name &name, size_t index=0) const
 
const agx::ObjectRefVector & getObjects () const
 
template<typename T >
void getObjects (agx::ObjectPtrVector &result, bool recursive=false) const
 Returns All child objects of a specified type in the result container.
 
void getObjects (agx::ObjectPtrVector &result, const agx::Model *model, bool recursive=false) const
 
virtual Object * getResourceImpl (const Path &path, agx::Model *model) override
 
virtual void printSubtree () const override
 
void printSubtree (std::ostream &stream, int depth=0) const
 
virtual void rebind () override
 
void removeAllObjects ()
 Remove all components.
 
virtual void removeObject (agx::Object *object)
 Remove an object from the component.
 
void removeObject (const agx::Name &name, size_t index=0)
 Remove an object with a specified name (and optional index) from the component.
 
virtual void snapshot (TiXmlNode *eParent, const String &directory) const override
 
void traverse (ComponentVisitor *)
 
void traverse (const TraverseCallback &callback)
 
- Public Member Functions inherited from agx::Object
 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
 
- Public Member Functions inherited from agx::Referenced
 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.
 

Protected Member Functions

virtual ~GenericFormat ()
 
- Protected Member Functions inherited from agxData::Format
virtual ~Format ()
 
void cleanup ()
 
void setType (Type *type)
 
- Protected Member Functions inherited from agx::Model
virtual ~Model ()
 
- Protected Member Functions inherited from agx::Component
virtual ~Component ()
 
String expandAutoCompletionMatch (const String &query, const StringVector &matchingNames) const
 
void setDevice (Device *device)
 
- Protected Member Functions inherited from agx::Object
virtual ~Object ()
 
- Protected Member Functions inherited from agx::Referenced
virtual ~Referenced ()
 Destructor.
 
void allocateObserverVector () const
 
void deleteUsingDeleteHandler () const
 

Additional Inherited Members

- Public Types inherited from agxData::Format
typedef agx::HashTable< Format *, TransformFunction > TransformerTable
 
- Public Types inherited from agx::Component
typedef Event2< Component *, Object * > ObjectEvent
 Event when adding removing child objects.
 
typedef Callback1< Object * > TraverseCallback
 
- Public Types inherited from agx::Object
typedef agx::observer_ptr< const Event > EventConstObserver
 
typedef agx::ref_ptr< const Event > EventConstRef
 
typedef agx::observer_ptr< Event > EventObserver
 
typedef agx::Vector< EventObserver > EventObserverVector
 
typedef agx::VectorPOD< Event * > EventPtrVector
 
typedef agx::ref_ptr< Event > EventRef
 
typedef agx::Vector< EventRef > EventRefVector
 
- Static Public Member Functions inherited from agxData::Format
static Format * Auto ()
 
static bool callFormatPrimitive (const Format *format, CallbackList *callbackList)
 Call one of the callbacks in the callbackList based on the primitive type of the given format.
 
static agx::Model * ClassModel ()
 
template<typename T >
static void registerFormatPrimitives (const agxData::Format *format, agx::UInt32 stride, agx::UInt32 padding)
 Setup a link between a full format name and it's C++ type representation.
 
static Format * Void ()
 
- Static Public Member Functions inherited from agx::Model
static Model * ClassModel ()
 
static agx::Model * createModel (const agx::Path &path, const agx::Name &implementation, agx::Model *source)
 
static bool getDiskPath (const Path &modelPath, Path &fullModelPath, String &filePath, TiXmlElement *relativeRoot, agxIO::Environment::Type envType, const String &fileExtension)
 Locate a model definition file.
 
static agx::String getFileSystemRoot (agx::TiXmlElement *element, agxIO::Environment::Type pathType=agxIO::Environment::RUNTIME_PATH)
 
static agx::Path getNamespace (agx::TiXmlElement *element, agxIO::Environment::Type pathType=agxIO::Environment::RUNTIME_PATH)
 
static agx::Path getNamespace (const agx::String &filePath, agxIO::Environment::Type pathType=agxIO::Environment::RUNTIME_PATH)
 
static agx::Path getPath (agx::TiXmlElement *element, agx::Name &implementation, agxIO::Environment::Type pathType=agxIO::Environment::RUNTIME_PATH)
 
static agx::Path getPath (agx::TiXmlElement *element, agxIO::Environment::Type pathType=agxIO::Environment::RUNTIME_PATH)
 
static agx::Path getPath (const agx::String &filePath, agxIO::Environment::Type pathType=agxIO::Environment::RUNTIME_PATH)
 
static void parsePathString (const agx::String &pathStr, agx::Path &path, agx::Name &implementation)
 
static agx::Namespace * root ()
 
- Static Public Member Functions inherited from agx::Component
static Component * _load (TiXmlElement *eComponent, Device *device)
 
static agx::Model * ClassModel ()
 
static Component * load (const Path &path, const Name &implementation, Device *device, const Path &_namespace=Path())
 
static Component * load (const String &path, const Path &_namespace=Path())
 
static Component * load (const String &path, Device *device, const Path &_namespace=Path())
 
static Component * load (TiXmlElement *eComponent, Device *device)
 
- Static Public Member Functions inherited from agx::Object
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).
 
- Static Public Member Functions inherited from agx::Referenced
template<typename T >
static bool ValidateCast (const Referenced *object)
 
- Public Attributes inherited from agx::Component
ObjectEvent addObjectEvent
 
ObjectEvent removeObjectEvent
 
- Static Protected Member Functions inherited from agx::Referenced
static DeleteHandler * getDeleteHandler ()
 
static void setDeleteHandler (DeleteHandler *handler)
 Internal: Set a DeleteHandler to which deletion of all referenced counted objects will be delegated to.
 
- Protected Attributes inherited from agx::Model
bool m_isShutdown
 
- Protected Attributes inherited from agx::Referenced
Mutex m_mutex
 
ObserverContainer m_observers
 
AtomicValue m_refCount
 

Detailed Description

Definition at line 304 of file Format.h.

Constructor & Destructor Documentation

◆ GenericFormat()

agxData::GenericFormat::GenericFormat ( size_t  size)

◆ ~GenericFormat()

virtual agxData::GenericFormat::~GenericFormat ( )
protectedvirtual

Member Function Documentation

◆ constructElement()

virtual void agxData::GenericFormat::constructElement ( void *  element) const
overridevirtual

Construct elements.

Reimplemented from agxData::Format.

◆ constructElements()

virtual void agxData::GenericFormat::constructElements ( void *  buffer,
size_t  numElements 
) const
overridevirtual

Reimplemented from agxData::Format.

◆ copyElement()

virtual void agxData::GenericFormat::copyElement ( void *  target,
const void *  source 
) const
overridevirtual

Copy elements.

Reimplemented from agxData::Format.

◆ copyElements()

virtual void agxData::GenericFormat::copyElements ( void *  target,
const void *  source,
size_t  numElements 
) const
overridevirtual

Reimplemented from agxData::Format.

◆ destroyElement()

virtual void agxData::GenericFormat::destroyElement ( void *  element) const
overridevirtual

Destroy elements.

Reimplemented from agxData::Format.

◆ destroyElements()

virtual void agxData::GenericFormat::destroyElements ( void *  buffer,
size_t  numElements 
) const
overridevirtual

Reimplemented from agxData::Format.

◆ initializeElement()

virtual void agxData::GenericFormat::initializeElement ( void *  element,
const void *  value 
) const
overridevirtual

Initialize elements.

Reimplemented from agxData::Format.

◆ initializeElements()

virtual void agxData::GenericFormat::initializeElements ( void *  buffer,
const void *  value,
size_t  numElements 
) const
overridevirtual

Reimplemented from agxData::Format.

◆ moveElement()

virtual void agxData::GenericFormat::moveElement ( void *  target,
void *  source 
) const
overridevirtual

Move elements.

Reimplemented from agxData::Format.

◆ moveElements()

virtual void agxData::GenericFormat::moveElements ( void *  target,
void *  source,
size_t  numElements 
) const
overridevirtual

Reimplemented from agxData::Format.

◆ swapElements()

virtual void agxData::GenericFormat::swapElements ( void *  element1,
void *  element2 
) const
overridevirtual

Swap elements.

Reimplemented from agxData::Format.


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