7 using System.Runtime.InteropServices;
22 #region -- Signature authenticatoin 24 public static extern int Signature_getSignatureType();
27 public static extern IntPtr Signature_getInvalidImagePtr();
30 public static extern IntPtr Signature_getFreeImagePtr();
33 #region -- MaxstAR Setting 38 public static extern void setScreenOrientation(
int orientation);
41 public static extern void onSurfaceChanged(
int viewWidth,
int viewHeight);
47 #region -- Camera Device settings 49 public static extern int CameraDevice_start(
int cameraId,
int preferredWidth,
int preferredHeight);
52 public static extern void CameraDevice_stop();
55 public static extern bool CameraDevice_setFocusMode(
int focusMode);
58 public static extern bool CameraDevice_setFlashLightMode(
bool toggle);
61 public static extern bool CameraDevice_setAutoWhiteBalanceLock(
bool toggle);
64 public static extern bool CameraDevice_flipVideo(
int direction,
bool toggle);
67 public static extern int CameraDevice_getParamList();
70 public static extern int CameraDevice_Param_getKeyLength(
int index);
73 public static extern void CameraDevice_Param_getKey(
int index, byte[] key);
76 public static extern bool CameraDevice_setBoolTypeParameter(
string key,
bool boolValue);
79 public static extern bool CameraDevice_setIntTypeParameter(
string key,
int intValue);
82 public static extern bool CameraDevice_setRangeTypeParameter(
string key,
int min,
int max);
85 public static extern bool CameraDevice_setStringTypeParameter(
string key,
string intValue);
88 public static extern int CameraDevice_getWidth();
91 public static extern int CameraDevice_getHeight();
94 public static extern IntPtr CameraDevice_getCameraImagePtr(ulong trackedFrame_cPtr, byte[] imageBuffer);
97 public static extern void CameraDevice_getProjectionMatrix(
float[] matrix);
117 #region -- Tracker Manager 119 public static extern void TrackerManager_startTracker(
int trackerMask);
122 public static extern void TrackerManager_stopTracker();
125 public static extern void TrackerManager_destroyTracker();
128 public static extern void TrackerManager_addTrackerData(
string trackingFileName,
bool isAndroidAssetFile =
false);
131 public static extern void TrackerManager_removeTrackerData(
string trackingFileName =
"");
134 public static extern void TrackerManager_loadTrackerData();
137 public static extern void TrackerManager_setTrackingOption(
int option);
140 public static extern bool TrackerManager_isTrackerDataLoadCompleted();
143 public static extern ulong TrackerManager_updateTrackingState();
146 public static extern void TrackerManager_findSurface();
149 public static extern void TrackerManager_quitFindingSurface();
155 public static extern ulong TrackerManager_getGuideInfo();
158 public static extern ulong TrackerManager_saveSurfaceData(
string outputFileName);
173 public static extern void TrackerManager_getWorldPositionFromScreenCoordinate(
float[] screen,
float[] world);
175 #region -- Guide Info 177 public static extern float GuideInfo_getInitializingProgress(ulong GuideInfo_cPtr);
180 public static extern int GuideInfo_getKeyframeCount(ulong GuideInfo_cPtr);
183 public static extern int GuideInfo_getFeatureCount(ulong GuideInfo_cPtr);
186 public static extern void GuideInfo_getFeatureBuffer(ulong GuideInfo_cPtr,
float [] data,
int length);
202 #region -- TrackingResult 204 public static extern int TrackingResult_getCount(ulong TrackingResult_cPtr);
207 public static extern ulong TrackingResult_getTrackable(ulong TrackingResult_cPtr,
int index);
212 public static extern void Trackable_getId(ulong Trackable_cPtr, byte[]
id);
215 public static extern void Trackable_getName(ulong Trackable_cPtr, byte[] name);
221 public static extern void Trackable_getPose(ulong Trackable_cPtr,
float[] pose);
230 #region -- TrackingState 232 public static extern ulong TrackingState_getTrackingResult(ulong TrackingState_cPtr);
235 public static extern ulong TrackingState_getImage(ulong TrackingState_cPtr);
238 public static extern int TrackingState_getCodeScanResultLength(ulong TrackingState_cPtr);
241 public static extern void TrackingState_getCodeScanResult(ulong TrackingState_cPtr, byte[] result,
int length);
245 #region -- SurfaceMesh 262 #region -- SurfaceThumbnail 264 public static extern int SurfaceThumbnail_getWidth(ulong SurfaceThumbnail_cPtr);
267 public static extern int SurfaceThumbnail_getHeight(ulong SurfaceThumbnail_cPtr);
270 public static extern int SurfaceThumbnail_getLength(ulong SurfaceThumbnail_cPtr);
273 public static extern int SurfaceThumbnail_getBpp(ulong SurfaceThumbnail_cPtr);
276 public static extern int SurfaceThumbnail_getData(ulong SurfaceThumbnail_cPtr, byte[] data,
int length);
279 #region -- Sensor Device 281 public static extern void startSensor();
284 public static extern void stopSensor();
295 public static extern bool MapViewer_initialize(
string fileName);
298 public static extern void MapViewer_deInitialize();
301 public static extern IntPtr MapViewer_getJson();
304 public static extern int MapViewer_create(
int idx);
307 public static extern void MapViewer_getIndices(out
int indices);
310 public static extern void MapViewer_getTexCoords(out
float texCoords);
313 public static extern int MapViewer_getImageSize(
int idx);
316 public static extern void MapViewer_getImage(
int idx, out byte image);
319 #region -- Wearable Calibration 321 public static extern bool WearableCalibration_isActivated();
324 public static extern bool WearableCalibration_init(
string modelName);
327 public static extern void WearableCalibration_deinit();
330 public static extern void WearableCalibration_setSurfaceSize(
int width,
int height);
333 public static extern void WearableCalibration_getProjectionMatrix(
float[] projection,
int eyeType);
336 #region -- Image Extractor 338 public static extern int TrackedImage_getWidth(ulong Image_cPtr);
341 public static extern int TrackedImage_getHeight(ulong Image_cPtr);
344 public static extern int TrackedImage_getLength(ulong Image_cPtr);
347 public static extern int TrackedImage_getFormat(ulong Image_cPtr);
350 public static extern void TrackedImage_getData(ulong Image_cPtr, byte[] buffer,
int size);
353 public static extern ulong TrackedImage_getDataPtr(ulong Image_cPtr,
int size);