FiberVISH 0.2
Fish - The Fiber Bundle API for the Vish Visualization Shell
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
Wizt::FieldInputCreator< FieldVObject, TypeList, GridInspector, NumberOfInputFields, OutputType > Struct Template Reference

Creator class for objects that require fields as input. More...

#include <FieldInputCreator.hpp>

Inheritance diagram for Wizt::FieldInputCreator< FieldVObject, TypeList, GridInspector, NumberOfInputFields, OutputType >:
Wizt::VInputCreator< class InputType, class VInputCreatorClass > Wizt::VInputCreatorBase Wizt::VManagedDomainObject< VInputCreatorBase > Wizt::VManagedObject Wizt::VManagedObjectBase MemCore::Intercube MemCore::MutableName MemCore::ReferenceBase< VManagedObjectBase > Wizt::TypedFieldInputCreator< FieldVObject, GridInspector, OutputType >

Classes

struct  MakeString
 

Public Types

typedef FieldInputCreatorBaseTrait< FieldVObject, OutputType >::Creator_t FieldInputCreatorBase_t
 
- Public Types inherited from Wizt::VManagedDomainObject< VInputCreatorBase >
typedef What Domain_t
 
- Public Types inherited from MemCore::ReferenceBase< VManagedObjectBase >
typedef Object reference_domain_t
 
typedef WeakPtr< Object, Object > SelfPtr_t
 

Public Member Functions

 FieldInputCreator (const string &name, int quality, const RefPtr< VCreationPreferences > &Prep=NullPtr())
 Constructor.
 
 FieldInputCreator (const VCreatorProperties &CreatorProperties, int quality, const RefPtr< VCreationPreferences > &Prep=NullPtr())
 Constructor.
 
template<unsigned ID>
 FieldInputCreator (const VCreatorProperty< ID > &CreatorProperties, int quality, const RefPtr< VCreationPreferences > &Prep=NullPtr())
 Constructor.
 
VAcceptInfoList_t accept (const RefPtr< VObject > &vobj) const override
 Object acceptance function.
 
- Public Member Functions inherited from Wizt::VInputCreator< class InputType, class VInputCreatorClass >
 VInputCreator (const string &name, int ObjectQuality, const RefPtr< VCreationPreferences > &prop=NullPtr(), const char *const InputCreatorReleaseIdentifier=VISH_INPUT_CREATOR_RELEASE_IDENTIFIER)
 
- Public Member Functions inherited from Wizt::VInputCreatorBase
RefPtr< VCreationPreferencesCreationPreferences (const RefPtr< VCreationPreferences > &AdditionalPreferences=nullptr) const
 
 VInputCreatorBase (const string &name, int prior, const RefPtr< VCreationPreferences > &prop, const char *vish_creator_release_identifier)
 
- Public Member Functions inherited from Wizt::VManagedDomainObject< VInputCreatorBase >
const type_infogetDomainType () const override
 
void remove ()
 
 VManagedDomainObject (const string &name, int priority=DEFAULT_PRIORITY)
 
- Public Member Functions inherited from Wizt::VManagedObject
string getLoadModule () const
 
void insert (const string &s, int priority=DEFAULT_PRIORITY)
 
void remove ()
 
void setPriority (int priority)
 
 VManagedObject (const string &name, int priority=DEFAULT_PRIORITY)
 
- Public Member Functions inherited from MemCore::ReferenceBase< VManagedObjectBase >
auto getObjectCountID () const noexcept
 
bool isIdentical (const WeakPtr< Object, Object > &PossibleSelf) const noexcept
 
void mkAutoDestructive ()
 
refcount_t refcount () const noexcept
 
 ReferenceBase (Object *that) noexcept
 
const auto & self () const
 
refcount_t wrefcount () const noexcept
 
- Public Member Functions inherited from MemCore::Intercube
void addInterface (const RefPtr< InterfaceBase > &I) const
 
void addInterfaceData (const Data &D)
 
void addInterfaceData (const Data &D)
 
void clearInterfaces ()
 
bool const_iterateInterfaces (const RefPtr< InterfaceIterationParameter > &IIP) const
 
virtual RefPtr< InterfaceBasecreateInterface (const type_info &) const
 
RefPtr< InterfaceBasefindInterface (const type_info &t) const
 
RefPtr< InterfaceBasegetInterface (const type_info &t)
 
std::string getInterfaceNames (const char delim=';') const
 
bool gotNewInterfaceData (const Data &D)
 
bool gotNewInterfaceData (mutex &M, const Data &D)
 
bool gotNewInterfaceData (mutex &M, const Data &D)
 
bool gotNewInterfaceData (mutex &M, const Data &D, const Selector &S)
 
bool gotNewInterfaceData (mutex &M, const Data &D, const Selector *S)
 
bool hasChangedInterfaceData (const Data &D) const
 
bool hasChangedInterfaceData (const Data &D) const
 
bool hasChangedInterfaceData (const Data &D, const Selector &) const
 
bool hasChangedInterfaceData (const Data &D, const Selector *) const
 
bool hasInterface (const type_info &t) const
 
bool iterateInterfaces (const RefPtr< InterfaceIterationParameter > &IIP)
 
void printInterfaces () const
 
void registerInterface (const type_info &t)
 
void removeInterface ()
 
void removeInterfaceBase (const type_info &InterfaceBaseID)
 
- Public Member Functions inherited from MemCore::MutableName
void addNameChangeNotifier (const WeakPtr< Notifier > &)
 
std::string BaseName (const char Separator) const
 
const std::string & getName () const
 
 MutableName (const std::string &theName)
 
const std::string & Name () const
 
void rename (const std::string &newName)
 
void setName (const std::string &newName)
 

Static Public Member Functions

static string TypeString ()
 
- Static Public Member Functions inherited from Wizt::VManagedDomainObject< VInputCreatorBase >
static bool remove (const std::string &s)
 
static RefPtr< VManagedObjectfind (const string &s)
 
static int iterate (VManagedObjectIterator_t VIt, int p_start=INT_MIN, int p_end=INT_MAX)
 
static int size ()
 
static int traverse (VManagedObjectIterator &VIt, int p_start=INT_MIN, int p_end=INT_MAX)
 
- Static Public Member Functions inherited from Wizt::VManagedObject
static int count ()
 
static VManagedObjectPtr find (const type_info &, const std::string &s)
 
static bool InitDomain (const type_info &)
 
static int iterateModules (ModuleIterator &VIM)
 
static int size (const type_info &)
 
static int traverse (const type_info &, VManagedObjectIterator &VIt, int p_start, int p_end)
 
static void UnloadVModule (const string &what, VRemoveItem &RI)
 
- Static Public Member Functions inherited from MemCore::MutableName
static std::string BaseName (const std::string &theName, const char Separator)
 

Additional Inherited Members

- Static Public Attributes inherited from Wizt::VManagedObject
static string CurrentLoadModule
 
- Protected Member Functions inherited from MemCore::ReferenceBase< VManagedObjectBase >
virtual void extremeUnction ()
 
ReferenceBaseoperator= (const ReferenceBase &R)
 
void suicide ()
 

Detailed Description

template<class FieldVObject, class TypeList = LIST<META::NIL>, class GridInspector = typename FieldVObject::GridInspector, int NumberOfInputFields = FieldVObject::NumberOfInputFields, class OutputType = void>
struct Wizt::FieldInputCreator< FieldVObject, TypeList, GridInspector, NumberOfInputFields, OutputType >

Creator class for objects that require fields as input.

It operates on existing fields only given explicitly as template argument. This method is not recommended, a better way way is to use a TypedFieldInputCreator which constraints the input type based on a typedef as given in the class itself.

Parameters
TypeListOptionally specify the types on that input fields must provide. Default is META::NIL, which means all possible field are allowed as input. This probably not what dIyou want. Types here must be specified in the form of a META::LIST.
static Ref<FieldInputCreator<VolumeRender> > myCreator("Display/GenericVolumeRender");
static Ref<FieldInputCreator<VolumeRender, LIST<double, LIST<float> > > > myCreator("Display/FloatingPtVolumeRender");
static Ref<FieldInputCreator<VolumeRender, META::NativeTypeList> > myCreator("Display/NativeTypeVolumeRender");
An iterator with an optional DataCreator, which is just a class to intercept creation of data along a...
Definition CreativeIterator.hpp:34
NumberOfInputFieldsAn integer telling how many field this object wants upon creation. This is expected to be an enum in the given FieldVObject, but can also set explicitly for each FieldInputCreator.
static Ref<FieldInputCreator< VolumeRender, META::NIL, 1> myCreator("Display/SimpleVolumeRender");
static Ref<FieldInputCreator<DualVolumeRender, META::NIL, 2> myCreator("Display/DualVolumeRender");

, META::NativeTypeList, META::IntegerTypeList

Constructor & Destructor Documentation

◆ FieldInputCreator() [1/3]

template<class FieldVObject , class TypeList = LIST<META::NIL>, class GridInspector = typename FieldVObject::GridInspector, int NumberOfInputFields = FieldVObject::NumberOfInputFields, class OutputType = void>
Wizt::FieldInputCreator< FieldVObject, TypeList, GridInspector, NumberOfInputFields, OutputType >::FieldInputCreator ( const string &  name,
int  quality,
const RefPtr< VCreationPreferences > &  Prep = NullPtr() 
)
inline

Constructor.

Parameters
qualityThe object's matureness, according to ObjectQuality

◆ FieldInputCreator() [2/3]

template<class FieldVObject , class TypeList = LIST<META::NIL>, class GridInspector = typename FieldVObject::GridInspector, int NumberOfInputFields = FieldVObject::NumberOfInputFields, class OutputType = void>
Wizt::FieldInputCreator< FieldVObject, TypeList, GridInspector, NumberOfInputFields, OutputType >::FieldInputCreator ( const VCreatorProperties CreatorProperties,
int  quality,
const RefPtr< VCreationPreferences > &  Prep = NullPtr() 
)
inline

Constructor.

Parameters
CreatorPropertiesThe properties of this creator, it is recommendable to make use of namespace Panthalassia or ProtoOcean.
qualityThe object's matureness, according to ObjectQuality

◆ FieldInputCreator() [3/3]

template<class FieldVObject , class TypeList = LIST<META::NIL>, class GridInspector = typename FieldVObject::GridInspector, int NumberOfInputFields = FieldVObject::NumberOfInputFields, class OutputType = void>
template<unsigned ID>
Wizt::FieldInputCreator< FieldVObject, TypeList, GridInspector, NumberOfInputFields, OutputType >::FieldInputCreator ( const VCreatorProperty< ID > &  CreatorProperties,
int  quality,
const RefPtr< VCreationPreferences > &  Prep = NullPtr() 
)
inline

Constructor.

Parameters
CreatorPropertiesThe properties of this creator, it is recommendable to make use of namespace Panthalassia or ProtoOcean.
qualityThe object's matureness, according to ObjectQuality

Allows to create objects via Panthalassia syntax:

Category("Display")
+ Identifier("ScalarValues")
+ Help("Display the values of a scalar field at the location of each vertex")
Wizt::VCreatorProperty< Wizt::VCreatorProperties::TEXTIDENTIFIER > Identifier
Wizt::VCreatorProperty< Wizt::VCreatorProperties::SHORTHELP > Help
Wizt::VCreatorProperty< Wizt::VCreatorProperties::CATEGORY > Category

Member Function Documentation

◆ accept()

template<class FieldVObject , class TypeList = LIST<META::NIL>, class GridInspector = typename FieldVObject::GridInspector, int NumberOfInputFields = FieldVObject::NumberOfInputFields, class OutputType = void>
VAcceptInfoList_t Wizt::FieldInputCreator< FieldVObject, TypeList, GridInspector, NumberOfInputFields, OutputType >::accept ( const RefPtr< VObject > &  vobj) const
inlineoverride