• Main Page
  • Classes
  • Files
  • File List

Swiften/Presence/PayloadAddingPresenceSender.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/Presence/PresenceSender.h>
00011 #include <Swiften/Elements/Payload.h>
00012 
00013 namespace Swift {
00014   class StanzaChannel;
00015 
00021   class SWIFTEN_API PayloadAddingPresenceSender : public PresenceSender {
00022     public:
00023       PayloadAddingPresenceSender(PresenceSender*);
00024 
00025       void sendPresence(boost::shared_ptr<Presence>);
00026       bool isAvailable() const;
00027 
00034       void setPayload(boost::shared_ptr<Payload>);
00035 
00042       void reset();
00043 
00044     private:
00045       boost::shared_ptr<Presence> lastSentPresence;
00046       PresenceSender* sender;
00047       boost::shared_ptr<Payload> payload;
00048   };
00049 }

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