Line data Source code
1 :
2 : /* Copyright (c) 2015, Daniel Nachbaur <danielnachbaur@gmail.com>
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 : #ifndef EQ_RESULTIMAGELISTENER_H
19 : #define EQ_RESULTIMAGELISTENER_H
20 :
21 : #include <eq/types.h>
22 :
23 : namespace eq
24 : {
25 :
26 : /**
27 : * The result image listener gets notified on new images produced by
28 : * destination channels.
29 : *
30 : * @sa Channel::addResultImageListener
31 : * @version 1.9
32 : */
33 : class ResultImageListener
34 : {
35 : public:
36 : /** Construct a new result image listener. @version 1.9 */
37 811 : ResultImageListener() {}
38 :
39 : /** Destruct the result image listener. @version 1.9 */
40 1 : virtual ~ResultImageListener() {}
41 :
42 : /**
43 : * Notify on new image, called from rendering thread in
44 : * Channel::frameViewFinish().
45 : *
46 : * @param channel the destination channel
47 : * @param image the new image, valid only in the current frame
48 : * @version 1.9
49 : */
50 : virtual void notifyNewImage( Channel& channel, const Image& image ) = 0;
51 :
52 : private:
53 : ResultImageListener( const ResultImageListener& ) = delete;
54 : ResultImageListener& operator=( const ResultImageListener& ) = delete;
55 : };
56 :
57 : }
58 :
59 : #endif // EQ_RESULTIMAGELISTENER_H
|