Skip to content

Commit 76526f0

Browse files
author
Raphael Dumusc
committed
Release 0.12.0 preparations, removed Servus dependency
1 parent e12325a commit 76526f0

12 files changed

+21
-87
lines changed

.gitexternals

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# -*- mode: cmake -*-
2-
# CMake/common https://github.com/Eyescale/CMake.git 11ee9c1
2+
# CMake/common https://github.com/Eyescale/CMake.git 3d5d284

.gitsubprojects

-2
This file was deleted.

CMake/GitExternal.cmake

+6-38
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
# update target to bump the tag to the master revision by
99
# recreating .gitexternals.
1010
# * Provides function
11-
# git_external(<directory> <giturl> <gittag> [VERBOSE,SHALLOW]
11+
# git_external(<directory> <giturl> <gittag> [VERBOSE]
1212
# [RESET <files>])
1313
# which will check out directory in CMAKE_SOURCE_DIR (if relative)
1414
# or in the given absolute path using the given repository and tag
@@ -18,11 +18,6 @@
1818
# VERBOSE, when present, this option tells the function to output
1919
# information about what operations are being performed by git on
2020
# the repo.
21-
# SHALLOW, when present, causes a shallow clone of depth 1 to be made
22-
# of the specified repo. This may save considerable memory/bandwidth
23-
# when only a specific branch of a repo is required and the full history
24-
# is not required. Note that the SHALLOW option will only work for a branch
25-
# or tag and cannot be used for an arbitrary SHA.
2621
# OPTIONAL, when present, this option makes this operation optional.
2722
# The function will output a warning and return if the repo could not be
2823
# cloned.
@@ -69,15 +64,8 @@ macro(GIT_EXTERNAL_MESSAGE msg)
6964
endif()
7065
endmacro()
7166

72-
# utility function for printing a list with custom separator
73-
function(JOIN VALUES GLUE OUTPUT)
74-
string (REGEX REPLACE "([^\\]|^);" "\\1${GLUE}" _TMP_STR "${VALUES}")
75-
string (REGEX REPLACE "[\\](.)" "\\1" _TMP_STR "${_TMP_STR}") #fixes escaping
76-
set (${OUTPUT} "${_TMP_STR}" PARENT_SCOPE)
77-
endfunction()
78-
7967
function(GIT_EXTERNAL DIR REPO tag)
80-
cmake_parse_arguments(GIT_EXTERNAL_LOCAL "VERBOSE;SHALLOW;OPTIONAL" "" "RESET" ${ARGN})
68+
cmake_parse_arguments(GIT_EXTERNAL_LOCAL "VERBOSE;OPTIONAL" "" "RESET" ${ARGN})
8169
set(TAG ${tag})
8270
if(GIT_EXTERNAL_TAG AND "${tag}" MATCHES "^[0-9a-f]+$")
8371
set(TAG ${GIT_EXTERNAL_TAG})
@@ -105,16 +93,9 @@ function(GIT_EXTERNAL DIR REPO tag)
10593

10694
if(NOT EXISTS "${DIR}")
10795
# clone
108-
set(_clone_options --recursive)
109-
if(GIT_EXTERNAL_LOCAL_SHALLOW)
110-
list(APPEND _clone_options --depth 1 --branch ${TAG})
111-
else()
112-
set(_msg_tag "[${TAG}]")
113-
endif()
114-
JOIN("${_clone_options}" " " _msg_text)
115-
message(STATUS "git clone ${_msg_text} ${REPO} ${DIR} ${_msg_tag}")
96+
message(STATUS "git clone --recursive ${REPO} ${DIR} [${TAG}]")
11697
execute_process(
117-
COMMAND "${GIT_EXECUTABLE}" clone ${_clone_options} ${REPO} ${DIR}
98+
COMMAND "${GIT_EXECUTABLE}" clone --recursive ${REPO} ${DIR}
11899
RESULT_VARIABLE nok ERROR_VARIABLE error
119100
WORKING_DIRECTORY "${GIT_EXTERNAL_DIR}")
120101
if(nok)
@@ -127,21 +108,8 @@ function(GIT_EXTERNAL DIR REPO tag)
127108
endif()
128109

129110
# checkout requested tag
130-
if(NOT GIT_EXTERNAL_LOCAL_SHALLOW)
131-
execute_process(
132-
COMMAND "${GIT_EXECUTABLE}" checkout -q "${TAG}"
133-
RESULT_VARIABLE nok ERROR_VARIABLE error
134-
WORKING_DIRECTORY "${DIR}")
135-
if(nok)
136-
message(FATAL_ERROR "git checkout ${TAG} in ${DIR} failed: ${error}\n")
137-
endif()
138-
endif()
139-
140-
# checkout requested tag
141-
execute_process(
142-
COMMAND "${GIT_EXECUTABLE}" checkout -q "${TAG}"
143-
RESULT_VARIABLE nok ERROR_VARIABLE error
144-
WORKING_DIRECTORY "${DIR}")
111+
execute_process(COMMAND "${GIT_EXECUTABLE}" checkout -q "${TAG}"
112+
RESULT_VARIABLE nok ERROR_VARIABLE error WORKING_DIRECTORY "${DIR}")
145113
if(nok)
146114
message(FATAL_ERROR "git checkout ${TAG} in ${DIR} failed: ${error}\n")
147115
endif()

CMakeLists.txt

-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ common_find_package(Qt5Network REQUIRED)
3636
common_find_package(Qt5Qml)
3737
common_find_package(Qt5Quick)
3838
common_find_package(Qt5Widgets REQUIRED)
39-
common_find_package(Servus)
4039
common_find_package_post()
4140

4241
if(NOT Qt5Quick_VERSION VERSION_LESS 5.5)

README.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
# Deflect
22

33
Welcome to Deflect, a C++ library for streaming pixels to other Deflect-based
4-
applications, for example
5-
[Tide](https://github.com/BlueBrain/Tide).
6-
Deflect offers a stable API marked with version 1.0 (for the client part).
4+
applications, for example [Tide](https://github.com/BlueBrain/Tide).
5+
Deflect offers a stable API marked with version 1.5 (for the client part).
76

87
## Features
98

109
Deflect provides the following functionality:
1110

1211
* Stream pixels to a remote Server from one or multiple sources
1312
* Register for receiving events from the Server
13+
* Receive keyboard, mouse and multi-point touch gestures from the Server
1414
* Compressed or uncompressed streaming
1515
* Fast multi-threaded JPEG compression (using libjpeg-turbo)
1616

@@ -32,8 +32,8 @@ The following applications are provided which make use of the streaming API:
3232
git clone https://github.com/BlueBrain/Deflect.git
3333
mkdir Deflect/build
3434
cd Deflect/build
35-
cmake ..
36-
make
35+
cmake -GNinja ..
36+
ninja
3737
~~~
3838

3939
## ChangeLog
@@ -47,8 +47,8 @@ system, including all Unix variants. Deflect uses CMake to create a
4747
platform-specific build environment. The following platforms and build
4848
environments are tested:
4949

50-
* Linux: Ubuntu 14.04 and RHEL 6 (Makefile, x64)
51-
* Mac OS X: 10.7 - 10.10 (Makefile, x86_64)
50+
* Linux: Ubuntu 16.04 and RHEL 6 (Makefile, Ninja; x64)
51+
* Mac OS X: 10.7 - 10.10 (Makefile, Ninja; x86_64)
5252

53-
The [latest API documentation](http://bluebrain.github.io/Deflect-0.10/index.html)
53+
The [latest API documentation](http://bluebrain.github.io/Deflect-0.12/index.html)
5454
can be found on [bluebrain.github.io](http://bluebrain.github.io).

apps/DesktopStreamer/CMakeLists.txt

-4
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,6 @@ set_source_files_properties(MainWindow.cpp PROPERTIES COMPILE_DEFINITIONS
3535
_HOSTS=${DEFLECT_DESKTOPSTREAMER_HOSTS}
3636
)
3737

38-
if(DEFLECT_USE_SERVUS)
39-
list(APPEND DESKTOPSTREAMER_LINK_LIBRARIES Servus)
40-
endif()
41-
4238
set(DESKTOPSTREAMER_APP_NAME desktopstreamer)
4339

4440
if(APPLE)

apps/DesktopStreamer/MainWindow.h

-4
Original file line numberDiff line numberDiff line change
@@ -47,10 +47,6 @@
4747
# include <deflect/AppNapSuspender.h>
4848
#endif
4949

50-
#ifdef DEFLECT_USE_SERVUS
51-
# include <servus/servus.h>
52-
#endif
53-
5450
#include <QMainWindow>
5551
#include <QTimer>
5652
#include <QTime>

deflect/CMakeLists.txt

-4
Original file line numberDiff line numberDiff line change
@@ -70,10 +70,6 @@ if(DEFLECT_USE_LIBJPEGTURBO)
7070
list(APPEND DEFLECT_LINK_LIBRARIES ${LibJpegTurbo_LIBRARIES})
7171
endif()
7272

73-
if(DEFLECT_USE_SERVUS)
74-
list(APPEND DEFLECT_LINK_LIBRARIES Servus)
75-
endif()
76-
7773
common_library(Deflect)
7874

7975
if(Qt5Qml_FOUND AND Qt5Quick_FOUND AND NOT Qt5Quick_VERSION VERSION_LESS 5.4)

deflect/NetworkProtocol.h

-1
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,5 @@
4141

4242
#define NETWORK_PROTOCOL_VERSION 8
4343
#define DEFAULT_PORT_NUMBER 1701
44-
#define SERVUS_SERVICE_NAME "_displaycluster._tcp"
4544

4645
#endif

deflect/Server.cpp

-17
Original file line numberDiff line numberDiff line change
@@ -44,31 +44,17 @@
4444
#include "NetworkProtocol.h"
4545
#include "ServerWorker.h"
4646

47-
#ifdef DEFLECT_USE_SERVUS
48-
# include <servus/servus.h>
49-
#endif
50-
5147
#include <QThread>
5248
#include <stdexcept>
5349

5450
namespace deflect
5551
{
5652
const int Server::defaultPortNumber = DEFAULT_PORT_NUMBER;
57-
const std::string Server::serviceName = SERVUS_SERVICE_NAME;
5853

5954
class Server::Impl
6055
{
6156
public:
62-
Impl()
63-
#ifdef DEFLECT_USE_SERVUS
64-
: servus( Server::serviceName )
65-
#endif
66-
{}
67-
6857
FrameDispatcher pixelStreamDispatcher;
69-
#ifdef DEFLECT_USE_SERVUS
70-
servus::Servus servus;
71-
#endif
7258
};
7359

7460
Server::Server( const int port )
@@ -79,9 +65,6 @@ Server::Server( const int port )
7965
const auto err = QString( "could not listen on port: %1" ).arg( port );
8066
throw std::runtime_error( err.toStdString( ));
8167
}
82-
#ifdef DEFLECT_USE_SERVUS
83-
_impl->servus.announce( serverPort(), "" );
84-
#endif
8568
}
8669

8770
Server::~Server()

deflect/Server.h

-3
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,6 @@ class DEFLECT_API Server : public QTcpServer
6161
/** The default port number used for Stream connections. */
6262
static const int defaultPortNumber;
6363

64-
/** The zeroconf service name for announcing stream connections. */
65-
static const std::string serviceName;
66-
6764
/**
6865
* Create a new server listening for Stream connections.
6966
* @param port The port to listen on. Must be available.

doc/Changelog.md

+6-4
Original file line numberDiff line numberDiff line change
@@ -3,16 +3,18 @@ Changelog {#Changelog}
33

44
## Deflect 0.12
55

6-
### 0.12.0 (git master)
6+
### 0.12.0 (09-12-2016)
77

8+
* [143](https://github.com/BlueBrain/Deflect/pull/143):
9+
The non-functional Servus dependency has been removed.
810
* [142](https://github.com/BlueBrain/Deflect/pull/142):
911
The DesktopStreamer app uses the full user name as the default stream name.
1012
* [139](https://github.com/BlueBrain/Deflect/pull/139):
1113
OSX: AppNap is now disabled for all QmlStreamers. The AppNapSuspender class
12-
is now available in Deflect library for use in external applications.
14+
is also available in Deflect library for use in external applications.
1315
* [137](https://github.com/BlueBrain/Deflect/pull/137):
14-
Deflect Qt: the offscreen Qml view used by the Qml streamer is now available
15-
as a separate class.
16+
Deflect Qt: the offscreen Qml view used by the Qml streamer is available as a
17+
separate class.
1618
* [133](https://github.com/BlueBrain/Deflect/pull/133):
1719
QmlStreamer: Use asynchronous rendering, add
1820
deflect::qt::QmlStreamer::useAsyncSend() to enable asynchronous image streaming

0 commit comments

Comments
 (0)