ACF $AcfVersion:0$
TFulcrumGridFunctionBase.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// ACF includes
9
10
11namespace imath
12{
13
14
27template <class Argument, class Result, class Fulcrums>
29 public TFulcrumGrid<Argument, Fulcrums>,
30 public istd::TCachedUpdateManagerWrap<iser::ISerializable>,
31 public TIMathFunction<Argument, Result>
32{
33public:
37
39
40protected:
41 // reimplemented (istd::TCachedUpdateManagerWrap)
42 virtual bool CalculateCache(const ChangeSet& changeSet) override;
43};
44
45
46
47// reimplemented (istd::TCachedUpdateManagerWrap)
48
49template <class Argument, class Result, class Fulcrums>
51{
52 bool retVal = BaseClass2::CalculateCache(changeSet);
53
54 if (changeSet.Contains(CF_SORT_LAYERS)){
55 SortFulcrums();
56 }
57
58 return retVal;
59}
60
61
62} // namespace imath
63
64
Base class for interpolated functions based on fulcrums in multi-dimesional grid.
TFulcrumGrid< Argument, Fulcrums > BaseClass
TIMathFunction< Argument, Result >::ArgumentType ArgumentType
istd::TCachedUpdateManagerWrap< iser::ISerializable > BaseClass2
virtual bool CalculateCache(const ChangeSet &changeSet) override
Calculate cache.
TIMathFunction< Argument, Result > BaseClass3
Representation of fulcrums in multi-dimesional regular grid.
Template interface for any mathematical function.
Set of change flags (its IDs).
Definition IChangeable.h:36
bool Contains(int changeId) const
Check if there is specific change flag in the set.
Help wrapper class supporting of cached parts.
Package with mathematical functions and algebraical primitives.