| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 | #ifndef _NULLSOFT_WINAMP_DEVICES_DEVICE_CONNECTION_HEADER#define _NULLSOFT_WINAMP_DEVICES_DEVICE_CONNECTION_HEADER#if defined(_MSC_VER) && (_MSC_VER >= 1020)#pragma once#endif#include "./ifc_deviceconnection.h"#include "./ifc_deviceconnectioneditor.h"#include "./ifc_deviceiconstore.h"#include "./deviceIconStore.h"#include <bfc/multipatch.h>#define MPIID_DEVICECONNECTION			10#define MPIID_DEVICECONNECTIONEDITOR	20class DeviceConnection :	public MultiPatch<MPIID_DEVICECONNECTION, ifc_deviceconnection>,							public MultiPatch<MPIID_DEVICECONNECTIONEDITOR, ifc_deviceconnectioneditor>{protected:	DeviceConnection();	~DeviceConnection();public:	static HRESULT CreateInstance(const char *name,  DeviceConnection **instance);public:	/* Dispatchable */	size_t AddRef();	size_t Release();	int QueryInterface(GUID interface_guid, void **object);	/* ifc_deviceconnection */	const char *GetName(); 	HRESULT GetIcon(wchar_t *buffer, size_t bufferSize, int width, int height);	HRESULT GetDisplayName(wchar_t *buffer, size_t bufferSize);	/* ifc_deviceconnectioneditor */	HRESULT GetIconStore(ifc_deviceiconstore **store);	HRESULT SetDisplayName(const wchar_t *displayName);public:	void Lock();	void Unlock();protected:	size_t ref;	char *name;	wchar_t *displayName;	DeviceIconStore *iconStore;	CRITICAL_SECTION lock;protected:	RECVS_MULTIPATCH;};#endif // _NULLSOFT_WINAMP_DEVICES_DEVICE_CONNECTION_HEADER
 |