00001 00002 // 00003 // Fichero : fnafichero.h 00004 // Autor : Javier Gomez Sanchez 00005 // Fecha creacion : 00006 // 00007 // Descripcion : Objeto funcion que escribe mensajes a un fichero 00008 // 00009 // Notas 00010 // - 00012 00013 #ifndef __FNAFICHERO_H__ 00014 #define __FNAFICHERO_H__ 00015 00016 #include "jic/exc/excepcion.hpp" 00017 #include "jic/task/CFnConsumer.hpp" 00018 #include "jic/task/CMessageBlock.hpp" 00019 00020 EXCEPCION(ExcFicheroNoEncontrado); 00021 00022 namespace TASK { 00023 namespace CONSUMERS { 00024 00025 //----------------------------------------------------------------- 00026 // Clase Template : FnAFichero 00027 //----------------------------------------------------------------- 00028 template<class Mensaje> 00029 class FnAFichero : public TASK::CFnConsumer<Mensaje> 00030 { 00031 public: 00032 FnAFichero(const std::string & nombreFichero); 00033 // throw (ExcFicheroNoEncontrado) 00034 00035 void operator() (TASK::CMessageBlock<Mensaje> *data); 00036 00037 protected: 00038 ofstream _out; 00039 }; 00040 00041 #ifdef ACE_TEMPLATES_REQUIRE_SOURCE 00042 #include "fnafichero.cpp" 00043 #endif 00044 00045 } // CONSUMERS 00046 } // TASK 00047 00048 #endif