Public Types | Public Member Functions | Private Attributes

ACE_RMCast::Acknowledge::Queue Struct Reference

Inheritance diagram for ACE_RMCast::Acknowledge::Queue:
Inheritance graph
[legend]
Collaboration diagram for ACE_RMCast::Acknowledge::Queue:
Collaboration graph
[legend]

List of all members.

Public Types

typedef ACE_Hash_Map_Manager
< u64, Descr, ACE_Null_Mutex
Base

Public Member Functions

 Queue ()
 Queue (u64 sn)
 Queue (Queue const &q)
int bind (u64 sn, Descr const &d)
int rebind (u64 sn, Descr const &d)
int unbind (u64 sn)
u64 sn () const
void sn (u64 sn)
u64 max_sn () const

Private Attributes

u64 sn_
u64 max_sn_

Detailed Description

Definition at line 123 of file Acknowledge.h.


Member Typedef Documentation

Definition at line 125 of file Acknowledge.h.


Constructor & Destructor Documentation

ACE_RMCast::Acknowledge::Queue::Queue (  )  [inline]

Definition at line 129 of file Acknowledge.h.

ACE_RMCast::Acknowledge::Queue::Queue ( u64  sn  )  [inline]

Definition at line 134 of file Acknowledge.h.

ACE_RMCast::Acknowledge::Queue::Queue ( Queue const &  q  )  [inline]

Definition at line 139 of file Acknowledge.h.

        : Base (ACE_RMCAST_DEFAULT_MAP_SIZE), sn_ (q.sn_), max_sn_ (sn_)
      {
        for (Queue::const_iterator i (q), e (q, 1); i != e; ++i)
        {
          bind ((*i).ext_id_, (*i).int_id_);
        }
      }


Member Function Documentation

int ACE_RMCast::Acknowledge::Queue::bind ( u64  sn,
Descr const &  d 
) [inline]

Definition at line 150 of file Acknowledge.h.

      {
        int r (Base::bind (sn, d));

        if (r == 0 && sn > max_sn_) max_sn_ = sn;

        return r;
      }

u64 ACE_RMCast::Acknowledge::Queue::max_sn (  )  const [inline]

Definition at line 199 of file Acknowledge.h.

      {
        if (current_size () == 0) return sn_;

        return max_sn_;
      }

int ACE_RMCast::Acknowledge::Queue::rebind ( u64  sn,
Descr const &  d 
) [inline]

Definition at line 160 of file Acknowledge.h.

      {
        int r (Base::rebind (sn, d));

        if (r == 0 && sn > max_sn_) max_sn_ = sn;

        return r;
      }

u64 ACE_RMCast::Acknowledge::Queue::sn (  )  const [inline]

Definition at line 187 of file Acknowledge.h.

      {
        return sn_;
      }

void ACE_RMCast::Acknowledge::Queue::sn ( u64  sn  )  [inline]

Definition at line 193 of file Acknowledge.h.

      {
        sn_ = sn;
      }

int ACE_RMCast::Acknowledge::Queue::unbind ( u64  sn  )  [inline]

Definition at line 170 of file Acknowledge.h.

      {
        int r (Base::unbind (sn));

        if (r == 0 && sn == max_sn_)
        {
          for (--max_sn_; max_sn_ >= sn_; --max_sn_)
          {
            if (find (max_sn_) == 0) break;
          }
        }

        return r;
      }


Member Data Documentation

Definition at line 207 of file Acknowledge.h.

Definition at line 207 of file Acknowledge.h.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Defines