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

CMessageBlock.hpp

Go to the documentation of this file.
00001 
00002 #ifndef CMessageBlock_h
00003 #define CMessageBlock_h 1
00004 #include <ace/Message_Block.h>
00005 
00006 namespace TASK {
00007 
00008   //    Redefinicion del objeto de ACE
00009 
00010   typedef ACE_Message_Block ACE_Message_Block;
00011 
00012   //    Define el objeto que se usara para encolar
00013   //    informacion entre los distintos objetos
00014   //    El constructor sin parametros crea un mensaje
00015   //    vacio (sin ningun Data_Block) de tipo MB_HANGUP.
00016 
00017   template <class MessageType>
00018   class CMessageBlock : public ACE_Message_Block  
00019   {
00020 
00021     public:
00022         CMessageBlock();
00023 
00024         CMessageBlock(const CMessageBlock< MessageType > &right);
00025 
00026         CMessageBlock (MessageType *pMessage);
00027 
00028         virtual ~CMessageBlock();
00029 
00030         CMessageBlock< MessageType > & operator=(const CMessageBlock< MessageType > &right);
00031 
00032         const MessageType * get_data () const;
00033 
00034       // Additional Public Declarations
00035 
00036     protected:
00037       // Additional Protected Declarations
00038 
00039     private:
00040       // Additional Private Declarations
00041 
00042     private: 
00043       // Data Members for Class Attributes
00044 
00045         MessageType *m_data;
00046 
00047       // Additional Implementation Declarations
00048 
00049   };
00050 
00051   // Parameterized Class TASK::CMessageBlock 
00052 
00053   template <class MessageType>
00054   inline const MessageType * CMessageBlock<MessageType>::get_data () const
00055   {
00056     return m_data;
00057   }
00058 
00059 } // namespace TASK
00060 
00061 #ifdef ACE_TEMPLATES_REQUIRE_SOURCE
00062 #include "CMessageBlock.cpp"
00063 #endif
00064 
00065 #endif

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