!!***************************************************************************
!!
!! LineDisplay Opos Control Object Data File
!!
!!     Date                   Modification                          Author
!! -----------|----------------------------------------------------|----------
!!  1999/02/06 1.4.991: Initial version.                            C. Monroe
!!  1999/06/18 1.5.000: Change OpenText to OpenResult. Update GUIDs.
!!  2001/07/20 1.6.000: Add properties and methods for 1.6.
!!  2002/08/17 1.7.000: Add properties and methods for 1.7.
!!  2004/03/22 1.8.000: Add properties and methods for 1.8.
!!  2005/04/29 1.9.000: Add properties and methods for 1.9.
!!  2006/03/15 1.10.000: Add properties and methods for 1.10.
!!
!!***************************************************************************

! Define unique name for conditional generation.
DEVLineDisplay  =

! Names: Device, Uppercase Device
DeviceName      =LineDisplay
DeviceUpper     =LINEDISPLAY

! Short device designation used by OPOS.
!   Include file is Opos@DeviceShortName@.hi
!   Property index prefix is PIDX@DeviceShortName@.
DeviceShortName =Disp
! Short upper case device designation used by OPOS.
!   Device registry key is OPOS_CLASSKEY_@DeviceShortUpper@
DeviceShortUpper=DISP

! If Claim and Release are not supported, comment out the next line.
!   (The macro values are not important. We only check for defined or not defined.)
ClaimRelease    =

! If sharable device, comment out the next line.
!   (The macro value is not important. We only check for defined or not defined.)
Exclusive       =

! If any methods or properties use currency, then define "Currency"
!!Currency        =

! Supported events. Comment out the unsupported ones.
!   (The macro values are not important. We only check for defined or not defined.)
!!EventData       =
EventDirectIO   =
!!EventError      =
!!EventOutput     =
EventStatus     =

! UUIDs. UUIDLibrary is required to be the full GUID.
!   The others can be specified in full, or a "*" indicates that the bytes 3-4
!   (hexadecimal chars 5-8) of the UUIDLibrary should be incremented to
!   form their GUIDs.
UUIDControl     =0100
UUIDLibrary     =UUID:@UUIDPre@@UUIDControl@-@UUIDPost@
UUIDInterface   =UUID*
UUIDCoclass     =UUID*
UUIDEvents      =UUID*

! For each version up to the @Version@, list the properties and methods.
!   If method:
!     M  = Method.
!     Release = 1.x
!     Number = Dispatch ID.
!     Details = IDL formatted method and parameters, with assumed ", [out] LONG* pRC )" at end.
!       If usage omitted, assume [in].
!       Parameter types restricted to BOOL, LONG, CURRENCY, and BSTR.
!   If parameter:
!     First char = C for Common (or S for Specific [optional]).
!     Next one or two chars = R for Readable or W for Writable.
!     Release = 1.x
!     Number = Dispatch ID.
!     Details = Property name followed by type in parentheses.
!       Type restricted to BOOL, LONG, CURRENCY, and BSTR.
!     Property Index name without prefix (optional)

:MethodsProperties
!> Added Property
 CR  1.0   49 OpenResult(LONG)
!> Common Properties
!CRW 1.2   10 AutoDisable(BOOL)
 CRW 1.2   11 BinaryConversion(LONG)
 CR  1.3   12 CapPowerReporting(LONG)
 CR  1.0   13 CheckHealthText(BSTR)
 CR  1.0   14 Claimed(BOOL)
!CR  1.2   15 DataCount(LONG)
!CRW 1.0   16 DataEventEnabled(BOOL)
 CRW 1.0   17 DeviceEnabled(BOOL)
 CRW 1.0   18 FreezeEvents(BOOL)
!CR  1.0   19 OutputID(LONG)
 CRW 1.3   20 PowerNotify(LONG)
 CR  1.3   21 PowerState(LONG)
 CR  1.0   22 ResultCode(LONG)
 CR  1.0   23 ResultCodeExtended(LONG)
 CR  1.0   24 State(LONG)
!
 CR  1.0   25 ControlObjectDescription(BSTR)
 CR  1.0   26 ControlObjectVersion(LONG)
 CR  1.0   27 ServiceObjectDescription(BSTR)
 CR  1.0   28 ServiceObjectVersion(LONG)
 CR  1.0   29 DeviceDescription(BSTR)
 CR  1.0   30 DeviceName(BSTR)
!     Added in Release 1.8
 CR  1.8   39 CapStatisticsReporting(BOOL)
 CR  1.8   40 CapUpdateStatistics(BOOL)
!     Added in Release 1.9
 CR  1.9   44 CapCompareFirmwareVersion(BOOL)
 CR  1.9   45 CapUpdateFirmware(BOOL)
!
!> Common Methods
 M   1.0   31 CheckHealth(LONG Level)
 M   1.0   32 Claim(LONG Timeout)
!M   1.0   33 ClearInput()
!M   1.0   34 ClearOutput()
 M   1.0   35 Close()
 M   1.0   36 DirectIO(LONG Command, [in, out] LONG* pData, [in, out] BSTR* pString)
 M   1.0   37 Open(BSTR DeviceName)
 M   1.0   38 Release()
!     Added in Release 1.8
 M   1.8   41 ResetStatistics(BSTR StatisticsBuffer)
 M   1.8   42 RetrieveStatistics([in, out] BSTR* pStatisticsBuffer)
 M   1.8   43 UpdateStatistics(BSTR StatisticsBuffer)
!     Added in Release 1.9
 M   1.9   46 CompareFirmwareVersion(BSTR FirmwareFileName, [out] LONG* pResult)
 M   1.9   47 UpdateFirmware(BSTR FirmwareFileName)
!     Added in Release 1.10
!M   1.10  48 ClearInputProperties()
!
!> Specific Properties
  RW 1.6  100 BlinkRate(LONG)
  R  1.7  110 CapBitmap(BOOL)
  R  1.0   50 CapBlink(LONG)
  R  1.6  101 CapBlinkRate(BOOL)
  R  1.0   51 CapBrightness(BOOL)
  R  1.0   52 CapCharacterSet(LONG)
  R  1.6  102 CapCursorType(LONG)
  R  1.6  103 CapCustomGlyph(BOOL)
  R  1.0   53 CapDescriptors(BOOL)
  R  1.0   54 CapHMarquee(BOOL)
  R  1.0   55 CapICharWait(BOOL)
  R  1.7  111 CapMapCharacterSet(BOOL)
  R  1.6  104 CapReadBack(LONG)
  R  1.6  105 CapReverse(LONG)
  R  1.7  112 CapScreenMode(BOOL)
  R  1.0   56 CapVMarquee(BOOL)
  RW 1.0   57 CharacterSet(LONG)
  R  1.0   58 CharacterSetList(BSTR)
  R  1.0   59 Columns(LONG)
  RW 1.0   60 CurrentWindow(LONG)
  RW 1.0   61 CursorColumn(LONG)
  RW 1.0   62 CursorRow(LONG)
  RW 1.6  106 CursorType(LONG)
  RW 1.0   63 CursorUpdate(BOOL)
  R  1.6  107 CustomGlyphList(BSTR)
  RW 1.0   64 DeviceBrightness(LONG)
  R  1.0   65 DeviceColumns(LONG)
  R  1.0   66 DeviceDescriptors(LONG)
  R  1.0   67 DeviceRows(LONG)
  R  1.0   68 DeviceWindows(LONG)
  R  1.6  108 GlyphHeight(LONG)
  R  1.6  109 GlyphWidth(LONG)
  RW 1.0   69 InterCharacterWait(LONG)
  RW 1.7  113 MapCharacterSet(BOOL)
  RW 1.0   70 MarqueeFormat(LONG)
  RW 1.0   71 MarqueeRepeatWait(LONG)
  RW 1.0   72 MarqueeType(LONG)
  RW 1.0   73 MarqueeUnitWait(LONG)
  R  1.7  114 MaximumX(LONG)
  R  1.7  115 MaximumY(LONG)
  R  1.0   74 Rows(LONG)
  RW 1.7  116 ScreenMode(LONG)
  R  1.7  117 ScreenModeList(BSTR)
!
!> Specific Methods
 M   1.0   80 ClearDescriptors()
 M   1.0   81 ClearText()
 M   1.0   82 CreateWindow(LONG ViewportRow, LONG ViewportColumn, LONG ViewportHeight, LONG ViewportWidth, LONG WindowHeight, LONG WindowWidth)
 M   1.6   89 DefineGlyph(LONG GlyphCode, BSTR Glyph)
 M   1.0   83 DestroyWindow()
 M   1.7   91 DisplayBitmap(BSTR FileName, LONG Width, LONG AlignmentX, LONG AlignmentY)
 M   1.0   84 DisplayText(BSTR Data, LONG Attribute)
 M   1.0   85 DisplayTextAt(LONG Row, LONG Column, BSTR Data, LONG Attribute)
 M   1.6   90 ReadCharacterAtCursor([out] LONG* pChar)
 M   1.0   86 RefreshWindow(LONG Window)
 M   1.0   87 ScrollText(LONG Direction, LONG Units)
 M   1.7   92 SetBitmap(LONG BitmapNumber, BSTR FileName, LONG Width, LONG AlignmentX, LONG AlignmentY)
 M   1.0   88 SetDescriptor(LONG Descriptor, LONG Attribute)
!!End
