Line data Source code
1 :
2 : /* Copyright (c) 2011-2015, Stefan Eilemann <eile@eyescale.ch>
3 : * Petros Kataras <petroskataras@gmail.com>
4 : *
5 : * This library is free software; you can redistribute it and/or modify it under
6 : * the terms of the GNU Lesser General Public License version 2.1 as published
7 : * by the Free Software Foundation.
8 : *
9 : * This library is distributed in the hope that it will be useful, but WITHOUT
10 : * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11 : * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
12 : * details.
13 : *
14 : * You should have received a copy of the GNU Lesser General Public License
15 : * along with this library; if not, write to the Free Software Foundation, Inc.,
16 : * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17 : */
18 :
19 : #ifndef EQSEQUEL_DETAIL_WINDOW_H
20 : #define EQSEQUEL_DETAIL_WINDOW_H
21 :
22 : #include <seq/types.h>
23 : #include <eq/window.h> // base class
24 :
25 : namespace seq
26 : {
27 : namespace detail
28 : {
29 : class Window : public eq::Window
30 : {
31 : public:
32 : explicit Window( eq::Pipe* parent );
33 :
34 : Config* getConfig();
35 : Pipe* getPipe();
36 : seq::Renderer* getRenderer();
37 : detail::Renderer* getRendererImpl();
38 :
39 : /** @name Operations. */
40 : //@{
41 : void frameStart( const uint128_t& frameID, const uint32_t frameNumber )
42 : final;
43 : void frameFinish( const uint128_t& frameID, const uint32_t frameNumber )
44 : final;
45 : bool configInitGL( const uint128_t& initID ) final;
46 : bool configExitGL() final;
47 :
48 : bool processEvent( const eq::Event& event ) final;
49 :
50 0 : bool initContext() { return eq::Window::configInitGL( uint128_t( )); }
51 0 : bool exitContext() { return eq::Window::configExitGL(); }
52 : //@}
53 :
54 : protected:
55 : virtual ~Window();
56 : };
57 : }
58 : }
59 :
60 : #endif // EQSEQUEL_DETAIL_WINDOW_H
|