Home | History | Annotate | Download | only in b_APIEm
      1 /*
      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 bpi_TYPES_EM_H
     18 #define bpi_TYPES_EM_H
     19 
     20 /**
     21  * This file contains gerenral purpose types.
     22  */
     23 
     24 /* ---- includes ----------------------------------------------------------- */
     25 
     26 /* ---- related objects  --------------------------------------------------- */
     27 
     28 /* ---- typedefs ----------------------------------------------------------- */
     29 
     30 /** Type of module */
     31 enum bpi_ModuleType
     32 {
     33 	bpi_UNDEFINED,
     34 	bpi_OLD_FACE_FINDER_REMOVED,
     35 	bpi_FACE_FINDER,
     36 	bpi_LANDMARKER,
     37 	bpi_CONVERTER,
     38 	bpi_IDENTIFIER
     39 };
     40 
     41 /** List of object identifiers
     42  *  This list is is synchronized with enum list epi_ObjectId
     43  *  Not all types are neccessarily in use in the embedded realm
     44  *  values in round braces ( e.g. (32) ) denote the size in bits of the associated data type
     45  *
     46  *  Object formats:
     47  *		ASCII String: 0-terminates string of characters
     48  *
     49  *		Image:	<(32) type><(32) width><(32) height><(8) byte1><(8) byte2>....
     50  *				type: 0: gray image - pixels are bytes starting at upper left corner
     51  *				      1: rgb color images - prixels are 3-byte rgb groups starting at upper left corner
     52  *					  2: jpeg compressed image (<(32) type><(32) width><(32) height> precede jpeg data)
     53  *
     54  *      Cue:    SDK compatible template (bpi_IdCueHdr + subsequent data)
     55  *
     56  *  The type values never change. Type numbers can be taken for granted.
     57  */
     58 enum bpi_ObjectId
     59 {
     60 	bpi_ID_FILE,                 /** (ASCII String) file name (of image) */
     61 	bpi_ID_BOUNDING_BOX,         /** bounding box (coordinates of original image) */
     62 	bpi_ID_GRAPH,                /** ground truth graph */
     63 	bpi_ID_FILE_LIST,		     /** list of filenames  */
     64 	bpi_ID_GRAPH_LIST,			 /** list of egp_SpatialGraph (multiple ground truth graphs per image) */
     65 	bpi_ID_GROUP,				 /** generic group element (used in the embedded domain to identify an object set) */
     66 	bpi_ID_IMAGE = 256,          /** (Image) downscaled byte image */
     67 	bpi_ID_IMAGE_FRAME,          /** bounding box surrounding original image */
     68 	bpi_ID_IMAGE_ID,			 /** (32)-integer id number of person por object in image */
     69 	bpi_ID_SIGNATURE_NAME = 512, /** (ASCII String) name of gallery element (=signature) */
     70 	bpi_ID_CONFIDENCE,           /** general purpose confidence value */
     71 	bpi_ID_CUE,                  /** (Cue) general purpose cue   */
     72 	bpi_ID_PCA_MAT,              /** eigenvector matrix obtained from PCA analysis */
     73 	bpi_ID_PCA_AVG,              /** PCA average vector */
     74 	bpi_ID_PCA_EVL,              /** PCA eigen values */
     75 	bpi_ID_COMMENT               /** (ASCII String) comment or description of data */
     76 	// never modify this list alone (!) - modification must be initiated in Kernel/API
     77 };
     78 
     79 /* ---- constants ---------------------------------------------------------- */
     80 
     81 /* ---- external functions ------------------------------------------------- */
     82 
     83 #endif /* bpi_TYPES_EM_H */
     84 
     85