15 #ifndef __IPSDKBASEPROCESSING_STATICSPLITOPERATORS_H__ 16 #define __IPSDKBASEPROCESSING_STATICSPLITOPERATORS_H__ 18 #include <IPSDKBaseProcessing/DataSplit/Static/Instances/StaticNoSplit.h> 19 #include <IPSDKBaseProcessing/DataSplit/Static/Instances/StaticResultSplit.h> 20 #include <IPSDKBaseProcessing/DataSplit/Static/Instances/StaticParameterSplit.h> 21 #include <boost/make_shared.hpp> 30 template <
typename TProcessor,
typename TAttribute>
31 boost::shared_ptr<StaticNoSplit<TProcessor, TAttribute> >
36 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
37 pDataSplit->
init(value);
44 template <
typename TProcessor,
typename TAttribute>
45 boost::shared_ptr<StaticResultSplit<TProcessor, TAttribute> >
49 typename TAttribute::StorageType pDefaultValue(boost::make_shared<typename TAttribute::StorageType::element_type>());
53 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
54 pDataSplit->
init(pResultsColl, pDefaultValue);
58 template <
typename TProcessor,
typename TAttribute>
59 boost::shared_ptr<StaticResultSplit<TProcessor, TAttribute> >
61 const typename TAttribute::StorageType& pDefaultValue)
65 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
66 pDataSplit->
init(pResultsColl, pDefaultValue);
74 template <
typename TProcessor,
typename TAttribute>
75 boost::shared_ptr<StaticParameterSplit<TProcessor, TAttribute> >
80 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
81 pDataSplit->
init(pParameterColl);
93 #endif // __IPSDKBASEPROCESSING_STATICSPLITOPERATORS_H__ Template class for results splitted data used for static data dispatch.
Definition: StaticResultSplit.h:32
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
void init(const ParameterType &value)
object initialization method
Definition: StaticNoSplit.h:116
void init(const ParameterCollPtr &pParameterColl, const ParameterType &pDefaultValue)
object initialization method
Definition: StaticResultSplit.h:133
boost::shared_ptr< StaticResultSplit< TProcessor, TAttribute > > staticResultsSplit(const typename StaticResultSplit< TProcessor, TAttribute >::ParameterCollPtr &pResultsColl)
create a results splitted data operation used for data dispatch
Definition: StaticSplitOperators.h:46
boost::shared_ptr< StaticParameterSplit< TProcessor, TAttribute > > staticParameterSplit(const typename StaticParameterSplit< TProcessor, TAttribute >::ParameterCollConstPtr &pParameterColl)
create a parameter splitted data operation used for data dispatch
Definition: StaticSplitOperators.h:76
boost::shared_ptr< ParameterColl > ParameterCollPtr
shared pointer to collection of elements associated to static split
Definition: StaticResultSplit.h:51
Template class for parameter splitted data used for static data dispatch.
Definition: StaticParameterSplit.h:29
boost::shared_ptr< StaticNoSplit< TProcessor, TAttribute > > staticNoSplit(const typename TAttribute::StorageType &value)
create an un-splitted data operation used for data dispatch
Definition: StaticSplitOperators.h:32
Template class for un-splitted data used for static data dispatch.
Definition: StaticNoSplit.h:27
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