2 * AtmoConnection.h: generic/abstract class defining all methods for the
3 * communication with the hardware
5 * See the README.txt file for copyright information and how to reach the author(s).
9 #ifndef _AtmoConnection_h_
10 #define _AtmoConnection_h_
15 #include "AtmoConfig.h"
16 #include "AtmoChannelAssignment.h"
18 #if defined(_ATMO_VLC_PLUGIN_)
19 # include <vlc_common.h>
20 # include <vlc_threads.h>
28 CAtmoConfig
*m_pAtmoConfig
;
30 #if defined(_ATMO_VLC_PLUGIN_)
31 vlc_mutex_t m_AccessConnection
;
33 CRITICAL_SECTION m_AccessConnection
;
36 int *m_ChannelAssignment
;
37 int m_NumAssignedChannels
;
44 CAtmoConnection(CAtmoConfig
*cfg
);
45 virtual ~CAtmoConnection(void);
46 virtual ATMO_BOOL
OpenConnection() { return false; }
47 virtual void CloseConnection() {};
48 virtual ATMO_BOOL
isOpen(void) { return false; }
50 virtual ATMO_BOOL
SendData(pColorPacket data
) { return false; }
52 virtual ATMO_BOOL
setChannelColor(int channel
, tRGBColor color
) { return false; }
53 virtual ATMO_BOOL
setChannelValues(int numValues
,unsigned char *channel_values
) { return false; }
55 virtual ATMO_BOOL
HardwareWhiteAdjust(int global_gamma
,
63 ATMO_BOOL storeToEeprom
) { return false; }
65 #if !defined(_ATMO_VLC_PLUGIN_)
66 virtual ATMO_BOOL
ShowConfigDialog(HINSTANCE hInst
, HWND parent
, CAtmoConfig
*cfg
);
69 virtual void SetChannelAssignment(CAtmoChannelAssignment
*ca
);
71 virtual int getNumChannels() { return 0; }
72 virtual char *getChannelName(int ch
) { return NULL
; }
74 virtual const char *getDevicePath() { return "none"; }
76 virtual ATMO_BOOL
CreateDefaultMapping(CAtmoChannelAssignment
*ca
) { return false; }