16 #ifndef __IPSDKIMAGEPROCESSING_PLANINDEXEDSPLITOPERATORS_H__ 17 #define __IPSDKIMAGEPROCESSING_PLANINDEXEDSPLITOPERATORS_H__ 20 #include <IPSDKImageProcessing/DataSplit/PlanIndexed/PlanIndexedSplit.h> 21 #include <IPSDKImageProcessing/Attribute/PlanIndexed/BasePlanIndexedAttribute.h> 22 #include <IPSDKImage/Image/BaseImage.h> 23 #include <boost/make_shared.hpp> 24 #include <boost/utility/enable_if.hpp> 25 #include <boost/type_traits.hpp> 36 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
37 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
38 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
39 splitPlans(
const boost::shared_ptr<PlanIndexedType>& pPlanIndexed,
43 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
44 pDataSplit->
init(pPlanIndexed,
50 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
51 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
52 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
53 splitPlans(
const boost::shared_ptr<InputAttributeType>& pPlanIndexedAttribute,
57 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
58 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
64 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
65 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
66 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
67 splitPlans(
const boost::shared_ptr<PlanIndexedType>& pPlanIndexed,
71 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
72 pDataSplit->
init(pPlanIndexed,
73 pImage->getSizeZ(), pImage->getSizeC(), pImage->getSizeT(),
78 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
79 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
80 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
81 splitPlans(
const boost::shared_ptr<InputAttributeType>& pPlanIndexedAttribute,
85 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
86 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
87 pImage->getSizeZ(), pImage->getSizeC(), pImage->getSizeT(),
92 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
93 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
94 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
95 splitPlans(
const boost::shared_ptr<PlanIndexedType>& pPlanIndexed)
98 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
99 pDataSplit->
init(pPlanIndexed,
100 pPlanIndexed->getMaxSizeZ(),
101 pPlanIndexed->getMaxSizeC(),
102 pPlanIndexed->getMaxSizeT(),
107 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
108 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
109 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
110 splitPlans(
const boost::shared_ptr<InputAttributeType>& pPlanIndexedAttribute)
113 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
114 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
115 pPlanIndexedAttribute->getMaxSizeZ(),
116 pPlanIndexedAttribute->getMaxSizeC(),
117 pPlanIndexedAttribute->getMaxSizeT(),
127 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
128 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
129 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
134 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
135 pDataSplit->
init(pPlanIndexed,
136 1, pImage->getSizeC(), pImage->getSizeT(),
141 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
142 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
143 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
144 splitPlans3d(
const boost::shared_ptr<InputAttributeType>& pPlanIndexedAttribute,
148 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
149 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
150 1, pImage->getSizeC(), pImage->getSizeT(),
155 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
156 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
157 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
163 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
164 pDataSplit->
init(pPlanIndexed,
170 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
171 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
172 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
173 splitPlans3d(
const boost::shared_ptr<InputAttributeType>& pPlanIndexedAttribute,
178 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
179 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
185 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
186 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
187 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
191 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
192 pDataSplit->
init(pPlanIndexed,
194 pPlanIndexed->getMaxSizeC(),
195 pPlanIndexed->getMaxSizeT(),
200 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
201 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
202 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
203 splitPlans3d(
const boost::shared_ptr<InputAttributeType>& pPlanIndexedAttribute)
206 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
207 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
209 pPlanIndexedAttribute->getMaxSizeC(),
210 pPlanIndexedAttribute->getMaxSizeT(),
220 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
221 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
222 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
227 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
228 pDataSplit->
init(pPlanIndexed,
229 pImage->getSizeZ(), 1, pImage->getSizeT(),
234 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
235 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
236 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
241 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
242 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
243 pImage->getSizeZ(), 1, pImage->getSizeT(),
248 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
249 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
250 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
256 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
257 pDataSplit->
init(pPlanIndexed,
263 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
264 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
265 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
271 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
272 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
278 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
279 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
280 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
284 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
285 pDataSplit->
init(pPlanIndexed,
286 pPlanIndexed->getMaxSizeZ(),
288 pPlanIndexed->getMaxSizeT(),
293 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
294 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
295 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
299 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
300 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
301 pPlanIndexedAttribute->getMaxSizeZ(),
303 pPlanIndexedAttribute->getMaxSizeT(),
313 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
314 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
315 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
320 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
321 pDataSplit->
init(pPlanIndexed,
322 1, 1, pImage->getSizeT(),
327 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
328 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
329 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
334 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
335 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
336 1, 1, pImage->getSizeT(),
341 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
342 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
343 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
348 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
349 pDataSplit->
init(pPlanIndexed,
355 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
356 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
357 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
362 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
363 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
369 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
370 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
371 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
375 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
376 pDataSplit->
init(pPlanIndexed,
379 pPlanIndexed->getMaxSizeT(),
384 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
385 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
386 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
390 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
391 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
394 pPlanIndexedAttribute->getMaxSizeT(),
406 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
407 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
408 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
413 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
414 pDataSplit->
init(pPlanIndexed,
420 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
421 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
422 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
427 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
428 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
434 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
435 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
436 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
441 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
442 pDataSplit->
init(pPlanIndexed,
443 pImage->getSizeZ(), pImage->getSizeC(), pImage->getSizeT(),
448 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
449 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
450 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
455 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
456 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
457 pImage->getSizeZ(), pImage->getSizeC(), pImage->getSizeT(),
469 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
470 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
471 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
476 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
477 pDataSplit->
init(pPlanIndexed,
478 1, pImage->getSizeC(), pImage->getSizeT(),
483 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
484 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
485 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
490 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
491 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
492 1, pImage->getSizeC(), pImage->getSizeT(),
497 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
498 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
499 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
505 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
506 pDataSplit->
init(pPlanIndexed,
512 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
513 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
514 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
520 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
521 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
534 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
535 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
536 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
541 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
542 pDataSplit->
init(pPlanIndexed,
543 pImage->getSizeZ(), 1, pImage->getSizeT(),
548 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
549 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
550 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
555 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
556 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
557 pImage->getSizeZ(), 1, pImage->getSizeT(),
562 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
563 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
564 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
570 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
571 pDataSplit->
init(pPlanIndexed,
577 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
578 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
579 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
585 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
586 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
599 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
600 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
601 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
606 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
607 pDataSplit->
init(pPlanIndexed,
608 1, 1, pImage->getSizeT(),
613 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
614 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
615 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
620 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
621 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
622 1, 1, pImage->getSizeT(),
627 template <
typename TProcessor,
typename TAttribute,
typename PlanIndexedType>
628 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedColl, PlanIndexedType>::type,
629 boost::shared_ptr<PlanIndexedSplit<TProcessor, boost::shared_ptr<PlanIndexedType>, TAttribute> > >::type
634 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
635 pDataSplit->
init(pPlanIndexed,
641 template <
typename TProcessor,
typename TAttribute,
typename InputAttributeType>
642 inline typename boost::enable_if<typename boost::is_base_of<BasePlanIndexedAttribute, InputAttributeType>::type,
643 boost::shared_ptr<PlanIndexedSplit<TProcessor, typename InputAttributeType::StorageType, TAttribute> > >::type
648 boost::shared_ptr<DataSplit> pDataSplit = boost::make_shared<DataSplit>();
649 pDataSplit->
init(pPlanIndexedAttribute->getStorage(),
663 #endif // __IPSDKIMAGEPROCESSING_PLANINDEXEDSPLITOPERATORS_H__ boost::enable_if< typename boost::is_base_of< BasePlanIndexedColl, PlanIndexedType >::type, boost::shared_ptr< PlanIndexedSplit< TProcessor, boost::shared_ptr< PlanIndexedType >, TAttribute > > >::type splitPlansColor(const boost::shared_ptr< PlanIndexedType > &pPlanIndexed, const image::ImageConstPtr &pImage)
create a splitted image operation used for data dispatch where all color plans of image are considere...
Definition: PlanIndexedSplitOperators.h:223
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
boost::enable_if< typename boost::is_base_of< BasePlanIndexedColl, PlanIndexedType >::type, boost::shared_ptr< PlanIndexedSplit< TProcessor, boost::shared_ptr< PlanIndexedType >, TAttribute > > >::type splitPlans3dOrSingle(const boost::shared_ptr< PlanIndexedType > &pPlanIndexed, const image::ImageConstPtr &pImage)
create a splitted image operation used for data dispatch where all 3d plans of image are considered a...
Definition: PlanIndexedSplitOperators.h:472
boost::enable_if< typename boost::is_base_of< BasePlanIndexedColl, PlanIndexedType >::type, boost::shared_ptr< PlanIndexedSplit< TProcessor, boost::shared_ptr< PlanIndexedType >, TAttribute > > >::type splitPlans3dColor(const boost::shared_ptr< PlanIndexedType > &pPlanIndexed, const image::ImageConstPtr &pImage)
create a splitted image operation used for data dispatch where all color plans of image are considere...
Definition: PlanIndexedSplitOperators.h:316
Concrete class for split operation using input plan indexed data.
Definition: PlanIndexedSplit.h:28
boost::shared_ptr< const BaseImage > ImageConstPtr
Definition: ImageTypes.h:140
boost::enable_if< typename boost::is_base_of< BasePlanIndexedColl, PlanIndexedType >::type, boost::shared_ptr< PlanIndexedSplit< TProcessor, boost::shared_ptr< PlanIndexedType >, TAttribute > > >::type splitPlans3d(const boost::shared_ptr< PlanIndexedType > &pPlanIndexed, const image::ImageConstPtr &pImage)
create a splitted image operation used for data dispatch where all 3d plans of image are considered a...
Definition: PlanIndexedSplitOperators.h:130
boost::enable_if< typename boost::is_base_of< BasePlanIndexedColl, PlanIndexedType >::type, boost::shared_ptr< PlanIndexedSplit< TProcessor, boost::shared_ptr< PlanIndexedType >, TAttribute > > >::type splitPlans3dColorOrSingle(const boost::shared_ptr< PlanIndexedType > &pPlanIndexed, const image::ImageConstPtr &pImage)
create a splitted image operation used for data dispatch where all color plans of image are considere...
Definition: PlanIndexedSplitOperators.h:602
void init(const InputStorageType &pPlanIndexedColl, const ipUInt64 sizeZ, const ipUInt64 sizeC, const ipUInt64 sizeT, const bool bCanBeSingle=false)
initialization method for splitted objects
Definition: PlanIndexedSplit.h:108
boost::enable_if< typename boost::is_base_of< BasePlanIndexedColl, PlanIndexedType >::type, boost::shared_ptr< PlanIndexedSplit< TProcessor, boost::shared_ptr< PlanIndexedType >, TAttribute > > >::type splitPlans(const boost::shared_ptr< PlanIndexedType > &pPlanIndexed, const ipUInt64 sizeZ, const ipUInt64 sizeC, const ipUInt64 sizeT)
create a splitted image operation used for data dispatch where all 2d plans of image are considered a...
Definition: PlanIndexedSplitOperators.h:39
Predefined operators for static data split used for data dispatch.
boost::enable_if< typename boost::is_base_of< BasePlanIndexedColl, PlanIndexedType >::type, boost::shared_ptr< PlanIndexedSplit< TProcessor, boost::shared_ptr< PlanIndexedType >, TAttribute > > >::type splitPlansOrSingle(const boost::shared_ptr< PlanIndexedType > &pPlanIndexed, const ipUInt64 sizeZ, const ipUInt64 sizeC, const ipUInt64 sizeT)
create a splitted image operation used for data dispatch where all 2d plans of image are considered a...
Definition: PlanIndexedSplitOperators.h:409
boost::enable_if< typename boost::is_base_of< BasePlanIndexedColl, PlanIndexedType >::type, boost::shared_ptr< PlanIndexedSplit< TProcessor, boost::shared_ptr< PlanIndexedType >, TAttribute > > >::type splitPlansColorOrSingle(const boost::shared_ptr< PlanIndexedType > &pPlanIndexed, const image::ImageConstPtr &pImage)
create a splitted image operation used for data dispatch where all color plans of image are considere...
Definition: PlanIndexedSplitOperators.h:537