Click here to load reader

download.microsoft.comdownload.microsoft.com/download/d/c/a/dcae1fda-506e …  · Web view2005-07-06 · CapCustomGlyph プロパティ 第1.6版にて追加 形式 BOOL CapCustomGlyph;

Embed Size (px)

Citation preview

2

1

OpenPOS for OLE

Application Programmers Guide

1.9

24

OpenPOS

OpenPOS

OpenPOS CommitteeUnifiedPOS Specification Version 1.9

OpenPOSOpenPOSBBSOpenPOS

Application Programmers Guide

1995-2005 Fujitsu Transaction Solutions Inc. All rights reserved. 1995-2005 Microsoft Corporation. All rights reserved. 1995-2005 NCR Corporation. All rights reserved. 1995-2005 Seiko Epson Corporation. All rights reserved.

*MicrosoftWindowsWindows-NT, Windows 2000Microsoft WindowsXPMicrosoft Corporation

*WindowsMicrosoft Windows Operating System

91

10OpenPOS

10OpenPOS

11

12OpenPOS

13OPOS

15OPOS

17

19

21

21

221.7

24

24

25

26

29

32

331.7

33

33

34

34

36

37DeviceEnabled

38

39

40POSXML

42

43OPOS

43

44

472

47

49

50

77

96

1053

105

108

109

111

113

1154

115

120

127

160

184

184

190

194

1975

197

202

207

211

2316

231

233

234

235

237

2397

239

242

245

261

2668 POS

266

272

290

364

418

4259 ()

425

427

429

435

43710 POS

437

440

443

445

44711

447

450

451

453

454

45512 MICR ()

455

458

45913

459

462

465

474

478

48114

481

483

48515

485

488

495

508

515

51916

519

522

527

533

53517

535

543

54518 PIN

545

548

552

571

578

58119

581

585

58720

587

590

59121 CAT (Credit Authorization Terminal)

591

594

604

628

641

64522

645

649

656

659

690

703

70723

707

710

713

723

727

73124

731

734

744

753

763

811 OPOS

817 OPOS

818Opos.h : OPOS

821OposCash.h :

821OposCat.h : CAT

824OposChan.h :

826OposCoin.h :

827OposDisp.h :

830OposKbd.h : POS

831OposLock.h :

832OposMsr.h :

834OposPcrw.h :

836OposPpad.h : PIN

838OposPtr.h : POS

843OposPwr.h :

844OposScal.h :

845OposScan.h :

847OposTone.h :

848OposTot.h :

849

849(BSTR)

852 1.7

855 1.5APIClaimDeviceReleaseDevice

857

8571.11

8621.2

8661.3

8721.4

8731.5

8761.6

8791.7

8821.8

8851.9

1

OpenPOS CommitteeUnifiedPOS Specification Version 1.9

OpenPOS

OpenPOS

OpenPOSPOSMicrosoft Windows95/98Microsoft WindowsNTMicrosoft Windows2000Microsoft WindowsXPPOS

OpenPOS"OPOS"

Win32POS

POSPOS

OPOS

Application Programmers Guide

Control Programmers Guide

OPOS

http://www.nrf-arts.org

POSOPOS

POS

ActiveXOLE

Microsoft Visual Basic Microsoft Visual C++ ActiveX

OpenPOS

OpenPOSOPOSActiveX

OPOS

C^tF[X

ActiveX

I[g[V

AvP[V

Cxg

Rg[IuWFN

g

foCXNX

foCX

Iy[eBOVXehCo

T[rXIuWFNg

foCX

Cxg

\bh

\bh

vpeB

\bh

C^tF[X

ActiveX

Rg[

OPOS

Rg[

VXe

WXg

-

-

}bsO

-

p[^

OPOS

POSPOS

2POS

(CO)

API

COActiveX(OLE32)CO

(SO)

OPOS

SOCOCO

1

DLL.EXEContorol Programmers Guide

OPOS

OPOS(CO)(SO)

COSOAPISOCO

COSO

OPOS

OpenOpen

OpenResult,ClaimedDeviceEnabledDataEventEnabledFreezeEventsAutoDisableDataCountBinaryConversion OPOS

OPOSClaimDeviceClaimDevice

ReleaseDevice

DeviceEnabledTRUEFALSE

CloseDeviceEnabledTRUECloseClaimedTRUECloseOPOS

Open

ClaimDevice

DeviceEnabledTRUEClaimDevice

DeviceEnabledFALSE

ReleaseDevice

Close

OpenOPOS_E_CLOSED

ClaimDeviceDeviceEnabledTRUE

DeviceEnabledTRUE

Open

State

OPOS_S_CLOSED

ResultCode

OPOS_E_CLOSED

ControlObjectDescription

ControlObjectVersion

Open

ClaimDeviceDeviceEnabledTRUE

DeviceEnabledTRUE

ResultCodeOPOS_E_NOTCLAIMEDOPOS_E_DISABLED

Boolean

FALSE

Long

0

String

[Error]

Close

StateOPOS_S_CLOSEDOPOS_S_IDLEOPOS_S_BUSYOPOS_S_ERROR

ResultCodeOPOS_SUCCESSOPOS_E_CLOSEDOPOS_E_CLAIMEDOPOS_E_NOTCLAIMEDOPOS_E_NOSERVICEOPOS_E_DISABLEDOPOS_E_ILLEGALOPOS_E_NOHARDWAREOPOS_E_OFFLINEOPOS_E_NOEXISTOPOS_E_EXISTSOPOS_E_FAILUREOPOS_E_TIMEOUTOPOS_E_BUSYOPOS_E_EXTENDED

ResultCodeExtendedResultCode

StatusUpdateEvent

1.3API

ErrorEventStateOPOS_S_ERROR

StatusUpdateEvent

POS

ResultCode

ResultCode

ResultCodeOPOS_SUCCESS0

1ResultCodeOPOS_E_EXTENDEDResultCodeExtended

ResultCodeOPOS_E_EXTENDEDResultCodeExtendedServiceObjectDescriptionDeviceDescriptionDeviceName

1.7

StateOPOS_S_CLOSED

OpenOPOS_SUCCESSStateOPOS_S_IDLE

OPOSStateOPOS_S_BUSYOPOS_S_IDLE

OPOS_S_ERROR

OPOSStateOPOS_S_ERRORErrorEvent3

Output

InputWithData InputNoDataErrorEvent

InputNoData

ErrorEvent

Retry OutputErrorEventInputSORetryOutput

Clear ClearInputNoData

Continue InputWithDataDataEventEnabledDataEventEnabledTRUEInputNoDataErrorEventContinueInputWithData

ErrorEventErrorEvent

OpenPOS1 OPOS

POS1ClaimDeviceOPOS_E_NOTCLAIMED

2

ClaimDeviceReleaseDevice

11

OpenPOSOPOS5

DataEvent

ErrorEvent

StatusUpdateEvent

OutputCompleteEvent

DirectIOEvent

(Enqueue)(Enqueue)(Enqueue)(Deliver)

OPOSOLE Apartment ThreadingOLE Apartment ThreadingCOM(Deliver)(Delivery)

FreezeEventsTRUE FreezeEvents

DataEventErrorEventDataEventEnabledFALSE

(Enqueue)(Enqueue)(Delivery)FIFO

Application Programmers Guide Release 1.3

EnqueueSOSOSO1

DeliverSO

Fire

(Enqueue)

ReleaseDeviceClose(Enqueue)(Deliver)

ClearInput

ReleaseDeviceClose ReleaseDevice(Deliver)Close

OpenPOSDeviceEnabledTRUEDataEventAutoDisableTRUEDeviceEnabledFALSE

DataEventEnabledTRUEDataEventDataEvent

OPOSDataEventEnabledFALSEOPOSDataEventEnabledTRUE

OPOSDataEventClaimDeviceDataEventEnabledTRUE

OPOS OPOSErrorErrorEventDataEventEnabledTRUE

InputWithData (OPOS_EL_INPUT_DATA)

InputNoData (OPOS_EL_INPUT)InputWithDataErrorEvent InputWithDataClear InputNoData

Error

InputNoDataErrorEvent

InputWithDataErrorEventOPOS_ER_CLEAR

ClearInput

DataCountDataEvent

ClearInput ClearInputOpenClaimDevice

DataEventDataEventPC

12

1DataEvent2DataEvent

12

11DataEventEnabledTRUE

DataEventDataEvent

1.7

OpenPOS2

OutputIDOPOSOutputCompleteEventOutputID

ErrorEvent ErrorEventError

ErrorErrorEvent

FIFO

ClearOutputOutputCompleteEvent

1.8

OPOSPCPOSPOS

OPOS

ONLINE

OFF

OFFLINE

OFF_OFFLINESO

OPOSOPOSSO

SOSO

OPOSAPI

CapPowerReporting

OPOS_PR_NONESO

OPOS_PR_STANDARDSOOFF_OFFLINEONLINE

OPOS_PR_ADVANCEDSOONLINEOFFLINE OFF

PowerStateSO

OPOS_PS_UNKNOWN

OPOS_PS_ONLINE

OPOS_PS_OFF

OPOS_PS_OFFLINE

OPOS_PS_OFF_OFFLINE

PowerNotifyStatusUpdateEventsPowerState DeviceEnabledTRUE

OPOS_PN_DISABLED

OPOS_PN_ENABLED

DeviceEnabled

CapPowerReporting OPOS_PR_NONE PowerNotify OPOS_PN_ENABLEDDeviceEnabled

DeviceEnabledFALSETRUE

ONLINE

PowerStateOPOS_PS_ONLINE

StatusUpdateEventStatusOPOS_SUE_POWER_ONLINE

OFFOFFLINEOFF_OFFLINEResultCodeOPOS_E_NOHARDWARE OPOS_E_OFFLINE

PowerStateOPOS_PS_OFFOPOS_PS_OFFLINEOPOS_PS_OFF_OFFLINE

StatusUpdateEventStatusOPOS_SUE_POWER_OFFOPOS_SUE_POWER_OFFLINEOPOS_SUE_POWER_OFF_OFFLINE

DeviceEnabledTRUEFALSEOPOS

PowerStateOPOS_PS_UNKNOWN

1.8

POSPOS

POSMSRPOSXML

POS

ClaimDeviceDeviceEnabledTRUEDeviceEnabledFALSEReleaseDevice

OPOS

CapStatisticsReportingFALSETRUE

CapUpdateStatistics/CapStatisticsReportingTRUECapUpdateStatisticsFALSE/TRUE/

ResetStatisticsCapStatisticsReportingCapUpdateStatisticsTRUE

RetrieveStatisticsCapStatisticsReportingTRUE

UpdateStatisticsCapStatisticsReportingCapUpdateStatisticsTRUE

POSXML

OPOS(UnifiedPOS)XMLWeb U_

/ ManufacturerSpecific M_

UnifiedPOSDeviceInformation

XML

UnifiedPOSVersion

UnifiedPOS

DeviceCategory

(POSPrinter)

ManufacturerName

ModelName

SerialNumber

ManufactureDate

MechanicalRevision

FirmwareRevision

Interface

(RS232USB)

InstallationDate

UnifiedPOS

XML

DrawerGoodOpenCount

1353

DrawerFailedOpenCount

2

MyPersonalStat

14.32

meters

1.8

Cashdrawers R Us

12345

CD-123

1.0 Rev. B

RS232

2000-03-01

(J[hcfUC)

c(J[hfUC)

}

0

0

Hposition

Vposition

s

}

0

0

B

A

s

B

A

Hposition

Vposition

1.

CapUpdateFirmware

CapCompareFirmwareVersion

UpdateFirmware

CompareFirmwareVersion

StatusUpdateEventStatus

StatusUpdateEventOPOS

OPOS

OPOS

2

OpenPOSActiveX

(MSR)

POS

POS

1.2

1.2

1.2

PIN1.3

CAT1.4

1.5

1.5

A. OPOS

B. OPOS

C.

D. ClaimDeviceReleaseDevice

E.

BOOLTRUEFALSE

COM IDLVARIANT_BOOL(short) VARIANT_TRUE(-1)VARIANT_FALSE(0)

VARIANTVT_BOOL

BSTRNUL

COM IDLBSTRunsigened short*

VARIANTVT_BSTR

BSTR*

COM IDLBSTR*unsigened short**

VARIANTVT_BYREF | VT BSTR

LONG32

COM IDLlong

VARIANTVT_14

LONG*32

COM IDLlong*

VARIANTVT_BYREF | VT_14

CURRENCY1.3644 1234567 123.4567

COM IDLCURRENCY(union tagCY)

union tagCY

{

struct{ long Hi; long Lo; };

int64 int64;

};

VARIANTVT_CY

CURRENCY*1.3

COM IDLCURRENCY*(union tagCY*)

VARIANTVT_BYREF | VT CY

2

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

CapCompareFirmwareVersion

1.9

BooleanR

CapPowerReporting

1.3

LongR

CapStatisticsReporting

1.8

BooleanR

CapUpdateFirmware

1.9

Boolean R

CapUpdateStatistics

1.8

BooleanR

CheckHealthText

1.0

StringR

Claimed

1.0

BooleanR

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

FreezeEvents

1.0

BooleanR/W

OpenResult

1.5

LongR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

PowerState

1.3

LongR

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

ServiceObjectVersion

1.0

LongR

DeviceDescription

1.0

StringR

DeviceName

1.0

StringR

1.

2.

Open

1.0

Close

1.0

ClaimDevice

1.0

ReleaseDevice

1.0

CheckHealth

1.0

ClearInput

1.0

ClearOutput

1.0

CompareFirmwareVersion

1.9

DirectIO

1.0

ResetStatistics

1.8

RetrieveStatistics

1.8

UpdateFirmware

1.9

UpdateStatistics

1.8

DataEvent

1.0

DirectIOEvent

1.0

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.0

AutoDisableR/W1.2

BOOL AutoDisable;

TRUE

TRUEDataEventDeviceEnabledFALSEDeviceEnabledTRUE

FALSE1.2OPOS

OpenFALSE

ResultCode

OPOS_SUCCESS

OpenPOS

BinaryConversion R/W1.2

LONG BinaryConversion;

OPOSBStringBStringBstringOPOSOLEUnicodeUnicodeBStringBString UnicodeBStringMBCS932

0x000x7F0x800xFF

BinaryConversion

BinaryConversionBinaryConversion

BinaryConversion

OPOS_BC_NONE

Bstring11.2OPOS

OPOS_BC_NIBBLEASCII

0x307-40x303-0

154=0x9A0x39 0x3A9:154=0x9A0x39 0x419A16ASCII

OPOS_BC_DECIMALVisual BasicASCIIVALstringASCII3ASCIIRIGHT(^^+STR(byte),3)^

154=0x9A0x31 0x35 0x34154

80x30 0x30 0x38008

ASCIISTRbyteASCII(^^8^27^80x08270x1B

ASCIIASCII100x300x39

BinaryConversionOPOS_BC_NONEBinaryConversion

BinaryConversion

BinaryConversion

OpenOPOS_BC_NONE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

CapCompareFirmwareVersion 1.

BOOL CapCompareFirmwareVersion;

TRUE/

Open

CompareFirmwareVersion

CapPowerReporting 1.3

LONG CapPowerReporting;

OPOS_PR_NONESO

OPOS_PR_STANDARDSOOFF_OFFLINEONLINE

OPOS_PR_ADVANCEDSOONLINEOFFLINE OFF

Open

PowerStatePowerNotify

CapStatisticsReporting 1.8

BOOL CapStatisticsReporting;

TRUERetrieveStatistics

Open

RetrieveStatistics

CapUpdateFirmware 1.9

BOOL CapUpdateFirmware;

TRUEUpdateFirmware

Open

UpdateFirmware

CapUpdateStatistics 1.8

BOOL CapUpdateStatistics;

TRUEResetStatistics 0 UpdateStatisticsCapStatisticsRepotingFALSECapUpdateStatisticsFALSE

Open

CapStatisticsRepotingResetStatisticsUpdateStatistics

CheckHealthText

BSTR CheckHealthText;

CheckHealth

Internal HCheck: Successful

External HCheck: Not Responding

Interactive HCheck: Complete

CheckHealth

CheckHealth

Claimed

BOOL Claimed;

TRUEFALSE

ClaimedOpenFALSE

OpenPOSClaimDeviceReleaseDevice

ControlObjectDescription

BSTR ControlObjectDescription;

ControlObjectVersion

ControlObjectVersion

LONG ControlObjectVersion;

3

OPOS

OPOS

CO

1002038

"1.2.38"1238

ControlObjectDescription

API

ResultCodeOPOS_E_NOSERVICEResultCodeResultCode

OPOS_E_NOSERVICE

ResultCodeOPOS_E_NOSERVICEResultCodeResultCode

DataCount1.2

LONG DataCount

DataEvent

DataCount

Open

DataEvent

DataEventEnabled R/W

BOOL DataEventEnabled;

TRUEDataEventTRUEDataEventFreezeEventsTRUEDataEventSO

FALSEDataEventEnabledFALSEErrorEvent

OpenFALSE

ResultCode

OPOS_SUCCESS

DataEvent

DeviceDescription

BSTR DeviceDescription;

Open

DeviceName

DeviceEnabled R/W

BOOL DeviceEnabled;

TRUETRUE

FALSEFALSE

TRUE

1.3DeviceEnabledTRUE

OpenFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_NOTCLAIMED

ResultCode

OpenPOS

DeviceName

BSTR DeviceName;

DeviceDescription30

DeviceNameDeviceDescription

Open

DeviceDescription

FreezeEvents R/W

BOOL FreezeEvents;

TRUE

FALSEFreezeEventsFALSE

OpenFALSE

ResultCode

OPOS_SUCCESS

OpenResult 1.5

LONG OpenResult;

Open

OpenResult

OPOS_SUCCESS

OPOS_OR_ALREADYOPEN

OPOS_OR _REGBADNAME

OPOS_OR _REGPROGIDIDID

OPOS_OR _CREATEIDispatch

OPOS_OR _BADIF

OPOS_OR _FAILEDOPEN

OPOS_OR _BADVERSION

Control Programmer's Guide GetOpenResultGetOpenResultOpenResultOPOS_OR_FAILEDOPEN

OPOS_ORS_NOPORTOpenI/ORS232CDeviceName

SODeviceEnabledTRUEDeviceNameDeviceDescription

OPOS_ORS _NOTSUPPORTED

SO

OPOS_ORS _CONFIG

SO

OPOS_ORS _SPECIFIC

SOOpenResult

1)

2) SO

Open

OutputID

LONG OutputID;

OutputCompleteEventID

IDID

OutputCompleteEvent

PowerNotify R/W1.3

LONG PowerNotify;

OPOS_PN_DISABLEDStatusUpdateEventsPowerState

OPOS_PN_ENABLEDDeviceEnabledTRUEStatusUpdateEventsPowerStateCapPowerReporting

PowerNotifyDeviceEnabledFALSE

OpenOPOS_PN_DISABLEDOPOS

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

PowerNotify = OPOS_PN_ENABLED CapPowerReporting = OPOS_PR_NONE

ResultCode

CapPowerReportingPowerState

PowerState 1.3

LONG PowerState;

OPOS_PS_UNKNOWN

CapPowerReporting = OPOS_PR_NONE

PowerNotify = OPOS_PN_DISABLED

DeviceEnabled = FALSE

OPOS_PS_ONLINECapPowerReporting = OPOS_PR_STANDARDOPOS_PR_ADVANCED

OPOS_PS_OFFCapPowerReporting = OPOS_PR_ADVANCED

OPOS_PS_OFFINECapPowerReporting = OPOS_PR_ADVANCED

OPOS_PS_OFF_OFFLINECapPowerReporting = OPOS_PR_STANDARD

OpenOPOS_PS_UNKNOWNPowerNotifyDeviceEnabledTRUESO

CapPowerReportingPowerNotify

ResultCode

LONG ResultCode;

OpenOPOS_E_CLOSED

OPOS_E_CLAIMED

OPOS_E_NOTCLAIMED

OPOS_E_DISABLED

OPOS_SUCCESS

OPOS_E_CLOSED

OPOS_E_CLAIMED

OPOS_E_NOTCLAIMEDOPOS_E_CLAIMED

OPOS_E_NOSERVICE

OPOS_E_DISABLED

OPOS_E_ILLEGAL

OPOS_E_NOHARDWARE

OPOS_E_OFFLINE

OPOS_E_NOEXIST

OPOS_E_EXISTS

OPOS_E_FAILURE

OPOS_E_TIMEOUT

OPOS_E_BUSYSO

OPOS_E_EXTENDEDResultCodeExtended

ResultCodeExtended

LONG ResultCodeExtended;

ResultCodeOPOS_E_EXTENDED

ResultCodeSOSO

ResultCode

ServiceObjectDescription

BSTR ServiceObjectDescription;

Open

ServiceObjectVersion

LONG ServiceObjectVersion;

3

OPOS

OPOS

.SO

1002038

"1.2.38"1238

Open

State

LONG State;

OPOS_S_CLOSED

OPOS_S_IDLE

OPOS_S_BUSY

OPOS_S_ERRORI/O

CheckHealth

LONG CheckHealth (LONG Level);

Level

OPOS_CH_INTERNAL

OPOS_CH_EXTERNAL

OPOS_CH_INTERACTIVE

CheckHealthText

CheckHealth

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

OPOS_E_BUSY

ResultCode

OpenPOSCheckHealthText

ClaimDevice 1.5

LONG ClaimDevice (LONG Timeout);

TimeoutOPOS_FOREVER(-1)

ClaimedTRUE

1.0 1.4

1.5Claim

1.5

ClaimDeviceIDispatchClaimDeviceClaim1.5ClaimClaimDevice

IDIDMicrosoft Visual C++Visual Basic

ResultCode

OPOS_SUCCESSClaimedTRUE

OPOS_E_ILLEGALTimeout

OPOS_E_TIMEOUTTimeout

ReleaseDevice

ClearInput

LONG ClearInput ();

DataEventEnabledTRUEFreezeEventsFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_NOTCLAIMED

ClearOutput 1.7

LONG ClearOutput ();

FreezeEventsFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_NOTCLAIMED

Close

LONG Close ();

DeviceEnabledTRUE

ClaimedTRUE

ResultCode

OPOS_SUCCESS

ResultCode

OpenPOSOpen

CompareFirmWareVersion 1.

LONG CompareFirmWareVersion (String FirmWareFileName, Long result);

FirmWareFileName

result

ResultCode

CFV_FIRMWARE_OLDER

CFV_FIRMWARE_SAME

CFV_FIRMWARE_NEWER

CFV_FIRMWARE_DIFFERENT

CFV_FIRMWARE_UNKNOWN

ResultCode

OPOS_E_ILLEGALCapComperFirmwareVersionfalse

OPOS_E_NOEXISTFirmwareFileNameFirmwareFileName

OPOS_E_EXTENDEDErrorCodeExtended=EFIRMWARE_BAD_FILE

CapCompareFirmwareVersion

DirectIO

LONG DirectIO (LONG Command, LONG* pData, BSTR* pString);

Command

pData

pStringBinaryConversionBinaryConversion

DirectIODirectIOServiceObjectDescriptionDeviceDesciriptionDeviceName

ResultCode

OPOS_SUCCESSDirectIO

ResultCode

DirectIOEvent

Open

LONG Open (BSTR DeviceName);

DeviceName

DeviceNameOPOS

OpenClaimedDeviceEnabledDataEventEnabledFreezeEventsOPOS

1.5

OpenResultOpen

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

OPOS_E_NOEXISTDeviceName

OPOS_E_NOSERVICE

ResultCode

OpenResultCodeOpen

Open ResultCodeOPOS_E_CLOSED

OpenOPOS_E_ILLEGAL ResultCode Open

OpenPOSClose

ReleaseDevice 1.5

LONG ReleaseDevice ();

DeviceEnabledTRUEReleaseDevice

1.0 1.4

1.5Release

1.5

ReleaseDeviceIDispatchReleaseDeviceRelease1.5ReleaseReleaseDevice

IDIDMicrosoft Visual C++Visual Basic

ResultCode

OPOS_SUCCESSClaimedFALSE

OPOS_E_ILLEGAL

ClaimDevice

ResetStatistics 1.8

LONG ResetStatistics (BSTR StatisticsBuffer);

StatisticsBuffer

U_ UnifiedPOSM_ 1,2(XML)

OPOS_E_EXTENDED

CapStatisticsReportingCapUpdateStatisticsTRUE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALCapStatisticsReportingCapUpdateStatisticsFALSE

OPOS_E_EXTENDEDResultCodeExtended=OPOS_ESTATS_ERROR

ResultCode

CapStatisticsRepotingCapUpdateStatistics

RetrieveStatistics 1.8

LONG RetrieveStatistics (BSTR *pStatisticsBuffer);

pStatisticsBuffer

U_ UnifiedPOSM_ 1,2(XML)

CapStatisticsReportingTRUE

RetrieveStatistics XML

RequestedStatistic

StatisticValue

Version

Device Manufacturer

Device Model Name

RequestedStatistic

TheAnswer

42

XML

Application

SCR/W Device

User : Actor1

X}[gJ[hf[^

\AAvP[Vm

[U[X}[gJ[h

X}[gJ[h[_C^

1 :

B

eginInsertion

^CAEgo

2 :

B

eginInsertion

3 :

J[h}

StatusUpdateEvent

4 :

E

ndInsertion

5 : DataEventEnabled =

TRUE

R

eadData

DataEvent

6 :

W

riteData

OutputCompleteEvent

7 :

B

eginRemoval

8:

J[hroB

^CAEgo

9 :

B

eginRemoval

St

atusUpdateEvent

10 :

E

ndRemoval

B

AvP[V

X}[gJ[hf[^

\B

B

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALCapStatisticsReportingFALSE

ResultCode

CapStatisticsRepoting

UpdateFirmware 1.

LONG UpdateFirmware (String FirmWareFileName);

FirmWareFileName

FirmWareFileNameFirmWareFileName

SUE_UF_PROGESS1100StatusUpdateEventStatusUpdateEventSUE_UF_COMPLETESUE_UF_PEOGRESS+100

199StatusUpdateEvent100SUE_UF_COMPLETEStatusUpdateEvent

StatusUpdateEvent

SUE_UF_FAILD_DEV_OK

SUE_UF_FAILD_DEV_UNRECOVERABLE

SUE_UF_FAILD_DEV_NEEDS_FIRMWARE

SUE_UF_FAILD_DEV_UNKNOWN

ResultCode

OPOS_E_ILLEGALCapComperFirmwareVersionfalse

OPOS_E_NOEXISTFirmwareFileNameFirmwareFileName

OPOS_E_EXTENDEDErrorCodeExtended=EFIRMWARE_BAD_FILE

CapUpdateFirmware

UpdateStatistics 1.8

LONG UpdateStatistics (BSTR StatisticsBuffer);

StatisticsBuffer

(=1)1U_=2 UnifiedPOS2M_=3 3 1=4,2=5(XML)

OPOS_E_EXTENDED

CapStatisticsReportingCapUpdateStatisticsTRUE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALCapStatisticsReportingCapUpdateStatisticsFALSE

OPOS_E_EXTENDEDResultCodeExtended=OPOS_ESTATS_ERROR

ResultCode

CapStatisticsRepotingCapUpdateStatistics

DataEvent

void DataEvent (LONG Status);

Status

DataEventEnabledFALSETRUE

DataEventEnabledFALSEOPOSTRUEFreezeEventsFALSE

DataEventEnabledFreezeEvents

DirectIOEvent

void DirectIOEvent (LONG EventNumber, LONG* pData, BSTR* pString);

EventNumber

pData

pStringBinaryConversionBinaryConversion

DirectIO

ErrorEvent 1.7

void ErrorEvent (LONG ResultCode, LONG ResultCodeExtended,LONG ErrorLocus, LONG* pErrorResponse);

ResultCodeResultCode

ResultCodeExtendedResultCodeExtended

ErrorLocus

pErrorResponse

ErrorLocus

OPOS_EL_OUTPUT

OPOS_EL_INPUT

OPOS_EL_INPUT_DATA

pErrorResponseErrorLocus

OPOS_ER_RETRYErrorLocusOPOS_EL_OUTPUTErrorLocusOPOS_EL_OUTPUT

OPOS_ER_CLEARErrorLocusOPOS_EL_INPUT

OPOS_ER_CONTINUEINPUTErrorLocusOPOS_EL_INPUT_DATADataEventEnableDataEventDataEventEnableTRUEErrorEventOPOS_EL_INPUTErrorLocusOPOS_EL_INPUT_DATA

State

DataEventEnabledTRUE

OutputCompleteEvent

void OutputCompleteEvent (LONG OutputID);

OutputIDID

StatusUpdateEvent 1.9

void StatusUpdateEvent (LONG Status);

Status

POS

StatusUpdateEvent

1.3

PowerNotify = OPOS_PN_ENABLED StatusStatusUpdateEvent

OPOS_SUE_POWER_ONLINECapPowerReporting = OPOS_PR_STANDARDOPOS_PR_ADVANCED

OPOS_SUE_POWER_OFFCapPowerReporting = OPOS_PR_ADVANCED

OPOS_SUE_POWER_OFFLINECapPowerReporting = OPOS_PR_ADVANCED

OPOS_SUE_POWER_OFF_OFFLINECapPowerReporting = OPOS_PR_STANDARD

PowerState

1.

1.9Statusc

SUE_UF_PROGRESS + 1 to 1001100%

SUE_UF_COMPLETESUE_UF_PROGRESS+100

SUE_UF_COMPLETE_DEV_NOT_RESTOREDCloseOpenClaim

SUE_UF_FAILD_DEV_OK

SUE_UF_FAILD_DEV_UNRECOVERABLE

SUE_UF_FAILD_DEV_NEEDS_FIRMWARE

SUE_UF_FAILD_DEV_UNKNOWN

POS

CapPowerReportingPowerNotify

3

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapCompareFirmwareVersion

1.9

BooleanR

Open

CapPowerReporting

1.3

LongR

Open

CapStatisticsReporting

1.8

BooleanR

Open

CapUpdateFirmware

1.9

Boolean R

Open

CapUpdateStatistics

1.8

BooleanR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LongR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

--

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

--

ControlObjectDescription

1.0

StringR

--

ControlObjectVersion

1.0

LongR

--

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapStatus

1.0

BooleanR

Open

CapStatusMultiDrawerDetect

1.5

BooleanR

Open

DrawerOpened

1.0

BooleanR

Open & Enable

Open

1.0

--

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open & Enable ()

ClearInput

1.0

ClearOutput

1.0

CompareFirmwareVersion

1.9

Open, Claim, & Enable

DirectIO

1.0

Open

ResetStatistits

1.8

Open & Enable ()

RetrieveStatistits

1.8

Open & Enable ()

UpdateFirmware

1.9

Open, Claim, & Enable

UpdateStatistits

1.8

Open & Enable ()

OpenDrawer

1.0

Open & Enable ()

WaitForDrawerClose

1.0

Open & Enable ()

Events

DataEvent

1.0

DirectIOEvent

1.0

Open & Enable

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.0

Open & Enable

OLEIDOPOS.CashDrawer

1

OpenDrawerWaitForDrawerClosePOS

CapStatus

BOOL CapStatus;

TRUEFALSE

Open

CapStatusMultiDrawerDetect

1.5

BOOL CapStatusMultiDrawerDetect;

TRUE*FALSE

DrawerOpenedFALSE

DrawerOpenedTRUE* a) b)

CapStatus TRUE

Open

* Y

DrawerOpened

BOOL DrawerOpened;

TRUEFALSE

CapStatusFALSEDrawerOpenedFALSE

CapStatusMultiDrawerDetectFALSEDrawerOpened TRUECapStatusMultiDrawerDetect

OpenDrawer

LONG OpenDrawer ()

ResultCode

OPOS_SUCCESS

ResultCode

WaitForDrawerClose

LONG WaitForDrawerClose (LONG BeepTimeout, LONG BeepFrequency, LONG BeepDuration, LONG BeepDelay);

BeepTimeout0

BeepFrequency

BeepDuration

BeepDelay

BeepTimeout

CapStatusMultiDrawerDetectFALSE

CapStatusFALSE

ResultCode

OPOS_SUCCESS

ResultCode

StatusUpdateEvent

void StatusUpdateEvent (LONG Status);

Status

1.01.2

TRUE0FALSE0

1.3

CASH_SUE_DRAWERCLOSED ( = 0 )

CASH_SUE_DRAWEROPEN ( = 1 )

StatusUpdateEvent2 StatusUpdateEventPowerNotifyOPOS_PN_ENABLED

CapStatusFALSE

CapStatusMultiDrawerDetectFALSECASH_SUE_DRAWEROPEN( = 1 )CapStatusMultiDrawerDetect

4

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapCompareFirmwareVersion

1.9

BooleanR

Open

CapPowerReporting

1.3

LongR

Open

CapStatisticsReporting

1.8

BooleanR

Open

CapUpdateFirmware

1.9

Boolean R

Open

CapUpdateStatistics

1.8

BooleanR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open & Claim

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LongR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapBlink

1.0

LongR

Open

CapBitmap

1.7

BooleanR

Open

CapBlinkRate

1.6

BooleanR

Open

CapBrightness

1.0

BooleanR

Open

CapCharacterSet

1.0

LongR

Open

CapCursorType

1.6

LongR

Open

CapCustomGlyph

1.6

BooleanR

Open

CapDescriptors

1.0

BooleanR

Open

CapHMarquee

1.0

BooleanR

Open

CapICharWait

1.0

BooleanR

Open

CapMapCharacterSet

1.7

BooleanR

Open

CapReadBack

1.6

LongR

Open

CapReverse

1.6

LongR

Open

CapScreenMode

1.7

BooleanR

Open

CapVMarquee

1.0

BooleanR

Open

BlinkRate

1.6

LongR/W

Open

DeviceWindows

1.0

LongR

Open

DeviceRows

1.0

LongR

Open

DeviceColumns

1.0

LongR

Open

DeviceDescriptors

1.0

LongR

Open

DeviceBrightness

1.0

LongR/W

Open, Claim, & Enable

CharacterSet

1.0

LongR/W

Open, Claim, & Enable

CharacterSetList

1.0

StringR

Open

MapCharacterSet

1.7

BooleanR/W

Open

CurrentWindow

1.0

LongR/W

Open

Rows

1.0

LongR

Open

Columns

1.0

LongR

Open

CursorRow

1.0

LongR/W

Open

CursorColumn

1.0

LongR/W

Open

CursorType

1.6

LongR/W

Open

CursorUpdate

1.0

BooleanR/W

Open

MarqueeType

1.0

LongR/W

Open

MarqueeFormat

1.0

LongR/W

Open

MarqueeUnitWait

1.0

LongR/W

Open

MarqueeRepeatWait

1.0

LongR/W

Open

InterCharacterWait

1.0

LongR/W

Open

CustomGlyphList

1.6

StringR

Open

GlyphHeight

1.6

LongR

Open

GlyphWidth

1.6

LongR

Open

MaximumX

1.7

LongR

Open

MaximumY

1.7

LongR

Open

ScreenMode

1.7

LongR/W

Open & Claim

ScreenModeList

1.7

StringR

Open

Open

1.0

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open, Claim, & Enable

ClearInput

1.0

ClearOutput

1.0

CompareFirmwareVersion

1.9

Open, Claim, & Enable

DirectIO

1.0

Open

ResetStatistics

1.8

Open, Claim, & Enable

RetrieveStatistics

1.8

Open, Claim, & Enable

UpdateFirmware

1.9

Open, Claim, & Enable

UpdateStatistics

1.8

Open, Claim, & Enable

DisplayText

1.0

Open, Claim, & Enable

DisplayTextAt

1.0

Open, Claim, & Enable

ClearText

1.0

Open, Claim, & Enable

ScrollText

1.0

Open, Claim, & Enable

SetDescriptor

1.0

Open, Claim, & Enable

ClearDescriptors

1.0

Open, Claim, & Enable

CreateWindow

1.0

Open, Claim, & Enable

DestroyWindow

1.0

Open, Claim, & Enable

RefreshWindow

1.0

Open, Claim, & Enable

ReadCharacterAtCursor

1.6

Open, Claim, & Enable

DefineGlyph

1.6

Open, Claim, & Enable

DisplayBitmap

1.7

Open, Claim, & Enable

SetBitmap

1.7

Open, Claim, & Enable

DataEvent

1.0

DirectIOEvent

1.0

Open & Claim

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.3

Open, Claim, & Enable

OLEIDOPOS.LineDisplay

2

Glyphs

09 (-) (.)

AZ

ASCII (0x200x7F)

(0, 0)

0

0

3

MarqueeTypeDISP_MT_NONEInterCharacterWait0

MarqueeTypeDISP_MT_NONEInterCharacterWait0DisplayText DisplayTextAt InterCharacterWait InterCharacterWait

MarqueeTypeDISP_MT_NONEMarqueeType DISP_MT_INITClearText DisplayText DisplayTextAt MarqueeType DisplayTextDisplayTextAtClearTextRefreshWindowScrollText

1.7

0x200x7FASCII

1.7

|ESC10270

DisplayTextDisplayTextAt

1

ESC |#B

#

2

ESC |rvC

ESC |kC

ESC |N

BlinkRate R/W1.6

LONG BlinkRate;

(on-off-on)BlinkRate

Open

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALBlinkRate

ResultCode

CapBlinkRate

CapBitmap 1.7

BOOL CapBitmap;

TRUEFALSE

Open

CapBlink

LONG CapBlink;

DISP_CB_NOBLINK

DISP_CB_BLINKALL

DISP_CB_BLINKEACH

Open

CapBlinkRate 1.6

BOOL CapBlinkRate;

TRUEBlinkRateFALSE

Open

CapBrightness

BOOL CapBrightness;

TRUEFALSE

Open

CapCharacterSet 1.5

LONG CapCharacterSet;

DISP_CCS_NUMERIC09 (-) (.)

DISP_CCS_ALPHADISP_CCS_NUMERIC

DISP_CCS_ASCII0x200x7FASCII

DISP_CCS_KANA9320xA10xDF0x200x7FASCII

DISP_CCS_KANJI9320xA10xDF0x200x7FASCIIJISJISJIS

DISP_CCS_UNICODE

CharacterSet

Open

CapCursorType 1.8

LONG CapCursorType;

CursorType

DISP_CCT_NONE

DISP_CCT_FIXED

DISP_CCT_BLOCK

DISP_CCT_HALFBLOCK

DISP_CCT_UNDERLINE

DISP_CCT_REVERSE

DISP_CCT_BLINK

DISP_CCT_OTHER

DISP_CCT_NONE

DISP_CCT_FIXEDDISP_CCT_BLINK

Open

CapCustomGlyph 1.6

BOOL CapCustomGlyph;

GlyphTRUECustomGlyphFALSE

Open

CapDescriptors

BOOL CapDescriptors;

TRUEFALSE

Open

CapHMarquee

BOOL CapHMarquee;

TRUEFALSE

Open

CapICharWait

BOOL CapICharWait;

TRUEFALSE

Open

CapMapCharacterSet 1.7

BOOL CapMapCharacterSet;

TRUECharacterSetList FALSE

Open

CharacterSetMapCharacterSetCharacterSetList

CapReadBack 1.6

LONG CapReadBack;

DISP_CRB_NONE

DISP_CRB_SINGLE

Open

CapReverse 1.6

LONG CapReverse;

DISP_CR_NONE

DISP_CR_REVERSEALL

DISP_CR_REVERSEEACH

Open

CapScreenMode 1.7

BOOL CapScreenMode;

TRUEFALSE

Open

ScreenModeScreenModeList

CapVMarquee

BOOL CapVMarquee;

TRUEFALSE

Open

CharacterSet R/W 1.5

LONG CharacterSet;

101-199ASCIIWindows ANSI

400-990

DISP_CS_UNICODE997

DISP_CS_ASCIIASCII0x200x7FASCII998

DISP_CS_WINDOWSWindows ANSI999Windows1252

Range 1000 and higherWindows

OpenCapCharacterSet

ResultCode

OPOS_SUCCESS

ResultCode

CharacterSetListCapCharacterSet

CharacterSetList

BSTR CharacterSetList;

OpenASCII

101,850,999850Windows ANSI

CharacterSet

Columns

LONG Columns;

0ColumnsDeviceColumnsDeviceColumns

OpenDeviceColumnsCurrentWindowCreateWindowDestroyWindow

Rows

CurrentWindow R/W1.6

LONG CurrentWindow;

RowsColumnsCursorRowCursorColumnCursorUpdateCursorTypeMarqueeFormatMarqueeTypeMarqueeUnitWaitMarqueeRepeatWaitInterCharacterWait

RefreshWindow

Open0CreateWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

CursorColumn R/W

LONG CursorColumn;

0(Columns)DisplayTextCursorColumn = Columns

OpenCreateWindow0CurrentWindowClearTextDestroyWindowCursorUpdateTRUEDisplayTextDisplayTextAt

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

CursorRowDisplayText

CursorRow R/W

LONG CursorRow;

0(Rows - 1)

OpenCreateWindow0CurrentWindowClearTextDestroyWindowCursorUpdateTRUEDisplayTextDisplayTextAt

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

CursorColumnDisplayText

CursorType R/W1.8

LONG CursorType;

DISP_CT_NONE

DISP_CT_BLOCK

DISP_CT_HALFBLOCK

DISP_CT_UNDERLINE

DISP_CT_REVERSE

DISP_CT_BLINK

DISP_CT_OTHER

CapCursorTypeDISP_CCT_NONEDISP_CCT_FIXEDCapCursorTypeDISP_CT_BLINK

OpenCreateWindowDISP_CT_NONE(CapCursorTypeDISP_CCT_FIXED)CurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALCapCursorTypeDISP_CCT_NONEDISP_CCT_FIXED

CapCursorType

CursorUpdate R/W

BOOL CursorUpdate;

TRUEDisplayTextDisplayTextAtCursorRowCursorColumn

FALSE

OpenCreateWindowTRUECurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

CursorRowCursorColumn

CustomGlyphList 1.6

BSTR CustomGlyphList;

Glyph

2(ASCII)4()16 -

Open

2D,4D-,MGlyph002D-004D002D004DGlyph2D-2F,3D-3F162D2F3D3FGlyph

CapCustomGlyphGlyphWidthGlyphHeightDefineGlyph

DeviceBrightness R/W

LONG DeviceBrightness;

0100

0%100%CapBrightnessTRUE

Open100

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL0100

DeviceColumns 1.7

LONG DeviceColumns;

OpenScreenMode

DeviceRowsScreenMode

DeviceDescriptors

LONG DeviceDescriptors;

CapDescriptorsTRUEDeviceDescriptors00

Open

SetDescriptorClearDescriptors

DeviceRows 1.7

LONG DeviceRows;

OpenScreenMode

DeviceColumnsScreenMode

DeviceWindows

LONG DeviceWindows;

0

Open

CurrentWindow

GlyphHeight 1.6

LONG GlyphHeight;

Glyph

Open

CapCustomGlyphCustomGlyphListDefineGlyph

GlyphWidth 1.6

LONG GlyphWidth;

Glyph

Open

CapCustomGlyphCustomGlyphListDefineGlyph

InterCharacterWait R/W

LONG InterCharacterWait;

DisplayTextDisplayTextAt

MarqueeTypeDISP_MT_NONE

0 DisplayText DisplayTextAtInterCharacterWaitCursorUpdateTRUE CursorRow CursorColumnDisplayTextDisplayTextAt

00

CapICharWaitFALSE

OpenCreateWindow0CurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

DisplayText

MapCharacterSet R/W1.7

BOOL MapCharacterSet;

TRUECharacterSet

FALSECharacterSet

CapMapCharacterSetFALSEFALSE

Open

CharacterSetCapMapCharacterSet

MarqueeFormat R/W

LONG MarqueeFormat;

DISP_MF_WALK

DISP_MF_PLACE

MarqueeFormatOpenCreateWindowDISP_MF_WALKCurrentWindowDestroyWindow

MarqueeFormatMarqueeFormat

MarqueeFormatDISP_MF_WALK

1.

MarqueeType

=

=

=

=2

2. MarqueeUnitWait

3. MarqueeUnitWaitMarqueeUnitWait

4. MarqueeRepeatWait

MarqueeFormatDISP_MF_PLACE

1.

MarqueeType

=

=

=

=2

2. MarqueeUnitWait

3. MarqueeUnitWaitMarqueeUnitWait

4. MarqueeRepeatWait

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL0

MarqueeType MarqueeUnitWait MarqueeRepeatWait

1. - 220 - VB LD

-

LD.CreateWindow(0, 3, 2, 3, 2, 5)

LD.DisplayText(0123456789, DISP_DT_NORMAL)

0

1

2

3

4

0

0

1

2

3

4

1

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

2

1

5

6

7

LD.MarqueeType = DISP_MT_INIT

LD.MarqueeFormat = DISP_MF_WALK

LD.DisplayTextAt(0, 4, AB, DISP_DT_NORMAL)

0

1

2

3

4

0

0

1

2

3

A

1

B

6

7

8

9

LD.MarqueeType = DISP_MT_LEFT

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

B

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

1

B

6

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

2

1

B

6

7

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

1

2

3

1

6

7

8

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

2

3

A

1

7

8

9

MarqueeRepeatWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

B

2- 220- VB LD

-

LD.CreateWindow(0, 3, 2, 3, 2, 5)

LD.DisplayText(0123456789, DISP_DT_NORMAL)

0

1

2

3

4

0

0

1

2

3

4

1

5

6

7

8

9

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

2

1

5

6

7

LD.MarqueeType = DISP_MT_INIT

LD.MarqueeFormat = DISP_MF_PLACE

LD.DisplayTextAt(0, 4, AB, DISP_DT_NORMAL)

0

1

2

3

4

0

0

1

2

3

A

1

B

6

7

8

9

LD.MarqueeType = DISP_MT_LEFT

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

B

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

1

B

6

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

2

1

B

6

7

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

1

2

3

1

6

7

8

MarqueeUnitWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

2

3

A

1

7

8

9

MarqueeRepeatWait

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

0

1

B

MarqueeRepeatWait R/W

LONG MarqueeRepeatWait;

OpenCreateWindow0CurrentWindowDestroyWindow

MarqueeRepeatWait

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

MarqueeTypeMarqueeFormatMarqueeUnitWait

MarqueeType R/W

LONG MarqueeType;

DISP_MT_NONE

DISP_MT_NONE

DISP_MT_INITMarqueeType

DISP_MT_UPRowsCreateWindowHeightCapVMarqueeTRUE

DISP_MT_DOWNRowsCreateWindowHeightCapVMarqueeTRUE

DISP_MT_LEFTColumnsCreateWindowWidthCapHMarqueeTRUE

DISP_MT_RIGHTColumnsCreateWindowWidthCapHMarqueeTRUE

MarqueeTypeDISP_MT_INITClearTextDisplayTextDisplayTextAtMarqueeType

DISP_MT_NONE

0MarqueeTypeDISP_MT_NONE

OpenCreateWindowMarqueeTypeDISP_MT_NONECurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL0

MarqueeUnitWaitMarqueeFormatMarqueeRepeatWait

(hidden)

MarqueeUnitWait R/W

LONG MarqueeUnitWait;

MarqueeTypeDISP_MT_NONEMarqueeUnitWait

OpenCreateWindow0CurrentWindowDestroyWindow

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

MarqueeType MarqueeFormatMarqueeRepeatWait

MaximumX 1.7

LONG MaximumX;

065536MaximumXDeviceColumns

OpenScreenMode

DeviceColumnsScreenModeMaximumY

MaximumY 1.7

LONG MaximumY;

065536MaximumYDeviceRows

OpenScreenMode

DeviceRowsScreenModeMaximumX

Rows

LONG Rows;

0RowsDeviceRowsDeviceRows

OpenDeviceRowsCurrentWindowCreateWindowDestroyWindow

Columns

ScreenMode R/W1.7

LONG ScreenMode;

CapScreenModeFALSE0CapScreenModeTRUEScreenModeList

0=

1= ScreenModeList

2= ScreenModeList2

Note:Open & Claim

ScreenModeDeviceColumnsDeviceRowsMaximumXMaximumY48x2562x204x325x32

Mode

Pixels

per

Row

Pixels

per

Column

MaximumY

MaximumX

Unused

Vertical

Pixels

Unused

Horizontal

Pixels

2x20

24

12

48

240

0

16

4x32

12

8

48

256

0

0

5x32

8

8

40

256

8

0

Open

CapScreenModeDeviceColumnsDeviceRowsMaximumXMaximumYScreenModeList

ScreenModeList 1.7

BSTR ScreenModeList;

CapScreenModeFALSE12202x20

2204325322x20,4x32,5x32

Open

CapScreenModeScreenMode

ClearDescriptors

LONG ClearDescriptors ();

CapDescriptorsFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

SetDescriptorDeviceDescriptors

ClearText 1.7

LONG ClearText ();

CursorRowCursorColumn0

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

DisplayText

CreateWindow 1.6

LONG CreateWindow (LONG Row, LONG Column, LONG Height,LONG Width,LONG WindowHeight, LONG WindowWidth);

Row

Column

Height

Width

WindowHeight

WindowWidth

RowColumnHeightWidthWindowHeightWindowWidth(0)(Height-1)(0)(Width-1)

MarqueeTypeMarqueeFormatMarqueeUnitWaitMarqueeRepeatWait

CreateWindowCurrentWindow

RowsWindowHeight

ColumnsWindowWidth

CursorRow0

CursorColumn0

CursorTypeDISP_CT_NONE(CapCursorTypeDISP_CCT_FIXED)

CursorUpdateTRUE

MarqueeTypeDISP_MT_NONE

MarqueeFormatDISP_MF_WALK

MarqueeUnitWait0

MarqueeRepeatWait0

InterCharacterWait0

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

DestroyWindowCurrentWindow

DefineGlyph 1.6

LONG DefineGlyph (LONG GlyphCode, BSTR Glyph);

GlyphCodeGlyph

GlyphGlyph BinaryConversionBinaryConversion

Glyph

Glyph

GlyphWidth811

10Glyph21082

Glyph

175

76543210

16

.*...

0

08

..*..

1

04

*..*.

2

12

.*..*

3

09

..*..

4

04

...*.

5

02

....*

6

01

11612

111111

5432109876543210

16

............

0,1

00 00

.....*......

2,3

00 40

....***.....

4,5

00 E0

...**.**....

6,7

01 B0

..**...**...

8,9

03 18

..**...**...

10,11

03 18

..*******...

12,13

03 F8

..*******...

14,15

03 F8

..**...**...

16,17

03 18

..**...**...

18,19

03 18

..**...**...

20,21

03 18

............

22,23

00 00

............

24,25

00 00

............

26,27

00 00

............

28,29

00 00

............

30,31

00 00

CapCustomGlyphFALSE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALGlyphGlyphCode

ResultCode

CapCustomGlyphCustomGlyphListGlyphWidthGlyphHeight

DestroyWindow

LONG DestroyWindow ();

CurrentWindow0

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL0

ResultCode

CreateWindowCurrentWindow

DisplayBitmap 1.7

LONG DisplayBitmap (BSTR FileName, LONG Width, LONG AlignmentX, LONG AlignmentY);

FileNameWindows

Width

AlignmentX

AlignmentY

Width

DISP_BM_ASIS1

AlignmentX

DISP_BM_LEFTCursorColumn

DISP _BM_CENTERCursorColumn

DISP _BM_RIGHTCursorColumn

AlignmentY

DISP_BM_TOPCursorRow

DISP _BM_CENTERCursorRow

DISP _BM_BOTTOMCursorRow

AlignmentXAlignmentYDISP_BM_XXXCursorRowCursorColumnCursorUpdateTRUECursorRowCursorColumn

AlignmentYAlignmentY

WidthWidthDISP_BM_ASIS1

Width0

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL WidthAlignmentXAlignmentY

OPOS_E_NOEXISTFileName

OPOS_E_EXTENDEDResultCodeExtended = OPOS_EDISP_TOOBIG:

ResultCodeExtended = OPOS_EDISP_BADFORMAT:

ResultCode

CapBitmapCursorColumnCursorRowCursorUpdate

DisplayText 1.7

LONG DisplayText (BSTR Data, LONG Attribute);

Data BinaryConversionBinaryConversion

Attribute DISP_DT_NORMALDISP_DT_BLINKDISP_DT_REVERSEDISP_DT_BLINK_REVERSE

CursorRowCursorColumnData

1CursorUpdateTRUECursorRowCursorColumnData

DataCursorUpdateTRUECursorRowCursorColumnColumns

DisplayText DisplayTextAt

MarqueeType = DISP_MT_NONE InterCharacterWait = 0

MarqueeType = DISP_MT_NONE InterCharacterWait not = 0 DataOPOSInterCharacterWait

MarqueeType = DISP_MT_INIT

MarqueeType not = DISP_MT_INIT

CapBlinkDISP_CB_NOBLINKAttributeDISP_DT_BLINKAttributeDISP_DT_BLINK_REVERSEDISP_DT_REVERSEDISP_CB_BLINKALL

DISP_CB_BLINKEACH

CapReverseDISP_CR_NONEAttributeDISP_DT_REVERSEAttributeDISP_DT_BLINK_REVERSEDISP_DT_BLINKDISP_CR_REVERSEALL

DISP_CB_REVERSEEACH

Attribute1.7Data

Data

Carriage Return (1013)

Newline / Line Feed (1010)

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALAttribute

ResultCode

DisplayTextAtClearTextCapBlinkCapReverseInterCharacterWait

DisplayTextAt 1.6

LONG DisplayTextAt (LONG Row, LONG Column, BSTR Data, LONG Attribute);

Row

Column

Data BinaryConversionBinaryConversion

AttributeDISP_DT_NORMALDISP_DT_BLINKDISP_DT_REVERSEDISP_DT_BLINK_REVERSE

DataRowColumn

CursorRowRowCursorColumnColumnDisplayText

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALRowColumnAttribute

ResultCode

DisplayTextClearTextCapBlinkCapReverseInterCharacterWait

ReadCharacterAtCursor 1.6

LONG ReadCharacterAtCursor (LONG* pChar);

pChar

CapReadBackDISP_CRB_NONE

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

CapReadBack

RefreshWindow

LONG RefreshWindow (LONG Window);

Window

Window

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALWindowDeviceWindows

ResultCode

ScrollText 1.7

LONG ScrollText (LONG Direction, LONG Units);

Direction

DISP_ST_UP

DISP_ST_DOWN

DISP_ST_LEFT

DISP_ST_RIGHT

Units

CursorRowCursorColumn

ScrollText

UnitsUnits

UnitsUnits

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALDirection

ResultCode

DisplayText

1- 220- VB LD

-

LD.CreateWindow(0, 3, 2, 4, 2, 4)

LD.DisplayText(abcdABCD, DISP_DT_NORMAL)

0

1

2

3

0

a

b

c

d

1

A

B

C

D

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

a

b

c

d

1

A

B

C

D

LD.ScrollText (DISP_ST_LEFT, 2)

0

1

2

3

0

c

d

1

C

D

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

c

d

1

C

D

2- 220- VB LD

-

LD.CreateWindow(0, 3, 2, 4, 2, 8)

LD.DisplayText(abcdefghABCDEFGH, DISP_DT_NORMAL)

0

1

2

3

4

5

6

7

0

a

b

c

d

e

f

g

h

1

A

B

C

D

E

F

G

H

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

a

b

c

d

1

A

B

C

D

LD.ScrollText (DISP_ST_LEFT, 2)

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

c

d

e

f

1

C

D

E

F

LD.ScrollText (DISP_ST_UP, 1)

0

1

2

3

4

5

6

7

0

A

B

C

D

E

F

G

H

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

0

C

D

E

F

1

SetBitmap 1.7

LONG SetBitmap (LONG BitmapNumber, BSTR FileName, LONG Width, LONG AlignmentX, LONG AlignmentY);

BitmapNumber1100

FileNameWindows

Width

AlignmentX

AlignmentY

Width

DISP_BM_ASIS1

AlignmentX

DISP_BM_LEFT

DISP _BM_CENTER

DISP _BM_RIGHT

AlignmentY

DISP_BM_TOP

DISP _BM_CENTER

DISP _BM_BOTTOM

DisplayTextDisplayTextAtDisplayBitmap1

BitmapNumber(1)BitmapNumberFileName

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALBitmapNumber CapBitmapFALSEWidthAlignmentXAlignmentY

OPOS_E_NOEXISTFileName

OPOS_E_EXTENDEDResultCodeExtended = OPOS_EDISP_TOOBIG:

ResultCodeExtended = OPOS_EDISP_BADFORMAT:

ResultCode

CapBitmapDisplayBitmapDisplayTextDisplayTextAt

SetDescriptor

LONG SetDescriptor (LONG Descriptor, LONG Attribute);

Descriptor0DeviceDescriptors-1

Attribute

DISP_SD_ON

DISP_SD_BLINK

DISP_SD_OFF

CapDescriptorsFALSE

Descriptor

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

ClearDescriptorsDeviceDescriptors

3

210 DeviceColumnsDeviceRows

0

1

2

3

4

5

6

7

8

9

0

1

CfBXvC

foCX

DeviceColumns

DeviceRows

CreateWindow38

CreateWindow3

(Height == WindowHeight) && (Width == WindowWidth)

(Height == WindowHeight) && (Width != WindowWidth)

(Height != WindowHeight) && (Width == WindowWidth)

(Height == WindowHeight) && (Width == WindowWidth)

CreateWindow(0, 1, 2, 8, 2, 8)

0

1

2

3

4

5

6

7

8

9

0

1

r[|[g

0

1

0

1

2

3

4

5

6

7

r[|[g

(2 x 8)

Columns

Rows

(CursorRow, CursorColumn)

EBhE

(2 x 8)

CursorRowCursorColumn (0, 0) (1, 7) DisplayTextDisplayTextAt (1, 7)

ScrollTextScrollTextCursorRowCursorColumn

(Height == WindowHeight) && (Width != WindowWidth)

CreateWindow(0, 1, 2, 8, 2, 15)

0

1

2

3

4

5

6

7

8

9

0

1

r[|[g

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

EBhE

(2 x 15)

r[|[g

(2 x 8)

Columns

Rows

(CursorRow, CursorColumn)

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

EBhE

(2 x 15)

Columns

Rows

(CursorRow, CursorColumn)

r[|[g

CursorRowCursorColumn (0, 0) (1, 14) DisplayText DisplayTextAt (1, 14)

ScrollTextScrollText

EBhE

(2 x 15)

r[|[g

10

EBhE

(2 x 15)

r[|[g

CursorRowCursorColumn

ScrollTextMarqueeTypeDisplayTextDisplayTextAt

DisplayText(HELLO,OPOS-J, DISP_DT_NORMAL)

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

r[|[g

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

H

E

L

L

O

n

o

n

n

r

|

i

r[|[g

C

}`j

}aj

DisplayText

\bhs

(CursorRow, CursorColumn)

(Height != WindowHeight) && (Width == WindowWidth)

CreateWindow(0, 1, 2, 8, 7, 8)

0

1

2

3

4

5

6

7

8

9

0

1

r[|[g

0

1

2

3

4

5

6

0

1

2

3

4

5

6

7

EBhE

(7 x 8)

r[|[g

(2 x 8)

Columns

Rows

(CursorRow, CursorColumn)

0

1

2

3

4

5

6

0

1

2

3

4

5

6

7

EBhE

(7 x 8)

Columns

Rows

(CursorRow, CursorColumn)

r[|[g

InterCharacterWait

MarqueeType DISP_MT_UP, DISP_MT_DOWN, DISP_MT_LEFT, DISP_MT_RIGHT

DispalyText

DispalyTextAt

ClearText

ScrollText

OPOS_E_ILLEGAL

2

Place

Walk

MarqueeFormat

1. MarqueeType DISP_MT_LEFT DISP_MT_UP MarqueeType DISP_MT_RIGHT DISP_MT_DOWN

2. MarqueeUnitWait()

3.()MarqueeUnitWait()

4. MarqueeRepeatWait1.

C2322

P

Q

r[|[g

}

C

j

R

T

S

U

D

MarqueeRepeatWait

~b

}

D

j

P

S

P

Q

T

S

Q

R

U

T

MarqueeUnitWait

~b

1. MarqueeType DISP_MT_LEFTDISP_MT_RIGHTDISP_MT_UPDISP_MT_DOWN ()

2. MarqueeUnitWait()

3.

4. MarqueeRepeatWait1.

E2322

P

Q

r[|[g

}

E

j

R

T

S

U

F

MarqueeRepeatWait

~b

}

F

j

P

S

P

Q

T

S

Q

R

U

T

MarqueeUnitWait

~b

MarqueeType

MarqueeType DISP_MT_NONE DISP_MT_NONE DISP_MT_NONE DISP_MT_NONE

MarqueeType

1. DISP_MT_INIT DisplayText

2. DISP_MT_INIT

3. DISP_MT_INIT DISP_MT_INITDISP_MT_NONE

4. DISP_MT_INIT DISP_MT_NONE

CursorRowCursorColumnCursorRowCursorColumn (0, 0) (X-1, Y-1) (0, 0) (X-1, Y-1)

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

1

3

14

r[|[g

(CursorRow, CursorColumn)

EBhE

}

G

j

G28215 (0, 0) CursorRow CursorColumn (1, 14) H

0

1

0

1

2

3

4

5

6

7

8

9

10

11

1

2

13

14

r[|[g

(CursorRow, CursorColumn)

EBhE

}

H

j

J[\

DisplayTextDisplayTextAtDisplayTextDisplayTextAtCursorUpdateTRUEG

DisplayText(HELLO,OPOS-J, DISP_DT_NORMAL)

I CursorUpdateFALSETRUE

0

1

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

H

E

L

L

O

n

o

n

n

r

|

i

C

}

I

j

DisplayText

\bhs

r[|[g

EBhE

@

A

ScrollText

MarqueeType

DisplayTextDisplayTextAt

5

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapCompareFirmwareVersion

1.9

BooleanR

Open

CapPowerReporting

1.3

LongR

Open

CapStatisticsReporting

1.8

BooleanR

Open

CapUpdateFirmware

1.9

Boolean R

Open

CapUpdateStatistics

1.8

BooleanR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LONGR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapErrorDetection

1.0

BooleanR

Open

CapSingleFile

1.0

BooleanR

Open

CapTransactions

1.0

BooleanR

Open

FreeData

1.0

LongR

Open & Enable

TotalsSize

1.0

LongR

Open & Enable

NumberOfFiles

1.0

LongR

Open & Enable

TransactionInProgress

1.0

BooleanR

Open

Open

1.0

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open & Enable; (1)

ClearInput

1.0

ClearOutput

1.0

CompareFirmwareVersion

1.9

Open, Claim, & Enable

DirectIO

1.0

Open

ResetStatistics

1.8

Open & Enable; (1)

RetrieveStatistics

1.8

Open & Enable; (1)

UpdateFirmware

1.9

Open, Claim, & Enable

UpdateStatistics

1.8

Open & Enable; (1)

ClaimFile

1.0

Open & Enable; (2)

ReleaseFile

1.0

Open & Enable

Read

1.0

Open & Enable; (2)

Write

1.0

Open & Enable; (2)

SetAll

1.0

Open & Enable; (2)

ValidateData

1.0

Open & Enable; (2)

RecalculateValidationData

1.0

Open & Enable; (2)

Create

1.0

Open & Enable; (1)

Find

1.0

Open & Enable; (1)

FindByIndex

1.0

Open & Enable; (1)

Delete

1.0

Open & Enable; (2)

Rename

1.0

Open & Enable; (2)

BeginTrans

1.0

Open & Enable

CommitTrans

1.0

Open & Enable

Rollback

1.0

Open & Enable

(1)

(2)

DataEvent

1.0

DirectIOEvent

1.0

Open

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.3

Open,Claim,&Enable

OLEIDOPOS.Totals

1

begin

commit

rollback

CreateCreate

1

Read

Write

SetAll

Find

FindByIndex

Delete

Rename

ClaimFileClaimDevice

ReleaseFile

FreeData

TotalsSize

NumberOfFiles

commitrollbackFreeDatacommit

BeginTrans

CommitTranscommitcommitcommit

RollbackRollback

TransactionInProgress

Commit Transcommit

ReadWrite

Write

RecalculateValidationData RecalculateValidationData

ValidateData

Write

CapErrorDetection

BOOL CapErrorDetection;

TRUE

FALSE

Open

CapSingleFile

BOOL CapSingleFile;

TRUE()1

FALSE

Open

CapTransactions

BOOL CapTransactions;

TRUE

FALSE

Open

FreeData

LONG FreeData;

CreateDeleteFreeDataFreeData

commitFreeDataFreeData

CreateWrite

NumberOfFiles

LONG NumberOfFiles;

FreeData

TotalsSize

LONG TotalsSize;

FreeData

TransactionInProgress

BOOL TransactionInProgress;

TRUEFALSE

OpenFALSE

BeginTrans

BeginTrans

LONG BeginTrans ();

1

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

CommitTransRollback

ClaimDevice ()

LONG ClaimDevice (LONG Timeout);

Timeout0OPOS_FOREVER(-1)

ClaimFileClaimDeviceReleaseFile

ClaimedTRUE

ResultCode

OPOS_SUCCESSClaimedTRUE

OPOS_E_ILLEGALTimeout

OPOS_E_TIMEOUT1Timeout

ReleaseDeviceClaimFileReleaseFile

ClaimFile 1.8

LONG ClaimFile (LONG HTotalsFile, LONG Timeout);

HTotalsFile

Timeout0OPOS_FOREVER(-1)

ClaimFileClaimDeviceClaimFile

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGALTimeout

OPOS_E_TIMEOUTTimeout

ClaimDeviceReleaseFile

CommitTrans

LONG CommitTrans ();

BeginTrans

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

BeginTransRollback

Create

LONG Create (BSTR FileName, LONG* pHTotalsFile, LONG Size,BOOL ErrorDetection);

FileName

100x20

pHTotalsFile

Size

ErrorDetectionTRUE

FALSE

0

CapSingleFileTRUE1()

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALFileName

OPOS_E_EXISTSFileName

OPOS_E_EXTENDEDResultCodeExtended=OPOS_ETOT_NOROOM:

ResultCode

FindDeleteRename

Delete

LONG Delete (BSTR FileName);

FileName

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALFileName

OPOS_E_NOEXISTFileName

ResultCode

CreateFindRename

Find

LONG Find (BSTR FileName, LONG* pHTotalsFile, LONG* pSize);

FileName

pHTotalsFile

pSize

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALFileName

OPOS_E_NOEXISTFileName

ResultCode

CreateDeleteRename

FindByIndex

LONG FindByIndex (LONG Index, BSTR* pFileName);

Index

pFileName

0 NumberOfFiles1

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALIndex

ResultCode

CreateFind

Read

LONG Read (LONG HTotalsFile, BSTR* pData, LONG Offset, LONG Count);

HTotalsFileCreateFind

pDataBinaryConversionBinaryConversion

Offset

Count

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGAL

OPOS_E_EXTENDEDResultCodeExtended=OPOS_ETOT_VALIDATION:

ResultCode

Write

RecalculateValidationData

LONG RecalculateValidationData (LONG HTotalsFile);

HTotalsFile

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGAL

ResultCode

Release ()

LONG ReleaseDevice ();

ClaimDeviceClaimFileReleaseDevice

ResultCode

OPOS_SUCCESSClaimedFALSE

OPOS_E_ILLEGAL

ClaimDeviceClaimFile

ReleaseFile

LONG ReleaseFile (LONG HTotalsFile);

HTotalsFile

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ClaimDeviceClaimFile

Rename

LONG Rename (LONG HTotalsFile, BSTR FileName);

HTotalsFile

FileName100x20

CapSingleFileTRUE

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGALFileNameCapSingleFileTRUE

OPOS_E_EXISTSFileName

ResultCode

Rollback

LONG Rollback ();

BeginTrans

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ResultCode

BeginTransCommitTrans

SetAll

LONG SetAll (LONG HTotalsFile, LONG Value);

HTotalsFile

Value

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

ResultCode

ValidateData

LONG ValidateData (LONG HTotalsFile);

HTotalsFile

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGAL

ResultCode

Write

LONG Write (LONG HTotalsFile, BSTR Data, LONG Offset, LONG Count);

HTotalsFileCreateFind

DataBinaryConversionBinaryConversion

Offset

Count

CommitTransRollback

ResultCode

OPOS_SUCCESS

OPOS_E_CLAIMED

OPOS_E_ILLEGAL

OPOS_E_EXTENDEDResultCodeExtended=OPOS_ETOT_NOROOM:

ResultCodeExtended=OPOS_ETOT_VALIDATION:

ResultCode

ReadBeginTransCommitTransRollbackFreeData

6

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapCompareFirmwareVersion

1.9

BooleanR

Open

CapPowerReporting

1.3

Long R

Open

CapStatisticsReporting

1.8

BooleanR

Open

CapUpdateFirmware

1.9

Boolean R

Open

CapUpdateStatistics

1.8

BooleanR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

Long R

OutputID

1.0

LongR

PowerNotify

1.3

Long R/W

Open

PowerState

1.3

Long R

Open

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

KeyPosition

1.0

LongR

Open & Enable

PositionCount

1.0

LongR

Open

Open

1.0

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open & Enable

ClearInput

1.0

ClearOutput

1.0

CompareFirmwareVersion

1.9

Open & Enable

DirectIO

1.0

Open

ResetStatistics

1.8

Open & Enable

RetrieveStatistics

1.8

Open & Enable

UpdateFirmware

1.9

Open & Enable

UpdateStatistics

1.8

Open & Enable

WaitForKeylockChange

1.0

Open & Enable

DataEvent

1.0

DirectIOEvent

1.0

Open

ErrorEvent

1.0

OutputCompleteEvent

1.0

StatusUpdateEvent

1.0

Open & Enable

OLEIDOPOS.Keylock

3

3

LOCK_KP_LOCK1

LOCK_KP_NORM2

LOCK_KP_SUPR3

KeyPosition1PositionCount

StatusUpdateEvent

StatusUpdateEvent

ClaimDeviceOPOS_E_ILLEGAL

KeyPosition

LONG KeyPosition;

StatusUpdateEvent

KeyPosition

LOCK_KP_LOCK1

LOCK_KP_NORM2

LOCK_KP_SUPR3

4PositionCount

PositionCount

LONG PositionCount;

Open

WaitForKeylockChange

LONG WaitForKeylockChange (LONG KeyPosition, LONG Timeout);

KeyPosition

Timeout-10

KeyPosition

LOCK_KP_ANY0

LOCK_KP_LOCK1

LOCK_KP_NORM2

LOCK_KP_SUPR3

4PositionCount

KeyPosition

Timeout0KeyPositionOPOS_SUCCESSOPOS_E_TIMEOUTTimeout-1KeyPosition

ResultCode

OPOS_SUCCESSKeyPositionLOCK_KP_ANY

OPOS_E_TIMEOUT

OPOS_E_ILLEGAL

ResultCode

StatusUpdateEvent

void StatusUpdateEvent (LONG State);

State

LOCK_KP_LOCK1

LOCK_KP_NORM2

LOCK_KP_SUPR3

4PositionCount

StatusUpdateEvent

2 StatusUpdateEvent

7

AutoDisable

1.2

BooleanR/W

Open

BinaryConversion

1.2

LongR/W

Open

CapCompareFirmwareVersion

1.9

BooleanR

Open

CapPowerReporting

1.3

LongR

Open

CapStatisticsReporting

1.8

BooleanR

Open

CapUpdateFirmware

1.9

Boolean R

Open

CapUpdateStatistics

1.8

BooleanR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

Open

DataEventEnabled

1.0

BooleanR/W

Open

DeviceEnabled

1.0

BooleanR/W

Open & Claim

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LongR

OutputID

1.0

LongR

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

ControlObjectDescription

1.0

StringR

ControlObjectVersion

1.0

LongR

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapISO

1.0

BooleanR

Open

CapJISOne

1.0

BooleanR

Open

CapJISTwo

1.0

BooleanR

Open

CapTransmitSentinels

1.5

BooleanR

Open

TracksToRead

1.0

LongR/W

Open

DecodeData

1.0

BooleanR/W

Open

ParseDecodeData

1.0

BooleanR/W

Open

ErrorReportingType

1.2

LongR/W

Open

Track1Data

1.0

StringR

Open

Track2Data

1.0

StringR

Open

Track3Data

1.0

StringR

Open

Track4Data

1.5

StringR

Open

AccountNumber

1.0

StringR

Open

ExpirationDate

1.0

StringR

Open

Title

1.0

StringR

Open

FirstName

1.0

StringR

Open

MiddleInitial

1.0

StringR

Open

Surname

1.0

StringR

Open

Suffix

1.0

StringR

Open

ServiceCode

1.0

StringR

Open

Track1DiscretionaryData

1.0

StringR

Open

Track2DiscretionaryData

1.0

StringR

Open

TransmitSentinels

1.5

BooleanR/W

Open

Open

1.0

Close

1.0

Open

ClaimDevice

1.0

Open

ReleaseDevice

1.0

Open & Claim

CheckHealth

1.0

Open, Claim, & Enable

ClearInput

1.0

Open & Claim

ClearOutput

1.0

CompareFirmwareVersion

1.9

Open, Claim, & Enable

DirectIO

1.0

Open

ResetStatistics

1.8

Open, Claim, & Enable

RetrieveStatistics

1.8

Open, Claim, & Enable

UpdateFirmware

1.9

Open, Claim, & Enable

UpdateStatistics

1.8

Open, Claim, & Enable

DataEvent

1.0

Open, Claim, & Enable

DirectIOEvent

1.0

Open & Claim

ErrorEvent

1.0

Open, Claim, & Enable

OutputCompleteEvent

1.0

StatusUpdateEvent

1.3

Open, Claim, & Enable

(MSR)OLEIDOPOS.MSR

123JIS-II

ISOJIS Type-IJIS Type-II

1ISOJIS-I1

2ISOJIS-I2

3ISOJIS-I3

4JIS-II

JIS-II

Ver1.4JIS-TracknDataSOVer1.5JIS-II Track4Data 1.4 SOTracknData Track1DataTrack3DataDataEvent StatusErrorEvent ErrorCodeExtended Track4DataSO

4

TracksToRead4

DecodeData

ParseDecodeData

ErrorReportingType

DataEvent

AutoDisableTRUEDataEvent

DataEventEnabledTRUEDataEventDataEventEnabledFALSEDataEventEnabledTRUE

ErrorEventDataEventEnabledTRUE

DataCount

ClearInput

AccountNumber

BSTR AccountNumber;

ParseDecodeData1

ParseDecodeDataFALSE

CapISO

BOOL CapISO;

TRUEISOFALSE

Open

CapJISOne

BOOL CapJISOne;

TRUEJIS Type-I

FALSE

JIS-IISOCapJISOneTRUECapISOTRUE

Open

CapJISTwo

BOOL CapJISTwo;

TRUEJIS Type-II FALSE

Open

CapTransmitSentinels 1.5

BOOL CapTransmitSentinels;

TRUEFALSE

Open

TransmitSentinels

DecodeData R/W

BOOL DecodeData;

FALSETrack1DataTrack2DataTrack3DataTrack4Data(Raw Format)

TRUETrack1DataTrack2DataTrack3DataTrack4DataASCII77

TrackData

ISO

Track1Data

6-

0x00 0x3F

0x20 0x5F

Track2Data

4-

0x00 0x0F

0x30 0x3F

Track3Data

4-

0x00 0x0F

0x30 0x3F

JIS-I

Track1Data

6-

0x00 0x3F

0x20 0x5F

Track1Data

7-

0x00 0x7F

Track2Data

4-

0x00 0x0F

0x30 0x3F

Track3Data

4-

0x00 0x0F

0x30 0x3F

Track3Data

7-

0x00 0x7F

JIS-II

Track4Data

7-

0x00 0x7F

OpenTRUE

FALSEParseDecodeDataFALSE

ResultCode

OPOS_SUCCESS

ParseDecodeData

ErrorReportingType R/W

1.2

LONG ErrorReportingType;

TracksToRead1ErrorEvent

ErrorEvent2

DataEventTracksToReadMSR_TR_1_2_3123ErrorEvent123

MSR_ERT_CARD

MSR_ERT_TRACK

OpenMSR_ERT_CARD1.2

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

ErrorEvent

ExpirationDate

BSTR ExpirationDate;

ASCII10YYMM199829802201881808

ParseDecodeData

ParseDecodeDataFALSE

FirstName

BSTR FirstName;

ParseDecodeData

ParseDecodeDataFALSE

MiddleInitial

BSTR MiddleInitial;

ParseDecodeData

ParseDecodeDataFALSE

ParseDecodeData R/W

BOOL ParseDecodeData;BOOL ParseDecodedData;

(ParseDecodeData.)

TRUETrack1DataTrack2DataTrack3DataJIS-I Track 1CISO Track 1CTrack4Data

JIS-I / ISO Track 1A

JIS-I / ISO Track 1B

JIS-I / ISO Track 1 VISA()

JIS-I / ISO Track 2

OpenTRUE

TRUEDecodeData TRUE

ResultCode

OPOS_SUCCESS

DecodeDataSurnameSuffixAccountNumberFirstNameMiddleInitialTitleExpirationDateServiceCodeTrack1DiscretionaryDataTrack2DiscretionaryData

ServiceCode

BSTR ServiceCode;

ParseDecodeData

ParseDecodeDataFALSE

Suffix

BSTR Suffix;

ParseDecodeData

ParseDecodeDataFALSE

Surname

BSTR Surname;

ParseDecodeData

ParseDecodeDataFALSE

Title

BSTR Title;

ParseDecodeData

ParseDecodeDataFALSE

Track1Data

BSTR Track1Data;

1

TransmitSentinels FALSE

TransmitSentinels TRUE

DecodeDataTRUE(Raw)ParseDecodeDataTRUE

TracksToRead

Track1DiscretionaryData

BSTR Track1DiscretionaryData;

1

ParseDecodeData

ParseDecodeDataFALSE

1

Track2Data

BSTR Track2Data;

2

TransmitSentinels FALSE

TransmitSentinels TRUE

DecodeDataTRUE(Raw)ParseDecodeDataTRUE

TracksToRead

Track2DiscretionaryData

BSTR Track2DiscretionaryData;

2

ParseDecodeData

ParseDecodeDataFALSE

Track3Data

BSTR Track3Data;

3

TransmitSentinels FALSE

TransmitSentinels TRUE

DecodeDataTRUE(Raw)

TracksToRead

Track4Data 1.5

BSTR Track4Data;

4JIS-II

TransmitSentinels FALSE

TransmitSentinels TRUE

DecodeDataTRUE(Raw)

JIS-II TracknDataTrack4Data

TracksToRead

TracksToRead R/W1.5

LONG TracksToRead;

Track1DataTrack2DataTrack3DataTrack4Data

MSR_TR_1Track 1

MSR_TR_2Track 2

MSR_TR_3Track 3

MSR_TR_1_2Track 12

MSR_TR_1_3Track 13

MSR_TR_2_3Track 23

MSR_TR_1_2_3Track 1 23

MSR_TR_4Track 4.

MSR_TR_1_4Track 14

MSR_TR_2_4Track 24

MSR_TR_3_4Track 34

MSR_TR_1_2_4Track 124

MSR_TR_1_3_4Tracks 134

MSR_TR_2_3_4Track 234

MSR_TR_1_2_3_4Track 1234

TracksToReadISOJIS-II

OpenMSR_TR_1_2_3

ResultCode

OPOS_SUCCESS

OPOS_E_ILLEGAL

TransmitSentinels R/W

1.5

BOOL TransmitSentinels;

TRUETrack1Data, Track2Data, Track3Data, Track4Data

FALSE

OpenFALSE

ResultCode

OPOS_SUCCESS

OPOS_ILLEGALCapTransmitSentinels FALSE

CapTransmitSentinels ; Track1Data ; Track2Data ; Track3Data ; Track4Data

DataEvent 1.5

void DataEvent (LONG Status);

Status4LONG4 Status

4

3

2

1

0TracksToRead

1TrackxData

Track1DataTrack2DataTrack3DataTrack4DataDecodeDataTRUEParseDecodeDataTRUE

ErrorEvent 1.5

void ErrorEvent (LONG ResultCode, LONG ResultCodeExtended,LONG ErrorLocus, LONG* pErrorResponse);

ResultCode

ResultCodeExtended

ErrorLocus

pErrorResponse

ErrorReportingTypeMSR_ERT_CARDResultCode

OPOS_E_EXTENDEDResultCodeExtended =OPOS_EMSR_START

(Start sentinel error)

ResultCodeExtended = OPOS_EMSR_END

(End sentinel error)

ResultCodeExtended = OPOS_EMSR_PARITY

ResultCodeExtended = OPOS_EMSR_LRCLRC

ResultCode

ErrorReportingTypeMSR_ERT_TRACKResultCode

OPOS_E_EXTENDEDResultCodeExtended =

4

3

2

1

OPOS_SUCCESS

OPOS_EMSR_START

(Start sentinel error)

OPOS_EMSR_END

(End sentinel error)

OPOS_EMSR_PARITY

OPOS_EMSR_LRC

LRC

OPOS_E_FAILURE

ResultCode

ErrorLocus

OPOS_EL_INPUT

OPOS_EL_INPUT_DATA

pErrorResponseErrorLocus

OPOS_ER_CLEARErrorLocus OPOS_EL_INPUT

OPOS_ER_CONTINUEINPUT ErrorLocusOPOS_EL_INPUT_DATADataEventEnabledDataEventDataEventEnabledTRUEErrorEventOPOS_EL_INPUTErrorLocusOPOS_EL_INPUT_DATA

DataEventEnabledTRUE

ErrorReportingTypeMSR_ERT_CARD

ErrorReportingTypeMSR_ERT_TRACKResultCodeResultCodeExtendedDataEvent

DataEventTrackXDataErrorEventDataCountAutoDisable

ErrorReportingType

8POS

AutoDisable

1.2

BooleanR/W

BinaryConversion

1.2

LongR/W

Open

CapCompareFirmwareVersion

1.9

BooleanR

Open

CapPowerReporting

1.3

LongR

Open

CapStatisticsReporting

1.8

BooleanR

Open

CapUpdateFirmware

1.9

Boolean R

Open

CapUpdateStatistics

1.8

BooleanR

Open

CheckHealthText

1.0

StringR

Open

Claimed

1.0

BooleanR

Open

DataCount

1.2

LongR

DataEventEnabled

1.0

BooleanR/W

DeviceEnabled

1.0

BooleanR/W

Open & Claim

FreezeEvents

1.0

BooleanR/W

Open

OpenResult

1.5

LongR

OutputID

1.0

LongR

Open

PowerNotify

1.3

LongR/W

Open

PowerState

1.3

LongR

Open

ResultCode

1.0

LongR

--

ResultCodeExtended

1.0

LongR

Open

State

1.0

LongR

--

ControlObjectDescription

1.0

StringR

--

ControlObjectVersion

1.0

LongR

--

ServiceObjectDescription

1.0

StringR

Open

ServiceObjectVersion

1.0

LongR

Open

DeviceDescription

1.0

StringR

Open

DeviceName

1.0

StringR

Open

CapCharacterSet

CapConcurrentJrnRec

CapConcurrentJrnSlp

CapConcurrentPageMode

CapConcurrentRecSlp

CapCoverSensor

CapMapCharacterSet

CapTransaction

1.1

1.0

1.0

1.9

1.0

1.0

1.7

1.1

LongR

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

Open

Open

Open

Open

Open

Open

Open

Open

CapJrnPresent

CapJrn2Color

CapJrnBold

CapJrnDhigh

CapJrnDwide

CapJrnDwideDhigh

CapJrnEmptySensor

CapJrnItalic

CapJrnNearEndSensor

CapJrnUnderline

CapJrnCartridgeSensor

CapJrnColor

1.0

1.0

1.0

1.0

1.0

1.0

1.0

1.0

1.0

1.0

1.5

1.5

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

BooleanR

LongR

Long R

Open

Open

Open

Open

Open

Open

Open

Open

Open

Open

Open

Open

CapRecPresent

CapRec2Color

CapRecBarCode

CapRecBitmap

Ca