blob: b8d7378291b250921657e6f40cc88122e0fdc05e [file] [log] [blame]
The Android Open Source Project7f81d9b2009-03-03 19:30:08 -08001/*
2 * Copyright (C) 2008 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16
17#ifndef btk_SDK_Internal_EM_H
18#define btk_SDK_Internal_EM_H
19
20/**
21 * SDK object
22 */
23
24/* ---- includes ----------------------------------------------------------- */
25
26#include "SDK.h"
27#include "b_BasicEm/Context.h"
28
29/* ---- related objects --------------------------------------------------- */
30
31/* ---- typedefs ----------------------------------------------------------- */
32
33/** function return status */
34typedef enum
35{
36 /** sdk handle id */
37 btk_HID_SDK,
38
39 /** dcr handle id */
40 btk_HID_DCR,
41
42 /** face finder handle id */
43 btk_HID_FF
44
45} btk_HandleId;
46
47
48/** SDK context object */
49struct btk_SDK
50{
51 /** context (must occur as first element) */
52 struct bbs_Context contextE;
53
54 /** handle id */
55 btk_HandleId hidE;
56
57 /** reference counter */
58 u32 refCtrE;
59
60 /** ptr to malloc function */
61 btk_fpMalloc mallocFPtrE;
62
63 /** ptr to free function */
64 btk_fpFree freeFPtrE;
65
66 /** error handler function pointer */
67 btk_fpError errorFPtrE;
68
69 /* maximum image witdh used */
70 u32 maxImageWidthE;
71
72 /* maximum image height used */
73 u32 maxImageHeightE;
74};
75
76/* ---- constants ---------------------------------------------------------- */
77
78/* ---- functions ---------------------------------------------------------- */
79
80/** tests parameter consistency */
81btk_Status btk_SDK_paramConsistencyTest( struct btk_SDK* hsdkA,
82 const void* memPtrA,
83 u32 memSizeA,
84 const char* fNameA );
85
86#endif /* btk_SDK_Internal_EM_H */