arMulti.h
Go to the documentation of this file.
00001 /*  --------------------------------------------------------------------------
00002 *   Copyright (C) 2004 Hitlab NZ.
00003 *   The distribution policy is describe on the Copyright.txt furnish 
00004 *    with this library.
00005 *   -------------------------------------------------------------------------*/
00023 /*  --------------------------------------------------------------------------
00024 *   History : 
00025 *   Rev         Date            Who             Changes
00026 *
00027 *----------------------------------------------------------------------------*/
00028 
00029 #ifndef AR_MULTI_H
00030 #define AR_MULTI_H
00031 #ifdef __cplusplus
00032 extern "C" {
00033 #endif
00034 
00035 // ============================================================================
00036 //      Public includes.
00037 // ============================================================================
00038 
00039 #include <stdio.h>
00040 #include <AR/config.h>
00041 #include <AR/param.h>
00042 #include <AR/ar.h>
00043 
00044 // ============================================================================
00045 //      Public types and defines.
00046 // ============================================================================
00047 
00062 typedef struct {
00063     int     patt_id;
00064     double  width;
00065     double  center[2];
00066     double  trans[3][4];
00067     double  itrans[3][4];
00068     double  pos3d[4][3];
00069     int     visible;
00070 /*---*/
00071     int     visibleR;
00072 } ARMultiEachMarkerInfoT;
00073 
00085 typedef struct {
00086     ARMultiEachMarkerInfoT  *marker;
00087     int                     marker_num;
00088     double                  trans[3][4];
00089     int                     prevF;
00090 /*---*/
00091     double                  transR[3][4];
00092 } ARMultiMarkerInfoT;
00093 
00094 // ============================================================================
00095 //      Public globals.
00096 // ============================================================================
00097 
00098 // ============================================================================
00099 //      Public functions.
00100 // ============================================================================
00101 
00111 ARMultiMarkerInfoT *arMultiReadConfigFile( const char *filename );
00112 
00124 double  arMultiGetTransMat(ARMarkerInfo *marker_info, int marker_num,
00125                            ARMultiMarkerInfoT *config);
00126 
00135 int arMultiActivate( ARMultiMarkerInfoT *config );
00136 
00145 int arMultiDeactivate( ARMultiMarkerInfoT *config );
00146 
00155 int arMultiFreeConfig( ARMultiMarkerInfoT *config );
00156 
00157 /*------------------------------------*/
00158 double arsMultiGetTransMat(ARMarkerInfo *marker_infoL, int marker_numL,
00159                            ARMarkerInfo *marker_infoR, int marker_numR,
00160                            ARMultiMarkerInfoT *config);
00161 
00162 
00163 #ifdef __cplusplus
00164 }
00165 #endif
00166 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Defines


ar_recog
Author(s): Graylin Trevor Jay and Christopher Crick
autogenerated on Fri Jan 25 2013 12:14:59