UIPMC_Factory.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00003 //=============================================================================
00004 /**
00005  *  @file     UIPMC_Factory.h
00006  *
00007  *  UIPMC_Factory.h,v 1.6 2006/03/14 06:14:34 jtc Exp
00008  *
00009  *  @author Frank Hunleth <fhunleth@cs.wustl.edu>
00010  */
00011 //=============================================================================
00012 
00013 #ifndef TAO_UIPMC_FACTORY_H
00014 #define TAO_UIPMC_FACTORY_H
00015 
00016 #include /**/ "ace/pre.h"
00017 
00018 #include "tao/Protocol_Factory.h"
00019 
00020 #if !defined (ACE_LACKS_PRAGMA_ONCE)
00021 # pragma once
00022 #endif /* ACE_LACKS_PRAGMA_ONCE */
00023 
00024 #include "ace/Service_Config.h"
00025 
00026 #include "orbsvcs/PortableGroup/portablegroup_export.h"
00027 
00028 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
00029 
00030 class TAO_Acceptor;
00031 class TAO_Connector;
00032 
00033 class TAO_PortableGroup_Export TAO_UIPMC_Protocol_Factory : public TAO_Protocol_Factory
00034 {
00035 public:
00036   TAO_UIPMC_Protocol_Factory (void);
00037   virtual ~TAO_UIPMC_Protocol_Factory (void);
00038 
00039   // = Service Configurator hooks.
00040   /// Dynamic linking hook
00041   virtual int init (int argc, char* argv[]);
00042 
00043   /// Verify prefix is a match
00044   virtual int match_prefix (const ACE_CString &prefix);
00045 
00046   /// Returns the prefix used by the protocol.
00047   virtual const char *prefix (void) const;
00048 
00049   /// Return the character used to mark where an endpoint ends and
00050   /// where its options begin.
00051   virtual char options_delimiter (void) const;
00052 
00053   // = Check Protocol_Factory.h for a description of these methods.
00054   virtual TAO_Acceptor  *make_acceptor (void);
00055   virtual TAO_Connector *make_connector  (void);
00056   virtual int requires_explicit_endpoint (void) const;
00057 
00058 private:
00059   /// Changing the version number can be used to provide backwards
00060   /// compatibility with old clients.
00061   int major_;
00062   int minor_;
00063 };
00064 
00065 TAO_END_VERSIONED_NAMESPACE_DECL
00066 
00067 ACE_STATIC_SVC_DECLARE (TAO_UIPMC_Protocol_Factory)
00068 ACE_FACTORY_DECLARE (TAO_PortableGroup, TAO_UIPMC_Protocol_Factory)
00069 
00070 #include /**/ "ace/post.h"
00071 
00072 #endif /* TAO_UIPMC_FACTORY_H */

Generated on Thu Nov 9 14:03:34 2006 for TAO_PortableGroup by doxygen 1.3.6