Bifrost SDK
Bifrost SDK documentation
BifrostGraph::Executor::WatchpointLayoutPtr Class Reference

A smart pointer on WatchpointLayout objects allowing them to be easily shared and managed. More...

#include <WatchpointLayout.h>

Public Member Functions

 WatchpointLayoutPtr ()
 Construct an empty pointer. More...
 
 WatchpointLayoutPtr (WatchpointLayout *layout)
 Construct a smart pointer that owns the layout object pointed by layout,. More...
 
 WatchpointLayoutPtr (WatchpointLayoutPtr const &other)
 Copy constructor Construct a smart pointer on the same layout object as other and sharing ownership. More...
 
 WatchpointLayoutPtr (WatchpointLayoutPtr &&other)
 Move constructor Construct a smart pointer on the same layout object as other and taking ownership. More...
 
 ~WatchpointLayoutPtr ()
 Destructor If the pointer owns a layout object, its 'use count' is decremented by one. If the 'use count' reaches zero, the layout object will be deleted by invoking WatchpointLayout::deleteThis. More...
 
WatchpointLayoutPtroperator= (WatchpointLayoutPtr const &)
 Assignment operators. More...
 
WatchpointLayoutPtroperator= (WatchpointLayoutPtr &&)
 Assignment operators. More...
 
 operator bool () const noexcept
 /} More...
 
bool operator== (WatchpointLayoutPtr const &other) const noexcept
 Comparison. More...
 
bool operator!= (WatchpointLayoutPtr const &other) const noexcept
 Comparison. More...
 
 operator WatchpointLayout const * () const noexcept
 Indirection. More...
 
WatchpointLayout const * operator-> () const noexcept
 Indirection. More...
 
WatchpointLayoutoperator-> () noexcept
 Indirection. More...
 
WatchpointLayoutget () const noexcept
 Accessor. More...
 
template<typename T >
bool isA () const noexcept
 Check whether or not the pointed layout of type T. More...
 
template<typename T >
T & getAs () const noexcept
 Get the pointed layout casted as type T. More...
 

Detailed Description

A smart pointer on WatchpointLayout objects allowing them to be easily shared and managed.

Definition at line 49 of file WatchpointLayout.h.

Constructor & Destructor Documentation

◆ WatchpointLayoutPtr() [1/4]

BifrostGraph::Executor::WatchpointLayoutPtr::WatchpointLayoutPtr ( )

Construct an empty pointer.

◆ WatchpointLayoutPtr() [2/4]

BifrostGraph::Executor::WatchpointLayoutPtr::WatchpointLayoutPtr ( WatchpointLayout layout)
explicit

Construct a smart pointer that owns the layout object pointed by layout,.

Parameters
layoutA pointer to an WatchpointLayout object.
Note
The 'use count' of the layout is increased by one.

◆ WatchpointLayoutPtr() [3/4]

BifrostGraph::Executor::WatchpointLayoutPtr::WatchpointLayoutPtr ( WatchpointLayoutPtr const &  other)

Copy constructor Construct a smart pointer on the same layout object as other and sharing ownership.

Parameters
otherThe pointer to be copied.
Note
The 'use count' of the layout is increased by one.

◆ WatchpointLayoutPtr() [4/4]

BifrostGraph::Executor::WatchpointLayoutPtr::WatchpointLayoutPtr ( WatchpointLayoutPtr &&  other)

Move constructor Construct a smart pointer on the same layout object as other and taking ownership.

Parameters
otherThe pointer to be moved.
Note
The 'use count' of the layout is unmodified.

◆ ~WatchpointLayoutPtr()

BifrostGraph::Executor::WatchpointLayoutPtr::~WatchpointLayoutPtr ( )

Destructor If the pointer owns a layout object, its 'use count' is decremented by one. If the 'use count' reaches zero, the layout object will be deleted by invoking WatchpointLayout::deleteThis.

Member Function Documentation

◆ get()

WatchpointLayout * BifrostGraph::Executor::WatchpointLayoutPtr::get ( ) const
inlinenoexcept

Accessor.

Returns
the pointer to the pointed layout.

Definition at line 112 of file WatchpointLayout.h.

◆ getAs()

template<typename T >
T & BifrostGraph::Executor::WatchpointLayoutPtr::getAs ( ) const
inlinenoexcept

Get the pointed layout casted as type T.

Template Parameters
TThe layout type.
Returns
the pointed layout casted as type T.

Definition at line 126 of file WatchpointLayout.h.

◆ isA()

template<typename T >
bool BifrostGraph::Executor::WatchpointLayoutPtr::isA ( ) const
inlinenoexcept

Check whether or not the pointed layout of type T.

Template Parameters
TThe layout type.
Returns
true if the pointed layout of type T.

Definition at line 118 of file WatchpointLayout.h.

◆ operator bool()

BifrostGraph::Executor::WatchpointLayoutPtr::operator bool ( ) const
inlineexplicitnoexcept

/}

Returns whether the pointer is non-null

Definition at line 84 of file WatchpointLayout.h.

◆ operator WatchpointLayout const *()

BifrostGraph::Executor::WatchpointLayoutPtr::operator WatchpointLayout const * ( ) const
inlinenoexcept

Indirection.

Returns
the pointer to the pointed layout.

Definition at line 100 of file WatchpointLayout.h.

◆ operator!=()

bool BifrostGraph::Executor::WatchpointLayoutPtr::operator!= ( WatchpointLayoutPtr const &  other) const
inlinenoexcept

Comparison.

Returns
true if pointers are different.

Definition at line 94 of file WatchpointLayout.h.

◆ operator->() [1/2]

WatchpointLayout const * BifrostGraph::Executor::WatchpointLayoutPtr::operator-> ( ) const
inlinenoexcept

Indirection.

Returns
the pointer to the pointed layout.

Definition at line 104 of file WatchpointLayout.h.

◆ operator->() [2/2]

WatchpointLayout * BifrostGraph::Executor::WatchpointLayoutPtr::operator-> ( )
inlinenoexcept

Indirection.

Returns
the pointer to the pointed layout.

Definition at line 108 of file WatchpointLayout.h.

◆ operator=() [1/2]

WatchpointLayoutPtr & BifrostGraph::Executor::WatchpointLayoutPtr::operator= ( WatchpointLayoutPtr &&  )

Assignment operators.

◆ operator=() [2/2]

WatchpointLayoutPtr & BifrostGraph::Executor::WatchpointLayoutPtr::operator= ( WatchpointLayoutPtr const &  )

Assignment operators.

◆ operator==()

bool BifrostGraph::Executor::WatchpointLayoutPtr::operator== ( WatchpointLayoutPtr const &  other) const
inlinenoexcept

Comparison.

Returns
true if pointers are equal.

Definition at line 88 of file WatchpointLayout.h.