diff options
Diffstat (limited to 'Swift/Controllers/ScreenSharing/ScreenSharingOverviewImpl.h')
-rw-r--r-- | Swift/Controllers/ScreenSharing/ScreenSharingOverviewImpl.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/Swift/Controllers/ScreenSharing/ScreenSharingOverviewImpl.h b/Swift/Controllers/ScreenSharing/ScreenSharingOverviewImpl.h new file mode 100644 index 0000000..ad5871d --- /dev/null +++ b/Swift/Controllers/ScreenSharing/ScreenSharingOverviewImpl.h @@ -0,0 +1,40 @@ +/* + * Copyright (c) 2012 Yoann Blein + * Licensed under the simplified BSD license. + * See Documentation/Licenses/BSD-simplified.txt for more information. + */ + +#pragma once + +#include <boost/shared_ptr.hpp> + +#include <vector> + +#include "ScreenSharingOverview.h" + +namespace Swift { + class ScreenSharingManager; + class IncomingScreenSharing; + class TimerFactory; + class DesktopScreenGrabber; + class RemoteScreenWindowFactory; + + class ScreenSharingOverviewImpl : public ScreenSharingOverview { + public: + ScreenSharingOverviewImpl(ScreenSharingManager* screenSharingManager, RemoteScreenWindowFactory* remoteScreenWindowFactory, TimerFactory* timerFactory); + virtual ~ScreenSharingOverviewImpl(); + + virtual void createOugoingScreenSharing(const JID& to); + + private: + void handleIncomingScreenSharing(boost::shared_ptr<IncomingScreenSharing> incomingScreenSharing); + + private: + ScreenSharingManager* screenSharingManager; + RemoteScreenWindowFactory* remoteScreenWindowFactory; + TimerFactory* timerFactory; + + DesktopScreenGrabber* screenGrabber; + std::vector<ScreenSharingController*> controllers; + }; +} |