VL
Public Member Functions | Protected Member Functions | List of all members
vl::ObjectTreeNode Class Reference

#include <VLBackwardTraversable.h>

Inheritance diagram for vl::ObjectTreeNode:
vl::VarTreeNode

Public Member Functions

 ObjectTreeNode (VarNodeRegistry &registry, vl::AbstractVar *data, VarTreeNode *parent)
 
 ~ObjectTreeNode ()
 
void Update (Observable *sender, vl::VarPtr info) override
 
bool Has (const std::string &childId) const
 
void Set (const std::string &childId, const VarTreeNodePtr &node)
 
const VarTreeNodePtrGet (const std::string &childId) const
 
int ChildCount () const override
 
ObjectTreeNodeAsObject () override
 
const ObjectTreeNodeAsObject () const override
 
bool IsObject () const override
 
bool Remove (const std::string &childId)
 
VarTreeNodePtr SharedFromThis () override
 
ObjectTreeNodePtr ObjectSharedFromThis ()
 
- Public Member Functions inherited from vl::VarTreeNode
 VarTreeNode (VarNodeRegistry &registry, vl::AbstractVar *data, VarTreeNode *parent)
 
virtual ~VarTreeNode ()
 
const std::string & GetId () const
 
int GetIndex () const
 
std::string GetPath () const
 
const VarNodeRegistryGetRegistry () const
 
virtual bool IsList () const
 
virtual bool IsObject () const
 
virtual ObjectTreeNodeAsObject ()
 
virtual const ObjectTreeNodeAsObject () const
 
virtual ListTreeNodeAsList ()
 
virtual const ListTreeNodeAsList () const
 
void Update (Observable *sender, vl::VarPtr info) override
 
virtual int ChildCount () const
 
const vl::Var * GetData () const
 
virtual VarTreeNodePtr SharedFromThis ()
 
bool IsRoot () const
 
const VarTreeNodeGetParent () const
 
const void * DataPtr () const
 

Protected Member Functions

bool ForeachChildren (const std::function< bool(VarTreeNode &)> &pred)
 
- Protected Member Functions inherited from vl::VarTreeNode
bool ForeachChildren (const std::function< bool(VarTreeNode &)> &pred)
 
void SetParent (VarTreeNode *newParent)
 

Additional Inherited Members

- Protected Attributes inherited from vl::VarTreeNode
vl::AbstractVar * mData = nullptr
 
const void * mDataPtr = nullptr
 
VarTreeNodemParent = nullptr
 
VarNodeRegistrymRegistry
 
bool mToBeReplaced = false
 

Constructor & Destructor Documentation

◆ ObjectTreeNode()

vl::ObjectTreeNode::ObjectTreeNode ( VarNodeRegistry registry,
vl::AbstractVar *  data,
VarTreeNode parent 
)

◆ ~ObjectTreeNode()

vl::ObjectTreeNode::~ObjectTreeNode ( )

Member Function Documentation

◆ AsObject() [1/2]

const vl::ObjectTreeNode * vl::ObjectTreeNode::AsObject ( ) const
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ AsObject() [2/2]

vl::ObjectTreeNode * vl::ObjectTreeNode::AsObject ( )
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ ChildCount()

int vl::ObjectTreeNode::ChildCount ( ) const
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ ForeachChildren()

bool vl::ObjectTreeNode::ForeachChildren ( const std::function< bool(VarTreeNode &)> &  pred)
protected

◆ Get()

const vl::VarTreeNodePtr & vl::ObjectTreeNode::Get ( const std::string &  childId) const

◆ Has()

bool vl::ObjectTreeNode::Has ( const std::string &  childId) const

◆ IsObject()

bool vl::ObjectTreeNode::IsObject ( ) const
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ ObjectSharedFromThis()

ObjectTreeNodePtr vl::ObjectTreeNode::ObjectSharedFromThis ( )

◆ Remove()

bool vl::ObjectTreeNode::Remove ( const std::string &  childId)

◆ Set()

void vl::ObjectTreeNode::Set ( const std::string &  childId,
const VarTreeNodePtr node 
)

◆ SharedFromThis()

VarTreeNodePtr vl::ObjectTreeNode::SharedFromThis ( )
overridevirtual

Reimplemented from vl::VarTreeNode.

◆ Update()

void vl::ObjectTreeNode::Update ( Observable *  sender,
vl::VarPtr  info 
)
override

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