diff options
author | bala <balanatarajan@users.noreply.github.com> | 2000-11-18 18:44:52 +0000 |
---|---|---|
committer | bala <balanatarajan@users.noreply.github.com> | 2000-11-18 18:44:52 +0000 |
commit | 2cf7cab3287f9d6b2f9c90af294099f61093ed19 (patch) | |
tree | e0419a5a236af8c958b257b9dc85394a17cdc765 /TAO | |
parent | 155f1f69be1bd1eddd866ead20a7d8c05a93b899 (diff) | |
download | ATCD-2cf7cab3287f9d6b2f9c90af294099f61093ed19.tar.gz |
Thu Nov 18 12:31:37 2000 Balachandran Natarajan <bala@cs.wustl.edu>
Diffstat (limited to 'TAO')
-rw-r--r-- | TAO/tao/Base_Connection_Property.cpp | 26 | ||||
-rw-r--r-- | TAO/tao/Base_Connection_Property.h | 100 | ||||
-rw-r--r-- | TAO/tao/Base_Connection_Property.inl | 45 | ||||
-rw-r--r-- | TAO/tao/Cache_Entries.h | 8 | ||||
-rw-r--r-- | TAO/tao/Cache_Entries.inl | 15 | ||||
-rw-r--r-- | TAO/tao/Connection_Cache_Manager.h | 4 | ||||
-rw-r--r-- | TAO/tao/Connection_Cache_Manager.inl | 4 | ||||
-rw-r--r-- | TAO/tao/Connection_Descriptor_Interface.cpp | 19 | ||||
-rw-r--r-- | TAO/tao/Connection_Descriptor_Interface.h | 97 | ||||
-rw-r--r-- | TAO/tao/Connection_Descriptor_Interface.inl | 25 | ||||
-rw-r--r-- | TAO/tao/IIOP_Connect.cpp | 1 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Connect.cpp | 1 | ||||
-rw-r--r-- | TAO/tao/Strategies/SHMIOP_Connector.cpp | 1 | ||||
-rw-r--r-- | TAO/tao/Strategies/UIOP_Endpoint.h | 2 | ||||
-rw-r--r-- | TAO/tao/TAO.dsp | 27 | ||||
-rw-r--r-- | TAO/tao/TAO_Static.dsp | 12 |
16 files changed, 262 insertions, 125 deletions
diff --git a/TAO/tao/Base_Connection_Property.cpp b/TAO/tao/Base_Connection_Property.cpp index df3976860d6..0854c54544b 100644 --- a/TAO/tao/Base_Connection_Property.cpp +++ b/TAO/tao/Base_Connection_Property.cpp @@ -13,12 +13,10 @@ ACE_RCSID(tao, Base_Connection_Property, "$Id$") TAO_Base_Connection_Property::~TAO_Base_Connection_Property (void) { - if (endpoint_flag_) - delete this->endpoint_; } -TAO_Base_Connection_Property * +TAO_Connection_Descriptor_Interface * TAO_Base_Connection_Property::duplicate (void) { // Get a copy of the underlying endpoint @@ -32,3 +30,25 @@ TAO_Base_Connection_Property::duplicate (void) 0); return prop; } + + +CORBA::Boolean +TAO_Base_Connection_Property::is_equivalent ( + const TAO_Connection_Descriptor_Interface *rhs) +{ + TAO_Connection_Descriptor_Interface *base = + ACE_const_cast (TAO_Connection_Descriptor_Interface *, + rhs); + + if (this->endpoint_->is_equivalent (base->endpoint ())) + return 1; + + return 0; +} + + +u_long +TAO_Base_Connection_Property::hash (void) const +{ + return this->endpoint_->hash (); +} diff --git a/TAO/tao/Base_Connection_Property.h b/TAO/tao/Base_Connection_Property.h index d7c52c9ca16..f4e94336402 100644 --- a/TAO/tao/Base_Connection_Property.h +++ b/TAO/tao/Base_Connection_Property.h @@ -1,25 +1,22 @@ /* -*- C++ -*- */ // $Id$ -// ============================================================================ -// -// = LIBRARY -// TAO -// -// = FILENAME -// Connection_Property.h -// -// = AUTHOR -// Bala Natarajan <bala@cs.wustl.edu> -// -// ============================================================================ +// =================================================================== +/** + * @file Base_Connection_Property.h + * + * $Id$ + * + * @author DOC Center - Washington University at St. Louis + * @author DOC Laboratory - University of California at Irvine + */ +// =================================================================== #ifndef TAO_BASE_CONNECTION_PROPERTY_H #define TAO_BASE_CONNECTION_PROPERTY_H #include "ace/pre.h" -#include "tao/Endpoint.h" - +#include "tao/Connection_Descriptor_Interface.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -33,76 +30,49 @@ #endif /* _MSC_VER */ +/** + * @class TAO_Base_Connection_Property + * + * @brief A concrete implementation for connnection property + * + * This class is a concrete implementation of a simple connection + * property class. This provides an implementation for the virtual + * functions declared in TAO_Connection_Descriptor_Interface. + */ + -class TAO_Export TAO_Base_Connection_Property +class TAO_Export TAO_Base_Connection_Property: + public TAO_Connection_Descriptor_Interface { - // = TITLE - // Abstracts the base properties of the connection, which will - // be used to look up connections in the cache - // - // = DESCRIPTION - // This class has the fundamental property of the connection - // viz. the peer to which it is connected. This class will be - // used to do a look up of the connection from the cache. - // Note 1: Additional properties for connection like Qos, - // Priority that the RT folks would need, can be added by - // inheriting from this class and providing the following - // methods. - // 1. duplicate () - // 2. operator== - // 3. operator= - // 4. operator!= - // 5. hash () public: + /// Default constructor TAO_Base_Connection_Property (void); - // Default constructor + /// Constructor TAO_Base_Connection_Property (TAO_Endpoint *endpoint, CORBA::Boolean flag = 0); - // Constructor + /// Dtor virtual ~TAO_Base_Connection_Property (void); - // Dtor - // = Operations that need to be overloaded in all the inherited - // classes. Without these the caching of connections may not work - // right way. + /// The copy constructor. TAO_Base_Connection_Property ( const TAO_Base_Connection_Property &rhs); - // The copy constructor. - - virtual TAO_Base_Connection_Property *duplicate (void); - // This call allocates and copies the contents of this class and - // returns the pointer - - TAO_Endpoint *endpoint (void); - // Return the underlying endpoint oject - - void operator= (const TAO_Base_Connection_Property &rhs); - // Assignment operator (does copy memory). - - int operator== (const TAO_Base_Connection_Property &rhs) const; - // Equality comparison operator - - int operator!= (const TAO_Base_Connection_Property &rhs) const; - // Inequality comparison operator. - u_long hash (void) const; - // Generate hash value for our class -private: + /// This call allocates and copies the contents of this class and + /// returns the pointer + virtual TAO_Connection_Descriptor_Interface *duplicate (void); - TAO_Endpoint *endpoint_; - // The base property of the connection ie. the peer's endpoint - // Note: This endpoint will have a minimal info about the - // endpoint. This should not be used for any invocation. + /// Try to determine if this object is same as the <other_prop>. + virtual CORBA::Boolean is_equivalent ( + const TAO_Connection_Descriptor_Interface *other_prop); - CORBA::Boolean endpoint_flag_; - // Is the endpoint allocated on the heap? If so, we will have to - // delete it when we destruct ourselves. + /// Generate hash value for our class + virtual u_long hash (void) const; }; #if defined (__ACE_INLINE__) diff --git a/TAO/tao/Base_Connection_Property.inl b/TAO/tao/Base_Connection_Property.inl index db1a946706b..c42f836a828 100644 --- a/TAO/tao/Base_Connection_Property.inl +++ b/TAO/tao/Base_Connection_Property.inl @@ -11,54 +11,15 @@ ACE_INLINE TAO_Base_Connection_Property:: TAO_Base_Connection_Property (TAO_Endpoint *endpoint, CORBA::Boolean flag) - : endpoint_ (endpoint), - endpoint_flag_ (flag) + : TAO_Connection_Descriptor_Interface (endpoint, + flag) { } - -ACE_INLINE TAO_Endpoint * -TAO_Base_Connection_Property::endpoint (void) -{ - return this->endpoint_; -} - - ACE_INLINE TAO_Base_Connection_Property::TAO_Base_Connection_Property ( const TAO_Base_Connection_Property &rhs) { this->endpoint_ = rhs.endpoint_->duplicate (); - this->endpoint_flag_ = 1; -} - -ACE_INLINE void -TAO_Base_Connection_Property::operator= ( - const TAO_Base_Connection_Property &rhs) -{ - if (this == &rhs) - return; - - this->endpoint_ = rhs.endpoint_->duplicate (); - this->endpoint_flag_ = 1; -} - -ACE_INLINE int -TAO_Base_Connection_Property::operator== ( - const TAO_Base_Connection_Property &rhs) const -{ - return this->endpoint_->is_equivalent (rhs.endpoint_); -} - -ACE_INLINE int -TAO_Base_Connection_Property::operator!= ( - const TAO_Base_Connection_Property &rhs) const -{ - return !(this->endpoint_->is_equivalent (rhs.endpoint_)); -} - -ACE_INLINE u_long -TAO_Base_Connection_Property::hash (void) const -{ - return this->endpoint_->hash (); + this->endpoint_from_heap_ = 1; } diff --git a/TAO/tao/Cache_Entries.h b/TAO/tao/Cache_Entries.h index 1752b1c040b..4764049b1fe 100644 --- a/TAO/tao/Cache_Entries.h +++ b/TAO/tao/Cache_Entries.h @@ -18,7 +18,7 @@ #define TAO_CACHE_ENTRIES_H #include "ace/pre.h" -#include "tao/Base_Connection_Property.h" +#include "tao/Connection_Descriptor_Interface.h" #if !defined (ACE_LACKS_PRAGMA_ONCE) # pragma once @@ -108,7 +108,7 @@ public: TAO_Cache_ExtId (void); // Constructor. - TAO_Cache_ExtId (TAO_Base_Connection_Property *prop); + TAO_Cache_ExtId (TAO_Connection_Descriptor_Interface *prop); // Constructor. TAO_Cache_ExtId (const TAO_Cache_ExtId & rhs); @@ -143,13 +143,13 @@ public: // but for the TAO_Connection_Cache_Manager class. // = Accessors - TAO_Base_Connection_Property *property (void) const; + TAO_Connection_Descriptor_Interface *property (void) const; // Get the underlying the property pointer private: // = Data members. - TAO_Base_Connection_Property *connection_property_; + TAO_Connection_Descriptor_Interface *connection_property_; // A property object that we represent. CORBA::Boolean is_delete_; diff --git a/TAO/tao/Cache_Entries.inl b/TAO/tao/Cache_Entries.inl index 2cd3936c7d6..e0bc8b7fa3f 100644 --- a/TAO/tao/Cache_Entries.inl +++ b/TAO/tao/Cache_Entries.inl @@ -81,7 +81,7 @@ TAO_Cache_ExtId::TAO_Cache_ExtId (void) } ACE_INLINE -TAO_Cache_ExtId::TAO_Cache_ExtId (TAO_Base_Connection_Property *prop) +TAO_Cache_ExtId::TAO_Cache_ExtId (TAO_Connection_Descriptor_Interface *prop) : connection_property_ (prop), is_delete_ (0), index_ (0) @@ -119,15 +119,18 @@ TAO_Cache_ExtId::operator= (const TAO_Cache_ExtId &rhs) ACE_INLINE int TAO_Cache_ExtId::operator== (const TAO_Cache_ExtId &rhs) const { - return (*this->connection_property_ == *rhs.connection_property_ && + return (this->connection_property_->is_equivalent (rhs.connection_property_) && this->index_ == rhs.index_); } ACE_INLINE int TAO_Cache_ExtId::operator!= (const TAO_Cache_ExtId &rhs) const { - return (*this->connection_property_ != *rhs.connection_property_ || - this->index_ != rhs.index_); + if (this->connection_property_->is_equivalent (rhs.connection_property_) && + this->index_ == rhs.index_) + return 0; + + return 1; } ACE_INLINE u_long @@ -139,7 +142,7 @@ TAO_Cache_ExtId::hash (void) const ACE_INLINE void TAO_Cache_ExtId::duplicate (void) { - TAO_Base_Connection_Property *prop = 0; + TAO_Connection_Descriptor_Interface *prop = 0; // Make a deep copy prop = this->connection_property_->duplicate (); @@ -173,7 +176,7 @@ TAO_Cache_ExtId::index (CORBA::ULong index) this->index_ = index; } -ACE_INLINE TAO_Base_Connection_Property * +ACE_INLINE TAO_Connection_Descriptor_Interface * TAO_Cache_ExtId::property (void) const { return this->connection_property_; diff --git a/TAO/tao/Connection_Cache_Manager.h b/TAO/tao/Connection_Cache_Manager.h index 888f06528cc..8e8a869d0d3 100644 --- a/TAO/tao/Connection_Cache_Manager.h +++ b/TAO/tao/Connection_Cache_Manager.h @@ -79,13 +79,13 @@ public: virtual ~TAO_Connection_Cache_Manager (void); // Destructor - int cache_handler (TAO_Base_Connection_Property *prop, + int cache_handler (TAO_Connection_Descriptor_Interface *prop, TAO_Connection_Handler *handler); // Add the handler to the cache. The handler has the property // definition based on which caching can be done - int find_handler (TAO_Base_Connection_Property *prop, + int find_handler (TAO_Connection_Descriptor_Interface *prop, TAO_Connection_Handler *&handler); // Check the Connection Cache to check whether the connection exists // in the Cache and return the connection diff --git a/TAO/tao/Connection_Cache_Manager.inl b/TAO/tao/Connection_Cache_Manager.inl index a104b7bf177..5af394f464f 100644 --- a/TAO/tao/Connection_Cache_Manager.inl +++ b/TAO/tao/Connection_Cache_Manager.inl @@ -31,7 +31,7 @@ TAO_Connection_Cache_Manager::find (const TAO_Cache_ExtId &key, ACE_INLINE int TAO_Connection_Cache_Manager:: - cache_handler (TAO_Base_Connection_Property *prop, + cache_handler (TAO_Connection_Descriptor_Interface *prop, TAO_Connection_Handler *handler) { // Compose the ExternId & Intid @@ -45,7 +45,7 @@ TAO_Connection_Cache_Manager:: ACE_INLINE int TAO_Connection_Cache_Manager:: - find_handler (TAO_Base_Connection_Property *prop, + find_handler (TAO_Connection_Descriptor_Interface *prop, TAO_Connection_Handler *&handler) { // Compose the ExternId diff --git a/TAO/tao/Connection_Descriptor_Interface.cpp b/TAO/tao/Connection_Descriptor_Interface.cpp new file mode 100644 index 00000000000..49c391fe025 --- /dev/null +++ b/TAO/tao/Connection_Descriptor_Interface.cpp @@ -0,0 +1,19 @@ +//$Id$ + +#include "tao/Connection_Descriptor_Interface.h" + + + +#if !defined (__ACE_INLINE__) +# include "tao/Connection_Descriptor_Interface.inl" +#endif /* __ACE_INLINE__ */ + +ACE_RCSID(tao, Connection_Descriptor_Interface, "$Id$") + + +TAO_Connection_Descriptor_Interface:: + ~TAO_Connection_Descriptor_Interface (void) +{ + if (this->endpoint_from_heap_) + delete this->endpoint_; +} diff --git a/TAO/tao/Connection_Descriptor_Interface.h b/TAO/tao/Connection_Descriptor_Interface.h new file mode 100644 index 00000000000..6e7e96f3f3f --- /dev/null +++ b/TAO/tao/Connection_Descriptor_Interface.h @@ -0,0 +1,97 @@ +// -*- C++ -*- + +// =================================================================== +/** + * @file Connection_Descriptor_Interface.h + * + * $Id$ + * + * @author DOC Center - Washington University at St. Louis + * @author DOC Laboratory - University of California at Irvine + */ +// =================================================================== + +#ifndef TAO_CONNECTION_DESCRIPTOR_INTERFACE_H +#define TAO_CONNECTION_DESCRIPTOR_INTERFACE_H + +#include "ace/pre.h" + +#include "tao/Endpoint.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +#if defined(_MSC_VER) +#if (_MSC_VER >= 1200) +#pragma warning(push) +#endif /* _MSC_VER >= 1200 */ +#pragma warning(disable:4250) +#endif /* _MSC_VER */ + +/** + * @class TAO_Connection_Descriptor_Interface + * + * @brief An abstract base class for Connection Property + * + * This class provides an abstract interface and holds minimal info + * on which the Connection Caching scheme is based on. Concrete + * connection properties can be got by inheriting from this class and + * implementing the virtual functions. + * Note 1: Additional properties for connection like Qos, + * Priority that the RT folks would need, can be added by + * inheriting from this class and providing the following + * methods. + * 1. duplicate () + * 2. is_equivalent () + * 3. hash () + */ + + +class TAO_Connection_Descriptor_Interface +{ +public: + + /// Destructor + virtual ~TAO_Connection_Descriptor_Interface (void); + + /// This call allocates and copies the contents of this class and + /// returns the pointer + virtual TAO_Connection_Descriptor_Interface *duplicate (void) = 0; + + /// Try to determine if this object is same as the <other_prop>. + virtual CORBA::Boolean is_equivalent ( + const TAO_Connection_Descriptor_Interface *other_prop) = 0; + + /// Generate hash value for our class + virtual u_long hash (void) const = 0; + + /// Return the underlying endpoint object + TAO_Endpoint *endpoint (void); + +protected: + + /// Default Constructor + TAO_Connection_Descriptor_Interface (void); + + /// Constructor + TAO_Connection_Descriptor_Interface (TAO_Endpoint *endpoint, + CORBA::Boolean flag = 0); + + /// The base property of the connection ie. the peer's endpoint + TAO_Endpoint *endpoint_; + + /// Is the endpoint allocated on the heap? If so, we will have to + /// delete it when we destruct ourselves. + CORBA::Boolean endpoint_from_heap_; + +}; + + +#if defined (__ACE_INLINE__) +# include "tao/Connection_Descriptor_Interface.inl" +#endif /* __ACE_INLINE__ */ + +#include "ace/post.h" + +#endif /*TAO_CONNECTION_DESCRIPTOR_INTERFACE_H*/ diff --git a/TAO/tao/Connection_Descriptor_Interface.inl b/TAO/tao/Connection_Descriptor_Interface.inl new file mode 100644 index 00000000000..dd154f6cdc3 --- /dev/null +++ b/TAO/tao/Connection_Descriptor_Interface.inl @@ -0,0 +1,25 @@ +//$Id$ + +ACE_INLINE +TAO_Connection_Descriptor_Interface:: + TAO_Connection_Descriptor_Interface (TAO_Endpoint *endpoint, + CORBA::Boolean flag) + : endpoint_ (endpoint), + endpoint_from_heap_ (flag) +{ +} + +ACE_INLINE +TAO_Connection_Descriptor_Interface:: + TAO_Connection_Descriptor_Interface (void) + : endpoint_ (0), + endpoint_from_heap_ (0) +{ +} + + +ACE_INLINE TAO_Endpoint * +TAO_Connection_Descriptor_Interface::endpoint (void) +{ + return this->endpoint_; +} diff --git a/TAO/tao/IIOP_Connect.cpp b/TAO/tao/IIOP_Connect.cpp index 25ad4319b3c..0b3b47a5901 100644 --- a/TAO/tao/IIOP_Connect.cpp +++ b/TAO/tao/IIOP_Connect.cpp @@ -14,6 +14,7 @@ #include "tao/IIOP_Transport.h" #include "tao/IIOP_Endpoint.h" #include "tao/Connection_Cache_Manager.h" +#include "tao/Base_Connection_Property.h" #if !defined (__ACE_INLINE__) # include "tao/IIOP_Connect.i" diff --git a/TAO/tao/Strategies/SHMIOP_Connect.cpp b/TAO/tao/Strategies/SHMIOP_Connect.cpp index fe44967634e..eb9c003afe3 100644 --- a/TAO/tao/Strategies/SHMIOP_Connect.cpp +++ b/TAO/tao/Strategies/SHMIOP_Connect.cpp @@ -13,6 +13,7 @@ #include "tao/GIOP_Message_Acceptors.h" #include "tao/GIOP_Message_Lite.h" #include "tao/Server_Strategy_Factory.h" +#include "tao/Base_Connection_Property.h" #include "SHMIOP_Endpoint.h" #if !defined (__ACE_INLINE__) diff --git a/TAO/tao/Strategies/SHMIOP_Connector.cpp b/TAO/tao/Strategies/SHMIOP_Connector.cpp index e51d6dca207..9b179fbf700 100644 --- a/TAO/tao/Strategies/SHMIOP_Connector.cpp +++ b/TAO/tao/Strategies/SHMIOP_Connector.cpp @@ -7,6 +7,7 @@ #include "SHMIOP_Profile.h" #include "tao/debug.h" +#include "tao/Base_Connection_Property.h" #include "tao/ORB_Core.h" #include "tao/Client_Strategy_Factory.h" #include "tao/Environment.h" diff --git a/TAO/tao/Strategies/UIOP_Endpoint.h b/TAO/tao/Strategies/UIOP_Endpoint.h index f8f27f02ac7..031b6bd9193 100644 --- a/TAO/tao/Strategies/UIOP_Endpoint.h +++ b/TAO/tao/Strategies/UIOP_Endpoint.h @@ -68,7 +68,7 @@ public: virtual TAO_Endpoint *duplicate (void); // Returns a copy of <this> - CORBA::Boolean is_equivalent (const TAO_Endpoint *other_endpoint); + CORBA::Boolean is_equivalent (const TAO_Endpoint *other_endpoint); // Return true if this endpoint is equivalent to <other_endpoint>. Two // endpoints are equivalent iff their rendezvous points are the same. diff --git a/TAO/tao/TAO.dsp b/TAO/tao/TAO.dsp index c9510a92f04..841b1598597 100644 --- a/TAO/tao/TAO.dsp +++ b/TAO/tao/TAO.dsp @@ -594,6 +594,25 @@ SOURCE=.\Connection_Cache_Manager.cpp # End Source File
# Begin Source File
+SOURCE=.\Connection_Descriptor_Interface.cpp
+
+!IF "$(CFG)" == "TAO DLL - Win32 Alpha Release"
+
+!ELSEIF "$(CFG)" == "TAO DLL - Win32 Alpha Debug"
+
+!ELSEIF "$(CFG)" == "TAO DLL - Win32 MFC Release"
+
+!ELSEIF "$(CFG)" == "TAO DLL - Win32 MFC Debug"
+
+!ELSEIF "$(CFG)" == "TAO DLL - Win32 Release"
+
+!ELSEIF "$(CFG)" == "TAO DLL - Win32 Debug"
+
+!ENDIF
+
+# End Source File
+# Begin Source File
+
SOURCE=.\Connection_Handler.cpp
!IF "$(CFG)" == "TAO DLL - Win32 Alpha Release"
@@ -3357,6 +3376,10 @@ SOURCE=.\Connection_Cache_Manager.h # End Source File
# Begin Source File
+SOURCE=.\Connection_Descriptor_Interface.h
+# End Source File
+# Begin Source File
+
SOURCE=.\Connection_Handler.h
# End Source File
# Begin Source File
@@ -4057,6 +4080,10 @@ SOURCE=.\Connection_Cache_Manager.i # End Source File
# Begin Source File
+SOURCE=.\Connection_Descriptor_Interface.inl
+# End Source File
+# Begin Source File
+
SOURCE=.\Connection_Handler.i
# End Source File
# Begin Source File
diff --git a/TAO/tao/TAO_Static.dsp b/TAO/tao/TAO_Static.dsp index 34cbe11158c..a061186ad94 100644 --- a/TAO/tao/TAO_Static.dsp +++ b/TAO/tao/TAO_Static.dsp @@ -163,6 +163,10 @@ SOURCE=.\Connection_Cache_Manager.h # End Source File
# Begin Source File
+SOURCE=.\Connection_Descriptor_Interface.h
+# End Source File
+# Begin Source File
+
SOURCE=.\Connection_Handler.h
# End Source File
# Begin Source File
@@ -855,6 +859,10 @@ SOURCE=.\Connection_Cache_Manager.i # End Source File
# Begin Source File
+SOURCE=.\Connection_Descriptor_Interface.inl
+# End Source File
+# Begin Source File
+
SOURCE=.\Connection_Handler.i
# End Source File
# Begin Source File
@@ -1427,6 +1435,10 @@ SOURCE=.\Connection_Cache_Manager.cpp # End Source File
# Begin Source File
+SOURCE=.\Connection_Descriptor_Interface.cpp
+# End Source File
+# Begin Source File
+
SOURCE=.\Connection_Handler.cpp
# End Source File
# Begin Source File
|