Fish - FiberLib for VISH 0.3
Fish - The Fiber Bundle API for the Vish Visualization Shell
AnalyticCreator< Formula > Struct Template Reference

A Fiber Creator that computes a data array on request in a thread. More...

#include <AnalyticCreator.hpp>

Inheritance diagram for AnalyticCreator< Formula >:
Fiber::AsynchronCreator MemCore::AlzheimerCreator< MemBase, CreativeArrayBase > MemCore::Creator< RefType, MyCreatorBase > MemCore::CreatorBase< Domain >

Public Types

enum  { FieldDims = Formula::Dims }
typedef Formula::value_type value_type
typedef Formula::point_type point_type
typedef Formula::Parameters Param_t
typedef Fiber::MemArray< FieldDims, value_type > Array_t
typedef Fiber::DirectProductMemArray< point_type > ProcArray_t

Public Member Functions

const type_infogetType ()
RefPtr< Fiber::MemBasecompute (const std::atomic< bool > &Stop) const
 AnalyticCreator (double t, const RefPtr< CreativeArrayBase > &Coords, const Param_t &P)
Public Member Functions inherited from Fiber::AsynchronCreator
 AsynchronCreator (const std::function< DataPtr_t(const std::atomic< bool > &) > &CreationFunctor, const RefPtr< MemCore::Cache > &theCache=MemCore::Cache::MemCache())
void setup (const DynamicSize &theSize, const RefPtr< FiberTypeBase > &MyFiberType)
const type_infogetType () override
RefPtr< MemBaseproduce () override
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
const type_info & getType () 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)

Static Public Member Functions

static void setFieldType (Fiber::FieldSelector &FS)
static bool set (double time, const Param_t &P, Grid &G, const string &fieldname)

Public Attributes

double time
Param_t Params
RefPtr< CreativeArrayBasemyCoords

Additional Inherited Members

Protected Types inherited from Fiber::AsynchronCreator
typedef AlzheimerCreator< MemBase, CreativeArrayBaseBase_t
Protected Member Functions inherited from Fiber::AsynchronCreator
DataPtr_t create_data () const
Protected Member Functions inherited from MemCore::Creator< RefType, MyCreatorBase >
RefPtr< RefType > produce () override
Static Protected Member Functions inherited from Fiber::AsynchronCreator
static bool createData (const MemCore::WeakPtr< AsynchronCreator > &TheCreator, const result &R)
Protected Attributes inherited from Fiber::AsynchronCreator
volatile long NumberOfLoadingOperations { 0 }
std::atomic< bool > isLoading { false }
std::atomic< bool > discardCreationFlag { false }
std::mutex CreationMutex
std::mutex LoadingFlagMutex
std::function< DataPtr_t(const std::atomic< bool > &Stop) > myDataCreator
std::future< bool > AsynchroneouslyComputedData

Detailed Description

template<class Formula>
struct AnalyticCreator< Formula >

A Fiber Creator that computes a data array on request in a thread.

Member Function Documentation

◆ getType()

template<class Formula>
const type_info & AnalyticCreator< Formula >::getType ( )
inlinevirtual