• Main Page
  • Classes
  • Files
  • File List

Swiften/Disco/ClientDiscoManager.h

00001 /*
00002  * Copyright (c) 2010 Remko Tronçon
00003  * Licensed under the GNU General Public License v3.
00004  * See Documentation/Licenses/GPLv3.txt for more information.
00005  */
00006 
00007 #pragma once
00008 
00009 #include <Swiften/Base/API.h>
00010 #include <Swiften/Elements/CapsInfo.h>
00011 #include <Swiften/Elements/DiscoInfo.h>
00012 #include <Swiften/Presence/PayloadAddingPresenceSender.h>
00013 
00014 namespace Swift {
00015   class IQRouter;
00016   class DiscoInfoResponder;
00017   class PayloadAddingPresenceSender;
00018   class PresenceSender;
00019 
00030   class SWIFTEN_API ClientDiscoManager {
00031     public:
00039       ClientDiscoManager(IQRouter* iqRouter, PresenceSender* presenceSender);
00040       ~ClientDiscoManager();
00041 
00045       void setCapsNode(const std::string& node);
00046 
00050       void setDiscoInfo(const DiscoInfo& info);
00051 
00058       PresenceSender* getPresenceSender() const {
00059         return presenceSender;
00060       }
00061 
00067       void handleConnected();
00068 
00069     private:
00070       PayloadAddingPresenceSender* presenceSender;
00071       DiscoInfoResponder* discoInfoResponder;
00072       std::string capsNode;
00073       CapsInfo::ref capsInfo;
00074   };
00075 }

Generated on Fri Oct 12 2012 21:00:19 for Swiften by  doxygen 1.7.1