MiniDisplay.h
changeset 32 2c844ef1ff4b
parent 31 0a2b658e0d56
child 33 fc42477ae80b
     1.1 --- a/MiniDisplay.h	Thu Feb 05 22:26:15 2015 +0100
     1.2 +++ b/MiniDisplay.h	Sat Feb 07 13:50:11 2015 +0100
     1.3 @@ -37,7 +37,7 @@
     1.4  
     1.5  typedef enum
     1.6      {
     1.7 -    EMiniDisplayRequestNone,
     1.8 +    EMiniDisplayRequestNone=0,
     1.9      EMiniDisplayRequestDeviceId,
    1.10      EMiniDisplayRequestFirmwareRevision,
    1.11      EMiniDisplayRequestPowerSupplyStatus
    1.12 @@ -45,6 +45,23 @@
    1.13  TMiniDisplayRequest;
    1.14  
    1.15  /**
    1.16 +Define the various type of icons we support.
    1.17 +For binary compatibility new entries must be added at the end.
    1.18 +*/
    1.19 +typedef enum
    1.20 +    {
    1.21 +    EMiniDisplayIconNetwork=0,
    1.22 +    EMiniDisplayIconEmail,
    1.23 +    EMiniDisplayIconMute,
    1.24 +    EMiniDisplayIconVolume,
    1.25 +	EMiniDisplayIconVolumeLabel,
    1.26 +	EMiniDisplayIconPlay,
    1.27 +	EMiniDisplayIconPause,
    1.28 +	EMiniDisplayIconRecording
    1.29 +    }
    1.30 +TMiniDisplayIconType;
    1.31 +
    1.32 +/**
    1.33  Attempt to establish a connection to with a display of the given type.
    1.34  Supports display auto-detection too.
    1.35  
    1.36 @@ -252,22 +269,33 @@
    1.37  */
    1.38  extern "C" MDAPI bool MiniDisplaySupportClock(MiniDisplayDevice aDevice);
    1.39  
    1.40 +/**
    1.41 +Tells how many icons of the given are supported by the specified device.
    1.42 +Typically icons on a VFD hardware have several segments that can be light up separately.
    1.43 +@param [IN] The device to apply this command to.
    1.44 +@param [IN] The type of icon we are interested in.
    1.45 +@return The number of icons of this kind this display supports.
    1.46 +*/
    1.47 +extern "C" MDAPI int MiniDisplayIconCount(MiniDisplayDevice aDevice, TMiniDisplayIconType aIcon);
    1.48  
    1.49 -extern "C" MDAPI int MiniDisplayIconNetworkCount(MiniDisplayDevice aDevice);
    1.50 -extern "C" MDAPI int MiniDisplayIconEmailCount(MiniDisplayDevice aDevice);
    1.51 -extern "C" MDAPI int MiniDisplayIconMuteCount(MiniDisplayDevice aDevice);
    1.52 -extern "C" MDAPI int MiniDisplayIconVolumeCount(MiniDisplayDevice aDevice);
    1.53 -extern "C" MDAPI int MiniDisplayIconPlayCount(MiniDisplayDevice aDevice);
    1.54 -extern "C" MDAPI int MiniDisplayIconPauseCount(MiniDisplayDevice aDevice);
    1.55 -extern "C" MDAPI int MiniDisplayIconRecordingCount(MiniDisplayDevice aDevice);
    1.56 -//
    1.57 -extern "C" MDAPI void MiniDisplaySetIconNetwork(MiniDisplayDevice aDevice, int aIndex, int aStatus);
    1.58 -extern "C" MDAPI void MiniDisplaySetIconEmail(MiniDisplayDevice aDevice, int aIndex, int aStatus);
    1.59 -extern "C" MDAPI void MiniDisplaySetIconMute(MiniDisplayDevice aDevice, int aIndex, int aStatus);
    1.60 -extern "C" MDAPI void MiniDisplaySetIconVolume(MiniDisplayDevice aDevice, int aIndex, int aStatus);
    1.61 -extern "C" MDAPI void MiniDisplaySetIconPlay(MiniDisplayDevice aDevice, int aIndex, int aStatus);
    1.62 -extern "C" MDAPI void MiniDisplaySetIconPause(MiniDisplayDevice aDevice, int aIndex, int aStatus);
    1.63 -extern "C" MDAPI void MiniDisplaySetIconRecording(MiniDisplayDevice aDevice, int aIndex, int aStatus);
    1.64 +/**
    1.65 +Tells how many status the icon of the specified type supports for the given device.
    1.66 +Status are typically brightness level on VFD hardware.
    1.67 +Most icon will just support 2 status: 0 for Off and 1 for On.
    1.68 +@param [IN] The device to apply this command to.
    1.69 +@param [IN] The type of icon we are interested in.
    1.70 +@return The number of icons of this kind this display supports.
    1.71 +*/
    1.72 +extern "C" MDAPI int MiniDisplayIconStatusCount(MiniDisplayDevice aDevice, TMiniDisplayIconType aIcon);
    1.73 +
    1.74 +/**
    1.75 +Set the status of the given icon for the specified device.
    1.76 +@param [IN] The device to apply this command to.
    1.77 +@param [IN] The type of icon we are interested in.
    1.78 +@param [IN] The index of the icon of the given type.
    1.79 +@param [IN] The status the icon is to assume.
    1.80 +*/
    1.81 +extern "C" MDAPI void MiniDisplaySetIconStatus(MiniDisplayDevice aDevice, TMiniDisplayIconType aIcon, int aIndex, int aStatus);
    1.82  
    1.83  
    1.84  #endif