dxFeed Graal CXX API
Loading...
Searching...
No Matches
dxfcpp::SharedEntity Struct Reference

Base abstract "shared entity" class. Has some helpers for dynamic polymorphism. More...

#include <SharedEntity.hpp>

+ Inheritance diagram for dxfcpp::SharedEntity:

Public Types

using Ptr = std::shared_ptr<SharedEntity>
 The alias to a type of shared pointer to the SharedEntity object.
 

Public Member Functions

template<typename T >
bool is () const noexcept
 Checks that pointer to the current type could be converted to type T* In other words: whether type T belongs to the type hierarchy in which the current type resides.
 
template<typename T >
std::shared_ptr< T > sharedAs () noexcept
 Returns a pointer to the current object wrapped in a smart pointer to type T.
 
template<typename T >
std::shared_ptr< T > sharedAs () const noexcept
 Returns a pointer to the current object wrapped in a smart pointer to type T.
 
virtual std::string toString () const noexcept
 Returns a string representation of the current object.
 
- Public Member Functions inherited from dxfcpp::Entity
virtual ~Entity () noexcept=default
 The default virtual d-tor.
 

Detailed Description

Base abstract "shared entity" class. Has some helpers for dynamic polymorphism.

Member Function Documentation

◆ is()

template<typename T >
bool dxfcpp::SharedEntity::is ( ) const
inlinenoexcept

Checks that pointer to the current type could be converted to type T* In other words: whether type T belongs to the type hierarchy in which the current type resides.

Template Parameters
TThe type to check
Returns
true if type belongs to the type hierarchy in which the current type resides.

◆ sharedAs() [1/2]

template<typename T >
std::shared_ptr< T > dxfcpp::SharedEntity::sharedAs ( ) const
inlinenoexcept

Returns a pointer to the current object wrapped in a smart pointer to type T.

Warning
Please do not use this method unless the object was created with std::shared_ptr<T>(new T(...)) or std::make_shared<T>(...)
Template Parameters
TThe type to convert to a pointer to
Returns
a smart pointer to type T

◆ sharedAs() [2/2]

template<typename T >
std::shared_ptr< T > dxfcpp::SharedEntity::sharedAs ( )
inlinenoexcept

Returns a pointer to the current object wrapped in a smart pointer to type T.

Warning
Please do not use this method unless the object was created with std::shared_ptr<T>(new T(...)) or std::make_shared<T>(...)
Template Parameters
TThe type to convert to a pointer to
Returns
a smart pointer to type T

◆ toString()