Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

ini_bas.hpp

Go to the documentation of this file.
00001 
00002 //
00003 // Fichero            : ini_bas.hpp
00004 // Autor              : Cesar Ortiz
00005 // Fecha creacion     : 
00006 // 
00007 // Descripcion        : Inicialización de mecanismos basicos
00008 //
00009 // 
00010 // Notas
00011 //    - La primera llamada en toda aplicacicación debe ser a main.
00012 //    - No se debe invocar ningún metodo de la clase de  inicio sin haber llamado
00013 //      previamente a main(). No hay salvaguardas ante operativa erronea.
00014 //    - Instalacion de manejador de SigInt.
00015 //      En el codigo de ACE, se indica que no es seguro hacer print en los manejadores
00016 //      de señales, además no deben adquirir locks, etc. De ahí que las trazas
00017 //      fallen ya que usan locks.
00018 //      Dice que incluso no es seguro invocar a ACE_OS::exit().
00019 //        
00020 //
00022 
00023 #ifndef _ini_bas_h_
00024 #define _ini_bas_h_
00025 
00026 #include "jic/base/CControler.hpp"
00027 #include "jic/include/standard_stl.hpp"
00028 
00029 namespace INI {
00030 
00031   class IniBas {
00032   public:    
00033     static void main(int &argc, char** argv,
00034                      const char *aplicacion = 0, 
00035                      const char *modulo = 0,
00036                      MAP_char_string *argsNames = 0);
00037                                                                
00038     
00039     static void setFinishHandler(void (*pFinishHandler)(int));
00040     static void setDefFinishHandler(void (*pFinishFuncion)()=0);                                                                                
00041     static void setReReadConfigHandler(void (*pConfigFuncion)()=0);                                                                             
00042     static void setMainControler(CControler& mainControler);
00043     
00044     static bool dirProgramaEscribible();                                                                
00045                         
00046   private:
00047     static void hookFinishHandle();     
00048     static void hookConfigHandle();
00049     static void hookStopResumeHandles();
00050     static void reReadConfig();
00051     static void stop();
00052     static void resume();
00053         
00054     
00055   };
00056   
00057 
00058 }
00059 
00060 #endif
00061 

Generated on Wed Mar 5 21:31:47 2003 for JIC by doxygen1.3-rc3