Equalizer  2.1.0
Parallel Rendering Framework
commands.h
1 
2 /* Copyright (c) 2005-2016, Stefan Eilemann <eile@equalizergraphics.com>
3  * Cedric Stalder <cedric Stalder@gmail.com>
4  * Daniel Nachbaur <danielnachbaur@gmail.com>
5  *
6  * This library is free software; you can redistribute it and/or modify it under
7  * the terms of the GNU Lesser General Public License version 2.1 as published
8  * by the Free Software Foundation.
9  *
10  * This library is distributed in the hope that it will be useful, but WITHOUT
11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12  * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
13  * details.
14  *
15  * You should have received a copy of the GNU Lesser General Public License
16  * along with this library; if not, write to the Free Software Foundation, Inc.,
17  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
18  */
19 
20 #ifndef EQFABRIC_COMMANDS_H
21 #define EQFABRIC_COMMANDS_H
22 
23 #include <co/commands.h>
24 
25 namespace eq
26 {
27 namespace fabric
28 {
30 enum ServerCommand
31 {
32  CMD_SERVER_CHOOSE_CONFIG = co::CMD_NODE_CUSTOM,
33  CMD_SERVER_CHOOSE_CONFIG_REPLY,
34  CMD_SERVER_CREATE_CONFIG,
35  CMD_SERVER_CREATE_CONFIG_REPLY,
36  CMD_SERVER_DESTROY_CONFIG,
37  CMD_SERVER_DESTROY_CONFIG_REPLY,
38  CMD_SERVER_RELEASE_CONFIG,
39  CMD_SERVER_RELEASE_CONFIG_REPLY,
40  CMD_SERVER_INIT_CONFIG,
41  CMD_SERVER_SHUTDOWN,
42  CMD_SERVER_SHUTDOWN_REPLY,
43  // admin
44  CMD_SERVER_MAP,
45  CMD_SERVER_MAP_REPLY,
46  CMD_SERVER_UNMAP,
47  CMD_SERVER_UNMAP_REPLY,
48  CMD_SERVER_CUSTOM
49 };
50 
51 enum ClientCommand
52 {
53  CMD_CLIENT_EXIT = CMD_SERVER_CUSTOM,
54  CMD_CLIENT_INTERRUPT,
55  CMD_CLIENT_CUSTOM
56 };
57 
58 enum ObjectICommand
59 {
60  CMD_OBJECT_SYNC = co::CMD_OBJECT_CUSTOM,
61  CMD_OBJECT_CUSTOM
62 };
63 
64 enum ConfigCommand
65 {
66  CMD_CONFIG_NEW_LAYOUT = CMD_OBJECT_CUSTOM,
67  CMD_CONFIG_NEW_CANVAS,
68  CMD_CONFIG_NEW_OBSERVER,
69  CMD_CONFIG_NEW_ENTITY_REPLY,
70  CMD_CONFIG_START_INIT,
71  CMD_CONFIG_START_INIT_REPLY,
72  CMD_CONFIG_INIT,
73  CMD_CONFIG_INIT_REPLY,
74  CMD_CONFIG_EXIT,
75  CMD_CONFIG_EXIT_REPLY,
76  CMD_CONFIG_UPDATE,
77  CMD_CONFIG_UPDATE_VERSION,
78  CMD_CONFIG_UPDATE_REPLY,
79  CMD_CONFIG_CREATE_REPLY,
80  CMD_CONFIG_CREATE_NODE,
81  CMD_CONFIG_DESTROY_NODE,
82  CMD_CONFIG_START_FRAME,
83  CMD_CONFIG_RELEASE_FRAME_LOCAL,
84  CMD_CONFIG_FRAME_FINISH,
85  CMD_CONFIG_FINISH_ALL_FRAMES,
86  CMD_CONFIG_STOP_FRAMES,
87  CMD_CONFIG_EVENT,
88  CMD_CONFIG_SYNC_CLOCK,
89  CMD_CONFIG_SWAP_OBJECT,
90  CMD_CONFIG_CHECK_FRAME,
91  CMD_CONFIG_CUSTOM
92 };
93 
94 enum NodeCommand
95 {
96  CMD_NODE_CONFIG_INIT = CMD_OBJECT_CUSTOM,
97  CMD_NODE_CONFIG_INIT_REPLY,
98  CMD_NODE_SET_AFFINITY,
99  CMD_NODE_CONFIG_EXIT,
100  CMD_NODE_CONFIG_EXIT_REPLY,
101  CMD_NODE_CREATE_PIPE,
102  CMD_NODE_DESTROY_PIPE,
103  CMD_NODE_FRAME_START,
104  CMD_NODE_FRAME_FINISH,
105  CMD_NODE_FRAME_FINISH_REPLY,
106  CMD_NODE_FRAME_DRAW_FINISH,
107  CMD_NODE_FRAME_TASKS_FINISH,
108  CMD_NODE_FRAMEDATA_TRANSMIT,
109  CMD_NODE_FRAMEDATA_READY,
110  CMD_NODE_CUSTOM
111 };
112 
113 enum PipeCommand
114 {
115  CMD_PIPE_NEW_WINDOW = CMD_OBJECT_CUSTOM,
116  CMD_PIPE_NEW_WINDOW_REPLY,
117  CMD_PIPE_CONFIG_INIT,
118  CMD_PIPE_CONFIG_INIT_REPLY,
119  CMD_PIPE_CONFIG_EXIT,
120  CMD_PIPE_CONFIG_EXIT_REPLY,
121  CMD_PIPE_CREATE_WINDOW,
122  CMD_PIPE_DESTROY_WINDOW,
123  CMD_PIPE_FRAME_START,
124  CMD_PIPE_FRAME_FINISH,
125  CMD_PIPE_FRAME_DRAW_FINISH,
126  CMD_PIPE_FRAME_START_CLOCK,
127  CMD_PIPE_EXIT_THREAD,
128  CMD_PIPE_EXIT_TRANSFER_THREAD,
129  CMD_PIPE_DETACH_VIEW,
130  CMD_PIPE_CUSTOM
131 };
132 
133 enum WindowCommand
134 {
135  CMD_WINDOW_NEW_CHANNEL = CMD_OBJECT_CUSTOM,
136  CMD_WINDOW_NEW_CHANNEL_REPLY,
137  CMD_WINDOW_CONFIG_INIT,
138  CMD_WINDOW_CONFIG_INIT_REPLY,
139  CMD_WINDOW_CONFIG_EXIT,
140  CMD_WINDOW_CONFIG_EXIT_REPLY,
141  CMD_WINDOW_CREATE_CHANNEL,
142  CMD_WINDOW_DESTROY_CHANNEL,
143  CMD_WINDOW_FRAME_START,
144  CMD_WINDOW_FRAME_FINISH,
145  CMD_WINDOW_FLUSH,
146  CMD_WINDOW_FINISH,
147  CMD_WINDOW_THROTTLE_FRAMERATE,
148  CMD_WINDOW_BARRIER,
149  CMD_WINDOW_NV_BARRIER,
150  CMD_WINDOW_SWAP,
151  CMD_WINDOW_FRAME_DRAW_FINISH,
152  CMD_WINDOW_CREATE_QGL_WIDGET,
153  CMD_WINDOW_DESTROY_QGL_WIDGET,
154  CMD_WINDOW_RESIZE,
155  CMD_WINDOW_CUSTOM
156 };
157 
158 enum ChannelCommand
159 {
160  CMD_CHANNEL_CONFIG_INIT = CMD_OBJECT_CUSTOM,
161  CMD_CHANNEL_CONFIG_INIT_REPLY,
162  CMD_CHANNEL_CONFIG_EXIT,
163  CMD_CHANNEL_CONFIG_EXIT_REPLY,
164  CMD_CHANNEL_FRAME_START,
165  CMD_CHANNEL_FRAME_FINISH,
166  CMD_CHANNEL_FRAME_FINISH_REPLY,
167  CMD_CHANNEL_FRAME_CLEAR,
168  CMD_CHANNEL_FRAME_DRAW,
169  CMD_CHANNEL_FRAME_DRAW_FINISH,
170  CMD_CHANNEL_FRAME_ASSEMBLE,
171  CMD_CHANNEL_FRAME_READBACK,
172  CMD_CHANNEL_FRAME_TRANSMIT_IMAGE,
173  CMD_CHANNEL_FRAME_SET_READY,
174  CMD_CHANNEL_FRAME_SET_READY_NODE,
175  CMD_CHANNEL_FRAME_VIEW_START,
176  CMD_CHANNEL_FRAME_VIEW_FINISH,
177  CMD_CHANNEL_STOP_FRAME,
178  CMD_CHANNEL_FRAME_TILES,
179  CMD_CHANNEL_FINISH_READBACK,
180  CMD_CHANNEL_DELETE_TRANSFER_WINDOW,
181  CMD_CHANNEL_CUSTOM
182 };
183 
184 enum CanvasCommand
185 {
186  CMD_CANVAS_NEW_SEGMENT = CMD_OBJECT_CUSTOM,
187  CMD_CANVAS_NEW_SEGMENT_REPLY,
188  CMD_CANVAS_CUSTOM
189 };
190 
191 enum LayoutCommand
192 {
193  CMD_LAYOUT_NEW_VIEW = CMD_OBJECT_CUSTOM,
194  CMD_LAYOUT_NEW_VIEW_REPLY,
195  CMD_LAYOUT_CUSTOM
196 };
197 
198 enum ViewCommand
199 {
200  CMD_VIEW_CUSTOM = CMD_OBJECT_CUSTOM
201 };
203 }
204 }
205 #endif // EQFABRIC_COMMANDS_H
The Equalizer client library.
Definition: eq/agl/types.h:23