gloox
1.0
Main Page
Related Pages
Namespaces
Classes
Files
File List
src
uniquemucroom.h
1
/*
2
Copyright (c) 2007-2009 by Jakob Schroeter <js@camaya.net>
3
This file is part of the gloox library. http://camaya.net/gloox
4
5
This software is distributed under a license. The full license
6
agreement can be found in the file LICENSE in this distribution.
7
This software may not be copied, modified, sold or distributed
8
other than expressed in the named license agreement.
9
10
This software is distributed without any warranty.
11
*/
12
13
14
15
#ifndef UNIQUEMUCROOM_H__
16
#define UNIQUEMUCROOM_H__
17
18
#include "instantmucroom.h"
19
#include "stanzaextension.h"
20
21
namespace
gloox
22
{
23
34
class
GLOOX_API
UniqueMUCRoom
:
public
InstantMUCRoom
35
{
36
public
:
48
UniqueMUCRoom
(
ClientBase
* parent,
const
JID
& nick,
MUCRoomHandler
* mrh );
49
53
virtual
~
UniqueMUCRoom
();
54
55
// reimplemented from MUCRoom
56
virtual
void
join();
57
58
private
:
59
#ifdef UNIQUEMUCROOM_TEST
60
public
:
61
#endif
62
68
class
Unique :
public
StanzaExtension
69
{
70
public
:
75
Unique(
const
Tag
* tag = 0 );
76
80
virtual
~Unique() {}
81
86
const
std::string& name()
const
{
return
m_name; }
87
88
// reimplemented from StanzaExtension
89
virtual
const
std::string& filterString()
const
;
90
91
// reimplemented from StanzaExtension
92
virtual
StanzaExtension
* newInstance(
const
Tag
* tag )
const
93
{
94
return
new
Unique( tag );
95
}
96
97
// reimplemented from StanzaExtension
98
virtual
Tag
* tag()
const
;
99
100
// reimplemented from StanzaExtension
101
virtual
StanzaExtension
* clone()
const
102
{
103
return
new
Unique( *
this
);
104
}
105
106
private
:
107
std::string m_name;
108
};
109
110
// reimplemented from MUCRoom (IqHandler)
111
void
handleIqID(
const
IQ
& iq,
int
context );
112
113
};
114
115
}
116
117
#endif // UNIQUEMUCROOM_H__
Generated on Thu Jun 27 2013 13:02:36 for gloox by
1.8.1.2