69ac12fcb8ee5ac55fadc04d3a96a3a7c2d0038a
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) 
Stefan Schuermans namespace for preprocessor...

Stefan Schuermans authored 12 years ago

6) #ifndef BLINKER_CANVAS_H
7) #define BLINKER_CANVAS_H
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

8) 
9) #include <list>
10) #include <string>
11) 
12) #include <BlinkenLib/BlinkenFrame.h>
13) 
14) #include "Directory.h"
15) #include "File.h"
16) #include "Format.h"
Stefan Schuermans implemented specialized set...

Stefan Schuermans authored 12 years ago

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

Stefan Schuermans authored 12 years ago

18) #include "ListTracker.h"
Stefan Schuermans put all managers in one str...

Stefan Schuermans authored 12 years ago

19) #include "Mgrs.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) 
23) namespace Blinker {
24) 
25) /// a canvas to merge and split streams
26) class Canvas: public Module
27) {
28) protected:
29)   /// input to canvas
30)   class Input;
31) 
Stefan Schuermans converted canvas module to...

Stefan Schuermans authored 12 years ago

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

Stefan Schuermans authored 12 years ago

34) 
35) public:
36)   /**
37)    * @brief constructor
Stefan Schuermans make modules know their name

Stefan Schuermans authored 12 years ago

38)    * @param[in] name module name
Stefan Schuermans put all managers in one str...

Stefan Schuermans authored 12 years ago

39)    * @param[in] mgrs managers
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

40)    * @param[in] dirBase base directory
41)    */
Stefan Schuermans make modules know their name

Stefan Schuermans authored 12 years ago

42)   Canvas(const std::string &name, Mgrs &mgrs, const Directory &dirBase);
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

43) 
44)   /// virtual destructor
45)   virtual ~Canvas();
46) 
47) private:
48)   /// copy constructor disabled
49)   Canvas(const Canvas &that);
50) 
51)   /// assignment operator disabled
52)   const Canvas & operator=(const Canvas &that);
53) 
54) public:
55)   /// check for update of configuration
56)   virtual void updateConfig();
57) 
58) protected:
59)   /// (re-)create canvas
60)   void createCanvas();
61) 
62)   /// tear down canvas
63)   void destroyCanvas();
64) 
65)   /// notfication to redraw (called by inputs)
66)   void redraw();
67) 
68)   /// send current frame to output stream
69)   void sendFrame();
70) 
71) protected:
Stefan Schuermans implemented specialized set...

Stefan Schuermans authored 12 years ago

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

Stefan Schuermans authored 12 years ago

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

Stefan Schuermans authored 12 years ago

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

Stefan Schuermans authored 12 years ago

76)   InListTracker  m_inListTracker;  ///< input list tracker
Stefan Schuermans first version of canvas mod...

Stefan Schuermans authored 12 years ago

77) }; // class Canvas
78) 
79) } // namespace Blinker
80) 
Stefan Schuermans namespace for preprocessor...

Stefan Schuermans authored 12 years ago

81) #endif // #ifndef BLINKER_CANVAS_H