00001 // -*- C++ -*- 00002 00003 // =================================================================== 00004 /** 00005 * @file Network_Priority_Protocols_Hooks.h 00006 * 00007 * $Id: Network_Priority_Protocols_Hooks.h 77192 2007-02-19 14:40:44Z jai $ 00008 * 00009 * @author Jaiganesh Balasubramanian <jai@dre.vanderbilt.edu> 00010 * Johnny Willemsen <jwillemsen@remedy.nl> 00011 */ 00012 // =================================================================== 00013 00014 #ifndef TAO_NETWORK_PRIORITY_PROTOCOLS_HOOKS_H 00015 #define TAO_NETWORK_PRIORITY_PROTOCOLS_HOOKS_H 00016 00017 #include /**/ "ace/pre.h" 00018 #include "ace/CORBA_macros.h" 00019 00020 #if !defined (ACE_LACKS_PRAGMA_ONCE) 00021 # pragma once 00022 #endif /* ACE_LACKS_PRAGMA_ONCE */ 00023 00024 #include "ace/Service_Object.h" 00025 #include /**/ "tao/TAO_Export.h" 00026 #include "tao/Basic_Types.h" 00027 00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00029 00030 namespace CORBA 00031 { 00032 class Environment; 00033 class Object; 00034 } 00035 00036 class TAO_ORB_Core; 00037 class TAO_Service_Context; 00038 class TAO_Connection_Handler; 00039 class TAO_Stub; 00040 00041 class TAO_Export TAO_Network_Priority_Protocols_Hooks 00042 : public ACE_Service_Object 00043 { 00044 public: 00045 /// destructor 00046 virtual ~TAO_Network_Priority_Protocols_Hooks (void); 00047 00048 virtual void init_hooks (TAO_ORB_Core *orb_core) = 0; 00049 00050 virtual CORBA::Long get_dscp_codepoint (TAO_Stub *stub, 00051 CORBA::Object *object) = 0; 00052 00053 virtual CORBA::Long get_dscp_codepoint (TAO_Service_Context &req) = 0; 00054 00055 virtual void np_service_context (TAO_Stub *stub, 00056 TAO_Service_Context &service_context, 00057 CORBA::Boolean restart) = 0; 00058 00059 virtual void add_rep_np_service_context_hook ( 00060 TAO_Service_Context &service_context, 00061 CORBA::Long &dscp_codepoint) = 0; 00062 }; 00063 00064 TAO_END_VERSIONED_NAMESPACE_DECL 00065 00066 #include /**/ "ace/post.h" 00067 00068 #endif /* TAO_NETWORK_PRIORITY_PROTOCOLS_HOOKS_H */