API/iMONDisplayDefines.h
author sl
Sat, 15 Mar 2014 13:03:01 +0100
changeset 12 2f70b4447d70
permissions -rw-r--r--
Upgrade solution from Express to VS2012
StephaneLenclud@9
     1
#ifndef __IMON_DISPLAY_API_DEFINES_H__
StephaneLenclud@9
     2
#define __IMON_DISPLAY_API_DEFINES_H__
StephaneLenclud@9
     3
StephaneLenclud@9
     4
//////////////////////////////////////////////////
StephaneLenclud@9
     5
//////////////////////////////////////////////////
StephaneLenclud@9
     6
//	Enumerations
StephaneLenclud@9
     7
StephaneLenclud@9
     8
/**DSPResult
StephaneLenclud@9
     9
@brief	These enumeration values represent the returned result for iMON Display API function calls.\n
StephaneLenclud@9
    10
			All iMON Display API function calls return one of this result values.\n
StephaneLenclud@9
    11
			For meaning of each result, refer the comment of each line below*/
StephaneLenclud@9
    12
enum DSPResult
StephaneLenclud@9
    13
{
StephaneLenclud@9
    14
	DSP_SUCCEEDED = 0,				//// Function Call Succeeded Without Error
StephaneLenclud@9
    15
	DSP_E_FAIL,						//// Unspecified Failure
StephaneLenclud@9
    16
	DSP_E_OUTOFMEMORY,				//// Failed to Allocate Necessary Memory
StephaneLenclud@9
    17
	DSP_E_INVALIDARG,				//// One or More Arguments Are Not Valid
StephaneLenclud@9
    18
	DSP_E_NOT_INITED,				//// API is Not Initialized
StephaneLenclud@9
    19
	DSP_E_POINTER,					//// Pointer is Not Valid
StephaneLenclud@9
    20
StephaneLenclud@9
    21
	DSP_S_INITED = 0x1000,			//// API is Initialized
StephaneLenclud@9
    22
	DSP_S_NOT_INITED,				//// API is Not Initialized
StephaneLenclud@9
    23
	DSP_S_IN_PLUGIN_MODE,			//// API Can Control iMON Display (Display Plug-in Mode)
StephaneLenclud@9
    24
	DSP_S_NOT_IN_PLUGIN_MODE,		//// API Can't Control iMON Display
StephaneLenclud@9
    25
};
StephaneLenclud@9
    26
StephaneLenclud@9
    27
StephaneLenclud@9
    28
/**DSPNInitResult
StephaneLenclud@9
    29
@brief	These enumeration values represent the result status for requesting Display Plug-in Mode to iMON.\n
StephaneLenclud@9
    30
			iMON Display API notifies one of this result values to the caller application after requesting Display Plug-in Mode to iMON.\n
StephaneLenclud@9
    31
			For more information, refer the comment of each line below*/
StephaneLenclud@9
    32
enum DSPNInitResult
StephaneLenclud@9
    33
{
StephaneLenclud@9
    34
	DSPN_SUCCEEDED = 0,				//// Display Plug-in Mode is Initialized Successfully
StephaneLenclud@9
    35
	DSPN_ERR_IN_USED = 0x0100,		//// Display Plug-in is Already Used by Other Application
StephaneLenclud@9
    36
	DSPN_ERR_HW_DISCONNECTED,		//// iMON HW is Not Connected
StephaneLenclud@9
    37
	DSPN_ERR_NOT_SUPPORTED_HW,		//// The Connected iMON HW doesn't Support Display Plug-in
StephaneLenclud@9
    38
	DSPN_ERR_PLUGIN_DISABLED,		//// Display Plug-in Mode Option is Disabled
StephaneLenclud@9
    39
	DSPN_ERR_IMON_NO_REPLY,			//// The Latest iMON is Not Installed or iMON Not Running
StephaneLenclud@9
    40
	DSPN_ERR_UNKNOWN = 0x0200,		//// Unknown Failure
StephaneLenclud@9
    41
};
StephaneLenclud@9
    42
StephaneLenclud@9
    43
StephaneLenclud@9
    44
/**DSPType
StephaneLenclud@9
    45
@brief	These enumeration values represent display type.\n
StephaneLenclud@9
    46
			Currently iMON Display API supports VFD and LCD products.*/
StephaneLenclud@9
    47
enum DSPType
StephaneLenclud@9
    48
{
StephaneLenclud@9
    49
	DSPN_DSP_NONE	= 0,
StephaneLenclud@9
    50
	DSPN_DSP_VFD	= 0x01,			//// VFD products
StephaneLenclud@9
    51
	DSPN_DSP_LCD	= 0x02,			//// LCD products
StephaneLenclud@9
    52
};
StephaneLenclud@9
    53
StephaneLenclud@9
    54
StephaneLenclud@9
    55
/**DSPNotifyCode
StephaneLenclud@9
    56
@brief	These enumeration values represent the notification codes.\n
StephaneLenclud@9
    57
			iMON Display API will send or post message to the caller application.\n
StephaneLenclud@9
    58
			The caller application should assign the message and the winodw handle to receivce message with IMON_Display_Init fucntion.\n
StephaneLenclud@9
    59
			These enumeration values are used with WPARAM parameter of the message.\n 
StephaneLenclud@9
    60
			For more information, see the explanation of each notification code below*/
StephaneLenclud@9
    61
enum DSPNotifyCode
StephaneLenclud@9
    62
{
StephaneLenclud@9
    63
	/**DSPNM_PLUGIN_SUCCEED
StephaneLenclud@9
    64
	@brief	When API succeeds to get the control for the display, API will post caller-specified message with DSPNM_PLUGIN_SUCCEED as WPARAM parameter.\n
StephaneLenclud@9
    65
				LPARAM represents DSPType. This value can be 0x01 (VFD), 0x02 (LCD) or 0x03 (VFD+LCD).*/
StephaneLenclud@9
    66
	DSPNM_PLUGIN_SUCCEED = 0,
StephaneLenclud@9
    67
StephaneLenclud@9
    68
	/**DSPNM_PLUGIN_FAILED
StephaneLenclud@9
    69
	@brief	When API fails to get the control for the display, API will post caller-specified message with DSPNM_PLUGIN_FAILED as WPARAM parameter.\n
StephaneLenclud@9
    70
				LPARAM represents error code with DSPNResult.*/
StephaneLenclud@9
    71
	DSPNM_PLUGIN_FAILED,
StephaneLenclud@9
    72
StephaneLenclud@9
    73
	/**DSPNM_IMON_RESTARTED
StephaneLenclud@9
    74
	@brief	When iMON starts, API will post caller-specified message with DSPNM_IMON_RESTARTED as WPARAM parameter.\n
StephaneLenclud@9
    75
				LPARAM represents DSPType. This value can be 0 (No Display), 0x01 (VFD), 0x02 (LCD) or 0x03 (VFD+LCD).*/
StephaneLenclud@9
    76
	DSPNM_IMON_RESTARTED,
StephaneLenclud@9
    77
StephaneLenclud@9
    78
	/**DSPNM_IMON_CLOSED
StephaneLenclud@9
    79
	@brief	When iMON closed, API will post caller-specified message with DSPNM_IMON_CLOSED as WPARAM parameter.\n
StephaneLenclud@9
    80
				LPARAM is not used.*/
StephaneLenclud@9
    81
	DSPNM_IMON_CLOSED,
StephaneLenclud@9
    82
StephaneLenclud@9
    83
	/**DSPNM_HW_CONNECTED
StephaneLenclud@9
    84
	@brief	When iMON HW newly connected, API will post caller-specified message with DSPNM_HW_CONNECTED as WPARAM parameter.\n
StephaneLenclud@9
    85
				LPARAM represents DSPType. This value can be 0 (No Display), 0x01 (VFD), 0x02 (LCD) or 0x03 (VFD+LCD).*/
StephaneLenclud@9
    86
	DSPNM_HW_CONNECTED,
StephaneLenclud@9
    87
StephaneLenclud@9
    88
	/**DSPNM_HW_DISCONNECTED
StephaneLenclud@9
    89
	@brief	When iMON HW disconnected, API will post caller-specified message with DSPNM_HW_DISCONNECTED as WPARAM parameter.\n
StephaneLenclud@9
    90
				LPARAM is DSPNResult value, DSPN_ERR_HW_DISCONNECTED.*/
StephaneLenclud@9
    91
	DSPNM_HW_DISCONNECTED,
StephaneLenclud@9
    92
StephaneLenclud@9
    93
StephaneLenclud@9
    94
	/**DSPNM_LCD_TEXT_SCROLL_DONE
StephaneLenclud@9
    95
	@brief	When iMON LCD finishes scrolling Text, API will post caller-specified message with DSPNM_LCD_TEXT_SCROLL_DONE as WPARAM parameter.\n
StephaneLenclud@9
    96
				The caller application may need to know when text scroll is finished, for sending next text.\n
StephaneLenclud@9
    97
				LPARAM is not used.*/
StephaneLenclud@9
    98
	DSPNM_LCD_TEXT_SCROLL_DONE = 0x1000,
StephaneLenclud@9
    99
};
StephaneLenclud@9
   100
StephaneLenclud@9
   101
//////////////////////////////////////////////////
StephaneLenclud@9
   102
//////////////////////////////////////////////////
StephaneLenclud@9
   103
//	Structure
StephaneLenclud@9
   104
StephaneLenclud@9
   105
/**DspEqData
StephaneLenclud@9
   106
@brief	This structure contains Equalizer data for 16 bands. 
StephaneLenclud@9
   107
@param	BandData    It represents Equalizer data for 16 bands. Its range is from 0 to 100.*/
StephaneLenclud@9
   108
typedef struct DspEqData
StephaneLenclud@9
   109
{
StephaneLenclud@9
   110
	int BandData[16];
StephaneLenclud@9
   111
StephaneLenclud@9
   112
} DSPEQDATA, *PDSPEQDATA;
StephaneLenclud@9
   113
StephaneLenclud@9
   114
#endif	//__IMON_DISPLAY_API_DEFINES_H__