Blink API

BlinkTypes.h

Go to the documentation of this file.
00001 // Copyright (c) 2013 The Foundry Visionmongers Ltd.  All Rights Reserved.
00002 
00007 #ifndef Blink_Library_BlinkTypes_h
00008 #define Blink_Library_BlinkTypes_h
00009 #ifdef __cplusplus
00010 extern "C" {
00011 #endif
00012 
00013 typedef long long BlinkFlagType;
00014 
00015 typedef BlinkFlagType BlinkCodegenFlags;
00016 typedef BlinkFlagType BlinkDataType;
00017 typedef BlinkFlagType BlinkPropertyType;
00018 typedef BlinkFlagType BlinkErrorProperty;
00019 
00020 struct BlinkObj;
00021 typedef struct BlinkObj* BlinkRef;
00022 typedef struct BlinkObj* BlinkErrorRef;
00023 
00024 typedef int BlinkErrorCode;
00025 
00026 typedef void* BlinkComputeDeviceID;
00027 
00028 typedef int BlinkMemoryType;
00029 
00035 struct BlinkRect {
00036   int x1;
00037   int y1;
00038   int x2;
00039   int y2;
00040 };
00041 
00043 struct BlinkPixelInfo {
00045   int nComponents;
00046 
00048   BlinkDataType dataType;
00049 };
00050 
00052 struct BlinkImageInfo {
00054   struct BlinkRect bounds;
00055 
00057   struct BlinkPixelInfo pixelInfo;
00058 };
00059 
00061 struct BlinkKernelIterationController {
00062 
00064   struct BlinkRect bounds;
00065 
00066   //TODO component range? Step size?
00067 };
00068 
00069 struct BlinkBufferDesc {
00070   unsigned long long pixelStepBytes;
00071   unsigned long long rowStepBytes;
00072   unsigned long long componentStepBytes;
00073 };
00074 
00075 struct BlinkDeviceMemory {
00076   //Type of memory
00077   BlinkMemoryType type;
00078 
00079   //Pointer to the memory base object. For host memory this would be a pointer to the memory pointer i.e. a void**
00080   void* memoryBasePtr;
00081   // Size of memory base object
00082   unsigned long long memoryBaseSize;
00083 
00084   // Offset into memory - currently this must be zero
00085   unsigned long long offset;
00086 };
00087 
00088 #ifdef __cplusplus
00089 }
00090 #endif
00091 #endif
 All Classes Namespaces Files Functions Variables


©2014 The Foundry Visionmongers, Ltd. All Rights Reserved.
www.thefoundry.co.uk