00001 00002 // 00003 // Fichero : fndesocket.h 00004 // Autor : Javier Gomez Sanchez 00005 // Fecha creacion : 00006 // 00007 // Descripcion : Lee siempre del mismo socket 00008 // 00009 // Notas 00010 // - 00012 00013 #ifndef __FNDESOCKET_H__ 00014 #define __FNDESOCKET_H__ 00015 00016 00017 #include "task/CFnProducer.h" 00018 #include "jic/exc/excepcion.hpp" 00019 #include "jic/task/producers/excmensnoconst.hpp" 00020 #include "jic/task/CMessageBlock.hpp" 00021 00022 00023 00024 namespace TASK { 00025 namespace PRODUCTORES { 00026 00027 //----------------------------------------------------------------- 00028 // Clase Template : FnDeSocket 00029 //----------------------------------------------------------------- 00030 template<class Mensaje> 00031 class FnDeSocket : public TASK::CFnProducer<Mensaje> 00032 { 00033 public: 00034 FnDeSocket(SOCKETS::Socket & socket); 00035 // throw (ExcFicheroNoEncontrado) 00036 00037 TASK::CMessageBlock<Mensaje>* operator() (); 00038 00039 protected: 00040 SOCKETS::Socket & _in; 00041 }; 00042 00043 #ifdef ACE_TEMPLATES_REQUIRE_SOURCE 00044 #include "fndesocket.cpp" 00045 #endif 00046 00047 } // PRODUCTORES 00048 } // TASK 00049 00050 #endif