|
ACF $AcfVersion:0$
|
Base class for interpolated functions based on fulcrums in multi-dimesional grid. More...
#include <TFulcrumGridFunctionBase.h>
Public Types | |
| typedef TFulcrumGrid< Argument, Fulcrums > | BaseClass |
| typedef istd::TCachedUpdateManagerWrap< iser::ISerializable > | BaseClass2 |
| typedef TIMathFunction< Argument, Result > | BaseClass3 |
| typedef TIMathFunction< Argument, Result >::ArgumentType | ArgumentType |
Public Types inherited from imath::TFulcrumGrid< Argument, Fulcrums > | |
| enum | ChangeFlags |
| Data model change notification flags. More... | |
| typedef Fulcrums::ElementType | FulcrumType |
| typedef Fulcrums::IndexType | FulcrumIndex |
| typedef Fulcrums::SizesType | FulcrumSizes |
| typedef Argument | PositionType |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING , CF_DELEGATED , CF_NO_UNDO } |
| Data model change notification flags. More... | |
| enum | SupportedOperations { SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 , SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 } |
| Flags for supported operations. More... | |
| enum | CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT } |
| Control how relationship betweeen objects are interpreted. More... | |
| typedef QMultiMap< QByteArray, QVariant > | ChangeInfoMap |
Public Types inherited from istd::TCachedUpdateManagerWrap< iser::ISerializable > | |
| typedef iser::ISerializable | BaseClass |
Public Types inherited from imath::TIMathFunction< Argument, Result > | |
| typedef Argument | ArgumentType |
| typedef Result | ResultType |
Protected Member Functions | |
| virtual bool | CalculateCache (const ChangeSet &changeSet) override |
| Calculate cache. | |
Protected Member Functions inherited from imath::TFulcrumGrid< Argument, Fulcrums > | |
| virtual void | SortFulcrums () |
| Sort fulcrums in this collection. | |
| int | FindLayerIndex (int dimension, double value) const |
| Find layer index of specified value for specified dimension. | |
| Fulcrums::IndexType | FindIndices (const PositionType &argument) const |
| Find indices of cuboid containing specified argument value. | |
Protected Member Functions inherited from istd::IChangeable | |
| virtual void | OnBeginChanges () |
| Callback function for begin change event. | |
| virtual void | OnEndChanges (const ChangeSet &changeSet) |
| Callback function for end change event. | |
Protected Member Functions inherited from istd::TCachedUpdateManagerWrap< iser::ISerializable > | |
| bool | EnsureCacheValid () const |
| Ensures cache is valid. | |
| void | InvalidateCache (const IChangeable::ChangeSet &changeSet) |
| Make cache invalid. | |
| void | SetCacheValid () |
| Say that cache is valid. | |
Additional Inherited Members | |
Public Member Functions inherited from imath::TFulcrumGrid< Argument, Fulcrums > | |
| TFulcrumGrid () | |
| void | Reset () |
| Removes all fulcrum points. | |
| FulcrumSizes | GetGridSize () const |
| Return complete grid size. | |
| int | GetDimensionsCount () const |
| Get number of dimensions. | |
| virtual bool | SetDimensionsCount (int count) |
| Set number of dimensions. | |
| int | GetLayersCount (int dimension) const |
| Get number of fulcrum points used in this function. | |
| virtual void | SetLayersCount (int dimension, int count) |
| Set number of fulcrum layers at specified dimension. | |
| double | GetLayerPosition (int dimension, int layerIndex) const |
| Get position of specified layer of fulcrums. | |
| virtual void | SetLayerPosition (int dimension, int layerIndex, double position) |
| Set position of specified layer of fulcrums. | |
| void | GetFulcrumPosition (const FulcrumIndex &index, PositionType &result) const |
| Get position of node at specified grid index. | |
| const FulcrumType & | GetFulcrumAtIndex (const FulcrumIndex &index) const |
| Get value at specified index. | |
| virtual void | SetFulcrumAtIndex (const FulcrumIndex &index, const FulcrumType &value) |
| Set single fulcrum point. | |
| int | InsertLayer (int dimension, double position) |
| Inserts single fulcrum layer. | |
| virtual void | RemoveLayer (int dimension, int layerIndex) |
| Remove fulcrums at spacified layer. | |
| virtual bool | Serialize (iser::IArchive &archive) override |
| Load or store state of this object as a archive stream. | |
| bool | operator== (const TFulcrumGrid< Argument, Fulcrums > &value) const |
| bool | operator!= (const TFulcrumGrid< Argument, Fulcrums > &value) const |
Public Member Functions inherited from iser::ISerializable | |
| virtual quint32 | GetMinimalVersion (int versionId) const |
| Get minimal needed version to correct storing of this data. | |
Public Member Functions inherited from istd::IChangeable | |
| virtual int | GetSupportedOperations () const |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) |
| Copy this object from another one. | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual istd::TUniqueInterfacePtr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const |
| Make a copy of this object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
| Reset data to its default state. | |
| virtual void | BeginChangeGroup (const ChangeSet &changeSet) |
| Starts group of changes. | |
| virtual void | EndChangeGroup (const ChangeSet &changeSet) |
| Ends group of changes. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Public Member Functions inherited from istd::TCachedUpdateManagerWrap< iser::ISerializable > | |
| TCachedUpdateManagerWrap () | |
| virtual void | BeginChanges (const IChangeable::ChangeSet &changeSet) override |
| virtual void | EndChanges (const IChangeable::ChangeSet &changeSet) override |
Public Member Functions inherited from imath::TIMathFunction< Argument, Result > | |
| virtual bool | GetValueAt (const Argument &argument, Result &result) const =0 |
| Get function value for specified argument value. | |
| virtual Result | GetValueAt (const Argument &argument) const =0 |
| Get function value for specified argument value. | |
Static Public Member Functions inherited from istd::IChangeable | |
| static const ChangeSet & | GetNoChanges () |
| Get empty set of changes. | |
| static const ChangeSet & | GetAnyChange () |
| Get anonymous change set. | |
| static const ChangeSet & | GetAllChanges () |
| Get anonymous change set. | |
| static const ChangeSet & | GetDelegatedChanges () |
| Get delegated change set. | |
Static Protected Attributes inherited from imath::TFulcrumGrid< Argument, Fulcrums > | |
| static const ChangeSet | s_fulcrumPositionChange |
Base class for interpolated functions based on fulcrums in multi-dimesional grid.
This grid may be imagined as set of parallel layers for each dimension. Number of this layers and their position can be individually controlled. Plese note, that method SetDimensionsCount must be called manually to initialize number of input dimensions also for fixed-size arguments.
| Argument | function argument type. |
| Result | function result type. |
| Fulcrums | array type used to stored fulcrums. It muss define following public typedefs
|
Definition at line 28 of file TFulcrumGridFunctionBase.h.
| typedef TIMathFunction<Argument,Result>::ArgumentType imath::TFulcrumGridFunctionBase< Argument, Result, Fulcrums >::ArgumentType |
Definition at line 38 of file TFulcrumGridFunctionBase.h.
| typedef TFulcrumGrid<Argument, Fulcrums> imath::TFulcrumGridFunctionBase< Argument, Result, Fulcrums >::BaseClass |
Definition at line 34 of file TFulcrumGridFunctionBase.h.
| typedef istd::TCachedUpdateManagerWrap<iser::ISerializable> imath::TFulcrumGridFunctionBase< Argument, Result, Fulcrums >::BaseClass2 |
Definition at line 35 of file TFulcrumGridFunctionBase.h.
| typedef TIMathFunction<Argument, Result> imath::TFulcrumGridFunctionBase< Argument, Result, Fulcrums >::BaseClass3 |
Definition at line 36 of file TFulcrumGridFunctionBase.h.
|
overrideprotectedvirtual |
Calculate cache.
It will be called, if cache was not valid and EnsureCacheValid() is called. Default implementation does nothing and is provided to ensure that base class for all derived classes implement this method.
Reimplemented from istd::TCachedUpdateManagerWrap< iser::ISerializable >.
Definition at line 50 of file TFulcrumGridFunctionBase.h.
References istd::IChangeable::ChangeSet::Contains().