|
Fish - FiberLib for VISH 0.3
Fish - The Fiber Bundle API for the Vish Visualization Shell
|
This is an antique class which has been replaced by base class VSkale. More...
#include <Fish.hpp>
Additional Inherited Members | |
| Public Types inherited from Wizt::VSlotContainer | |
| enum | AttachErrorCode |
| typedef void | AcceptableInputTypes |
| typedef VSlotSet | CreationSlots_t |
| typedef VSlot::Empty< I > | Empty |
| Public Types inherited from MemCore::ReferenceBase< VManagedObjectBase > | |
| typedef Object | reference_domain_t |
| typedef WeakPtr< Object, Object > | SelfPtr_t |
| 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 > ¶m, const RefPtr< VCreationPreferences > &VCP=NullPtr(), bool ReallyUnique=true) |
| AttachErrorCode | attachUniqueObject (const RefPtr< VSlot > &slot, const RefPtr< VCreationPreferences > &VCP=NullPtr(), bool ReallyUnique=true) |
| RefPtr< VSlot > | Connect (const RefPtr< VParameter > &SourceParam) |
| RefPtr< VSlot > | ConnectInterface (const RefPtr< VSlotContainer > &Provider, const RefPtr< InterfaceBase > &IB) |
| virtual bool | CreatedFilteredConnection (const RefPtr< VParameter > &SourceParam) |
| Public Member Functions inherited from Wizt::VSlotContainer | |
| Ageable & | age (const RefPtr< ValuePool > &VP) |
| const Ageable & | age (const RefPtr< ValuePool > &VP) const |
| const Ageable & | ConnectionAge () 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< VSlot > | addParameter (const ParameterID &name, int EL, const RefPtr< VParameter > ¶m, 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< VParameter > | getParameter (const ParameterID &s) const |
| RefPtr< VSlot > | getSlot (const ParameterID &s, int &EL) const |
| bool | setSlotValueFromText (const ParameterID &s, const string &ValueText, const RefPtr< ValuePool > &VP, const string &theMember={}) |
| RefPtr< VSlot > | findSlot (const RefPtr< VParameter > ¶m) const |
| string | getSlotName (const RefPtr< VParameter > ¶m) const |
| bool | AddAction (const ParameterID &s, const RefPtr< ValueActionBase > &VAB) |
| bool | AddAction (const RefPtr< VSlot > &ActionSlot, bool(DerivedObject::*Action)(const RefPtr< VValueBase > &value)) |
| RefPtr< VParameter > | mkUniqueParameterInput (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< VSlot > | addParam (const ParameterID &name, const Type &init, const RefPtr< VCreationPreferences > &VP=NullPtr(), int expertLevel=0, bool overwriteExistingSlot=true) |
| bool | setParameterProperty (const ParameterID ¶m, const string &Properties, const RefPtr< VValueBase > &Value=NullPtr()) |
| RefPtr< VSlot > | addFloatParam (double init, const ParameterID ¶m, 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< VSlot > | getUniqueInputSlot (const type_info &what) |
| int | getNumberOfParameters (int expertLevel) const |
| virtual bool | implements (const type_info &what) const |
| virtual RefPtr< VParameter > | getImplementation (const type_info &what, const string &name={}, const string &member={}) const |
| RefPtr< VSlot > | getImplementationSlot (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< VSlot > | findOutputSlot (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< VSlot > | getOutput (const string &Name) const |
| RefPtr< MemCore::StringList > | getOutputs (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 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 |
| 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 ValueCache & | consider (MemCore::Intercube &IC, const WeakPtr< VSlot > &VS, const RefPtr< ValuePool > &Context) |
| static ValueCache & | getValueCache (MemCore::Intercube &IC) |
| static bool | hasChangedSlots (const WeakPtrToVSlotContainer &theSlotOwner, const MemCore::Intercube &IC, const RefPtr< ValuePool > &Context) |
| Public Attributes inherited from Wizt::VSlotContainer | |
| AllLevels | |
| DestParameterNotFound | |
| InvalidDestParameter | |
| Protected Member Functions inherited from Wizt::VSlotContainer | |
| virtual void | setup (const CreationSlots_t &CreationSlots) |
| Protected Member Functions inherited from MemCore::ReferenceBase< VManagedObjectBase > | |
| virtual void | extremeUnction () |
| ReferenceBase & | operator= (const ReferenceBase &R) |
| void | suicide () |
This is an antique class which has been replaced by base class VSkale.
It should go away.
The Fish of a VObject is an abstract base class that holds a (native!) pointer to the Vish object that will be the owner of the various slots. It is only used for the initialization of the slot classes. Therefore all the Fish objects are virtually derived from the Fish object. This ensures that the Fish object is initialized first, and all Fish slots may just use this already initialized pointer from their base class.
The concept is like in the following example. Note that the constructor A(99) is never called here, the argument 99 is completely irrelevant. Using this mechanism, we can give B an argument-free default constructor, and still providing it a well-initialized base class A, since A is constructed in the derived class, not in B.