Fish - FiberLib for VISH 0.3
Fish - The Fiber Bundle API for the Vish Visualization Shell
Fiber::HDF5CreatorBase Class Referenceabstract

Deferred creation of MemBase objects from an HDF5 file. More...

#include <HDF5CreatorBase.hpp>

Inheritance diagram for Fiber::HDF5CreatorBase:
MemCore::AlzheimerCreator< MemBase, CreativeArrayBase > F5Fragment MemCore::Creator< RefType, MyCreatorBase > MemCore::CreatorBase< Domain > Fiber::HDF5Creator

Public Member Functions

 HDF5CreatorBase (const RefPtr< LoaderProgress > &BLP, const F5Fragment &HC, const DynamicSize &theSize, const RefPtr< MemBase > &Data, const WeakPtr< Cache > &theCache)
 Construct a HDF5 creator for reading.
string makeInfoString () const
const type_infogetType () override
const type_infoconst_getType () const
size_t getMemSize () const
RefPtr< MemBaseproduce () override
 Implemented from CreatureBase<MemBase>::create() : Actually allocate memory and load data from disc, if not yet loaded.
bool request (const result &R) override
bool isUnderCreation () const override
bool discardCreation () override
Creature::ReasonForReleasal release () override
Public Member Functions inherited from MemCore::Creator< RefType, MyCreatorBase >
 Creator (const RefPtr< RefType > &D, const WCachePtr &MyCache)
RefPtr< RefType > get () const override
CacheablePtr getCacheable () const override
bool hasData () const override
Creature::ReasonForReleasal release () override
bool supersede (const RefPtr< Domain > &NewData, bool CreateAsOld=false)
RefPtr< RefType > take () override
Public Member Functions inherited from MemCore::CreatorBase< Domain >
RefPtr< Domain > create (bool CreateAsOld=false)
RefPtr< Domain > createAsOld ()
 CreatorBase (const WCachePtr &theCache)
RefPtr< Domain > get_or_request (const result &R=nullptr)
bool isUnderCreation () const override
virtual bool request (const result &R=nullptr)
Public Member Functions inherited from F5Fragment
 F5Fragment (const MemCore::RefPtr< H5Group > &theGroup, const std::string &theDatasetName, const std::string &Filename, const std::string &FragmentPath, size_t NumberOfAvailableFragments, size_t CurrentFragmentNumber)
 F5Fragment (const MemCore::RefPtr< H5Group > &theGroup, const std::string &Filename, const std::string &FragmentPath, const RefPtr< H5ID > &H5ElementType, size_t NumberOfAvailableFragments, size_t CurrentFragmentNumber)
MemCore::RefPtr< Readeropen ()
void invalidate ()

Static Public Member Functions

static bool loadHDF5Data (const RefPtr< HDF5CreatorBase > &TheHDF5Creator, const result &R)

Public Attributes

string path_info
 Some textual information about this dataset, to be displayed in a progress/status bar if part of a GUI.
WeakPtr< LoaderProgressLP
WeakPtr< StorageTransformations::IOPerformanceLoadPerformance
int FragmentNumber = 1
WeakPtr< FieldMyLoaderField
Timer Stats
Public Attributes inherited from F5Fragment
std::string DatasetName
std::string Filename
std::string FragmentPath
size_t NumberOfAvailableFragments = 0
size_t CurrentFragmentNumber = 0
RefPtr< H5DatasetAccessDatasetAccess

Protected Types

typedef AlzheimerCreator< MemBase, CreativeArrayBaseBase_t

Protected Member Functions

virtual HDF5CreatorBase::DataPtr_t load_data ()=0
void setup (const RefPtr< FiberTypeBase > &MyFiberType)
Protected Member Functions inherited from MemCore::Creator< RefType, MyCreatorBase >
RefPtr< RefType > produce () override

Protected Attributes

DynamicSize mySize
unsigned ElementSize = 0
std::atomic< long > NumberOfLoadingOperations = 0
std::atomic< bool > isLoading = false
std::mutex CreationMutex
std::future< bool > AsynchroneouslyComputedData
RefPtr< H5GroupmyGroup
Protected Attributes inherited from F5Fragment
RefPtr< H5GroupmyGroup
RefPtr< H5IDH5ElementType

Detailed Description

Deferred creation of MemBase objects from an HDF5 file.

Constructor & Destructor Documentation

◆ HDF5CreatorBase()

Fiber::HDF5CreatorBase::HDF5CreatorBase ( const RefPtr< LoaderProgress > & BLP,
const F5Fragment & HC,
const DynamicSize & theSize,
const RefPtr< MemBase > & Data,
const WeakPtr< Cache > & theCache )

Construct a HDF5 creator for reading.

Indicate that the data managed here are already saved, and their "last saved" time is identical to the construction time of this Creator.

Referenced by Fiber::HDF5Creator::HDF5Creator().

Member Function Documentation

◆ getType()

const type_info & Fiber::HDF5CreatorBase::getType ( )
overridevirtual