0fee1b0dbe796d5c03abdc7b516de170331aed5b
Stefan Schuermans implemented scaler module

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 SCALER_H
7) #define SCALER_H
8) 
9) #include <string>
10) 
11) #include <BlinkenLib/BlinkenFrame.h>
12) 
13) #include "CallMgr.h"
14) #include "Directory.h"
15) #include "File.h"
Stefan Schuermans implemented specialized set...

Stefan Schuermans authored 12 years ago

16) #include "InStreamFile.h"
Stefan Schuermans implemented scaler module

Stefan Schuermans authored 12 years ago

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

Stefan Schuermans authored 12 years ago

18) #include "OutStreamFile.h"
Stefan Schuermans implemented scaler module

Stefan Schuermans authored 12 years ago

19) #include "Size.h"
Stefan Schuermans implemented specialized set...

Stefan Schuermans authored 12 years ago

20) #include "SizeFile.h"
Stefan Schuermans implemented scaler module

Stefan Schuermans authored 12 years ago

21) #include "StreamMgr.h"
22) #include "StreamRecv.h"
23) 
24) namespace Blinker {
25) 
26) /// a stream scaler
27) class Scaler: public Module, public StreamRecv
28) {
29) public:
30)   /**
31)    * @brief constructor
32)    * @param[in] callMgr callback manager
33)    * @param[in] streamMgr stream manager
34)    * @param[in] dirBase base directory
35)    */
36)   Scaler(CallMgr &callMgr, StreamMgr &streamMgr, const Directory &dirBase);
37) 
38)   /// virtual destructor
39)   virtual ~Scaler();
40) 
41) private:
42)   /// copy constructor disabled
43)   Scaler(const Scaler &that);
44) 
45)   /// assignment operator disabled
46)   const Scaler & operator=(const Scaler &that);
47) 
48) public:
49)   /// check for update of configuration
50)   virtual void updateConfig();
51) 
52)   /**
53)    * @brief set current frame
54)    * @param[in] stream stream name
Stefan Schuermans merged frame processing wit...

Stefan Schuermans authored 12 years ago

55)    * @param[in] pFrame current frame (NULL for none)
Stefan Schuermans implemented scaler module

Stefan Schuermans authored 12 years ago

56)    */
57)   virtual void setFrame(const std::string &stream, stBlinkenFrame *pFrame);
58) 
59) protected:
60)   /// (re-)get size to scale to
61)   void getSize();
62) 
63)   /// send current frame to output stream
64)   void sendFrame();
65) 
66)   /**
67)    * @brief process frame
Stefan Schuermans merged frame processing wit...

Stefan Schuermans authored 12 years ago

68)    * @param[in] pFrame frame to process (NULL for none)
Stefan Schuermans implemented scaler module

Stefan Schuermans authored 12 years ago

69)    */
70)   void procFrame(stBlinkenFrame *pFrame);
71) 
72) protected:
Stefan Schuermans implemented specialized set...

Stefan Schuermans authored 12 years ago

73)   InStreamFile  m_fileInStream;  ///< input stream name file
74)   SizeFile      m_fileSize;      ///< size file
75)   OutStreamFile m_fileOutStream; ///< output stream name file