IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
BaseKernel.h
1 // BaseKernel.h:
3 // -------------
4 //
15 
16 #ifndef __IPSDKBASEDATA_BASEKERNEL_H__
17 #define __IPSDKBASEDATA_BASEKERNEL_H__
18 
21 #include <IPSDKUtil/BaseTypes.h>
22 #include <IPSDKSerialization/Engine/BaseSerializationObject.h>
23 
24 namespace ipsdk {
25 
28 
30 {
31  // declare serial class
33 
34 public:
37  BaseKernel();
38  virtual ~BaseKernel() = 0;
40 
41 // methods
42 public:
44  virtual eKernelType getKernelType() const = 0;
45 
47  virtual ipUInt32 getNbData() const = 0;
48 
50  virtual void clear() = 0;
51 
52 // attributes
53 protected:
54 
55 };
56 
59 
60 } // end of namespace ipsdk
61 
62 #endif // __IPSDKBASEDATA_BASEKERNEL_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Definition of import/export macro for library.
#define IPSDK_DECLARE_ABSTRACT_SERIAL_WITH_COPY(libraryName, className)
macro enabling serialization on abstract class
Definition: SerializationHdrMacro.h:91
eKernelType
Enumerate describing kernel type.
Definition: KernelTypes.h:34
Base types for multiplatform compatibility.
Base class for kernel objects.
Definition: BaseKernel.h:29
Predefined types for kernel management.
#define IPSDKBASEDATA_API
Import/Export macro for library IPSDKUtil.
Definition: IPSDKBaseDataExports.h:27
Base class for serializable class.
Definition: BaseSerializationObject.h:33
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53