16 #ifndef __IPSDKBASEPROCESSING_STATICPARAMETERSPLIT_H__ 17 #define __IPSDKBASEPROCESSING_STATICPARAMETERSPLIT_H__ 19 #include <IPSDKBaseProcessing/DataSplit/Static/BaseStaticSplit.h> 20 #include <boost/make_shared.hpp> 28 template <
typename TProcessor,
typename TAttribute>
89 template <
typename TProcessor,
typename TAttribute>
95 template <
typename TProcessor,
typename TAttribute>
96 StaticParameterSplit<TProcessor, TAttribute>::~StaticParameterSplit()
101 template <
typename TProcessor,
typename TAttribute>
108 template <
typename TProcessor,
typename TAttribute>
109 inline const std::string&
112 return TAttribute::getObjectNameStr();
115 template <
typename TProcessor,
typename TAttribute>
116 inline const std::string&
119 return TAttribute::getToolTipStr();
122 template <
typename TProcessor,
typename TAttribute>
127 if (pParameterColl.get() == 0)
128 throwNullInputSharedPtr();
136 this->initBaseSplitted(elementsLocationInfo);
139 _pParameterColl = pParameterColl;
142 template <
typename TProcessor,
typename TAttribute>
148 "This attribute is not part of processor class");
150 return dynamic_cast<const TProcessor*
>(&processor) != 0;
153 template <
typename TProcessor,
typename TAttribute>
160 TProcessor& tProcessor =
static_cast<TProcessor&
>(processor);
163 tProcessor.TProcessor::template set<TAttribute>((*_pParameterColl)[elementIdx]);
174 #endif // __IPSDKBASEPROCESSING_STATICPARAMETERSPLIT_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
TProcessor ProcessorType
processor type associated to object
Definition: StaticParameterSplit.h:34
ipUInt64 insertNonLocalized(const ElementsRange &elementsRange, const ipUInt64 dataMemorySize)
insertion of a new non localized information into collection
bool checkProcessorType(const BaseProcessor &processor)
check processor type in derived class
Definition: StaticParameterSplit.h:144
Base class for processor class.
Definition: BaseProcessor.h:43
structure allowing to check whether a given attribute exists in attribute collection information ...
Definition: AttributeCollInfoCheckMacros.h:131
eSplitStaticType
Enumerate describing static split operation type.
Definition: StaticSplitTypes.h:32
Base class for data static split objets used for data dispatch.
Definition: BaseStaticSplit.h:34
Static split operation type for algorithm parameters.
Definition: StaticSplitTypes.h:38
std::vector< ParameterType > ParameterColl
collection of elements associated to static split
Definition: StaticParameterSplit.h:43
Class allowing to store information about elements range (start offset and number of elements) ...
Definition: ElementsRange.h:27
const std::string & getAttributeToolTip() const
retrieve attribute tooltip associated to split operation
Definition: StaticParameterSplit.h:117
Base class for request origin description.
Definition: BaseRequestOrigin.h:28
eSplitStaticType getSplitStaticType() const
retrieve static split operation type
Definition: StaticParameterSplit.h:103
const std::string & getAttributeName() const
retrieve attribute name associated to split operation
Definition: StaticParameterSplit.h:110
Template class for parameter splitted data used for static data dispatch.
Definition: StaticParameterSplit.h:29
TAttribute::StorageType ParameterType
parameter type associated to object
Definition: StaticParameterSplit.h:40
ParameterCollConstPtr _pParameterColl
collection of elements associated to static split
Definition: StaticParameterSplit.h:83
Class allowing to store elements location informations.
Definition: ElementsLocationInfo.h:32
BoolResult processAttribute(BaseProcessor &processor, const ipUInt32 elementIdx, const core::BaseRequestOrigin &requestOrigin)
initialize processor attribute associate to split operation for a given element index ...
Definition: StaticParameterSplit.h:155
TAttribute AttributeType
attribute type associated to object
Definition: StaticParameterSplit.h:37
boost::shared_ptr< const ParameterColl > ParameterCollConstPtr
shared pointer to collection of elements associated to static split
Definition: StaticParameterSplit.h:46
void init(const ParameterCollConstPtr &pParameterColl)
object initialization method
Definition: StaticParameterSplit.h:124
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53