Open Search
    GNodeDataPtr Struct Reference

    Detailed Description

    This class is used internally to store the data for a node. Basically it is a pointer to GNodeData, but it also stores the node system through which the pointer is reached. This is needed at some places, and the node system pointer can't be stored at the GNodeData itself because the latter can be shared among several node systems.

    Public Member Functions

     GNodeDataPtr ()=default
     
     GNodeDataPtr (const GNodeData *p, const NodeSystemImpl *s)
     
    void Reset ()
     
     operator Bool () const
     
    const GNodeData * operator-> () const
     
    const GNodeData & operator* () const
     
     MAXON_OPERATOR_EQUALITY_HASHCODE (GNodeDataPtr, ptr)
     

    Public Attributes

    const GNodeData * ptr
     
    const NodeSystemImpl * system
     

    Constructor & Destructor Documentation

    ◆ GNodeDataPtr() [1/2]

    GNodeDataPtr ( )
    default

    ◆ GNodeDataPtr() [2/2]

    GNodeDataPtr ( const GNodeData *  p,
    const NodeSystemImpl *  s 
    )

    Member Function Documentation

    ◆ Reset()

    void Reset ( )

    ◆ operator Bool()

    operator Bool ( ) const
    explicit

    ◆ operator->()

    const GNodeData* operator-> ( ) const

    ◆ operator*()

    const GNodeData& operator* ( ) const

    ◆ MAXON_OPERATOR_EQUALITY_HASHCODE()

    MAXON_OPERATOR_EQUALITY_HASHCODE ( GNodeDataPtr  ,
    ptr   
    )

    Member Data Documentation

    ◆ ptr

    const GNodeData* ptr

    ◆ system

    const NodeSystemImpl* system