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

Base class for objects that operate on Field objects and create new fields. More...

#include <FieldOperatorObject.hpp>

Inheritance diagram for Wizt::FieldOperatorObject:
Wizt::VObject Wizt::Fish< Fiber::Field > Wizt::VChartDependent Wizt::StatusIndicator Wizt::VSkale Wizt::Fish< double > Wizt::VTraceRequestID Wizt::VInputClassRecognition Wizt::VScriptable Wizt::VManagedDomainObject< VObject > Wizt::VSaveable Wizt::VStateCreatorBase Wizt::VConnectable Wizt::VManagedObjectBase Wizt::BinaryFieldOperatorObject< TheBinaryOperator, NamingOperator, PrimaryValueType, SecondaryValueType, ResultValueType > Wizt::EditField Wizt::FieldFunctor< Operation, GridInspectorType > Wizt::UnaryFieldOperatorObject< TheUnaryOperator, ResultType >

Public Member Functions

 FieldOperatorObject (const string &name, const string &fieldname, int p=0, const RefPtr< VCreationPreferences > &VP=NullPtr())
 Construct a field operator object.
void publishInputField ()
 Make the input field available as output as well, such that output modules can be connected to the field operator instead of its inputs.
 ~FieldOperatorObject () noexcept
 Destructor.
bool update (VRequest &R, double precision)
virtual bool preFieldOperation (VRequest &Context)
virtual bool FieldOperation (VRequest &Context, Fiber::Field &, Fiber::Representation &)=0
 The operation to be performed on the given field, to be overloaded in a subclass.
virtual bool postFieldOperation (VRequest &Context, int newlyCreatedFields)
Public Member Functions inherited from Wizt::VObject
string CreatorName () const
const WeakPtrVCreatorBasegetCreator () const
virtual bool request (VRequest &, double precision, const WeakVObjectPtr &ImmediateRequestor, const WeakVObjectPtr &RootRequestor)
bool schedule (double precision, const RefPtr< ValuePool > &Context=nullptr)
void enableRequestProcessing ()
void disableRequestProcessing ()
bool acceptsRequests () const
const MemCore::CounterUpdateCount () const
const MemCore::CounterRequestCount () const
 VObject (const string &name, int p, const RefPtr< VCreationPreferences > &VP)
virtual const GimpIcongimp_icon () const
virtual const char *const * xpm_icon () const
virtual string qt_icon () const
virtual string help (HelpType=HTMLText) const
bool setObjectAsChild (const VObjectPtr &childVObject, const string &DependencySlotName)
double requestTime () const
void remove ()
const RefPtr< VCreationPreferences > & CreationPreferences () const
virtual std::string type_key () const
void iterateParents (VObjectIterator &VOI, int EL=0) const
int iterateParents (const VObjectIterator_f &VOI, int EL=0) const
virtual string CreateParameterName (const ParameterID &name) const
int iterateChildren (ChildIterator &) const
int findChildren (const Lambda &theLambda) const
std::list< std::vector< std::string > > getProvenance () const
AttachErrorCode attachNewObject (const RefPtr< VSlot > &slot, const string &name, const Intercube &CreationContext, const RefPtr< VCreationPreferences > &VCP=nullptr)
AttachErrorCode attachNewObject (const RefPtr< VSlot > &slot, const string &name, const RefPtr< VCreationPreferences > &VCP=nullptr)
AttachErrorCode attachInputObject (const RefPtr< VSlot > &slot, const string &name={}, const RefPtr< VCreationPreferences > &VCP=nullptr, bool ReallyUnique=true)
CreateConnectionResult_t createChild (const VAcception &VA, const Intercube &CreationContext)
CreateConnectionResult_t connectChild (const VObjectPtr &ChildObject, const RefPtr< VAcceptInfo > &VA)
CreateConnectionResult_t connectAsChild (const VObjectPtr &ChildObject, const VAcception &VA)
virtual void InputCreation (const RefPtr< VParameter > &CurrentObjectsInput, const VObjectPtr &NewlyCreatedObject, const RefPtr< VParameter > &TheNewObjectsOutputParameter)
VObjectPtr createInput (const WeakPtrVCreatorBase &VCrec, const RefPtr< VSlot > &what, const string &name, Intercube &CreationContext)
VObjectPtr extractSlot (const RefPtr< VSlot > &theSlot, const string &theNewName=string()) const
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 Wizt::VConnectable
virtual void adjustConnections (const RefPtr< VSlot > &ChangedSlot, const RefPtr< VParameter > &par)
VSlotContainer::AttachErrorCode attach (const ParameterID &whichone, VSlotContainer &sourceObject, const ParameterID &sourceName)
AttachErrorCode attach (const RefPtr< VParameter > &OldParam, const RefPtr< VParameter > &NewParam, const string &Member={})
AttachErrorCode attachUniqueObject (const RefPtr< VParameter > &param, const RefPtr< VCreationPreferences > &VCP=NullPtr(), bool ReallyUnique=true)
AttachErrorCode attachUniqueObject (const RefPtr< VSlot > &slot, const RefPtr< VCreationPreferences > &VCP=NullPtr(), bool ReallyUnique=true)
RefPtr< VSlotConnect (const RefPtr< VParameter > &SourceParam)
RefPtr< VSlotConnectInterface (const RefPtr< VSlotContainer > &Provider, const RefPtr< InterfaceBase > &IB)
virtual bool CreatedFilteredConnection (const RefPtr< VParameter > &SourceParam)
Public Member Functions inherited from Wizt::VSlotContainer
Ageableage (const RefPtr< ValuePool > &VP)
const Ageableage (const RefPtr< ValuePool > &VP) const
const AgeableConnectionAge () const
bool ConnectionsHaveChanged (const RefPtr< ValuePool > &VP) const
bool HasYoungerInput (const RefPtr< ValuePool > &Context, int RecursionLevel=0) const
Ageable YoungestInput (const RefPtr< ValuePool > &Context) const
Ageable YoungestOutput (const RefPtr< ValuePool > &Context) const
Ageable YoungestUncachedInput (const RefPtr< ValuePool > &Context) const
bool CheckIfThereExistNewerOutputs (const VRequest &request, bool AdjustObjectAge) const
RefPtr< VSlotaddParameter (const ParameterID &name, int EL, const RefPtr< VParameter > &param, bool overwriteExistingSlot)
virtual bool allowParameterReplacement (const RefPtr< VParameter > &NewParam, const RefPtr< VParameter > &OldParam, const string &localName, int ExpertLevel)
virtual int connectSlots (const VSlotContainerPtr &vobj)
bool removeParameter (const ParameterID &s)
RefPtr< VParametergetParameter (const ParameterID &s) const
RefPtr< VSlotgetSlot (const ParameterID &s, int &EL) const
bool setSlotValueFromText (const ParameterID &s, const string &ValueText, const RefPtr< ValuePool > &VP, const string &theMember={})
RefPtr< VSlotfindSlot (const RefPtr< VParameter > &param) const
string getSlotName (const RefPtr< VParameter > &param) const
bool AddAction (const ParameterID &s, const RefPtr< ValueActionBase > &VAB)
bool AddAction (const RefPtr< VSlot > &ActionSlot, bool(DerivedObject::*Action)(const RefPtr< VValueBase > &value))
RefPtr< VParametermkUniqueParameterInput (const ParameterID &s, const string &ContainerName)
int getExpertLevel (const ParameterID &s) const
int setExpertLevel (const ParameterID &s, int EL)
int getExpertLevel (const RefPtr< VParameter > &) const
int getExpertLevel (const RefPtr< VSlot > &S) const
int setExpertLevel (const RefPtr< VSlot > &S, int EL)
int setExpertLevel (const RefPtr< VParameter > &s, int EL)
bool hasChanged (const ParameterID &s, const RefPtr< ValuePool > &Context) const
bool hasChanged (const RefPtr< VSlot > &, const RefPtr< ValuePool > &Context) const
bool hasChanged (const RefPtr< ValuePool > &Context, int n,...) const
bool hasChanged (RefPtr< ValuePool > Context,...) const
virtual bool ignoreInput (const RefPtr< VSlot > &theSlot) const
bool getParameterValue (Type &Variable, const ParameterID &s, const RefPtr< ValuePool > &VP) const
bool getParameterValue (Type &Variable, const ParameterID &s, const VContext &C) const
bool getParameterValue (Type &Variable, const ParameterID &s, const VRequest &R) const
bool setParameterValue (const Type &Variable, const ParameterID &s, const RefPtr< ValuePool > &VP, bool autoCreateLocalValue) const
bool setParameterValue (const Type &Variable, const ParameterID &s, VContext &C, bool autoCreateLocalValue) const
bool setParameterValue (const Type &Variable, const ParameterID &s, VRequest &R, bool autoCreateLocalValue=false) const
RefPtr< VSlotaddParam (const ParameterID &name, const Type &init, const RefPtr< VCreationPreferences > &VP=NullPtr(), int expertLevel=0, bool overwriteExistingSlot=true)
bool setParameterProperty (const ParameterID &param, const string &Properties, const RefPtr< VValueBase > &Value=NullPtr())
RefPtr< VSlotaddFloatParam (double init, const ParameterID &param, double min, double max, const RefPtr< VCreationPreferences > &IP=NullPtr(), int expertLevel=0)
AttachErrorCode attach (const RefPtr< VParameter > &OldParam, const RefPtr< VParameter > &NewParam, const string &Member={})
int iterateParameters (int expertLevel, VSlotIterator &VIIt) const
int iterateInputSlots (int expertLevel, VSlotIterator &VIIt) const
int iterateInputs (VSlotIterator &VIIt, int expertLevel=0)
int iterate_inputs (const std::function< bool(VSlot &what, int ExpertLevel)>) const
RefPtr< VSlotgetUniqueInputSlot (const type_info &what)
int getNumberOfParameters (int expertLevel) const
virtual bool implements (const type_info &what) const
virtual RefPtr< VParametergetImplementation (const type_info &what, const string &name={}, const string &member={}) const
RefPtr< VSlotgetImplementationSlot (const type_info &what, const string &Name={}, const string &Member={}) const
VAcceptInfoList_t getAcceptInfoList (const std::type_info &request_type) const
bool provides (const RefPtr< VSlot > &OutputSlot) const
RefPtr< VSlotfindOutputSlot (const RefPtr< VParameter > &Who) const
bool isYounger (const RefPtr< VParameter > &OutputParam, const RefPtr< ValuePool > &VP) const
bool isNewlyConnected (const RefPtr< VParameter > &Who, const RefPtr< ValuePool > &VP) const
bool hasNewlyConnectedOutputs (const RefPtr< ValuePool > &VP) const
void findNewlyConnectedOutputs (const RefPtr< ValuePool > &VP, VSlotSet &WhichOnes) const
RefPtr< VSlotgetOutput (const string &Name) const
RefPtr< MemCore::StringListgetOutputs (const type_info &what=typeid(void)) const
virtual int iterateOutputs (VOutputIterator &VOut, const type_info &just_these=typeid(void)) const
bool registerOutput (const RefPtr< VParameter > &P, const string &AsName={})
bool registerOutput (const RefPtr< VParameter > &P, const string &AsName, const type_info &MemberType, const string &UseMember)
bool registerOutput (const RefPtr< VParameter > &P, const type_info &MemberType, const string &UseMember)
int getNumberOfInputs () const
int getNumberOfOutputs () const
bool hasChangedSlots (const MemCore::Intercube &IC, const RefPtr< ValuePool > &Context) const
auto include_self (const std::tuple< SlotList... > &t) const -> decltype(std::tuple_cat(std::make_tuple(this), t))
Public Member Functions inherited from Wizt::VStateCreatorBase
RefPtr< State > & getState (const WeakPtr< ValuePool > &VP) const
RefPtr< InterfaceBasehasLocalInterface (const type_info &InterfaceType) const
RefPtr< State > myState (const WeakPtr< ValuePool > &Context) const
virtual RefPtr< State > newState () const
void setState (const WeakPtr< ValuePool > &, const RefPtr< State > &st) const
Public Member Functions inherited from Wizt::VSaveable
void addSaver (const string &, const RefPtr< VishSaver > &)
void addSavers (AppClass &A)
bool autosave () const
RefPtr< VishSavergetMostRecentSaver () const
size_t getNumberOfSavers () const
RefPtr< VishSavergetSaver (const string &) const
RefPtr< VishSavergetSaverByExt (const string &ext) const
int iterate_savers (const save_iterator &si) const
Public Member Functions inherited from Wizt::VManagedDomainObject< VObject >
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::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::stringgetName () const
 MutableName (const std::string &theName)
const std::stringName () const
void rename (const std::string &newName)
void setName (const std::string &newName)
Public Member Functions inherited from Wizt::VScriptable
RefPtr< VScriptFunctorfindFunctor (const string &name) const
RefPtr< VScriptFunctorinsertFunctor (const string &name, const RefPtr< VScriptFunctor > &)
bool iterate (iterator &it)
int nFunctors () const
void removeFunctor (const string &name)
Public Member Functions inherited from Wizt::VTraceRequestID
bool addRequest (const VRequest &request)
bool hasRequest (const VRequest &request) const
Public Member Functions inherited from Wizt::Fish< Fiber::Field >
 Fish (const string &field, int ExpertLevel=0)
 Constructor, specify slot name for this field.
template<class ... T>
bool acceptType ()
 Tell this field to accept certain types.
void setFieldExpertLevel (int EL)
 Set the expert level of this slot.
 ~Fish ()
 Destructor, cleaning up.
void registerFieldAsOutput ()
 Make field visible as output.
string Fieldname (const RefPtr< ValuePool > &VP) const
 Get the name of the selected field.
string getFieldname (const RefPtr< ValuePool > &VP) const
 Get the name of the selected field.
RefPtr< Fiber::FieldgetField (const RefPtr< ValuePool > &VP) const
 Get a vertex field from the root level from the current selection.
RefPtr< Fiber::FieldgetField (const RefPtr< ValuePool > &VP, const string &theFieldName) const
 Get another field from the same Grid.
RefPtr< Fiber::FieldgetFieldRepresentation (const RefPtr< Fiber::Representation > &LevelRep, const RefPtr< ValuePool > &VP, const RefPtr< Fiber::Skeleton > &DestVertices, Fiber::Grid &SourceGrid, Fiber::Slice &DestGridSlice, const string &HelperDestGridName, bool StoreResult=true)
 Get Field from a possibly different Grid.
RefPtr< Fiber::FieldgetCoordinates (const RefPtr< ValuePool > &VP) const
 Get the coordinates on this Grid.
FieldSelector getFieldSelector (const RefPtr< ValuePool > &VP) const
double getTime (const RefPtr< ValuePool > &VP, const RefPtr< Fiber::Bundle > &SpaceTime) const override
 Get the time from the current field selector.
TypedSlot< VTimegetTimeSlot () const
 Return the associated time slot from the source object.
RefPtr< VManagedObjectgetSource () const
 Get the source object of this field slot, can be used to check if the field is connected to a source at all.
bool IterateLevels (LevelIterator &LI, const RefPtr< ValuePool > &Context, const Fiber::BundlePtr &SpaceTime=Fiber::BundlePtr(NullPtr())) const
 Get a field from an arbitrary representation from the current selection.
Public Member Functions inherited from Wizt::Fish< double >
 Fish ()
 Default constructor.
 ~Fish ()
 Destructor.
virtual int getMaxRefinementLevel (const RefPtr< ValuePool > &VP) const
 Get the maximum refinement level that we seek to handle here.
virtual int getMinRefinementLevel (const RefPtr< ValuePool > &VP) const
virtual Fiber::Info< Fiber::SkeletongetRefinementLevel (int Level, const RefPtr< ValuePool > &VP, int IndexDepth=0, const Fiber::BundlePtr &SpaceTime=Fiber::BundlePtr(NullPtr())) const =0
bool IterateLevels (LevelIterator &LI, const Fiber::Info< Fiber::Grid > &G, const RefPtr< ValuePool > &Context) const
 Iterate over the diverse refinement levels of a Grid, which may exist at times different from the given coarsest grid.
Public Member Functions inherited from Wizt::StatusIndicator
bool setStatusCritical (const RefPtr< ValuePool > &Context, const string &what) const
bool setStatusError (const RefPtr< ValuePool > &Context, const string &what, bool AnnouncePublic=false) const
bool setStatusInfo (const RefPtr< ValuePool > &Context, const string &what) const
bool setStatusWarning (const RefPtr< ValuePool > &Context, const string &what) const
 StatusIndicator (VObject *what, const string &initialtext="", int EL=0, const string &statusslotname=Slotname)

Static Public Member Functions

static VAcceptInfoList_t accept (const RefPtr< VObject > &vobj)
Static Public Member Functions inherited from Wizt::VObject
static bool remove (const string &s)
static int findOutputObjects (const type_info &Type, OutputObjectIterator &GOutputs)
static string createChildname (const string &parent_name)
static VAcceptInfoList_t accept (const VObjectPtr &vobj)
static RefPtr< VParameterfindUniqueOutputObject (const type_info &Type, const RefPtr< VCreationPreferences > &VCP, bool ReallyUnique, const VObject *NotThisOne)
Static Public Member Functions inherited from Wizt::VConnectable
static bool attachSlot (const WeakPtr< VSlot > &DestSlot, const RefPtr< VParameter > &ProvidedParam, const string &Member={})
static bool attachSlot (const WeakPtr< VSlot > &DestSlot, const RefPtr< VSlot > &SourceSlot, const string &Member={})
static bool detachSlot (const RefPtr< VSlot > &SourceSlot)
Static Public Member Functions inherited from Wizt::VSlotContainer
static const char * AttachErrorCodeMessage (AttachErrorCode)
static bool attachParameter (const RefPtr< VParameter > &theProvidedParam, const WeakPtr< VSlot > &theDestSlot, const string &theMember={})
Static Public Member Functions inherited from Wizt::ValueCacheable
static ValueCacheconsider (MemCore::Intercube &IC, const WeakPtr< VSlot > &VS, const RefPtr< ValuePool > &Context)
static ValueCachegetValueCache (MemCore::Intercube &IC)
static bool hasChangedSlots (const WeakPtrToVSlotContainer &theSlotOwner, const MemCore::Intercube &IC, const RefPtr< ValuePool > &Context)
Static Public Member Functions inherited from Wizt::VSaveable
static VSaveableGlobalState ()
Static Public Member Functions inherited from Wizt::VManagedDomainObject< VObject >
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

Public Types inherited from Wizt::VObject
enum  HelpType
typedef void AcceptableInputTypes
typedef VConnectable::Empty< I > Empty
typedef std::function< bool(const RefPtr< VObject > &vobj, const VSlot &ChildConnection)> VObjectIterator_f
Public Types inherited from MemCore::ReferenceBase< VManagedObjectBase >
typedef Object reference_domain_t
typedef WeakPtr< Object, Object > SelfPtr_t
Public Types inherited from Wizt::VSlotContainer
enum  AttachErrorCode
typedef void AcceptableInputTypes
typedef VSlotSet CreationSlots_t
typedef VSlot::Empty< I > Empty
Public Types inherited from Wizt::VSaveable
typedef std::function< bool(const string &s, VishSaver &VS)> save_iterator
Public Types inherited from Wizt::VManagedDomainObject< VObject >
typedef What Domain_t
Public Types inherited from Wizt::Fish< Fiber::Field >
enum  { NumberOfInputFields = 1 }
Public Attributes inherited from Wizt::VObject
 HelpURL
 HTMLText
 PlainText
 ShortHTMLText
 ShortText
std::string whyupdate
string UserInfo
Public Attributes inherited from Wizt::VSlotContainer
 AllLevels
 DestParameterNotFound
 InvalidDestParameter
Public Attributes inherited from Wizt::StatusIndicator
VOutput< VObjectStatusStatusInfo
Static Public Attributes inherited from Wizt::VObject
static constexpr char NameSeparator
static constexpr char SlotNameSeparator
Static Public Attributes inherited from Wizt::VManagedObject
static string CurrentLoadModule
Static Public Attributes inherited from Wizt::StatusIndicator
static const char Slotname []
Protected Types inherited from Wizt::VObject
typedef bool(* UpdateFunction) (VObject *, VRequest &, double precision)
Protected Member Functions inherited from Wizt::VObject
virtual bool unsychronized_update (VRequest &VR, double precision)
Protected Member Functions inherited from MemCore::ReferenceBase< VManagedObjectBase >
virtual void extremeUnction ()
ReferenceBaseoperator= (const ReferenceBase &R)
void suicide ()
Protected Member Functions inherited from Wizt::VSlotContainer
virtual void setup (const CreationSlots_t &CreationSlots)
Protected Attributes inherited from Wizt::VObject
MemCore::Counter UpdateCounter
MemCore::Counter RequestCounter
Protected Attributes inherited from Wizt::Fish< Fiber::Field >
TypedSlot< Fiber::FieldMyField

Detailed Description

Base class for objects that operate on Field objects and create new fields.

Child classes need to overload the virtual function

virtual bool FieldOperation(VRequest &Context, Fiber::Field &, Fiber::Representation &)=0
The operation to be performed on the given field, to be overloaded in a subclass.

to implement an operation on a Field. This class supports adaptive mesh refinement such that the FieldOperation is called multiple times for one specific timestep (one update() function call) as it will use the most recent fields for a specific time value from different steps when data are provided in the Oliger-Berger AMR scheme ( http://en.wikipedia.org/wiki/Adaptive_mesh_refinement ).

See also
FieldObject for objects that carry fields themselves, i.e. such FieldObjects also provide Fiber::Bundle, whereas FieldOperatorObjects just reference an existing Fiber::Bundle .
Author
Werner Benger

Constructor & Destructor Documentation

◆ FieldOperatorObject()

Wizt::FieldOperatorObject::FieldOperatorObject ( const string & name,
const string & fieldname,
int p = 0,
const RefPtr< VCreationPreferences > & VP = NullPtr() )

Construct a field operator object.

Parameters
nameThe name of this object
fieldnameThe name under which the input field of this field operator is accessed, relative to the field operator. For instance, this could be "inputfield", "sourcefield", "field" or something similar.

References Wizt::Fish< Fiber::Field >::Fish(), Wizt::StatusIndicator::StatusIndicator(), and Wizt::VObject::VObject().

Referenced by Wizt::FieldFunctor< Operation, GridInspectorType >::FieldFunctor().

Member Function Documentation

◆ FieldOperation()

virtual bool Wizt::FieldOperatorObject::FieldOperation ( VRequest & Context,
Fiber::Field & ,
Fiber::Representation &  )
pure virtual

The operation to be performed on the given field, to be overloaded in a subclass.

Parameters
FieldIDSourcea representation object that carries field identifiers; if a new field is supposed to be created, use this representation to do so (this needs to be revised and made easier!)
Todo
Ease field identifier creation by sharing of identifier creators among representations.

Implemented in Wizt::BinaryFieldOperatorObject< TheBinaryOperator, NamingOperator, PrimaryValueType, SecondaryValueType, ResultValueType >, Wizt::EditField, Wizt::FieldFunctor< Operation, GridInspectorType >, and Wizt::UnaryFieldOperatorObject< TheUnaryOperator, ResultType >.

◆ publishInputField()

void Wizt::FieldOperatorObject::publishInputField ( )

Make the input field available as output as well, such that output modules can be connected to the field operator instead of its inputs.

This is for user convenience, but probably not recommended.

References Wizt::VSlotContainer::registerOutput().

◆ update()

bool Wizt::FieldOperatorObject::update ( VRequest & R,
double precision )
virtual

Reimplemented from Wizt::VObject.