Helios++
Helios software for LiDAR simulations
EggAsset< FullClass, HatchArgs > Class Template Referenceabstract

An EggAsset is an asset that can hatch to its full class. More...

#include <EggAsset.h>

Inheritance diagram for EggAsset< FullClass, HatchArgs >:
Collaboration diagram for EggAsset< FullClass, HatchArgs >:

Public Member Functions

 EggAsset ()
 Default constructor for EggAsset.
 
virtual FullClass hatch (HatchArgs ...)=0
 Hatch the egg class so the full class arises. More...
 
virtual std::shared_ptr< FullClass > smartHatch (HatchArgs ...)=0
 Like the hatch method but returning the full class as a shared smart pointer. More...
 
bool isEgg () const override
 
- Public Member Functions inherited from Asset
std::string getLocationString ()
 Obtain asset location string. More...
 

Additional Inherited Members

- Public Attributes inherited from Asset
std::string id = ""
 Asset identifier.
 
std::string name = "Unnamed Asset"
 Asset name.
 
std::string sourceFilePath = ""
 Path to asset file.
 

Detailed Description

template<typename FullClass, typename ... HatchArgs>
class EggAsset< FullClass, HatchArgs >

An EggAsset is an asset that can hatch to its full class.

Author
Alberto M. Esmoris Pena
Version
1.0
Template Parameters
FullClassThe class that the egg can hatch too
HatchArgsThe arguments that must be provided for the hatch operation to be feasible
See also
Asset

Member Function Documentation

◆ hatch()

template<typename FullClass , typename ... HatchArgs>
virtual FullClass EggAsset< FullClass, HatchArgs >::hatch ( HatchArgs ...  )
pure virtual

Hatch the egg class so the full class arises.

Returns
Full class from the egg class

◆ isEgg()

template<typename FullClass , typename ... HatchArgs>
bool EggAsset< FullClass, HatchArgs >::isEgg ( ) const
inlineoverridevirtual
See also
Asset::isEgg

Reimplemented from Asset.

◆ smartHatch()

template<typename FullClass , typename ... HatchArgs>
virtual std::shared_ptr<FullClass> EggAsset< FullClass, HatchArgs >::smartHatch ( HatchArgs ...  )
pure virtual

Like the hatch method but returning the full class as a shared smart pointer.

See also
EggAsset::hatch

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