|
The Vish Visualization Shell 0.3
Vish
|
An input slot for Vish Objects, bound to a specific type. More...
#include <ocean/plankton/Vish.hpp>
Public Member Functions | |
| Input () | |
| Default constructor to create empty slot references that are filled in at a later time. | |
| Input (const Input &I) | |
| Copy constructor. | |
| Input (VObject *that, const string &s, const T &initialValue, int EL=0) | |
| Constructing an input. | |
| Input & | operator= (const Input &TS) |
| Assignment constructor. | |
| TypedSlot (VObject *that, const string &s, const T &initialValue, const RefPtr< VCreationPreferences > &VP, int prior=0) | |
| Declaration of constructor with creation preferences. | |
| TypedSlot (VObject *that, const string &s, const VSlot::Empty &, int prior=0) | |
| Construct a typed slot with Creation Preferences, but no initialization of the value. | |
| TypedSlot (VObject *that, const VSlot::Empty &, const string &s, int prior=0) | |
| Creates a typed slot with no parameter attached yet. | |
| Public Member Functions inherited from Wizt::TypedSlot< T > | |
| void | activate () const |
| Activate this slot. | |
| template<class VObjectClass, void(VObjectClass::*)(const T &, const ValuePoolPtr &Context) callback, class VObjectClassPtr> | |
| RefPtr< ValueNotifier > | addNotifier (VObjectClass *That) |
| A version of a mutable addNotifier() with a callback function that may modify the owning object and allows to specify the pointer type. | |
| template<class VObjectClass, void(VObjectClass::*)(const T &, const ValuePoolPtr &Context) callback> | |
| RefPtr< ValueNotifier > | addNotifier (VObjectClass *That) |
| A mutable version of the addNotifier() function with a callback function that may modify the owning object. | |
| template<class VObjectClass, void(VObjectClass::*)(const T &, const ValuePoolPtr &Context) const callback, class VObjectClassPtr> | |
| RefPtr< ValueNotifier > | addNotifier (VObjectClass *That) |
| Similar to the former function addNotifier, but allows to explicitly specify the type of the pointer to the owning object. | |
| template<class VObjectClass, void(VObjectClass::*)(const T &, const ValuePoolPtr &Context) const callback> | |
| RefPtr< ValueNotifier > | addNotifier (VObjectClass *That) |
| Install a notifier callback function that is a member function of the provided class. | |
| template<class VObjectClass> | |
| RefPtr< ValueNotifier > | addNotifier (VObjectClass *That, void(VObjectClass::*callback)(const T &, const ValuePoolPtr &Context) const) |
| A version of the addNotifier function where the callback function is specified at runtime as function argument, instead of compile-time as template argument. | |
| template<class VObjectClass, class VObjectClassPtr> | |
| RefPtr< ValueNotifier > | addNotifier (VObjectClass *That, void(VObjectClass::*callback)(const T &, const ValuePoolPtr &Context) const) |
| Another version of the addNotifier function where the callback function is specified at runtime as function argument, instead of compile-time as template argument. | |
| template<class VObjectClass> | |
| RefPtr< ValueNotifier > | addNotifier (VObjectClass *That, void(VObjectClass::*callback)(const T &, const ValuePoolPtr &Context)) |
| A mutable addNotifier() function that allows to specify the callback function at runtime instead of compile-time. | |
| template<class VObjectClass, class VObjectClassPtr> | |
| RefPtr< ValueNotifier > | addNotifier (VObjectClass *That, void(VObjectClass::*callback)(const T &, const ValuePoolPtr &Context)) |
| A mutable addNotifier() function that allows to specify the callback function at runtime instead of compile-time and explicit pointer storage type. | |
| const Ageable & | age (const RefPtr< ValuePool > &Context) const |
| Return the age of this Slot relative to the given Context. | |
| void | deactivate () const |
| Deactivate this slot. | |
| RefPtr< VValueBase > | getProperty (const string &s) const |
| Get a certain property of the parameter associated with this slot. | |
| template<class Type> | |
| bool | getProperty (const string &s, Type &theValue) const |
| Retrieve the value of a certain property of the parameter associated with this slot, if it is compatible to the specified type. | |
| WeakVObjectPtr | getSlotOwner () const |
| Return the associated slot owning object, which is the one where this slot resides. | |
| RefPtr< VManagedObject > | getSource () const |
| Return the associated source object, which is related to the referenced parameter. | |
| RefPtr< VValueBase > | getValue (const RefPtr< ValuePool > &VP) const |
| Retrieve the untyped value of this slot. | |
| const T & | getValue (const RefPtr< ValuePool > &VP, const T &DefaultValue) const |
| Get the value of a typed slot, using a default value if anything went wrong: | |
| const T & | getValue (const T &DefaultValue, const RefPtr< ValuePool > &VP) const |
| An alternative version of the getValue() function with reversed order of arguments such that you do not need to remember the order of function arguments. | |
| RefPtr< VTypedValueBase< T > > | getValueBT (const RefPtr< ValuePool > &VP) const |
| A version of the getValue() function that yields a fitting VTypedValueBase<T> directly. | |
| bool | isActive () const |
| Check whether this slot is active. | |
| bool | isInactive () const |
| Check whether this slot is inactive. | |
| bool | isLocal () const |
| Check whether this slot refers to a local setting. | |
| RefPtr< VValueBase > | operator() (const RefPtr< ValuePool > &VP) const |
| A shortcut version of member function getValue(): | |
| const T & | operator() (const RefPtr< ValuePool > &VP, const T &DefaultValue) const |
| An alternative version of the operator function with reversed order of arguments, for the coder's convenience. | |
| const T & | operator() (const T &DefaultValue, const RefPtr< ValuePool > &VP) const |
| An operator version of the getValue() member function, for convenience: | |
| const string & | operator/= (const string &s) const |
| SlotContext | operator<< (const RefPtr< ValuePool > &VP) const |
| Create a SlotContext from a given ValuePool, which is a proxy for the pair of a Slot and a Context, to be used for assigning or reading values. | |
| TypedSlot & | operator= (const TypedSlot &TS) |
| Assignment constructor - does NOT change the default value! | |
| const T & | operator[] (const RefPtr< ValuePool > &VP) const |
| Return the given value of this slot, possibly the default value. | |
| void | setActive (bool IsActive=true) const |
| Set activity flag. | |
| void | setHelptext (const string &helptext) const |
| Set a help text for user information about this slot. | |
| template<class Type> | |
| bool | setProperty (const string &theName, const Type &theValue) const |
| Set a property of the parameter that is associated with this slot. | |
| void | setRelevance (int rel) const |
| Set the relevance of the associated parameter This should only be done if the parameter is exclusively used here, not once it has been shared. | |
| TypedSlot () | |
| Default constructor to create empty slot references that are filled in at a later time. | |
| TypedSlot (const std::string &theSlotName, const T &theDefaultValue, int myInitialExpertLevel=1, RefPtr< VCreationPreferences > theVP=nullptr) | |
| Object-independent initialization with future slot name and default value. | |
| TypedSlot (const TypedSlot &TS) | |
| Copy constructor. | |
| template<int I> | |
| TypedSlot (const VSlot::Empty< I > &, VSlotContainer *that, const string &name, const RefPtr< VCreationPreferences > &VP, int prior) | |
| Construct a typed slot with Creation Preferences, but no initialization of the value. | |
| template<int I> | |
| TypedSlot (const VSlot::Empty< I > &, VSlotContainer *that, const string &name, int prior=0) | |
| Special constructor that does not initialize the value of this input slot. | |
| TypedSlot (const WeakVObjectPtr &that, const string &name, const T &initialValue, int expertLevel=0, bool overwriteExistingSlot=true) | |
| Constructing a typed slot. | |
| TypedSlot (VSlotContainer *that, const string &name, const T &initialValue, const RefPtr< VCreationPreferences > &VP, int ExpertLevel=0, bool overwriteExistingSlot=true) | |
| Creation of a typed slot, constructor with creation preferences. | |
| TypedSlot (VSlotContainer *that, const string &name, const T &initialValue, int expertLevel=0) | |
| Constructing a typed slot. | |
| TypedSlot (VSlotContainer *that, const VSlot::Empty< 0 > &, const string &name, int prior=0) | |
| Creates a typed slot with no parameter attached yet. | |
| ~TypedSlot () | |
| Destructor. | |
| Public Member Functions inherited from MemCore::StrongPtr< Object, ObjectBase > | |
| StrongPtr & | assignStrong (const DynPtr_t &other) |
| assign a strong pointer from a weak pointer | |
| StrongPtr & | assignStrong (const ReferenceBase< ObjectBase_t > *Obj) |
| assign a strong pointer from a native pointer | |
| StrongPtr & | assignStrong (const std::nullptr_t &) |
| Assign nullptr to a strong pointer, which will remove the referenced object if its counter reaches zero, but the pointer will remain a valid weak pointer with sustained hash value (the referer will still be around). | |
| template<typename... Arguments> | |
| auto | operator() (Arguments...parameters) const -> decltype((*this->getPtrValue())(parameters...)) |
| Function call operator forwarding. | |
| refvalue_t & | operator* () const |
| The dereferencing *-operator. | |
| pointer_t | operator-> () const |
| The pointer operator. | |
| StrongPtr & | operator= (const DynPtr_t &other) |
| Assignment operator, same as assignStrong(). | |
| StrongPtr & | operator= (const ReferenceBase< ObjectBase_t > *Obj) |
| Assignment from object base class pointer. | |
| StrongPtr & | operator= (const std::initializer_list< StrongPtr > &other) |
| Syntactic sugar: Allows assignment with {} to create a nullptr. | |
| StrongPtr & | operator= (const std::nullptr_t &) |
| Assignment operator with nullptr, invalidate. | |
| StrongPtr & | operator= (const StrongPtr &other) |
| Assignment operator, same as assignStrong(). | |
| template<class IndexType> | |
| auto | operator[] (const IndexType &I) const -> decltype((*this->getPtrValue())[I]) |
| Index operator forwarding. | |
| StrongPtr () | |
| Default constructor (makes a NULL pointer). | |
| StrongPtr (const ReferenceBase< ObjectBase_t > *Obj) | |
| Strong pointer from reference base of object, eg. via new operator. | |
| StrongPtr (const ReferenceBase< ObjectBase_t > *Obj, const NotNullPtr &) | |
| Strong pointer from reference base of object, eg. via new operator. | |
| StrongPtr (const std::nullptr_t &) | |
| Explicitely construct a nullptr pointer. | |
| template<class ChildObject> | |
| StrongPtr (const StrongPtr< ChildObject, ObjectBase > &Other) | |
| Reference pointer with dynamic type identification. | |
| StrongPtr (const StrongPtr< Object, ObjectBase > &Other) | |
| Copy constructor. | |
| template<class ChildObject> | |
| StrongPtr (const WeakPtr< ChildObject, ObjectBase_t > &Other) | |
| Reference pointer with dynamic type identification. | |
| ~StrongPtr () | |
| Destructor, the last one cleans up and destructs the object itself. | |
| pointer_t | getPtrValue () const |
| The pointer value, checked for null. | |
| pointer_t | operator-> () const |
| The pointer operator. | |
| refvalue_t & | operator* () const |
| The dereferencing *-operator. | |
| size_t | operator~ () const |
| Convenience operator to easily retrieve the object count ID of the referenced object, a unique number for each instance. | |
| WeakPtr () | |
| Default constructor, makes a NULL pointer. | |
| WeakPtr (const std::nullptr_t &) | |
| Explicitely construct NULL pointer. | |
| WeakPtr (const ReferenceBase< ObjectBase > *Obj) | |
| Weak pointer from reference base of object. | |
| WeakPtr (const ReferenceBase< ObjectBase > *Obj, const NotNullPtr &) | |
| Weak pointer from reference base of object which must not be null. | |
| template<class AnyObject> | |
| WeakPtr (const WeakPtr< AnyObject, ObjectBase > &Other) | |
| Weak pointer from pointer to another class. | |
| WeakPtr (const WeakPtr &Other) | |
| Copy constructor. | |
| ~WeakPtr () | |
| Default destructor, removes weak references to the object, the last one cleans up the referrer proxy object. | |
| WeakPtr & | assignWeak (const WeakPtr &other) |
| Assign a weak pointer (explicit function call, same as assignment operator for weak pointers). | |
| WeakPtr & | operator= (const WeakPtr &other) |
| Assignment operator (same as assignWeak() ). | |
| Public Member Functions inherited from MemCore::DynPtr< Object, ObjectBase > | |
| const DynPtr & | getDynPtr () const noexcept |
| Convenience type cast to dynamic pointer class. | |
| const type_info & | getType () const noexcept |
| Return type info of associated object, typeid(NullPtr) or typeid(void) if none. | |
| bool | isAssignable (const DynPtr< ObjectBase, ObjectBase > &Other) const noexcept |
| Check whether a given pointer to a base class may be assigned to a pointer of the derived class. | |
| operator void * () const noexcept | |
| Check if the pointer is valid. | |
| bool | operator! () const noexcept |
| Check if the pointer is invalid. | |
| void | speak (const char *s, const char *prefix="") const noexcept |
| Print some debug messages to the console. | |
Additional Inherited Members | |
| Public Types inherited from Wizt::TypedSlot< T > | |
| typedef std::pair< const TypedSlot, const RefPtr< ValuePool > > | SlotContext |
| A typed Slot context. | |
| typedef T | value_type |
| The type on which this slot operates. | |
| Public Types inherited from MemCore::StrongPtr< Object, ObjectBase > | |
| typedef WeakPtr< Object, ObjectBase >::ObjectBase_t | ObjectBase_t |
| Exporting the base class of the reference counted objects. | |
| Public Types inherited from MemCore::WeakPtr< Object, ObjectBase > | |
| typedef Object | object_t |
| Exporting the type of the derived class. | |
| typedef ObjectBase | ObjectBase_t |
| Exporting the type of the base class. | |
| typedef RefPtrTypeTrait< Object, ObjectBase >::ReferencePointerType | pointer_t |
| The result type of the pointer operator, may be changed with the RefPtrTypeTrait<> class. | |
| typedef RefPtrTypeTrait< Object, ObjectBase >::ReferenceValueType | refvalue_t |
| The result of the dereferencing operator, may be changed with the RefPtrTypeTrait<> class. | |
| Public Types inherited from MemCore::DynPtr< Object, ObjectBase > | |
| typedef Object | object_t |
| Type of the associated object. | |
| Static Public Member Functions inherited from Wizt::TypedSlot< T > | |
| static TypedSlot | type_cast (const RefPtr< VSlot > &VP) |
| Cast an untyped Slot to a typed one, which, of course, will only succeed if the types are compatible. | |
| Static Public Member Functions inherited from MemCore::DynPtr< Object, ObjectBase > | |
| static const DynPtr & | getNullPtr () noexcept |
| Associated static NullPtr - avoids creation of a temporary object when a reference is needed. | |
| Protected Member Functions inherited from MemCore::WeakPtr< Object, ObjectBase > | |
| WeakPtr (Object *that, const SelfInitialize &) | |
| Internal constructor used when initializing an object with its own self-reference. | |
| Protected Member Functions inherited from MemCore::DynPtr< Object, ObjectBase > | |
| template<class AnyObject> | |
| DynPtr (const DynPtr< AnyObject, ObjectBase > &Other) noexcept | |
| Implicit type conversion within the same class hierarchy Any pointer. | |
| DynPtr (const std::nullptr_t &) noexcept | |
| Assign from nullptr. | |
| Related Symbols inherited from Wizt::TypedSlot< T > | |
| template<class T> | |
| bool | adjustRange (TypedSlot< T >theSlot, const T &minval, const T &maxval) |
| Set the minimum/maximum parameters of a slot. | |
| void | Speak (const char *s, const char *prefix="") const |
| Verbose information printing for this pointer. | |
An input slot for Vish Objects, bound to a specific type.
The typical usage is
|
inline |
Constructing an input.
| that | The VObject to which this slot is bound. |
| EL | the Expert level of this slot, which might be used for a GUI. |
| initialValue | The intial value of this slot's parameter. |
| Vish::Input< T >::TypedSlot | ( | VObject * | that, |
| const string & | s, | ||
| const T & | initialValue, | ||
| const RefPtr< VCreationPreferences > & | VP, | ||
| int | prior = 0 ) |
Declaration of constructor with creation preferences.
| initialValue | The intial value of this slot's parameter. |
| Vish::Input< T >::TypedSlot | ( | VObject * | that, |
| const string & | s, | ||
| const VSlot::Empty & | , | ||
| int | prior = 0 ) |
Construct a typed slot with Creation Preferences, but no initialization of the value.