Referência ao ficheiro src/vapi.c

#include <stdio.h>
#include <cv.h>
#include <cvaux.h>
#include <highgui.h>
#include "vapi.h"
#include "vapiLists.h"
#include "vapiAux.h"
#include "vapiMacro.h"
#include "vapiIOList.h"
#include "vapiIOXML.h"
#include "vapiIOData.h"
#include "vapiImages.h"
#include "vapiImagesAux.h"
#include "vapiCameraSettings.h"
#include "vapiMacroXML.h"
#include "vapiOperationList.h"
#include "vapiGroups.h"
#include "vapiOperationsData.h"
#include "vapiCameraAcquisition.h"
#include <stdlib.h>
#include <gtk/gtk.h>
#include <glade/glade.h>
#include "vapiGtkInterface.h"
#include "vapiGtkAux.h"

Diagrama de dependências de inclusão para vapi.c:

Ir para o código fonte deste ficheiro.

Funções

int main (int argc, char *argv[])
 Função principal do VAPI.
static void vapiParseCommandOptions (int argc, char *argv[], vCameraSettings *CameraSettings)
 Interpreta as opções passadas à aplicação.
static vBoolean vapiParseCommandOptionsCheckOpt (int argc, char *argv[], int order, const char *opt, int numberOfsettings)
 Verifica os parâmetros passados à aplicação.


Documentação das funções

int main ( int  argc,
char *  argv[] 
)

Função principal do VAPI.

A função main tem como função carregar todo o programa:

Definido na linha 46 do ficheiro vapi.c.

Referências GlobalIOGroups, GlobalIOList, GlobalIOListConfigured, HaveAcquisitionLoadingProgress, interface_os_linux(), LoadScreen, LoadScreenMessage, LoadScreenProgress, MacroList, MainLoadDone, OperationList, vapi_loading_progress(), vapiCameraSettingsRetrieveGlobal(), vapiGetSnapshot(), vapiGlobalCameraSettingsInit(), vapiGroupListAddItem(), vapiGroupListNew(), vapiGtkLoadInterface(), vapiIOConfiguredListFromXML(), vapiIOListAddGroup(), vapiIOListConfiguredNew(), vapiIOListNew(), vapiIORegisterSupportedHw(), vapiLoadAllOperations(), vapiLoadExampleMacros(), vapiMacroListNew(), vapiOperationListInit(), vapiOriginal2Actual(), vapiParseCommandOptions(), vFALSE, vImagesGlobalInit() e vTRUE.

00047 {
00048         int a;
00049         vOperationList *OperationList;
00050         vGroupList *GroupList;
00051         vCameraSettings *CameraSettings;
00052         vMacroList *MacroList;
00053         vImages *Images;
00054 
00055 #ifndef VAPI_WITHOUT_INTERFACE
00056         /*
00057          * Este código serve para iniciar a Brra de Progressos Quando
00058          *  temos interface gráfica.
00059          */
00060         GladeXML *xml;
00061         GtkWidget *imSplashLogo;
00062 
00063         /*
00064          * Carregar a interface
00065          */
00066         xml = vapiGtkLoadInterface ();
00067         LoadScreen = glade_xml_get_widget (xml, "LoadScreen");
00068         LoadScreenProgress = glade_xml_get_widget (xml, "LoadScreenProgress");
00069         LoadScreenMessage = glade_xml_get_widget (xml, "LoadScreenMessage");
00070         imSplashLogo = glade_xml_get_widget (xml, "imSplashLogo");
00071         gtk_widget_show_all (LoadScreen);
00072         gtk_image_set_from_file ((GtkImage *) imSplashLogo,
00073                                  "pixmaps/splash_logo.png");
00074 #endif
00075         /*
00076          * Para a barra de estado no splash, temos:
00077          *  .Iniciar lista de operações.
00078          *  .Iniciar Lista de Macros.
00079          *  .Carregar Handle de Câmara.
00080          *  .Carregar Imagens de trabalho
00081          *  .Carregar Interface:
00082          *   - Carregar Elementos (widgets).
00083          *   - Configurar Elementos
00084          *   - Definir estruturas Auxiliares
00085          *   - Definir Eventos
00086          *   - Mostrar a interface
00087          *   - Carregar as Imagens na interface
00088          */
00089         MainLoadDone = vFALSE;
00090         vapi_loading_progress ("A iniciar lista de Operações");
00091 
00092         GroupList = vapiGroupListNew ();
00093         vapiGroupListAddItem (GroupList, "Todas");
00094         OperationList = vapiOperationListInit(GroupList);
00095         vapiLoadAllOperations();
00096 
00097 
00098         vapi_loading_progress ("A iniciar Lista de Macros");
00099 
00100         MacroList = vapiMacroListNew ();
00101         /*
00102          * Carregar Macros Exemplo.
00103          */
00104         vapi_loading_progress ("A Carregar Macros de Exemplo");
00105         vapiLoadExampleMacros (MacroList, OperationList);
00106 
00107 
00108         vapi_loading_progress ("A Carregar Imagens da Câmara");
00109         Images = vImagesGlobalInit ();
00110 
00111         /*
00112          * Definir a Camara
00113          */
00114         vapiGlobalCameraSettingsInit ();
00115         CameraSettings = vapiCameraSettingsRetrieveGlobal ();
00116         vapiParseCommandOptions (argc, argv, CameraSettings);
00117 
00118         HaveAcquisitionLoadingProgress = vTRUE;
00119         vapiGetSnapshot (Images, CameraSettings);
00120         vapiOriginal2Actual (Images);
00121 
00122         /*
00123          * Carregar Definições de Periféricos
00124          */
00125 
00126         /* Criar Lista de Hardware */
00127 
00128         GlobalIOList = vapiIOListNew ();
00129         GlobalIOGroups = vapiGroupListNew ();
00130         vapiGroupListAddItem (GlobalIOGroups, "Todos");
00131         vapiIORegisterSupportedHw ();
00132         vapiIOListAddGroup (GlobalIOList, GlobalIOGroups);
00133 
00134 
00135         /*
00136          * Criar lista de hardware préviamente configurado.
00137          * FIXME: Deve ser carregado de XML hw préviamente configurado.
00138          */
00139         GlobalIOListConfigured = vapiIOListConfiguredNew ();
00140 
00141         vapiIOConfiguredListFromXML ();
00142 
00143         /*
00144          * Iniciar a interface
00145          */
00146 
00147         vapi_loading_progress ("A iniciar a Interface");
00148         a = interface_os_linux (OperationList, GroupList,
00149                                 CameraSettings, MacroList, Images, xml);
00150 
00151         /*
00152          * Libertar memória
00153          */
00154 
00155         //vImagesFree (Images);
00156 
00157         return a;
00158 }

Grafo de chamadas desta função:

static void vapiParseCommandOptions ( int  argc,
char *  argv[],
vCameraSettings CameraSettings 
) [static]

Interpreta as opções passadas à aplicação.

Definido na linha 190 do ficheiro vapi.c.

Referências vapiCameraSettingsSetTypeLocal(), vapiCameraSettingsSetTypeLocalFile() e vapiParseCommandOptionsCheckOpt().

Referenciado por main().

00192 {
00193         int i;
00194         if (argc <= 0)
00195         {
00196                 return;
00197         }
00198 
00199         for (i = 0; i < argc; i++)
00200         {
00201                 /*
00202                  * Local Camera
00203                  */
00204                 if (vapiParseCommandOptionsCheckOpt (argc, argv, i, "-lc", 1))
00205                 {
00206                         vapiCameraSettingsSetTypeLocal (CameraSettings,
00207                                                         atoi (argv[++i]));
00208                 }
00209 
00210                 /*
00211                  * Local File
00212                  */
00213                 if (vapiParseCommandOptionsCheckOpt (argc, argv, i, "-lf", 1))
00214                 {
00215                         vapiCameraSettingsSetTypeLocalFile (CameraSettings,
00216                                                             argv[++i]);
00217                 }
00218         }
00219 
00220 
00221 }

Grafo de chamadas desta função:

Here is the caller graph for this function:

static vBoolean vapiParseCommandOptionsCheckOpt ( int  argc,
char *  argv[],
int  order,
const char *  opt,
int  numberOfsettings 
) [static]

Verifica os parâmetros passados à aplicação.

Esta função verifica se foram passados parâmetros na inicialização da aplicação e se esses parâmetros são válidos.

Definido na linha 167 do ficheiro vapi.c.

Referências vFALSE e vTRUE.

Referenciado por vapiParseCommandOptions().

00169 {
00170         if (!strcmp (argv[order], opt))
00171         {
00172                 if (numberOfsettings > 0)
00173                 {
00174                         if ((order + numberOfsettings) >= argc)
00175                         {
00176                                 return vTRUE;
00177                         }
00178                         return vTRUE;
00179                 }
00180                 return vFALSE;
00181         }
00182         return vFALSE;
00183 
00184 }

Here is the caller graph for this function:


Gerado em Tue Jul 24 10:37:17 2007 para Vapi por  doxygen 1.5.1