a4e709d64c3ec687342b9c44be382298b0993a66
Stefan Schuermans sender static destination n...

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 SENDERDEST_H
7) #define SENDERDEST_H
8) 
9) #include <string>
10) 
11) #include "Directory.h"
12) #include "File.h"
13) #include "Module.h"
14) #include "Sender.h"
15) #include "SettingFile.h"
16) 
17) namespace Blinker {
18) 
19) /// static destination of a stream sender
20) template<typename ADDR, typename SOCK>
21) class Sender<ADDR, SOCK>::Dest
22) {
23) public:
24)   /**
25)    * @brief constructor
26)    * @param[in] sender owning sender object
Stefan Schuermans converted sender to use lis...

Stefan Schuermans authored 12 years ago

27)    * @param[in] name destination name
Stefan Schuermans sender static destination n...

Stefan Schuermans authored 12 years ago

28)    * @param[in] dirBase base directory
29)    */
Stefan Schuermans converted sender to use lis...

Stefan Schuermans authored 12 years ago

30)   Dest(Sender &sender, const std::string &name, const Directory &dirBase);
Stefan Schuermans sender static destination n...

Stefan Schuermans authored 12 years ago

31) 
32)   /// destructor
33)   ~Dest();
34) 
35) private:
36)   /// copy constructor disabled
37)   Dest(const Dest &that);
38) 
39)   /// assignment operator disabled
40)   const Dest & operator=(const Dest &that);
41) 
42) public:
43)   /// check for update of configuration
44)   void updateConfig();
45) 
46)   /**
47)    * @brief set current protocol data
Stefan Schuermans simplified sender module a...

Stefan Schuermans authored 12 years ago

48)    * @param[in] pData protocol data to send to address (empty if unkown)
Stefan Schuermans sender static destination n...

Stefan Schuermans authored 12 years ago

49)    */
50)   void setProtoData(const std::string *pData);
51) 
52) protected:
53)   /// (re-)get address
54)   void getAddr();
55) 
56)   /**
57)    * @brief send protocol data to address
Stefan Schuermans simplified sender module a...

Stefan Schuermans authored 12 years ago

58)    * @param[in] pData protocol data to send to address (empty if unknown)
Stefan Schuermans sender static destination n...

Stefan Schuermans authored 12 years ago

59)    */
60)   void send(const std::string *pData);
61) 
62) protected:
Stefan Schuermans converted sender to use lis...

Stefan Schuermans authored 12 years ago

63)   Sender            &m_sender;  ///< owning sender object
64)   std::string       m_name;     ///< destination name
65)   AddrFile          m_fileAddr; ///< address file
66)   const std::string *m_pData;   ///< protocol data to send to address