vsg 1.1.10
VulkanSceneGraph library
Loading...
Searching...
No Matches
vsg::Auxiliary Class Reference

#include <Auxiliary.h>

Collaboration diagram for vsg::Auxiliary:

Public Types

using ObjectMap = std::map<std::string, vsg::ref_ptr<Object>>

Public Member Functions

std::mutex & getMutex () const
ObjectgetConnectedObject ()
const ObjectgetConnectedObject () const
virtual std::size_t getSizeOf () const
void ref () const
void unref () const
void unref_nodelete () const
unsigned int referenceCount () const
virtual int compare (const Auxiliary &rhs) const
void setObject (const std::string &key, ref_ptr< Object > object)
ObjectgetObject (const std::string &key)
const ObjectgetObject (const std::string &key) const
ref_ptr< ObjectgetRefObject (const std::string &key)
ref_ptr< const ObjectgetRefObject (const std::string &key) const

Public Attributes

ObjectMap userObjects
 container for all user objects

Protected Member Functions

 Auxiliary (Object *object)
bool signalConnectedObjectToBeDeleted ()
void resetConnectedObject ()

Protected Attributes

std::atomic_uint _referenceCount
std::mutex _mutex
Object_connectedObject

Friends

class Object
class Allocator

Detailed Description

Auxiliary provides extra Object data that is rarely used, and hooks for observers.

Member Function Documentation

◆ signalConnectedObjectToBeDeleted()

bool vsg::Auxiliary::signalConnectedObjectToBeDeleted ( )
protected

reset the ConnectedObject pointer to 0 unless the ConnectedObject referenceCount goes back above 0, return true if ConnectedObject should still be deleted, or false if the object should be kept.


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