|
The Vish Visualization Shell 0.3
Vish
|
A typed value with storage within the class. More...
#include <ocean/plankton/VValue.hpp>
Public Member Functions | |
| const Ageable & | age () const override |
| Return the age of this value, constant version. | |
| Ageable & | age () override |
| Return the age of this value. | |
| RefPtr< VValueBase > | copy () const override |
| Create a copy of the respective value. | |
| const type_info & | getType () const override |
| Implement the virtual function to query the type ID of this value. | |
| bool | getValue (Type &Variable) const override |
| Implement the virtual function to get the current value. | |
| WeakPtr< VValueCreator > | getValueCreator () const override |
| Implementation of the function providing the associated value creator. | |
| bool | getValueFrom (const WeakPtr< VValueBase > &V) override |
| Implement the generic copy of a value. | |
| operator const Type & () const | |
| Read-only retrieval of the associated value. | |
| operator Type & () | |
| Implicit type conversion allows modification of the associated value. | |
| bool | setValue (const Type &Variable) override |
| Implement the assignment of the current value. | |
| bool | setValueFromText (const string &s) override |
| Generic interface to set a value from a text. | |
| RefPtr< VManagedObject > | source () override |
| In case this object is memory-managed, return its container. | |
| string | Text () const override |
| Provide textual representation. | |
| VValue (const string &Textvalue, bool &ok) | |
| Create from string, used by the TypedValueCreator<> | |
| VValue (const Type &V) | |
| Construct a value from a given value instance. | |
| VValue (const VValue &V) | |
| Copy constructor: copies just the value, all reference pointing stuff is not duplicated. | |
Public Member Functions inherited from Wizt::VTypedValueBase< Type > | |
| RefPtr< ChunkBase > | getChunk (size_t N) const override |
| Create an array of type instances filled with values of the given count. | |
| bool | isDifferentFrom (const WeakPtr< VValueBase, VValueBase > &V) const override |
| Implement the comparison function from the VValueBase class utilizing the VValueCompareTrait type trait class. | |
| VTypedValueBase () | |
| Default Constructor. | |
| VTypedValueBase (const Ageable &A, const VTypedValueBase &V) | |
| Copy constructor, takes care of exported members. | |
Public Member Functions inherited from Wizt::VValueBase | |
| VValueBasePtr_t | component (const string &name) const |
| Retrieve a certain component from a compound value. | |
| int | copyComponents (const VValueBase &ValueSource) |
| Copy the components from another VValueBase. | |
| virtual WeakPtr< InterfaceBase > | getInterface () const |
| In case this value refers to the interface of some VObject, then this function may return such. | |
| virtual bool | getValueFrom (const WeakVValueBasePtr_t &V)=0 |
| Copy or cast a value from a possibly compatible type. | |
| int | iterate (ComponentIterator &CI) const |
| Find out which components are contained in the certain compound type. | |
| size_t | nComponents () const |
| How many components are available here? | |
| bool | operator!= (const VValueBase &V) const |
| Test for inequality. | |
| bool | operator!= (const WeakPtr< VValueBase, VValueBase > &V) const |
| Compare for equality with a value. | |
| bool | operator== (const VValueBase &V) const |
| Test for equality. | |
| virtual bool | setSource (const WeakPtr< VManagedObject > &Owner) |
| For special values which refer to the interface of another object, this function may allow to set another source for referencing such an interface. | |
| VValueBase () | |
| Default Constructor. | |
| VValueBase (const VValueBase &) | |
| Copy Constructor. | |
| ~VValueBase () | |
| Destructor. | |
Public Member Functions inherited from MemCore::ReferenceBase< VValueBase > | |
| auto | getObjectCountID () const noexcept |
| Get a unique ID for this object in the given domain. | |
| bool | isIdentical (const WeakPtr< VValueBase, VValueBase > &PossibleSelf) const noexcept |
| Check if this object is identical to the one used by the given pointer. | |
| void | mkAutoDestructive () |
| Marks this object as being automatically destructed, e.g. | |
| refcount_t | refcount () const noexcept |
| The strong reference count. | |
| ReferenceBase (VValueBase *that) noexcept | |
| Constructor, initializes reference counter to zero. | |
| const auto & | self () const |
| Return weak pointer to the object self. | |
| refcount_t | wrefcount () const noexcept |
| The weak reference count. | |
Public Member Functions inherited from MemCore::Ageable | |
| Ageable () noexcept | |
| Constructor; remembers birth time from current time counter. | |
| constexpr | Ageable (age_t t) noexcept |
| Constructor with explicit time value. | |
| constexpr | Ageable (const Ageable &A) noexcept |
| Copy constructor. | |
| Ageable (const volatile Ageable &A) noexcept | |
| Copy constructor. | |
| constexpr const Ageable & | getAge () const |
| Return reference to this age, useful for derived classes. | |
| bool | isNewerThan (const Ageable &a) const noexcept |
| Comparison operator. | |
| bool | isOlderThan (const Ageable &a) const noexcept |
| Comparison operator. | |
| bool | isYoungerThan (const Ageable &a) const noexcept |
| Comparison operator (alias to isNewerThan() ) | |
| bool | operator!= (const Ageable &a) const noexcept |
| Comparison operator. | |
| bool | operator< (const Ageable &a) const noexcept |
| Comparison operator. | |
| bool | operator<= (const Ageable &a) const noexcept |
| Comparision operator. | |
| bool | operator<= (const volatile Ageable &a) const volatile noexcept |
| Comparision operator. | |
| bool | operator== (const Ageable &a) const noexcept |
| Comparison operator. | |
| bool | operator> (const Ageable &a) const noexcept |
| Comparison operator. | |
| bool | operator> (const volatile Ageable &a) const volatile throw () |
| Comparision operator. | |
| bool | operator>= (const Ageable &a) const noexcept |
| Comparision operator. | |
| bool | operator>= (const volatile Ageable &a) const volatile noexcept |
| Comparison operator. | |
| constexpr void | resetAge () noexcept |
| Set time value to InfinitelyOld(). | |
| void | setInfinitelyNew () noexcept |
| Set time value to InfinitelyOld(). | |
| age_t | time_value () const noexcept |
| Return an object's current age. | |
| age_t | time_value () const volatile noexcept |
| Return an object's current age. | |
| Ageable & | touch () noexcept |
| Mark the current object as being modified "now". | |
| age_t | update (age_t age) noexcept |
| Set the age of the current object to a specific age if that is newer than the current one. | |
| age_t | update (const Ageable &Other) noexcept |
| Set the age of the current object to the age of another object if that other one is newer than the current one. | |
| age_t | update (const volatile Ageable &Other) volatile noexcept |
| Set the age of the current object to the age of another object if that other one is newer than the current one. | |
| ~Ageable () noexcept | |
| Destructor. | |
Additional Inherited Members | |
Public Types inherited from MemCore::ReferenceBase< VValueBase > | |
| using | reference_domain_t = VValueBase |
| The type of the base class. | |
| using | SelfPtr_t = WeakPtr< VValueBase, VValueBase > |
| Type for a pointer to this object itself. | |
Static Public Member Functions inherited from MemCore::Ageable | |
| static const Ageable & | InfinitelyNew () noexcept |
| Return a time that is infinitely in the future (well, sort of). | |
| static constexpr const Ageable & | InfinitelyOld () noexcept |
| Return a time that is infinitely in the past (well, sort of). | |
| static age_t | now () noexcept |
| Return the current global time. | |
Protected Member Functions inherited from MemCore::ReferenceBase< VValueBase > | |
| virtual void | extremeUnction () |
| A virtual function that will be called just before the object is destroyed. | |
| ReferenceBase & | operator= (const ReferenceBase &R) |
| Protected assignment operator (should not be called). | |
| void | suicide () |
| Delete this. | |
| virtual | ~ReferenceBase () |
| Virtual destructor. | |
A typed value with storage within the class.
For most purposes this will do.
A value of certain type (int, float, user-defined opaque type, ...) may be a self-standing entity like an ordinal variable definition in C++. It may also be a component of another variable that is a structure of basic types, like a vector which consists of three components {x,y,z} of type float. The components of such a structured object may also be used as input value via referencing its elements. For this purpose class VObjectComponent provides a value which is part of a VObject.
| Type | The used type; it must provide copy and assigment operations. |
|
inline |
Construct a value from a given value instance.
No members will be exported for a compound type.
|
inline |
Copy constructor: copies just the value, all reference pointing stuff is not duplicated.
Also, the age of the new object is recent.
Exported members from the source type will be exported here as well.
|
inline |
Create from string, used by the TypedValueCreator<>
| ok | A flag telling whether the given string could be parsed correctly. |
|
inlineoverridevirtual |
Implement the virtual function to query the type ID of this value.
For this value, the type is fixed throughout its lifetime and corresponds to the type of the template argument.
Reimplemented from Wizt::VTypedValueBase< Type >.
|
inlineoverridevirtual |
Implement the virtual function to get the current value.
| Variable | The external storage space where to assign this value. |
Implements Wizt::VTypedValueBase< Type >.
|
inlineoverridevirtual |
Implementation of the function providing the associated value creator.
Accessing the static member object enforces creation of this static class member, thus registration of the value creators in the registry.
Implements Wizt::VValueBase.
References MemCore::ReferenceBase< Object >::self().
|
inlineoverride |
Implement the generic copy of a value.
Some derived class may also implement type conversions when the Type template parameter does not match exactly. E.g. a cast from float to int or vice versa might be done through this interface.
|
inlineoverridevirtual |
Implement the assignment of the current value.
| Variable | The external storage space from where to assign this value. |
Implements Wizt::VTypedValueBase< Type >.