iMONDisplayAPI.h
author StephaneLenclud
Mon, 28 Apr 2014 20:02:08 +0200
changeset 5 d16669f69f0d
permissions -rw-r--r--
IdwTest:Adding support for sending text to VFD.
     1 #ifndef __IMON_DISPLAY_API_H__
     2 #define __IMON_DISPLAY_API_H__
     3 
     4 ////////////////////////////////////
     5 //	includes
     6 /** iMONDisplayDefines.h
     7 This header file defines several enumerations. Open this file and check the definition and usage of enumerations and structures*/
     8 #include <windows.h>
     9 #include "iMONDisplayDefines.h"
    10 
    11 #ifdef IMON_DISPLAY_API_EXPORT
    12 #define IMONDSPAPI __declspec(dllexport)
    13 #else
    14 #define IMONDSPAPI __declspec(dllimport)
    15 #endif
    16 
    17 #ifdef __cplusplus
    18 extern "C" 
    19 {
    20 #endif	//__cplusplus
    21 
    22 	/////////////////////////////////////
    23 	/////	Interfaces
    24 	/**DSPResult IMON_Display_Init(HWND hwndNoti, UINT uMsgNotification)
    25 	@brief	This function should be called to use other functions in iMON Display API.\n 
    26 				When the caller application calls this function, API tries to request Display Plug-in Mode to iMON.
    27 	@param	[in] hwndNoti	API will send/post message to this handle.
    28 	@param	[in] uMsgNotification	API will send/post message to hwndNoti with this message identifier.
    29 	@return	This function will return one of DSPResult enumeration value.\n
    30 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_INVALIDARG or DSP_E_OUTOFMEMORY can be returned when error occurs.*/
    31 	IMONDSPAPI DSPResult IMON_Display_Init(HWND hwndNoti, UINT uMsgNotification);
    32 
    33 	/**DSPResult IMON_Display_Uninit()
    34 	@brief	This function should be called when the caller application need not use this API any more.\n 
    35 				If this function call is missed, iMON can't display other information.\n
    36 	@return	This function will return one of DSPResult enumeration value.\n
    37 				DSP_SUCCEEDED will be returned if succeeded.*/
    38 	IMONDSPAPI DSPResult IMON_Display_Uninit();
    39 
    40 	/**DSPResult IMON_Display_IsInited()
    41 	@brief	This function can be used when the caller application wants to know if API is initialized.\n 
    42 	@return	This function will return one of DSPResult enumeration value.\n
    43 				If API is initialized, this call will return DSP_S_INITED. Otherwise DSP_S_NOT_INITED will be returned.*/
    44 	IMONDSPAPI DSPResult IMON_Display_IsInited();
    45 
    46 	/**DSPResult IMON_Display_IsPluginModeEnabled()
    47 	@brief	This function can be used when the caller application wants to know if API can control iMON display.\n
    48 	@return	This function will return one of DSPResult enumeration value.\n
    49 				If API can control iMON display, this call will return DSP_S_IN_PLUGIN_MODE. Otherwise DSP_S_NOT_IN_PLUGIN_MODE will be returned.*/
    50 	IMONDSPAPI DSPResult IMON_Display_IsPluginModeEnabled();
    51 
    52 
    53 	/**DSPResult IMON_Display_SetVfdText(LPCTSTR lpsz1stLine, LPCTSTR lpsz2ndLine)
    54 	@brief	This function can be used when the caller application wants to display text data on VFD module.\n
    55 	@param	[in] lpsz1stLine	This string data will be displayed on the 1st line of VFD module.\n
    56 									It doesn't support multi-byte character and if string data is longer than 16 characters, it displays 16 characters from the first.\n
    57 	@param	[in] lpsz2ndLine	This string data will be displayed on the 2nd line of VFD module.\n
    58 									It doesn't support multi-byte character and if string data is longer than 16 characters, it displays 16 characters from the first.\n
    59 	@return	This function will return one of DSPResult enumeration value.\n
    60 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_POINTER, DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
    61 	IMONDSPAPI DSPResult IMON_Display_SetVfdText(LPCTSTR lpsz1stLine, LPCTSTR lpsz2ndLine);
    62 
    63 	/**DSPResult IMON_Display_SetVfdEqData(PDSPEQDATA pEqData)
    64 	@brief	This function can be used when the caller application wants to display equalizer data on VFD module.\n
    65 	@param	[in] pEqData	Pointer of DSPEQDATA structure. The caller application should fill this structure with the equalizer data for 16 bands.\n
    66 	@return	This function will return one of DSPResult enumeration value.\n
    67 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_POINTER, DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
    68 	IMONDSPAPI DSPResult IMON_Display_SetVfdEqData(PDSPEQDATA pEqData);
    69 
    70 
    71 	/**DSPResult IMON_Display_SetLcdText(LPCTSTR lpszText)
    72 	@brief	This function can be used when the caller application wants to display text data on LCD module.\n
    73 	@param	[in] lpszText	This string data will be displayed on the LCD module.\n
    74 									It supports multi-byte character and if string data is longer than display area, it will start to scroll.\n
    75 									When text scrolling is finished, API will notify it with DSPNotifyCode enumeration value, DSPNM_LCD_TEXT_SCROLL_DONE.\n
    76 	@return	This function will return one of DSPResult enumeration value.\n
    77 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_POINTER, DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
    78 	IMONDSPAPI DSPResult IMON_Display_SetLcdText(LPCTSTR lpszText);
    79 
    80 	/**DSPResult IMON_Display_SetLcdEqData(PDSPEQDATA pEqDataL, PDSPEQDATA pEqDataR)
    81 	@brief	This function can be used when the caller application wants to display equalizer data on LCD module.\n
    82 	@param	[in] pEqDataL    Pointer of DSPEQDATA structure. This parameter represents equalizer data of left channel.\n
    83 								 The caller application should fill this structure with the equalizer data of left channel for 16 bands.\n
    84 	@param	[in] pEqDataR    Pointer of DSPEQDATA structure. This parameter represents equalizer data of right channel.\n
    85 								 The caller application should fill this structure with the equalizer data of right channel for 16 bands.\n
    86 	@return	This function will return one of DSPResult enumeration value.\n
    87 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_POINTER, DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
    88 	IMONDSPAPI DSPResult IMON_Display_SetLcdEqData(PDSPEQDATA pEqDataL, PDSPEQDATA pEqDataR);
    89 
    90 
    91 	/**DSPResult IMON_Display_SetLcdAllIcons(BOOL bOn)
    92 	@brief	This function can be used when the caller application wants to turn on/off all icons on LCD module.\n
    93 	@param	[in] bOn    If this value is TRUE, iMON will turn on all icons. Otherwise, iMON will turn off all icons.\n
    94 	@return	This function will return one of DSPResult enumeration value.\n
    95 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
    96 	IMONDSPAPI DSPResult IMON_Display_SetLcdAllIcons(BOOL bOn);
    97 
    98 	/**DSPResult IMON_Display_SetLcdOrangeIcon(BYTE btIconData1, BYTE btIconData2)
    99 	@brief	This function can be used when the caller application wants to turn on/off orange shaped disk icons on the upper left part of LCD module.\n
   100 				Disk icons consist of 8 pieces of orange and orange peel.\n
   101 	@param	[in] btIconData1    Each bit represents one of icons shaped the piece of orange.\n
   102 									MSB is used for the piece placed on top and the remaining bits are for the piece placed in CCW from top.\n
   103 	@param	[in] btIconData2    MSB represents the orange peel shaped icon. Other bits are not used.\n
   104 	@return	This function will return one of DSPResult enumeration value.\n
   105 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
   106 	IMONDSPAPI DSPResult IMON_Display_SetLcdOrangeIcon(BYTE btIconData1, BYTE btIconData2);
   107 
   108 	/**DSPResult IMON_Display_SetLcdMediaTypeIcon(BYTE btIconData)
   109 	@brief	This function can be used when the caller application wants to turn on/off media type icons on the upper part of LCD module.\n
   110 	@param	[in] btIconData    Each bit represents one of media type icons. From MSB each bit represents MUSIC, MOVIE, PHOTO, CD/DVD, TV, WEBCASTING and NEWS/WEATHER icon.\n
   111 	@return	This function will return one of DSPResult enumeration value.\n
   112 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
   113 	IMONDSPAPI DSPResult IMON_Display_SetLcdMediaTypeIcon(BYTE btIconData);
   114 
   115 	/**DSPResult IMON_Display_SetLcdSpeakerIcon(BYTE btIconData1, BYTE btIconData2)
   116 	@brief	This function can be used when the caller application wants to turn on/off speaker icons on the upper right part of LCD module.\n
   117 	@param	[in] btIconData1    Each bit represents one of speaker icons.\nFrom MSB each bit represents L, C, R, SL, LFE, SR, RL and SPDIF icon.
   118 	@param	[in] btIconData2    MSB represents RR icon. Other bits are not used.\n
   119 	@return	This function will return one of DSPResult enumeration value.\n
   120 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
   121 	IMONDSPAPI DSPResult IMON_Display_SetLcdSpeakerIcon(BYTE btIconData1, BYTE btIconData2);
   122 
   123 	/**DSPResult IMON_Display_SetLcdVideoCodecIcon(BYTE btIconData)
   124 	@brief	This function can be used when the caller application wants to turn on/off codec icons for video file on the lower part of LCD module.\n
   125 	@param	[in] btIconData    Each bit represents one of video codec icons. From MSB each bit represents MPG, DIVX, XVID, WMV, MPG, AC3, DTS and WMA icon.\n
   126 	@return	This function will return one of DSPResult enumeration value.\n
   127 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
   128 	IMONDSPAPI DSPResult IMON_Display_SetLcdVideoCodecIcon(BYTE btIconData);
   129 
   130 	/**DSPResult IMON_Display_SetLcdAudioCodecIcon(BYTE btIconData)
   131 	@brief	This function can be used when the caller application wants to turn on/off codec icons for audio file on the lower part of LCD module.\n
   132 	@param	[in] btIconData    Each bit represents one of audio codec icons. From MSB each bit represents MP3, OGG, WMA and WAV icon.\n
   133 	@return	This function will return one of DSPResult enumeration value.\n
   134 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
   135 	IMONDSPAPI DSPResult IMON_Display_SetLcdAudioCodecIcon(BYTE btIconData);
   136 
   137 	/**DSPResult IMON_Display_SetLcdAspectRatioIcon(BYTE btIconData)
   138 	@brief	This function can be used when the caller application wants to turn on/off aspect ratio icons on the lower right part of LCD module.\n
   139 	@param	[in] btIconData    Each bit represents one of aspect ratio icons. From MSB each bit represents SRC, FIT, TV, HDTV, SCR1 and SCR2 icon.\n
   140 	@return	This function will return one of DSPResult enumeration value.\n
   141 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
   142 	IMONDSPAPI DSPResult IMON_Display_SetLcdAspectRatioIcon(BYTE btIconData);
   143 
   144 	/**DSPResult IMON_Display_SetLcdEtcIcon(BYTE btIconData)
   145 	@brief	This function can be used when the caller application wants to turn on/off icons on the lower left part of LCD module.\n
   146 	@param	[in] btIconData    Each bit represents icon. From MSB each bit represents REPEAT, SHUFFLE, ALARM, REC, VOL and TIME icon.\n
   147 	@return	This function will return one of DSPResult enumeration value.\n
   148 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
   149 	IMONDSPAPI DSPResult IMON_Display_SetLcdEtcIcon(BYTE btIconData);
   150 
   151 	/**DSPResult IMON_Display_SetLcdProgress(int nCurPos, int nTotal)
   152 	@brief	This function can be used when the caller application wants to display progress bar on the upper and lower left part of text area of LCD module.\n
   153 	@param	[in] nCurPos   It represents the current position of progress bar.\n
   154 	@param	[in] nTotal    It represents the total length of progress bar.\n
   155 	@return	This function will return one of DSPResult enumeration value.\n
   156 				DSP_SUCCEEDED will be returned if succeeded. DSP_E_NOT_INITED or DSP_E_FAIL can be returned if failed.*/
   157 	IMONDSPAPI DSPResult IMON_Display_SetLcdProgress(int nCurPos, int nTotal);
   158 
   159 #ifdef __cplusplus
   160 }
   161 #endif	//__cplusplus
   162 
   163 #endif	//__IMON_DISPLAY_API_H__