#include <Object_Manager_Base.h>
Public Types | |
enum | Object_Manager_State { OBJ_MAN_UNINITIALIZED = 0, OBJ_MAN_INITIALIZING, OBJ_MAN_INITIALIZED, OBJ_MAN_SHUTTING_DOWN, OBJ_MAN_SHUT_DOWN } |
Public Member Functions | |
virtual int | init (void)=0 |
virtual int | fini (void)=0 |
Protected Member Functions | |
ACE_Object_Manager_Base (void) | |
Default constructor. | |
virtual | ~ACE_Object_Manager_Base (void) |
Destructor. | |
int | starting_up_i (void) |
int | shutting_down_i (void) |
Protected Attributes | |
Object_Manager_State | object_manager_state_ |
State of the Object_Manager;. | |
bool | dynamically_allocated_ |
ACE_Object_Manager_Base * | next_ |
Link to next Object_Manager, for chaining. | |
Private Member Functions | |
ACE_Object_Manager_Base (const ACE_Object_Manager_Base &) | |
ACE_Object_Manager_Base & | operator= (const ACE_Object_Manager_Base &) |
Encapsulates the most useful ACE_Object_Manager data structures.
ACE_Object_Manager_Base::ACE_Object_Manager_Base | ( | void | ) | [protected] |
Default constructor.
ACE_Object_Manager_Base::~ACE_Object_Manager_Base | ( | void | ) | [protected, virtual] |
Destructor.
ACE_Object_Manager_Base::ACE_Object_Manager_Base | ( | const ACE_Object_Manager_Base & | ) | [private] |
virtual int ACE_Object_Manager_Base::fini | ( | void | ) | [pure virtual] |
Explicitly destroy. Returns 0 on success, -1 on failure because the number of fini () calls hasn't reached the number of init () calls, or 1 if it had already been called.
Implemented in ACE_Object_Manager, and ACE_OS_Object_Manager.
virtual int ACE_Object_Manager_Base::init | ( | void | ) | [pure virtual] |
Explicitly initialize. Returns 0 on success, -1 on failure due to dynamic allocation failure (in which case errno is set to ENOMEM), or 1 if it had already been called.
Implemented in ACE_Object_Manager, and ACE_OS_Object_Manager.
ACE_Object_Manager_Base& ACE_Object_Manager_Base::operator= | ( | const ACE_Object_Manager_Base & | ) | [private] |
int ACE_Object_Manager_Base::shutting_down_i | ( | void | ) | [protected] |
Returns 1 after ACE_Object_Manager_Base has been destroyed. This flag can be used to determine if the program is in the midst of destroying static objects. (Note that the program might destroy some static objects before this flag can return 1, if ACE_HAS_NONSTATIC_OBJECT_MANAGER is not defined.)
int ACE_Object_Manager_Base::starting_up_i | ( | void | ) | [protected] |
Returns 1 before ACE_Object_Manager_Base has been constructed. This flag can be used to determine if the program is constructing static objects. If no static object spawns any threads, the program will be single-threaded when this flag returns 1. (Note that the program still might construct some static objects when this flag returns 0, if ACE_HAS_NONSTATIC_OBJECT_MANAGER is not defined.)
bool ACE_Object_Manager_Base::dynamically_allocated_ [protected] |
Flag indicating whether the ACE_Object_Manager was dynamically allocated by ACE. (If is was dynamically allocated by the application, then the application is responsible for destroying it.)
ACE_Object_Manager_Base* ACE_Object_Manager_Base::next_ [protected] |
Link to next Object_Manager, for chaining.
State of the Object_Manager;.