74ce1684985e2460228fb7b5c91ea43a393fb832
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

1) /* Blinker
2)    Copyright 2011 Stefan Schuermans <stefan@blinkenarea.org>
3)    Copyleft GNU public license - http://www.gnu.org/copyleft/gpl.html
4)    a blinkenarea.org project */
5) 
6) #ifndef CANVAS_H
7) #define CANVAS_H
8) 
9) #include <list>
10) #include <string>
11) 
12) #include <BlinkenLib/BlinkenFrame.h>
13) 
14) #include "CallMgr.h"
15) #include "Directory.h"
16) #include "File.h"
17) #include "Format.h"
Stefan Schuermans implemented specialized set...

Stefan Schuermans authored 12 years ago

18) #include "FormatFile.h"
Stefan Schuermans converted canvas module to...

Stefan Schuermans authored 12 years ago

19) #include "ListTracker.h"
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

20) #include "Module.h"
Stefan Schuermans implemented specialized set...

Stefan Schuermans authored 12 years ago

21) #include "OutStreamFile.h"
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

22) #include "StreamMgr.h"
23) 
24) namespace Blinker {
25) 
26) /// a canvas to merge and split streams
27) class Canvas: public Module
28) {
29) protected:
30)   /// input to canvas
31)   class Input;
32) 
Stefan Schuermans converted canvas module to...

Stefan Schuermans authored 12 years ago

33)   /// input list tracker
34)   typedef ListTracker<Canvas, Input, Directory> InListTracker;
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

35) 
36) public:
37)   /**
38)    * @brief constructor
39)    * @param[in] callMgr callback manager
40)    * @param[in] streamMgr stream manager
41)    * @param[in] dirBase base directory
42)    */
43)   Canvas(CallMgr &callMgr, StreamMgr &streamMgr, const Directory &dirBase);
44) 
45)   /// virtual destructor
46)   virtual ~Canvas();
47) 
48) private:
49)   /// copy constructor disabled
50)   Canvas(const Canvas &that);
51) 
52)   /// assignment operator disabled
53)   const Canvas & operator=(const Canvas &that);
54) 
55) public:
56)   /// check for update of configuration
57)   virtual void updateConfig();
58) 
59) protected:
60)   /// (re-)create canvas
61)   void createCanvas();
62) 
63)   /// tear down canvas
64)   void destroyCanvas();
65) 
66)   /// notfication to redraw (called by inputs)
67)   void redraw();
68) 
69)   /// send current frame to output stream
70)   void sendFrame();
71) 
72) protected:
Stefan Schuermans implemented specialized set...

Stefan Schuermans authored 12 years ago

73)   FormatFile     m_fileFormat;     ///< canvas format file
74)   OutStreamFile  m_fileOutStream;  ///< output stream name file
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

75)   stBlinkenFrame *m_pCanvas;       ///< canvas to put streams on
Stefan Schuermans typos in comments and docum...

Stefan Schuermans authored 12 years ago

76)   bool           m_canvasHasFrame; ///< if there is >= 1 frame on canvas
Stefan Schuermans converted canvas module to...

Stefan Schuermans authored 12 years ago

77)   InListTracker  m_inListTracker;  ///< input list tracker