MiniDisplay.cpp
author sl
Thu, 21 Aug 2014 21:30:38 +0200
changeset 8 5a9dbbc40c6b
parent 7 8bac7aac665c
child 10 1c3a4964a5bd
permissions -rw-r--r--
Ground work to support multiple type of display, notably GP1212A02
sl@2
     1
sl@2
     2
#include "MiniDisplay.h"
sl@8
     3
#include "FutabaGP1212A01.h"
sl@2
     4
sl@2
     5
sl@2
     6
sl@2
     7
sl@2
     8
sl@2
     9
//Open & Close functions
sl@8
    10
MiniDisplayDevice MiniDisplayOpen(TMiniDisplayType aType)
sl@2
    11
	{
sl@2
    12
	GP1212A01A* device=NULL;
sl@2
    13
	device=new GP1212A01A();
sl@2
    14
	int success = device->Open();
sl@2
    15
	if (!success)
sl@2
    16
		{
sl@2
    17
		delete device;
sl@2
    18
		return NULL;
sl@2
    19
		}
sl@2
    20
sl@2
    21
	return device;
sl@2
    22
	}
sl@2
    23
sl@2
    24
void MiniDisplayClose(MiniDisplayDevice aDevice)
sl@4
    25
	{
sl@7
    26
	delete ((GP1212A01A*)aDevice);
sl@2
    27
	}
sl@2
    28
sl@2
    29
sl@2
    30
void MiniDisplayClear(MiniDisplayDevice aDevice)
sl@2
    31
	{
sl@2
    32
	if (!aDevice)
sl@2
    33
		{
sl@2
    34
		return;
sl@2
    35
		}
sl@2
    36
sl@2
    37
	((GP1212A01A*)aDevice)->SetAllPixels(0x00);
sl@2
    38
	}
sl@2
    39
sl@2
    40
sl@2
    41
void MiniDisplayFill(MiniDisplayDevice aDevice)
sl@2
    42
	{
sl@2
    43
	if (!aDevice)
sl@2
    44
		{
sl@2
    45
		return;
sl@2
    46
		}
sl@4
    47
sl@2
    48
	((GP1212A01A*)aDevice)->SetAllPixels(0xFF);
sl@2
    49
	}
sl@2
    50
sl@2
    51
sl@2
    52
void MiniDisplaySwapBuffers(MiniDisplayDevice aDevice)
sl@2
    53
	{
sl@2
    54
	if (!aDevice)
sl@2
    55
		{
sl@2
    56
		return;
sl@2
    57
		}
sl@4
    58
sl@2
    59
	((GP1212A01A*)aDevice)->SwapBuffers();
sl@2
    60
	}
sl@2
    61
sl@2
    62
//-------------------------------------------------------------
sl@2
    63
int MiniDisplayMaxBrightness(MiniDisplayDevice aDevice)
sl@2
    64
	{
sl@2
    65
	if (!aDevice)
sl@2
    66
		{
sl@2
    67
		return 0;
sl@2
    68
		}
sl@2
    69
sl@2
    70
	return ((GP1212A01A*)aDevice)->MaxBrightness();
sl@2
    71
	}
sl@2
    72
sl@2
    73
//-------------------------------------------------------------
sl@2
    74
int MiniDisplayMinBrightness(MiniDisplayDevice aDevice)
sl@2
    75
	{
sl@2
    76
	if (!aDevice)
sl@2
    77
		{
sl@2
    78
		return 0;
sl@2
    79
		}
sl@2
    80
sl@2
    81
	return ((GP1212A01A*)aDevice)->MinBrightness();
sl@2
    82
	}
sl@2
    83
sl@2
    84
//-------------------------------------------------------------
sl@2
    85
void MiniDisplaySetBrightness(MiniDisplayDevice aDevice, int aBrightness)
sl@2
    86
	{
sl@2
    87
	if (!aDevice)
sl@2
    88
		{
sl@2
    89
		return;
sl@2
    90
		}
sl@2
    91
sl@2
    92
	((GP1212A01A*)aDevice)->SetBrightness(aBrightness);
sl@2
    93
	}
sl@2
    94
sl@3
    95
//-------------------------------------------------------------
sl@3
    96
int MiniDisplayWidthInPixels(MiniDisplayDevice aDevice)
sl@3
    97
	{
sl@3
    98
	if (!aDevice)
sl@3
    99
		{
sl@3
   100
		return 0;
sl@3
   101
		}
sl@3
   102
sl@3
   103
	return ((GP1212A01A*)aDevice)->WidthInPixels();
sl@3
   104
	}
sl@3
   105
sl@3
   106
//-------------------------------------------------------------
sl@3
   107
int MiniDisplayHeightInPixels(MiniDisplayDevice aDevice)
sl@3
   108
	{
sl@3
   109
	if (!aDevice)
sl@3
   110
		{
sl@3
   111
		return 0;
sl@3
   112
		}
sl@3
   113
sl@3
   114
	return ((GP1212A01A*)aDevice)->HeightInPixels();
sl@3
   115
	}
sl@3
   116
sl@3
   117
//-------------------------------------------------------------
sl@3
   118
void MiniDisplaySetPixel(MiniDisplayDevice aDevice, int aX, int aY, int aValue)
sl@3
   119
	{
sl@3
   120
	//aValue&=0x00FFFFFF; //Filter out alpha component
sl@3
   121
	return ((GP1212A01A*)aDevice)->SetPixel(aX,aY,aValue);
sl@3
   122
	}
sl@3
   123
sl@4
   124
//-------------------------------------------------------------
sl@4
   125
wchar_t* MiniDisplayVendor(MiniDisplayDevice aDevice)
sl@4
   126
    {
sl@4
   127
    return ((GP1212A01A*)aDevice)->Vendor();
sl@4
   128
    }
sl@4
   129
sl@4
   130
//-------------------------------------------------------------
sl@4
   131
wchar_t* MiniDisplayProduct(MiniDisplayDevice aDevice)
sl@4
   132
    {
sl@4
   133
    return ((GP1212A01A*)aDevice)->Product();
sl@4
   134
    }
sl@4
   135
sl@4
   136
//-------------------------------------------------------------
sl@4
   137
wchar_t* MiniDisplaySerialNumber(MiniDisplayDevice aDevice)
sl@4
   138
    {
sl@4
   139
    return ((GP1212A01A*)aDevice)->SerialNumber();
sl@4
   140
    }
sl@4
   141
sl@4
   142
//-------------------------------------------------------------
sl@4
   143
void MiniDisplayRequestDeviceId(MiniDisplayDevice aDevice)
sl@4
   144
    {
sl@4
   145
    ((GP1212A01A*)aDevice)->RequestDeviceId();
sl@4
   146
    }
sl@4
   147
sl@4
   148
//-------------------------------------------------------------
sl@4
   149
void MiniDisplayRequestPowerSupplyStatus(MiniDisplayDevice aDevice)
sl@4
   150
    {
sl@4
   151
    ((GP1212A01A*)aDevice)->RequestPowerSupplyStatus();
sl@4
   152
    }
sl@4
   153
sl@4
   154
//-------------------------------------------------------------
sl@4
   155
void MiniDisplayRequestFirmwareRevision(MiniDisplayDevice aDevice)
sl@4
   156
    {
sl@4
   157
    ((GP1212A01A*)aDevice)->RequestFirmwareRevision();
sl@4
   158
    }
sl@4
   159
sl@4
   160
//-------------------------------------------------------------
sl@4
   161
bool MiniDisplayRequestPending(MiniDisplayDevice aDevice)
sl@4
   162
    {
sl@4
   163
    return ((GP1212A01A*)aDevice)->RequestPending();
sl@4
   164
    }
sl@4
   165
sl@4
   166
//-------------------------------------------------------------
sl@4
   167
TMiniDisplayRequest MiniDisplayCurrentRequest(MiniDisplayDevice aDevice)
sl@4
   168
    {
sl@4
   169
    return ((GP1212A01A*)aDevice)->CurrentRequest();
sl@4
   170
    }
sl@4
   171
sl@4
   172
//-------------------------------------------------------------
sl@4
   173
void MiniDisplayCancelRequest(MiniDisplayDevice aDevice)
sl@4
   174
    {
sl@4
   175
    ((GP1212A01A*)aDevice)->CancelRequest();
sl@4
   176
    }
sl@4
   177
sl@5
   178
//-------------------------------------------------------------
sl@6
   179
TMiniDisplayRequest MiniDisplayAttemptRequestCompletion(MiniDisplayDevice aDevice)
sl@5
   180
	{
sl@5
   181
	return ((GP1212A01A*)aDevice)->AttemptRequestCompletion();
sl@5
   182
	}
sl@5
   183
sl@5
   184
//-------------------------------------------------------------
sl@5
   185
char* MiniDisplayDeviceId(MiniDisplayDevice aDevice)
sl@5
   186
	{
sl@5
   187
	return ((GP1212A01A*)aDevice)->DeviceId();
sl@5
   188
	}
sl@5
   189
sl@5
   190
//-------------------------------------------------------------
sl@5
   191
char* MiniDisplayFirmwareRevision(MiniDisplayDevice aDevice)
sl@5
   192
	{
sl@5
   193
	return ((GP1212A01A*)aDevice)->FirmwareRevision();
sl@6
   194
	}
sl@6
   195
sl@6
   196
//-------------------------------------------------------------
sl@6
   197
bool MiniDisplayPowerSupplyStatus(MiniDisplayDevice aDevice)
sl@6
   198
	{
sl@6
   199
	return ((GP1212A01A*)aDevice)->PowerOn();
sl@5
   200
	}