## NAME

ACE_Service_Type - Keeps track of information related to the various `ACE_Service_Type_Impl` subclasses.

## SYNOPSIS

    #include <ace/Service_Object.h>

    class ACE_Service_Type
    {
      public:
        enum{ DELETE_OBJ = 1, DELETE_THIS = 2 };
        ACE_Service_Type (
            const ASYS_TCHAR *n,
            ACE_Service_Type_Impl *o,
            const ACE_SHLIB_HANDLE handle,
            int active
            );
        ~ACE_Service_Type (void);
        const ASYS_TCHAR *name (void) const;
        void name (const ASYS_TCHAR *);
        const char *chname (void) const;
        const ACE_Service_Type_Impl *type (void) const;
        void type (const ACE_Service_Type_Impl *, int active = 1);
        ACE_SHLIB_HANDLE handle (void) const;
        void handle (const ACE_SHLIB_HANDLE);
        void suspend (void) const;
        void resume (void) const;
        int active (void) const;
        void active (int);
        void fini (void);
        int fini_called (void) const;
        void dump (void) const;
        ACE_ALLOC_HOOK_DECLARE;
      private:
        const ASYS_TCHAR *name_;
        char *chname_;
        const ACE_Service_Type_Impl *type_;
        ACE_SHLIB_HANDLE handle_;
        int active_;
        int fini_already_called_;
    };

## DESCRIPTION

This class acts as the interface of the "Bridge" pattern.

## Initialization and termination methods.

    ACE_Service_Type (
        const ASYS_TCHAR *n,
        ACE_Service_Type_Impl *o,
        const ACE_SHLIB_HANDLE handle,
        int active
        );

    ~ACE_Service_Type (void);

    const ASYS_TCHAR *name (void) const;

    void name (const ASYS_TCHAR *);

    const char *chname (void) const;

    const ACE_Service_Type_Impl *type (void) const;

    void type (const ACE_Service_Type_Impl *, int active = 1);

    ACE_SHLIB_HANDLE handle (void) const;

    void handle (const ACE_SHLIB_HANDLE);

    void suspend (void) const;

    void resume (void) const;

    int active (void) const;

    void active (int);

    void fini (void);

Calls fini() on `type_`

    int fini_called (void) const;

Check if the service has been fini'ed.

    void dump (void) const;

Dump the state of an object.

    ACE_ALLOC_HOOK_DECLARE;

Declare the dynamic allocation hooks.

## AUTHOR

Doug Schmidt

## LIBRARY

ace