# XMPP::Roster Class Reference

`#include <xmpp_roster.h>`

Inheritance diagram for XMPP::Roster:

List of all members.

## Public Types

| None
| To
| From
| Both
| Unknown = 999
enum | ItemType { None, To, From, Both, Unknown = 999 }

## Public Member Functions

| PLIST (ItemList, Item)
| Roster (XMPP::C2S::StreamHandler *handler=0)
| ~Roster ()
const ItemList & | GetItems () const
virtual Item * | FindItem (const PString &jid)
virtual PBoolean | SetItem (Item *item, PBoolean localOnly=false)
virtual PBoolean | RemoveItem (const PString &jid, PBoolean localOnly=false)
virtual PBoolean | RemoveItem (Item *item, PBoolean localOnly=false)
virtual void | Attach (XMPP::C2S::StreamHandler *handler)
virtual void | Detach ()
virtual void | Refresh (PBoolean sendPresence=true)
virtual PNotifierList & | ItemChangedHandlers ()
virtual PNotifierList & | RosterChangedHandlers ()

## Protected Member Functions

| PDECLARE_NOTIFIER (XMPP::C2S::StreamHandler, Roster, OnSessionEstablished)
| PDECLARE_NOTIFIER (XMPP::C2S::StreamHandler, Roster, OnSessionReleased)
| PDECLARE_NOTIFIER (XMPP::Presence, Roster, OnPresence)
| PDECLARE_NOTIFIER (XMPP::IQ, Roster, OnIQ)

## Protected Attributes

ItemList | m_Items
XMPP::C2S::StreamHandler * | m_Handler
PNotifierList | m_ItemChangedHandlers
PNotifierList | m_RosterChangedHandlers

## Classes

class | Item

## Member Enumeration Documentation

enum XMPP::Roster::ItemType

Enumerator:

  None |
  To |
  From |
  Both |
  Unknown |

## Constructor & Destructor Documentation

XMPP::Roster::Roster | ( | XMPP::C2S::StreamHandler * | handler = `0` | ) |

XMPP::Roster::~Roster | ( |  | ) |

## Member Function Documentation

virtual void XMPP::Roster::Attach | ( | XMPP::C2S::StreamHandler * | handler | ) | `[virtual]`

virtual void XMPP::Roster::Detach | ( |  | ) | `[virtual]`

virtual Item* XMPP::Roster::FindItem | ( | const PString & | jid | ) | `[virtual]`

const ItemList& XMPP::Roster::GetItems | ( |  | ) | const`[inline]`

virtual PNotifierList& XMPP::Roster::ItemChangedHandlers | ( |  | ) | `[inline, virtual]`

XMPP::Roster::PDECLARE_NOTIFIER | ( | XMPP::IQ | ,
|  | Roster | ,
|  | OnIQ |  |
| ) |  |  | `[protected]`

XMPP::Roster::PDECLARE_NOTIFIER | ( | XMPP::Presence | ,
|  | Roster | ,
|  | OnPresence |  |
| ) |  |  | `[protected]`

XMPP::Roster::PDECLARE_NOTIFIER | ( | XMPP::C2S::StreamHandler | ,
|  | Roster | ,
|  | OnSessionReleased |  |
| ) |  |  | `[protected]`

XMPP::Roster::PDECLARE_NOTIFIER | ( | XMPP::C2S::StreamHandler | ,
|  | Roster | ,
|  | OnSessionEstablished |  |
| ) |  |  | `[protected]`

XMPP::Roster::PLIST | ( | ItemList | ,
|  | Item |  |
| ) |  |  |

virtual void XMPP::Roster::Refresh | ( | PBoolean | sendPresence = `true` | ) | `[virtual]`

virtual PBoolean XMPP::Roster::RemoveItem | ( | Item * | item,
|  | PBoolean | localOnly = `false` |
| ) |  |  | `[virtual]`

virtual PBoolean XMPP::Roster::RemoveItem | ( | const PString & | jid,
|  | PBoolean | localOnly = `false` |
| ) |  |  | `[virtual]`

virtual PNotifierList& XMPP::Roster::RosterChangedHandlers | ( |  | ) | `[inline, virtual]`

virtual PBoolean XMPP::Roster::SetItem | ( | Item * | item,
|  | PBoolean | localOnly = `false` |
| ) |  |  | `[virtual]`

## Member Data Documentation

XMPP::C2S::StreamHandler* XMPP::Roster::m_Handler `[protected]`

PNotifierList XMPP::Roster::m_ItemChangedHandlers `[protected]`

ItemList XMPP::Roster::m_Items `[protected]`

PNotifierList XMPP::Roster::m_RosterChangedHandlers `[protected]`

The documentation for this class was generated from the following file:

- xmpp_roster.h