vsg  1.1.0
VulkanSceneGraph library
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Friends | List of all members
vsg::Auxiliary Class Reference

#include <Auxiliary.h>

Collaboration diagram for vsg::Auxiliary:
Collaboration graph
[legend]

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: