ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
XMLCoreNode Class Reference

#include <XMLCoreParser.h>

Collaboration diagram for XMLCoreNode:

Public Member Functions

 XMLCoreNode (const CoreParser::DOMNode *node)
 
 XMLCoreNode (std::unique_ptr< CoreParser::DOMNode > node)
 
 XMLCoreNode (const XMLCoreNode &other)
 
 XMLCoreNode (XMLCoreNode &&other)
 
XMLCoreNodeoperator= (const XMLCoreNode &other)
 
XMLCoreNodeoperator= (XMLCoreNode &&other)
 
 ~XMLCoreNode ()
 
 operator const CoreParser::DOMNode & () const
 
const CoreParser::DOMNodeget_node () const
 

Private Attributes

const CoreParser::DOMNodem_node {}
 
bool m_owns {}
 

Detailed Description

Definition at line 19 of file XMLCoreParser.h.

Constructor & Destructor Documentation

◆ XMLCoreNode() [1/4]

XMLCoreNode::XMLCoreNode ( const CoreParser::DOMNode node)
inline

Definition at line 21 of file XMLCoreParser.h.

22  : m_node (node),
23  m_owns (false){
24  }

◆ XMLCoreNode() [2/4]

XMLCoreNode::XMLCoreNode ( std::unique_ptr< CoreParser::DOMNode node)
inline

Definition at line 26 of file XMLCoreParser.h.

27  : m_node (node.release()),
28  m_owns (true){
29  }

◆ XMLCoreNode() [3/4]

XMLCoreNode::XMLCoreNode ( const XMLCoreNode other)
inline

Definition at line 31 of file XMLCoreParser.h.

32  : m_node (other.m_node),
33  m_owns (false){
34  }

◆ XMLCoreNode() [4/4]

XMLCoreNode::XMLCoreNode ( XMLCoreNode &&  other)
inline

Definition at line 36 of file XMLCoreParser.h.

37  : m_node (other.m_node),
38  m_owns (other.m_owns){
39  other.m_node = nullptr;
40  other.m_owns = false;
41  }

◆ ~XMLCoreNode()

XMLCoreNode::~XMLCoreNode ( )

Definition at line 48 of file XMLCoreParser.cxx.

48  {
49  if (m_owns) delete m_node;
50 }

Member Function Documentation

◆ get_node()

const CoreParser::DOMNode& XMLCoreNode::get_node ( ) const
inline

Definition at line 53 of file XMLCoreParser.h.

53  {
54  return (*m_node);
55  }

◆ operator const CoreParser::DOMNode &()

XMLCoreNode::operator const CoreParser::DOMNode & ( ) const
inline

Definition at line 49 of file XMLCoreParser.h.

49  {
50  return (*m_node);
51  }

◆ operator=() [1/2]

XMLCoreNode & XMLCoreNode::operator= ( const XMLCoreNode other)

Definition at line 28 of file XMLCoreParser.cxx.

28  {
29  if (this != &other) {
30  if (m_owns) delete m_node;
31  m_node = other.m_node;
32  m_owns = false;
33  }
34  return *this;
35 }

◆ operator=() [2/2]

XMLCoreNode & XMLCoreNode::operator= ( XMLCoreNode &&  other)

Definition at line 37 of file XMLCoreParser.cxx.

37  {
38  if (this != &other) {
39  if (m_owns) delete m_node;
40  m_node = other.m_node;
41  m_owns = other.m_owns;
42  other.m_node = nullptr;
43  other.m_owns = false;
44  }
45  return *this;
46 }

Member Data Documentation

◆ m_node

const CoreParser::DOMNode* XMLCoreNode::m_node {}
private

Definition at line 58 of file XMLCoreParser.h.

◆ m_owns

bool XMLCoreNode::m_owns {}
private

Definition at line 59 of file XMLCoreParser.h.


The documentation for this class was generated from the following files:
XMLCoreNode::m_owns
bool m_owns
Definition: XMLCoreParser.h:59
XMLCoreNode::m_node
const CoreParser::DOMNode * m_node
Definition: XMLCoreParser.h:58
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
node
Definition: memory_hooks-stdcmalloc.h:74