nodeownership.cpp
Go to the documentation of this file.
1 #include "nodeownership.h"
2 #include "yaml-cpp-pm/node.h"
3 
4 namespace YAML_PM
5 {
6  NodeOwnership::NodeOwnership(NodeOwnership *pOwner): m_pOwner(pOwner)
7  {
8  if(!m_pOwner)
9  m_pOwner = this;
10  }
11 
13  {
14  }
15 
17  {
18  m_nodes.push_back(std::auto_ptr<Node>(new Node));
19  return m_nodes.back();
20  }
21 
23  {
24  m_aliasedNodes.insert(&node);
25  }
26 
27  bool NodeOwnership::_IsAliased(const Node& node) const
28  {
29  return m_aliasedNodes.count(&node) > 0;
30  }
31 }
YAML_PM::NodeOwnership
Definition: nodeownership.h:17
YAML_PM
Definition: aliasmanager.h:11
YAML_PM::NodeOwnership::NodeOwnership
NodeOwnership(NodeOwnership *pOwner=0)
Definition: nodeownership.cpp:6
YAML_PM::NodeOwnership::m_nodes
ptr_vector< Node > m_nodes
Definition: nodeownership.h:33
YAML_PM::NodeOwnership::_IsAliased
bool _IsAliased(const Node &node) const
Definition: nodeownership.cpp:27
YAML_PM::NodeOwnership::m_aliasedNodes
std::set< const Node * > m_aliasedNodes
Definition: nodeownership.h:34
node.h
YAML_PM::NodeOwnership::_MarkAsAliased
void _MarkAsAliased(const Node &node)
Definition: nodeownership.cpp:22
YAML_PM::Node
Definition: node.h:33
nodeownership.h
YAML_PM::NodeOwnership::m_pOwner
NodeOwnership * m_pOwner
Definition: nodeownership.h:35
YAML_PM::NodeOwnership::~NodeOwnership
~NodeOwnership()
Definition: nodeownership.cpp:12
YAML_PM::NodeOwnership::_Create
Node & _Create()
Definition: nodeownership.cpp:16


mp2p_icp
Author(s):
autogenerated on Fri Dec 20 2024 03:45:59