Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
loss_ptr< CONF > Class Template Reference

loss_ptr: a wrapper around a shared_ptr to a loss More...

#include <loss_ptr.h>

Inherits loss_base< CONF >.

Public Member Functions

 BBM_IMPORT_CONFIG (CONF)
 
 loss_ptr (void)=default
 Default (empty) constructor; shared_ptr is set to nullptr.
 
template<typename LOSSTYPE >
requires concepts::loss<LOSSTYPE>
 loss_ptr (const std::shared_ptr< LOSSTYPE > &ptr)
 Construct from shared_ptr.
 
 loss_ptr (const loss_ptr &src)
 Copy constructor.
 
loss_ptroperator= (const loss_ptr &src)
 Assignment operator.
 
const std::shared_ptr< loss_base< Config > > & ptr (void) const
 Get the interal shared pointer.
 
virtual void update (void) override final
 Pointer-dereference passthrough of the update method.
 
virtual Value operator() (Mask mask=true) const override final
 Pointer-dereference passthrough of the loss evaluation operator()
 
Override the -> operator
const std::shared_ptr< loss_base< Config > > & operator-> (void)
 
std::shared_ptr< const loss_base< Config > > operator-> (void) const
 
- Public Member Functions inherited from loss_base< CONF >
 BBM_IMPORT_CONFIG (CONF)
 
virtual ~loss_base (void)
 empty virtual base destructor
 
virtual void update (void)=0
 update
 
virtual Value operator() (Mask mask=true) const =0
 operator(): compute the loss
 

Private Attributes

std::shared_ptr< loss_base< Config > > _loss
 

Detailed Description

template<typename CONF>
requires concepts::config<CONF>
class bbm::loss_ptr< CONF >

loss_ptr: a wrapper around a shared_ptr to a loss

Template Parameters
CONF= bbm configuration

Constructor & Destructor Documentation

◆ loss_ptr() [1/3]

loss_ptr ( void  )
default

Default (empty) constructor; shared_ptr is set to nullptr.

◆ loss_ptr() [2/3]

loss_ptr ( const std::shared_ptr< LOSSTYPE > &  ptr)
inline

Construct from shared_ptr.

◆ loss_ptr() [3/3]

loss_ptr ( const loss_ptr< CONF > &  src)
inline

Copy constructor.

Member Function Documentation

◆ BBM_IMPORT_CONFIG()

BBM_IMPORT_CONFIG ( CONF  )

◆ operator()()

virtual Value operator() ( Mask  mask = true) const
inlinefinaloverridevirtual

Pointer-dereference passthrough of the loss evaluation operator()

Parameters
mask= mask to enable/disable lanes
Returns
the loss

Implements loss_base< CONF >.

◆ operator->() [1/2]

const std::shared_ptr< loss_base< Config > > & operator-> ( void  )
inline

◆ operator->() [2/2]

std::shared_ptr< const loss_base< Config > > operator-> ( void  ) const
inline

◆ operator=()

loss_ptr & operator= ( const loss_ptr< CONF > &  src)
inline

Assignment operator.

◆ ptr()

const std::shared_ptr< loss_base< Config > > & ptr ( void  ) const
inline

Get the interal shared pointer.

◆ update()

virtual void update ( void  )
inlinefinaloverridevirtual

Pointer-dereference passthrough of the update method.

Implements loss_base< CONF >.

Member Data Documentation

◆ _loss

std::shared_ptr<loss_base<Config> > _loss
private

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