Line data Source code
1 :
2 : /* Copyright (c) 2010, Stefan Eilemann <eile@eyescale.ch>
3 : *
4 : * This library is free software; you can redistribute it and/or modify it under
5 : * the terms of the GNU Lesser General Public License version 2.1 as published
6 : * by the Free Software Foundation.
7 : *
8 : * This library is distributed in the hope that it will be useful, but WITHOUT
9 : * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
10 : * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
11 : * details.
12 : *
13 : * You should have received a copy of the GNU Lesser General Public License
14 : * along with this library; if not, write to the Free Software Foundation, Inc.,
15 : * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
16 : */
17 :
18 : #include "channel.h"
19 :
20 : #include "server.h"
21 : #include "window.h"
22 :
23 : namespace eq
24 : {
25 : namespace admin
26 : {
27 : typedef fabric::Channel< Window, Channel > Super;
28 :
29 0 : Channel::Channel( Window* parent )
30 0 : : Super( parent )
31 0 : {}
32 :
33 0 : Channel::~Channel()
34 0 : {}
35 :
36 0 : Pipe* Channel::getPipe()
37 : {
38 0 : Window* window = getWindow();
39 0 : LBASSERT( window );
40 0 : return ( window ? window->getPipe() : 0 );
41 : }
42 0 : const Pipe* Channel::getPipe() const
43 : {
44 0 : const Window* window = getWindow();
45 0 : LBASSERT( window );
46 0 : return ( window ? window->getPipe() : 0 );
47 : }
48 :
49 0 : Config* Channel::getConfig()
50 : {
51 0 : Window* window = getWindow();
52 0 : LBASSERT( window );
53 0 : return ( window ? window->getConfig() : 0 );
54 : }
55 :
56 0 : const Config* Channel::getConfig() const
57 : {
58 0 : const Window* window = getWindow();
59 0 : LBASSERT( window );
60 0 : return ( window ? window->getConfig() : 0 );
61 : }
62 :
63 0 : ServerPtr Channel::getServer()
64 : {
65 0 : Window* window = getWindow();
66 0 : LBASSERT( window );
67 0 : return ( window ? window->getServer() : 0 );
68 : }
69 :
70 : }
71 : }
72 :
73 : #include "../fabric/channel.ipp"
74 : template class eq::fabric::Channel< eq::admin::Window, eq::admin::Channel >;
75 :
76 : /** @cond IGNORE */
77 : template EQFABRIC_API std::ostream& eq::fabric::operator << ( std::ostream&,
78 84 : const eq::admin::Super& );
79 : /** @endcond */
80 :
|