openPMD-api
Public Types | Public Member Functions | Static Public Member Functions | List of all members
openPMD::RandomDatasetFiller< Distr, T > Class Template Reference
Inheritance diagram for openPMD::RandomDatasetFiller< Distr, T >:
Inheritance graph
[legend]
Collaboration diagram for openPMD::RandomDatasetFiller< Distr, T >:
Collaboration graph
[legend]

Public Types

using resultType = T
 
- Public Types inherited from openPMD::DatasetFiller< typename Distr::result_type >
using resultType = typename Distr::result_type
 

Public Member Functions

 RandomDatasetFiller (Distr distribution, Extent::value_type numOfItems=0)
 
std::shared_ptr< T > produceData () override
 Create a shared pointer of m_numberOfItems items of type T. More...
 
void setSeed (std::default_random_engine::result_type seed)
 
void randomSeed ()
 
void bufferMode ()
 Activate buffer mode. More...
 
void setNumberOfItems (Extent::value_type numItems) override
 Set number of items to be produced. More...
 
- Public Member Functions inherited from openPMD::DatasetFiller< typename Distr::result_type >
 DatasetFiller (Extent::value_type numberOfItems=0)
 
virtual ~DatasetFiller ()=default
 This class will be derived from.
 

Static Public Member Functions

template<typename X = Distr>
static RandomDatasetFiller< X, T > makeRandomDatasetFiller (Extent::value_type numberOfItems, typename X::result_type lower, typename X::result_type upper)
 

Additional Inherited Members

- Protected Attributes inherited from openPMD::DatasetFiller< typename Distr::result_type >
Extent::value_type m_numberOfItems
 

Member Function Documentation

◆ bufferMode()

template<typename Distr , typename T = typename Distr::result_type>
void openPMD::RandomDatasetFiller< Distr, T >::bufferMode ( )
inline

Activate buffer mode.

Create a bunch of data to write (instantly) and return that upon calling <operator()>().

◆ makeRandomDatasetFiller()

template<typename Distr , typename T = typename Distr::result_type>
template<typename X = Distr>
static RandomDatasetFiller< X, T > openPMD::RandomDatasetFiller< Distr, T >::makeRandomDatasetFiller ( Extent::value_type  numberOfItems,
typename X::result_type  lower,
typename X::result_type  upper 
)
inlinestatic
Template Parameters
XDummy template parameter such that the RandomDatasetFiller is usable also when this function's implementation does not work on the distribution's concrete type.
Parameters
numberOfItemsNumber of items to be produced per call of produceData.
lowerLower bound for the random values to be generated.
upperUpper bound for the random values to be generated.
Returns
An instance of RandomDatasetFiller matching the given parameters.

◆ produceData()

template<typename Distr , typename T = typename Distr::result_type>
std::shared_ptr< T > openPMD::RandomDatasetFiller< Distr, T >::produceData ( )
inlineoverridevirtual

Create a shared pointer of m_numberOfItems items of type T.

Should take roughly the same amount of time per call as long as m_numberOfItems does not change.

Returns

Implements openPMD::DatasetFiller< typename Distr::result_type >.

◆ setNumberOfItems()

template<typename Distr , typename T = typename Distr::result_type>
void openPMD::RandomDatasetFiller< Distr, T >::setNumberOfItems ( Extent::value_type  numberOfItems)
inlineoverridevirtual

Set number of items to be produced.

Parameters
numberOfItemsThe number.

Implements openPMD::DatasetFiller< typename Distr::result_type >.


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