IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
OutputInitializerOperators.h
Go to the documentation of this file.
1 // OutputInitializerOperators.h:
3 // -----------------------------
4 //
14 
15 #ifndef __IPSDKBASEPROCESSING_OUTPUTINITIALIZEROPERATORS_H__
16 #define __IPSDKBASEPROCESSING_OUTPUTINITIALIZEROPERATORS_H__
17 
19 #include <IPSDKBaseProcessing/OutputInitializer/AllocateInitializer.h>
20 
21 namespace ipsdk {
22 namespace processor {
23 
26 
29 template <typename OutputAttributeType>
31 allocate(const boost::weak_ptr<OutputAttributeType>& pOutputAttribute)
32 {
33  // retrieve duplicator type
34  typedef AllocateInitializer<OutputAttributeType> OutputInitializerType;
35 
36  // create allocator
37  boost::shared_ptr<OutputInitializerType> pInitializer = boost::make_shared<OutputInitializerType>();
38  pInitializer->init(pOutputAttribute);
39 
40  return pInitializer;
41 }
42 template <typename OutputAttributeType>
44 allocate(const boost::shared_ptr<OutputAttributeType>& pOutputAttribute)
45 {
46  return allocate(boost::weak_ptr<OutputAttributeType>(pOutputAttribute));
47 }
49 
52 
53 } // end of namespace processor
54 } // end of namespace ipsdk
55 
56 #endif // __IPSDKBASEPROCESSING_OUTPUTINITIALIZEROPERATORS_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Output initializer allocating an un initialized data.
Definition: AllocateInitializer.h:30
void init(const boost::weak_ptr< OutputAttributeType > &pOutputAttribute)
initialize object
Definition: AllocateInitializer.h:57
boost::shared_ptr< BaseOutputInitializer > OutputInitializerPtr
shared pointer to output intializer
Definition: OutputInitializerTypes.h:51
Definition of import/export macro for library.
processor::OutputInitializerPtr allocate(const boost::weak_ptr< OutputAttributeType > &pOutputAttribute)
Definition: OutputInitializerOperators.h:31