diff options
author | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-11-01 22:17:39 +0000 |
---|---|---|
committer | coryan <coryan@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2000-11-01 22:17:39 +0000 |
commit | 4cdff4b3e2dbc73b00e671ef638d71d6d854e0ac (patch) | |
tree | 97236ece363cff48fd287c780db4290da39b02cb /ace/Parse_Node.h | |
parent | 7b6368ec78831d127f38eb7b630c21f98faf6a83 (diff) | |
download | ATCD-4cdff4b3e2dbc73b00e671ef638d71d6d854e0ac.tar.gz |
ChangeLogTag:Wed Nov 1 14:11:48 2000 Carlos O'Ryan <coryan@uci.edu>
Diffstat (limited to 'ace/Parse_Node.h')
-rw-r--r-- | ace/Parse_Node.h | 191 |
1 files changed, 113 insertions, 78 deletions
diff --git a/ace/Parse_Node.h b/ace/Parse_Node.h index c3f98b13320..718cb3185d4 100644 --- a/ace/Parse_Node.h +++ b/ace/Parse_Node.h @@ -1,18 +1,15 @@ /* -*- C++ -*- */ -// $Id$ - -// ============================================================================ -// -// = LIBRARY -// ace -// -// = FILENAME -// Parse_Node.h -// -// = AUTHOR -// Doug Schmidt -// -// ============================================================================ + +//============================================================================= +/** + * @file Parse_Node.h + * + * $Id$ + * + * @author Doug Schmidt + */ +//============================================================================= + #ifndef ACE_PARSE_NODE_H #define ACE_PARSE_NODE_H @@ -24,11 +21,14 @@ # pragma once #endif /* ACE_LACKS_PRAGMA_ONCE */ +/** + * @class ACE_Parse_Node + * + * @brief Provide the base of the object hierarchy that defines the parse + * tree of Service Nodes. + */ class ACE_Export ACE_Parse_Node { - // = TITLE - // Provide the base of the object hierarchy that defines the parse - // tree of Service Nodes. public: ACE_Parse_Node (void); ACE_EXPLICIT ACE_Parse_Node (const ACE_TCHAR *name); @@ -41,72 +41,84 @@ public: const ACE_TCHAR *name (void) const; void print (void) const; + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. private: const ACE_TCHAR *name_; ACE_Parse_Node *next_; }; +/** + * @class ACE_Suspend_Node + * + * @brief Suspend a Service Node. + */ class ACE_Export ACE_Suspend_Node : public ACE_Parse_Node { - // = TITLE - // Suspend a Service Node. public: ACE_Suspend_Node (const ACE_TCHAR *name); ~ACE_Suspend_Node (void); virtual void apply (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. }; +/** + * @class ACE_Resume_Node + * + * @brief Resume a Service Node. + */ class ACE_Export ACE_Resume_Node : public ACE_Parse_Node { - // = TITLE - // Resume a Service Node. public: ACE_Resume_Node (const ACE_TCHAR *name); ~ACE_Resume_Node (void); virtual void apply (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. }; +/** + * @class ACE_Remove_Node + * + * @brief Remove a Service Node. + */ class ACE_Export ACE_Remove_Node : public ACE_Parse_Node { - // = TITLE - // Remove a Service Node. public: ACE_Remove_Node (const ACE_TCHAR *name); ~ACE_Remove_Node (void); virtual void apply (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. }; +/** + * @class ACE_Static_Node + * + * @brief Handle a statically linked node. + */ class ACE_Export ACE_Static_Node : public ACE_Parse_Node { - // = TITLE - // Handle a statically linked node. public: ACE_Static_Node (const ACE_TCHAR *name, ACE_TCHAR *params = 0); virtual ~ACE_Static_Node (void); @@ -115,21 +127,24 @@ public: virtual const ACE_Service_Type *record (void) const; ACE_TCHAR *parameters (void) const; + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. private: + /// "Command-line" parameters. ACE_TCHAR *parameters_; - // "Command-line" parameters. }; +/** + * @class ACE_Dynamic_Node + * + * @brief Handle a dynamically linked node. + */ class ACE_Export ACE_Dynamic_Node : public ACE_Static_Node { - // = TITLE - // Handle a dynamically linked node. public: ACE_Dynamic_Node (const ACE_Service_Type *, ACE_TCHAR *params); virtual ~ACE_Dynamic_Node (void); @@ -137,43 +152,49 @@ public: virtual const ACE_Service_Type *record (void) const; virtual void apply (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. private: + /// Pointer to a descriptor that describes this node. const ACE_Service_Type *record_; - // Pointer to a descriptor that describes this node. }; +/** + * @class ACE_Stream_Node + * + * @brief Handle a Stream. + */ class ACE_Export ACE_Stream_Node : public ACE_Parse_Node { - // = TITLE - // Handle a Stream. public: ACE_Stream_Node (const ACE_Static_Node *, const ACE_Parse_Node *); virtual ~ACE_Stream_Node (void); virtual void apply (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. private: + /// Linked list of modules that are part of the stream. const ACE_Static_Node *node_; const ACE_Parse_Node *mods_; - // Linked list of modules that are part of the stream. }; +/** + * @class ACE_Location_Node + * + * @brief Keep track of where a shared library is located. + */ class ACE_Export ACE_Location_Node { - // = TITLE - // Keep track of where a shared library is located. public: ACE_Location_Node (void); virtual void *symbol (ACE_Service_Object_Exterminator * = 0) = 0; @@ -186,111 +207,125 @@ public: virtual ~ACE_Location_Node (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. protected: ACE_SHLIB_HANDLE open_handle (void); + /// Pathname to the shared library we are working on. const ACE_TCHAR *pathname_; - // Pathname to the shared library we are working on. + /** + * Flag indicating whether the Service_Object generated by this + * Location Node should be deleted or not + * (ACE_Service_Type::DELETE_OBJ.) + */ int must_delete_; - // Flag indicating whether the Service_Object generated by this - // Location Node should be deleted or not - // (ACE_Service_Type::DELETE_OBJ.) + /// Handle to the open shared library. ACE_SHLIB_HANDLE handle_; - // Handle to the open shared library. + /// Symbol that we've obtained from the shared library. void *symbol_; - // Symbol that we've obtained from the shared library. }; +/** + * @class ACE_Object_Node + * + * @brief Keeps track of the symbol name for a shared object. + */ class ACE_Export ACE_Object_Node : public ACE_Location_Node { - // = TITLE - // Keeps track of the symbol name for a shared object. public: ACE_Object_Node (const ACE_TCHAR *pathname, const ACE_TCHAR *obj_name); virtual void *symbol (ACE_Service_Object_Exterminator * = 0); virtual ~ACE_Object_Node (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. private: + /// Name of the object that we're parsing. const ACE_TCHAR *object_name_; - // Name of the object that we're parsing. }; +/** + * @class ACE_Function_Node + * + * @brief Keeps track of the symbol name of for a shared function. + */ class ACE_Export ACE_Function_Node : public ACE_Location_Node { - // = TITLE - // Keeps track of the symbol name of for a shared function. public: ACE_Function_Node (const ACE_TCHAR *pathname, const ACE_TCHAR *func_name); virtual void *symbol (ACE_Service_Object_Exterminator *gobbler = 0); virtual ~ACE_Function_Node (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. private: + /// Name of the function that we're parsing. const ACE_TCHAR *function_name_; - // Name of the function that we're parsing. }; +/** + * @class ACE_Dummy_Node + * + * @brief I forget why this is here... ;-) + */ class ACE_Export ACE_Dummy_Node : public ACE_Parse_Node { - // = TITLE - // I forget why this is here... ;-) public: ACE_Dummy_Node (const ACE_Static_Node *, const ACE_Parse_Node *); ~ACE_Dummy_Node (void); virtual void apply (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. private: + /// Linked list of modules that we're dealing with. const ACE_Static_Node *node_; const ACE_Parse_Node *mods_; - // Linked list of modules that we're dealing with. }; +/** + * @class ACE_Static_Function_Node + * + * @brief Keeps track of the symbol name for a function that is not + * linked in from a DLL, but is statically linked with the + * application. + */ class ACE_Export ACE_Static_Function_Node : public ACE_Location_Node { - // = TITLE - // Keeps track of the symbol name for a function that is not - // linked in from a DLL, but is statically linked with the - // application. public: ACE_EXPLICIT ACE_Static_Function_Node (const ACE_TCHAR *func_name); virtual void *symbol (ACE_Service_Object_Exterminator * = 0); virtual ~ACE_Static_Function_Node (void); + /// Dump the state of an object. void dump (void) const; - // Dump the state of an object. + /// Declare the dynamic allocation hooks. ACE_ALLOC_HOOK_DECLARE; - // Declare the dynamic allocation hooks. private: + /// Name of the function that we're parsing. const ACE_TCHAR *function_name_; - // Name of the function that we're parsing. }; #if defined (__ACE_INLINE__) |