aboutsummaryrefslogtreecommitdiff
path: root/nxcompshad/Manager.cpp
diff options
context:
space:
mode:
authorMike Gabriel <mike.gabriel@das-netzwerkteam.de>2017-04-25 15:27:17 +0200
committerMike Gabriel <mike.gabriel@das-netzwerkteam.de>2017-07-13 11:38:42 +0200
commit76b48676844bc7aa0511b8371ef6347b2e8ad545 (patch)
tree6c81a895407116ca2e3f1522c81e5d1d7122fd01 /nxcompshad/Manager.cpp
parent622360ea2ec9cde354aece445e4b9fb4b7664eea (diff)
downloadnx-libs-76b48676844bc7aa0511b8371ef6347b2e8ad545.tar.gz
nx-libs-76b48676844bc7aa0511b8371ef6347b2e8ad545.tar.bz2
nx-libs-76b48676844bc7aa0511b8371ef6347b2e8ad545.zip
nxcompshad: Switch to autoreconf.
Diffstat (limited to 'nxcompshad/Manager.cpp')
-rw-r--r--nxcompshad/Manager.cpp260
1 files changed, 0 insertions, 260 deletions
diff --git a/nxcompshad/Manager.cpp b/nxcompshad/Manager.cpp
deleted file mode 100644
index 3bb36c13f..000000000
--- a/nxcompshad/Manager.cpp
+++ /dev/null
@@ -1,260 +0,0 @@
-/**************************************************************************/
-/* */
-/* Copyright (c) 2001, 2011 NoMachine (http://www.nomachine.com) */
-/* Copyright (c) 2008-2014 Oleksandr Shneyder <o.shneyder@phoca-gmbh.de> */
-/* Copyright (c) 2014-2016 Ulrich Sibiller <uli42@gmx.de> */
-/* Copyright (c) 2014-2016 Mihai Moldovan <ionic@ionic.de> */
-/* Copyright (c) 2011-2016 Mike Gabriel <mike.gabriel@das-netzwerkteam.de>*/
-/* Copyright (c) 2015-2016 Qindel Group (http://www.qindel.com) */
-/* */
-/* NXCOMPSHAD, NX protocol compression and NX extensions to this software */
-/* are copyright of the aforementioned persons and companies. */
-/* */
-/* Redistribution and use of the present software is allowed according */
-/* to terms specified in the file LICENSE which comes in the source */
-/* distribution. */
-/* */
-/* All rights reserved. */
-/* */
-/* NOTE: This software has received contributions from various other */
-/* contributors, only the core maintainers and supporters are listed as */
-/* copyright holders. Please contact us, if you feel you should be listed */
-/* as copyright holder, as well. */
-/* */
-/**************************************************************************/
-
-#include <nx-X11/Xlib.h>
-#include <nx-X11/Xutil.h>
-#include <nx-X11/keysym.h>
-#include <string.h>
-
-#define PANIC
-#define WARNING
-#undef TEST
-#undef DEBUG
-
-#include "Manager.h"
-#include "Logger.h"
-
-UpdateManager::UpdateManager(int w, int h, char *f, Input *i)
- : width_(w), height_(h), frameBuffer_(f), input_(i)
-{
- logTrace("UpdateManager::UpdateManager");
-
- nUpdater = 0;
- updaterVector = NULL;
- updateManagerRegion_ = NULL;
-}
-
-UpdateManager::~UpdateManager()
-{
- logTrace("UpdateManager::~UpdateManager");
-
- for (int i = 0; i < nUpdater; i++)
- {
- delete updaterVector[i];
- }
-
- delete [] updaterVector;
-}
-
-Updater *UpdateManager::createUpdater(char *displayName, Display *display)
-{
- Updater *updater = new Updater(displayName, display);
-
- if (updater == NULL)
- {
- logError("UpdateManager::createUpdater", ESET(ENOMEM));
-
- return NULL;
- }
-
- if (updater -> init(width_, height_, frameBuffer_, input_) == -1)
- {
- logError("UpdateManager::createUpdater", EGET());
-
- delete updater;
-
- return NULL;
- }
-
- return updater;
-}
-
-UpdaterHandle UpdateManager::addUpdater(char *displayName, Display *display)
-{
- Updater *newUpdater = createUpdater(displayName, display);
-
- if (newUpdater == NULL)
- {
- logError("UpdateManager::addUpdater", EGET());
-
- return NULL;
- }
-
- Updater **newUpdaterVector = new Updater*[nUpdater + 1];
-
- if (newUpdaterVector == NULL)
- {
- logError("UpdateManager::addUpdater", ESET(ENOMEM));
-
- delete newUpdater;
-
- return NULL;
- }
-
- for (int i = 0; i < nUpdater; i++)
- {
- newUpdaterVector[i] = updaterVector[i];
- }
-
- newUpdaterVector[nUpdater] = newUpdater;
-
- delete [] updaterVector;
-
- updaterVector = newUpdaterVector;
-
- nUpdater++;
-
- logTest("UpdateManager::AddUpdater", "Number of updaters [%d].", nUpdater);
-
- return reinterpret_cast<UpdaterHandle>(newUpdater);
-}
-
-int UpdateManager::removeAllUpdaters()
-{
- logTest("UpdateManager::removeAllUpdaters", "Number of updaters [%d].", nUpdater);
-
- int nullUpdaters = 0;
-
- for (int i = nUpdater; i > 0; i--)
- {
- if (removeUpdater(reinterpret_cast<UpdaterHandle>(updaterVector[i - 1])) == 0)
- {
- nullUpdaters++;
- }
- }
-
- if (nUpdater == 0)
- {
- return 1;
- }
-
- if (nUpdater == nullUpdaters)
- {
- logTest("UpdateManager::removeAllUpdaters", "Ignored null records in Updater vector.");
-
- return 0;
- }
-
- logTest("UpdateManager::removeAllUpdaters", "Failed to remove some updaters.");
-
- return -1;
-}
-
-int UpdateManager::removeUpdater(UpdaterHandle handle)
-{
- Updater * const updater = (Updater*) handle;
-
- logTest("UpdateManager::removeUpdater", "Removing Updater [%p].", updater);
-
- if (updater == NULL)
- {
- return 0;
- }
-
- for (int i = 0; i < nUpdater; i++)
- {
- if (updater == updaterVector[i])
- {
- updaterVector[i] = updaterVector[nUpdater - 1];
-
- nUpdater--;
-
- delete updater;
-
- return 1;
- }
- }
-
- logTest("UpdateManager::removeUpdater", "Couldn't find Updater [%p].", updater);
-
- return -1;
-}
-
-void UpdateManager::addRegion(Region region)
-{
- logTrace("UpdateManager::addRegion");
-
- for (int i = 0; i < nUpdater; i++)
- {
- updaterVector[i] -> addRegion(region);
- }
-
- XDestroyRegion(region);
-}
-
-void UpdateManager::update()
-{
- logTrace("UpdateManager::update");
-
- for (int i = 0; i < nUpdater; i++)
- {
- /*updaterVector[i] -> update();*/
- if (updaterVector[i] -> getUpdateRegion())
- {
- logDebug("UpdateManager::update", "pRegion [%p] rect[%ld].",
- updaterVector[i] -> getUpdateRegion(), (updaterVector[i] -> getUpdateRegion()) -> numRects);
-
- updateManagerRegion_ = updaterVector[i] -> getUpdateRegion();
- //
- // FIXME: Remove me.
- //
- for (int j = 0; j < updateManagerRegion_ -> numRects; j++)
- {
- int x = updateManagerRegion_ -> rects[j].x1;
- int y = updateManagerRegion_ -> rects[j].y1;
- unsigned int width = updateManagerRegion_ -> rects[j].x2 - updateManagerRegion_ -> rects[j].x1;
- unsigned int height = updateManagerRegion_ -> rects[j].y2 - updateManagerRegion_ -> rects[j].y1;
- logDebug("UpdateManager::update", "x[%d]y[%d]width[%u]height[%u], updateManagerRegion_[%p]",
- x, y, width, height, updateManagerRegion_);
- }
- }
- }
-}
-
-void UpdateManager::handleInput()
-{
- logTrace("UpdateManager::handleInput");
-
- for (int i = 0; i < nUpdater; i++)
- {
- try
- {
- updaterVector[i] -> handleInput();
- }
- catch (UpdaterClosing u)
- {
- logTest("UpdateManager::handleInput", "Catched exception UpdaterClosing().");
-
- removeUpdater((UpdaterHandle)updaterVector[i]);
-
- //
- // Now the i-element of the updaterVector
- // is changed. We don't want to skip it.
- //
-
- i--;
- }
- }
-}
-
-void UpdateManager::newRegion()
-{
- logTrace("UpdateManager::newRegion");
-
- for (int i = 0; i < nUpdater; i++)
- {
- updaterVector[i] -> newRegion();
- }
-}