diff options
Diffstat (limited to 'glcddrivers/network.h')
-rw-r--r-- | glcddrivers/network.h | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/glcddrivers/network.h b/glcddrivers/network.h new file mode 100644 index 0000000..4664f4c --- /dev/null +++ b/glcddrivers/network.h @@ -0,0 +1,56 @@ +/* + * GraphLCD driver library + * + * network.h - Network output device + * Output goes to a network client. + * + * This file is released under the GNU General Public License. Refer + * to the COPYING file distributed with this package. + * + * (c) 2004 Andreas Regel <andreas.regel AT powarman.de> + */ + +#ifndef _GLCDDRIVERS_NETWORK_H_ +#define _GLCDDRIVERS_NETWORK_H_ + +#include <pthread.h> + +#include "driver.h" + + +namespace GLCD +{ + +class cDriverConfig; + +class cDriverNetwork : public cDriver +{ +private: + unsigned char * newLCD; + unsigned char * oldLCD; + cDriverConfig * config; + cDriverConfig * oldConfig; + int lineSize; + bool running; + pthread_t childTid; + int clientSocket; + bool clientConnected; + + int CheckSetup(); + static void * ServerThread(cDriverNetwork * Driver); + +public: + cDriverNetwork(cDriverConfig * config); + virtual ~cDriverNetwork(); + + virtual int Init(); + virtual int DeInit(); + + virtual void Clear(); + virtual void Set8Pixels(int x, int y, unsigned char data); + virtual void Refresh(bool refreshAll = false); +}; + +} // end of namespace + +#endif |