## NAME

ACE_Refcounted_Hash_Recyclable

## SYNOPSIS

    #include <ace/ACE_Strategies_T.h>

    template<class T>
    class ACE_Refcounted_Hash_Recyclable :
      public ACE_Refcountable,
      public ACE_Hashable,
      public ACE_Recyclable
    {
      public:
        ACE_Refcounted_Hash_Recyclable (void);
        ACE_Refcounted_Hash_Recyclable (
            const T &t,
            int refcount = 0,
            ACE_Recyclable_State state = ACE_RECYCLABLE_UNKNOWN
            );
        virtual ~ACE_Refcounted_Hash_Recyclable (void);
        int operator== (
            const ACE_Refcounted_Hash_Recyclable<T> &rhs
            ) const;
        int operator!= (
            const ACE_Refcounted_Hash_Recyclable<T> &rhs
            ) const;
        T &subject ();
      protected:
        u_long hash_i (void) const;
        T t_;
    };

## PUBLIC MEMBERS

    ACE_Refcounted_Hash_Recyclable (void);

Default constructor.

    ACE_Refcounted_Hash_Recyclable (
        const T &t,
        int refcount = 0,
        ACE_Recyclable_State state = ACE_RECYCLABLE_UNKNOWN
        );

Constructor.

    virtual ~ACE_Refcounted_Hash_Recyclable (void);

Destructor

    int operator== (const ACE_Refcounted_Hash_Recyclable<T> &rhs) const;

    int operator!= (const ACE_Refcounted_Hash_Recyclable<T> &rhs) const;

Compares two instances.

    T &subject ();

## PROTECTED MEMBERS

    u_long hash_i (void) const;

Computes and returns hash value.

    T t_;

## AUTHOR

Doug Schmidt

## LIBRARY

ace