Ocean
Ocean::DebugElements::ScopedHierarchyBase Class Reference

This class implements a scoped hierarchy. More...

Inheritance diagram for Ocean::DebugElements::ScopedHierarchyBase:

Public Member Functions

 ~ScopedHierarchyBase ()
 Releases the hierarchy and disposes this object. More...
 
void change (const std::string &newHierarchyItem)
 Explicitly exchanges the hierarchy instead of releasing it and creating a new one. More...
 
void release ()
 Explicitly releases the hierarchy (already before the destructor is called). More...
 

Protected Member Functions

 ScopedHierarchyBase (const ScopedHierarchyBase &scopedHierarchy)=delete
 Disabled copy constructor. More...
 
 ScopedHierarchyBase (DebugElements &owner, const std::string &hierarchyItem)
 Creates a new scoped object and pushes the given hierarchy. More...
 
ScopedHierarchyBaseoperator= (const ScopedHierarchyBase &scopedHierarchy)=delete
 Disabled copy operator. More...
 

Protected Attributes

DebugElementsowner_
 The owner of this object. More...
 
std::string hierarchyItem_
 The hierarchy item of this object. More...
 

Detailed Description

This class implements a scoped hierarchy.

The hierarchy exists as long as this object exists.

Constructor & Destructor Documentation

◆ ~ScopedHierarchyBase()

Ocean::DebugElements::ScopedHierarchyBase::~ScopedHierarchyBase ( )
inline

Releases the hierarchy and disposes this object.

◆ ScopedHierarchyBase() [1/2]

Ocean::DebugElements::ScopedHierarchyBase::ScopedHierarchyBase ( const ScopedHierarchyBase scopedHierarchy)
protecteddelete

Disabled copy constructor.

Parameters
scopedHierarchyThe hierarchy object which would have been copied

◆ ScopedHierarchyBase() [2/2]

Ocean::DebugElements::ScopedHierarchyBase::ScopedHierarchyBase ( DebugElements owner,
const std::string &  hierarchyItem 
)
inlineprotected

Creates a new scoped object and pushes the given hierarchy.

Parameters
ownerThe owner of the scoped object
hierarchyItemThe hierarchy item to be pushed, must be valid

Member Function Documentation

◆ change()

void Ocean::DebugElements::ScopedHierarchyBase::change ( const std::string &  newHierarchyItem)

Explicitly exchanges the hierarchy instead of releasing it and creating a new one.

Actually pops the current hierarchy and pushes the new one.

Parameters
newHierarchyItemThe new hierarchy item to be pushed, must be valid

◆ operator=()

ScopedHierarchyBase& Ocean::DebugElements::ScopedHierarchyBase::operator= ( const ScopedHierarchyBase scopedHierarchy)
protecteddelete

Disabled copy operator.

Parameters
scopedHierarchyThe hierarchy object which would have been copied
Returns
Reference to this object

◆ release()

void Ocean::DebugElements::ScopedHierarchyBase::release ( )

Explicitly releases the hierarchy (already before the destructor is called).

Field Documentation

◆ hierarchyItem_

std::string Ocean::DebugElements::ScopedHierarchyBase::hierarchyItem_
protected

The hierarchy item of this object.

◆ owner_

DebugElements& Ocean::DebugElements::ScopedHierarchyBase::owner_
protected

The owner of this object.


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