diff --git a/EpdBase/EpdBase.cpp b/EpdBase/EpdBase.cpp index 4068c26..acea4c3 100644 --- a/EpdBase/EpdBase.cpp +++ b/EpdBase/EpdBase.cpp @@ -1,11 +1,11 @@ #include "stdafx.h" +#pragma unmanaged #include "EpdBase.h" #include "TimeFunctions.h" #define DiscoveryTimeslotPeriod 500 #define DiscoveryExpirationPeriod 6000 #define RxRetryCount 5 #define TxRetryCount 5 - #pragma unmanaged EpdBase::Epd2U::Epd2U(int comport) { @@ -50,10 +50,16 @@ DWORD EpdBase::Epd2U::StartCom() CommsInitialized = InitRv; return ErrorReason; } + +void EpdBase::Epd2U::EndCom() +{ + if (port > 0 && CommsInitialized==1) DeinitComms(port); + CommsInitialized = 0; +} + EpdBase::Epd2U::~Epd2U() { - if (port>0) DeinitComms(port); - CommsInitialized = 0; + EndCom(); } int EpdBase::Epd2U::StartDiscover( int EpdTimeout) { @@ -92,7 +98,7 @@ int EpdBase::Epd2U::StartDiscover( int EpdTimeout) } return DiscRV; } -void EpdBase::Epd2U::Open(DWORD DeviceID) +int EpdBase::Epd2U::Open(DWORD DeviceID) { CurrentDeviceID = DeviceID; if (port > 0) { @@ -104,6 +110,7 @@ void EpdBase::Epd2U::Open(DWORD DeviceID) } } else { OpenRV = ConRV = 1; } + return OpenRV; } void EpdBase::Epd2U::Close() { @@ -341,7 +348,7 @@ WORD EpdBase::Epd2U::ReadTresHolds() &HG); CommitRV = Commit(); if (CommitRV == 0) Error = GetErrorDetails(&ErrorSource, &ErrorReason, &ErrorData); - return CommitRV; + if (CommitRV == 1) return 0; else return 123; } WORD EpdBase::Epd2U::ReadDoses() { @@ -398,14 +405,16 @@ WORD EpdBase::Epd2U::ReadDoses() } WORD EpdBase::Epd2U::PrepareForIssue() { - if (port == 0) return 1; + int rv = 0; + if (port == 0) return 0; CommitRV = WriteConfig(); if (CommitRV) CommitRV = Commit(); if (CommitRV) CommitRV = ClearDose(); if (CommitRV) CommitRV = ClearTotalDose(); if (CommitRV) CommitRV = ClearPeakRates(); if (CommitRV) CommitRV = Commit(); - return CommitRV; + if (CommitRV) rv = 0; else rv = 1; + return rv; } WORD EpdBase::Epd2U::DeIssue() { @@ -436,10 +445,16 @@ WORD EpdBase::Epd2U::DeIssue() Close(); return CommitRV; } + +/// +/// +/// +/// O = OK WORD EpdBase::Epd2U::Issue() { + WORD rv; IssueEpdRV = WriteAlarmDoseThresholdsRV = WriteAlarmRateThresholdsRV = WriteWearerNameRV = OnRV = CommitRV = 0; - if (port == 0) return 1; + if (port == 0) return 0; WORD OKRV = SetFailFlag(); // all actions have been completed if (OKRV) OKRV = Commit(); @@ -454,6 +469,7 @@ WORD EpdBase::Epd2U::Issue() if (OKRV == 0) { Error = GetErrorDetails(&ErrorSource, &ErrorReason, &ErrorData); + rv = 1; } ClearFailFlag(); // all actions have been completed Commit(); @@ -472,11 +488,8 @@ WORD EpdBase::Epd2U::Issue() Error = GetErrorDetails(&ErrorSource, &ErrorReason, &ErrorData); EndSession(0x5E, 40); } - Close(); - //DeinitComms(port); - - return OKRV; + return rv; } /// diff --git a/EpdBase/EpdBase.h b/EpdBase/EpdBase.h index e231083..d349c75 100644 --- a/EpdBase/EpdBase.h +++ b/EpdBase/EpdBase.h @@ -1,7 +1,8 @@ #pragma once -#include "TimeFunctions.h" -#include "dll2/reader2.h" - +#pragma unmanaged +#include +#include "reader2.h" +#pragma unmanaged namespace EpdBase { class Epd2U @@ -201,11 +202,11 @@ namespace EpdBase BYTE byStatus4; int maxDiscoverTime = 10000; + int ConnectTries = 0; LARGE_INTEGER WaitDiscovery; - int ConnectTries; BYTE ConnectTimerFired; int StartDiscover(int EpdTimeout); - void Open(DWORD DeviceID); + int Open(DWORD DeviceID); void Close(); void DecodeFunctionFlags(); @@ -215,6 +216,7 @@ namespace EpdBase Epd2U(int comport); WORD WriteConfig(); DWORD StartCom(); + void EndCom(); WORD ReadStatus(); WORD EPDReadExtraStatus(); WORD EPDReadConfig(); diff --git a/EpdBase/EpdBase.vcxproj b/EpdBase/EpdBase.vcxproj index 6f99587..18b513b 100644 --- a/EpdBase/EpdBase.vcxproj +++ b/EpdBase/EpdBase.vcxproj @@ -129,6 +129,7 @@ + diff --git a/EpdBase/EpdBase.vcxproj.filters b/EpdBase/EpdBase.vcxproj.filters index 5d799cb..5641dec 100644 --- a/EpdBase/EpdBase.vcxproj.filters +++ b/EpdBase/EpdBase.vcxproj.filters @@ -27,6 +27,9 @@ Header Files + + Header Files + diff --git a/EpdBase/TimeFunctions.cpp b/EpdBase/TimeFunctions.cpp index b43c292..f191359 100644 --- a/EpdBase/TimeFunctions.cpp +++ b/EpdBase/TimeFunctions.cpp @@ -49,3 +49,33 @@ void TimeFunctions::UnixTimeToFileTime(time_t t, LPFILETIME pft) FileTimeToSystemTime(&ft, pst); } + + void TimeFunctions::EpdTimeToFileTime(INT32 t, LPFILETIME pft, bool isMK2) //MK3 + { + LONGLONG offset; + if (isMK2) offset = 116444736000000000; else offset = 125911584000000000;; + LONGLONG ll; + ll = Int32x32To64(t, 10000000) + offset; //1601-1-1 -> 2000 + pft->dwLowDateTime = (DWORD)ll; + pft->dwHighDateTime = ll >> 32; + } + + void TimeFunctions::FileTimeToEpdTime(FILETIME pft, INT32* t, bool isMK2) + { + LONGLONG offset; + if (isMK2) offset = 116444736000000000; else offset = 125911584000000000; + LONGLONG ll = ((((LONGLONG)pft.dwHighDateTime << 32) + pft.dwLowDateTime) - offset) / 10000000; + *t = (DWORD)ll; + } + + UINT32 TimeFunctions::NowToEpdTime(bool isMK2) + { + LONGLONG offset; + if (isMK2) offset = 116444736000000000; else offset = 125911584000000000; + SYSTEMTIME t; + GetSystemTime(&t); + FILETIME ft; + SystemTimeToFileTime((const SYSTEMTIME*)&t, &ft); + LONGLONG ll = ((((LONGLONG)ft.dwHighDateTime << 32U) + ft.dwLowDateTime) - offset) / 10000000; + return (DWORD)ll; + } \ No newline at end of file diff --git a/EpdBase/TimeFunctions.h b/EpdBase/TimeFunctions.h index 43afa8f..11e9f98 100644 --- a/EpdBase/TimeFunctions.h +++ b/EpdBase/TimeFunctions.h @@ -1,15 +1,16 @@ #pragma once #include #include - class TimeFunctions { public: TimeFunctions(); + static void EpdTimeToFileTime(INT32 t, LPFILETIME pft, bool isMK2); + void FileTimeToEpdTime(FILETIME pft, INT32* t, bool isMK2); + static UINT32 NowToEpdTime(bool isMK2); static void UnixTimeToFileTime(time_t t, LPFILETIME pft); static void UnixTimeToSystemTime(time_t t, LPSYSTEMTIME pst); }; UINT32 FileTime_to_POSIX(FILETIME ft); - UINT32 UnixTimeNow(); diff --git a/EpdBase/dll2/reader2.lib b/EpdBase/dll2/reader2.lib new file mode 100644 index 0000000..4662cb2 Binary files /dev/null and b/EpdBase/dll2/reader2.lib differ diff --git a/EpdBase/reader2.h b/EpdBase/reader2.h new file mode 100644 index 0000000..2cc2b02 --- /dev/null +++ b/EpdBase/reader2.h @@ -0,0 +1,1374 @@ +/****************************************************************************** + * + * Module Name : 32 Bit Ex15 Interface DLL + * + * Module Part No. : 611/TA/40571/000 + * + * File Name : EX15.MIF + * + * File Description : Top level functions exported by the DLL. + * + * Authors: : K Ferguson + * + ****************************************************************************** + * + * This is an unpublished work, the copyright of which vests in Siemens + * plc. All rights reserved. + * + * The information contained herein is the property of Siemens plc and is + * supplied without liability for errors or omissions and no part may be + * reproduced, used or disclosed except as authorised by contract or other + * written permission. The copyright and the foregoing restriction on + * reproduction, use and disclosure extends to all the media in which this + * information may be embodied. + * + ****************************************************************************** + ****************************************************************************** + * + * MODIFICATION HISTORY + * ==================== + * + * Mod Date Inits PR Description + * --- ---- ----- --- ----------- + * AA 11/07/97 KLF - Initial version. + * AB 18/07/97 JMS - Modified to use AWP protocol. + * AC 23/07/97 JMS - Moved error source & code values from THREAD.LIF as + * they are used by external modules. + * AD 05/08/97 JMS - Added SetTimeouts() function to allow the user + * to set the comms. timeouts. + * AE 05/08/97 JMS - Clarified Discover() parameter names. + * AF 07/08/97 JMS - Seperated SetAutoCommit() from OpenDevice() + * function and added Port parameter to OpenDevice(). + * Removed now redundant TestCounts parameter from + * the ReadConfig() and WriteConfig() functions. + * AG 08/08/97 JMS - Added Connect() function. + * AH 11/08/97 JMS - Extended some of the error reporting. + * AI 12/08/97 JMS - Revamped timeouts to timeout at message/frame-level + * rather than at lower comms. levels. + * AH 15/08/97 JMS - Extended error reporting. + * Added SetDiscoveryTimeslotPeriod() function. + * AI 26/08/97 JMS - Added Transmit() and Receive() functions to allow + * lower-level calls (eg. from EXCOMM) to bypass some + * of the message layer functionality. + * AJ 27/08/97 JMS - Fixed a typo from the previous changes. + * AK 29/08/97 JMS - Added extra tests and error codes for frame buffer + * overflow and retries exceed conditions. + * AL 02/01/97 JMS - Added FlushDiscoveryCache() function to allow the + * cache to be flushed by the application. + * AM 02/10/97 JMS - Added FlushBuffers() function to allow the Tx and + * Rx buffers to be flushed by the application. + * AN 14/10/97 JMS - Corrected the type of the Hp07Dose parameter of the + * WriteAlarmDoseThresholds() function from WORD to + * DWORD. + * AO 16/10/97 JMS - Added part number, function headers, etc. following + * review. + * AP 17/10/97 JMS - Added SetRetryCounts() to allow the retry counts + * to be set by the application. + * AQ 22/10/97 JMS - Removed now redundant error codes (ERR_*). + * AR 24/10/97 JMS - Added part number for Developer's Guide doc. + * AS 02/12/97 KLF - Various corrections after testing on version 1A. + * BA 11/05/99 JMS - Changed timestamps and timeouts to use instances + * of the Timex class rather than TickCount times, as + * TickCount times will wrap-around after 49.7 days + * of continuous up-time. Changed the timeout periods + * to be long types rather than DWORD to match the + * Timex convention. + * BB 04/02/00 EMH - Added WriteDisplayControlBits and WriteDisplayEnables + * BC 30/01/01 JMP - ERR_INVALID_ALARM_SETTINGS added + * BD 30/01/01 JMP - ERR_INVALID_NUMBER_OF_ALARMS added + * BE 08/02/01 JMP - ERR_INVALID_CONFIGURATION_LENGTH added + * ERR_INVALID_DISPLAY_CONTROL added + * BF 21/02/01 JMP - ERR_SCRATCH_OFFSET_PLUS_LEN added + * BG 15/08/02 JMP - Added new ANALOG2 commands + * BH 04/10/02 JMP - Modified Analog2 interface + * BI 02/06/03 PEB - Modified for compatibility with Microsoft Embedded Tools + * & PDA version of DLL + ******************************************************************************/ + +/* + * + * IMPORTANT NOTE TO DEVELOPERS + * + * When using the DLL and not using the AutoCommit feature - that is to say + * functions are combined and processed upon a call to Commit - the following + * should be noted. + * + * 1) + * Data will not be assigned to pointers passed into functions until AFTER + * the Commit function has been called successfully. Developers should take + * care that the areas of memory that are referenced by the pointers remain + * valid until after the Commit function is called. + * + * 2) + * Functions are processed in the order that they are called. Should a call + * to the Commit function fail then the error information can be retrieved + * using the GetErrorDetails function. If the error information indicates + * that one of the combined functions failed, then the developer should assume + * that all the functions called BEFORE the one that failed, have been + * completed successfully. All the functions AFTER and INCLUDING the function + * which failed will NOT have been completed. The exception to this is Read + * functions which will NOT be completed in the conditions described above + * even if they were called BEFORE the function which failed. + * + */ + +/*============================================================================*/ + +#define SRC_NONE 0 // no error occured +#define SRC_INT 1 // internal error +#define SRC_DLL 2 // DLL logical error +#define SRC_EX15 3 // error from Ex15 + +#define ERR_NONE 0 // No error code (internal error) +#define ERR_MSG 1 // Message not expected +#define ERR_SHORT 2 // Message too short +#define ERR_LENGTH 3 // Message data length not correct +#define ERR_QUEUE 4 // Message queue overflow +#define ERR_OVER 5 // Message buffer overflow +#define ERR_PARAM 6 // Parameter error +#define ERR_MEMORY 7 // Memory allocation failed +#define ERR_NO_THREAD 8 // No thread object available +#define ERR_NO_MSG 9 // No message layer available +#define ERR_DEVICE_OPEN 10 // A device is already open +#define ERR_AWP_USER_BUFF_TOO_SMALL 11 // AWP user supplied buffer too small +#define ERR_AWP_TX_MSG_BUFF_OVERFLOW 12 // AWP message too big for buffer +#define ERR_AWP_SEQ_MISMATCH 13 // AWP sequence number mismatch +#define ERR_DISCOVERY_IN_PROGRESS 14 // Discovery in progress +#define ERR_MSG_OPEN_FAILED 15 // Message layer Open failed +#define ERR_MSG_NOT_ACTIVE 16 // Message layer not active +#define ERR_LINK_OPEN_FAILED 17 // Link layer Open failed +#define ERR_INVALID_FRAME 18 // Link layer invalid frame +#define ERR_FRAME_TX_TIMEOUT 19 // Link layer frame Tx timeout +#define ERR_OPEN_PORT_FAILED 20 // Link open device port failed +#define ERR_CLOSE_PORT_FAILED 21 // Link close device port failed +#define ERR_SET_PORT_TIMEOUTS_FAILED 22 // Link set port timeouts failed +#define ERR_FRAME_RX_BUFF_OVERFLOW 23 // Frame Rx buffer overflowed +#define ERR_FRAME_TX_RETRIES_EXCEEDED 24 // Frame Tx retry count exceeded +#define ERR_FRAME_RX_RETRIES_EXCEEDED 25 // Frame Rx retry count exceeded +#define ERR_FRAME_RX_RESULT_UNKNOWN 26 // Frame Receive() result unknown +#define ERR_INDEX_TOO_LARGE 27 // index greater than profile entries +#define ERR_INVALID_ALARM_SETTINGS 28 // This EPD may NOT have alarms 'off' +#define ERR_INVALID_NUMBER_OF_ALARMS 29 // Passed Alarm array is incorrect size. +#define ERR_INVALID_CONFIGURATION_LENGTH 30 // Passed Display Configuration is incorrect size. +#define ERR_INVALID_DISPLAY_CONTROL 31 // This EPD may NOT have Display Units Changed. +#define ERR_SCRATCH_OFFSET_PLUS_LEN 32 // This area of scratchpad may not be written. + +/*============================================================================*/ + +#ifdef __BORLANDC__ + #define EPDDLL_API _export +#else //assume microsoft + #ifdef EPDDLL_EXPORTS + #define EPDDLL_API __declspec(dllexport) + #else + #define EPDDLL_API __declspec(dllimport) + #endif +#endif + +#ifdef _WIN32_WCE //Windows CE / pocket PC +#define PDA_BUILD +#endif + +extern "C" +{ + +#ifndef PDA_BUILD //Only included on Desktop DLLs +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +EPDDLL_API void* WINAPI AllocateMemory( DWORD Size ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MemoryAllocated( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReleaseMemory( void* const Address ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteMemory( + + void* const Address, WORD Offset, WORD Size, DWORD* const Value ); + +#endif //PDA BUILD + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetErrorDetails( + + WORD* const Source, WORD* const Reason, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI GetDataMetric( WORD MetricNumber, WORD* const Metric ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI InitComms( + + WORD Port, DWORD Baud, WORD Data, WORD Parity, WORD Stop ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeinitComms( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Abort( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetTimeouts( WORD Port, long RxByteTimeout, + long RxMessageTimeout, long TxMessageTimeout ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryExpirationPeriod( WORD Port, + long ExpirationPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotPeriod( WORD Port, long TimeslotPeriod ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetDiscoveryTimeslotCount( WORD Port, WORD TimeslotCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushDiscoveryCache( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Discover( WORD Port, DWORD* DeviceIDs, WORD MaxDevices, + WORD* const Count ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetRetryCounts( WORD RxRetryCount, WORD TxRetryCount ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetAutoCommit( WORD AutoCommit ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI OpenDevice( WORD Port, DWORD DeviceID ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI CloseDevice( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI FlushBuffers( WORD Port ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Connect( DWORD DeviceID ); + +#define ALLOW_LOW_LEVEL +#ifdef ALLOW_LOW_LEVEL +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Transmit( BYTE* TxBuffer, DWORD TxLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Receive( BYTE* RxBuffer, DWORD* RxLength ); +#endif /* ALLOW_LOW_LEVEL */ + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI Commit( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCommsStats( + + WORD* const XBOFSeen, + WORD* const TotalTxFrames, + WORD* const TotalRxFrames, + WORD* const GoodRxFrames, + WORD* const BadRxFrames, + WORD* const TotalWakeups, + WORD* const RxErrors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOn( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EpdOff( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdID( + + DWORD* const EpdID, + WORD* const HardVersion, + WORD* const SoftVersion, + WORD* const FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadEpdStatus( + + DWORD* const EpdClock, + DWORD* const RealTime, + WORD* const IssueCount, + DWORD* const OffTime, + WORD* const OperatingStatus, + WORD* const ErrorStatus, + WORD* const AlarmsStatus, + WORD* const OtherAlarms, + WORD* const EEPROMBadSectors ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestDetectors( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerID( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI IssueEpd( BYTE* const WearerID, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DeIssueEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteWearerName( BYTE* const WearerName, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI BaseLineCounts( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI SetFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFailFlag( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearLatchedAlarms( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearFaultFlags( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDosesQuality( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + DWORD* const Hp10Total, DWORD* const Hp07Total, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadPeaks( + + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRates( DWORD* const Hp10Rate, DWORD* const Hp07Rate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadBaseCounts( + + DWORD* const D1, DWORD* const D2, + DWORD* const D3, DWORD* const D4, DWORD* const EpdClock ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadCalibrationData( + + WORD* const K1, WORD* const K2, WORD* const K3, + WORD* const K4, WORD* const K5, WORD* const K6, + WORD* const SG, WORD* const BC, WORD* const FB, WORD* const HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmDoseThresholds( + + DWORD* const Hp10Dose1, DWORD* const Hp10Dose2, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmRateThresholds( + + DWORD* const Hp10Rate1On, DWORD* const Hp10Rate2On, DWORD* const Hp07RateOn, + DWORD* const Hp10Rate1Off, DWORD* const Hp10Rate2Off, DWORD* const Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI DisplayFaultCode( WORD FaultCode ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadData( + + DWORD* const Hp10Dose, DWORD* const Hp07Dose, + WORD* const Knocks, WORD* const Resets, WORD* const QualityData, + DWORD* const Hp10Peak, DWORD* const Hp07Peak, + DWORD* const Hp10Time, DWORD* const Hp07Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadProfileControl( + + WORD* const Interval, DWORD* const TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfile( WORD* const ProfileEntries ); + +WORD EPDDLL_API WINAPI ReadDoseProfileSince( + + DWORD EpdClock, WORD* const ProfileEntries ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDoseProfileCache( + + WORD Index, + DWORD* const EpdClock, WORD* const Interval, + DWORD* const Hp10Dose, DWORD* const Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadConfig( + + WORD* const CountDownTime, + DWORD* const ReturnTime, + WORD* const ChirpRate, + WORD* const TeleBaudSetting, + WORD* const SelfTestInterval, + WORD* const BatteryLoadTestInt, + WORD* const GeneralControl, + WORD* const CommsTimeout, + WORD* const InhibitTimeout, + WORD* const MinTxInterval, + WORD* const MaxTxIntervals, + WORD* const RandomiseWindow, + WORD* const DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDisplayConfig( + + WORD* const Control, + WORD* const LongSwitchTime, + WORD* const DoubleClickTime, + WORD* const DisplayDefaultTime, + WORD* const Default, + BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadErrorStore( + + DWORD* const ErrorTime, WORD TimeLength, + BYTE* const ErrorCode, WORD CodeLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialWriteTimes( DWORD* const WriteTimes, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadSpecialDoseStore( + + WORD Index, WORD Count, + DWORD* const Hp10Dose, WORD Hp10Length, + DWORD* const Hp07Dose, WORD Hp07Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearErrorStore( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDose( DWORD Hp10Dose, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteCountdownTimer( WORD wCountDownTime, WORD wStartNow ); + +/*----------------------------------------------------------------------------* + * + * This function (WriteCountdownTimer) was written after the Developers Guide + * to the Ex15 Interface DLL (611/HB/40571/000) + * The first parameter wdCountDownTime is the count down time in seconds + * The second param byStartNow is a boolean to start the timer now + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearTotalDose( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteTotalDose( DWORD Hp10Total, DWORD Hp07Total ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ClearPeakRates( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteReturnForReadTime( DWORD ReturnTime ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmDoseThresholds( + + DWORD Hp10Dose1, DWORD Hp10Dose2, DWORD Hp07Dose ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmRateThresholds( + + DWORD Hp10Rate1On, DWORD Hp10Rate2On, DWORD Hp07RateOn, + DWORD Hp10Rate1Off, DWORD Hp10Rate2Off, DWORD Hp07RateOff ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteAlarmConfig( + + BYTE* const Config, WORD ConfigLength, + BYTE* const Duration, WORD DurationLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayConfig( + WORD Control, + WORD LongSwitchTime, + WORD DoubleClickTime, + WORD DisplayDefaultTime, + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteDisplayControlBits( WORD DisplayControlBits ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteDisplayEnables( + WORD Default, BYTE* const Config, WORD Length ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + + WORD EPDDLL_API WINAPI WriteConfig( + + WORD CountDownTime, + DWORD ReturnTime, + WORD ChirpRate, + WORD TeleBaudSetting, + WORD SelfTestInterval, + WORD BatteryLoadTestInt, + WORD GeneralControl, + WORD CommsTimeout, + WORD InhibitTimeout, + WORD MinTxInterval, + WORD MaxTxIntervals, + WORD RandomiseWindow, + WORD DoseIncThresh ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteProfileControl( WORD Interval, DWORD TimeToNext ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteSpecialWriteTimes( + + DWORD* const WriteTimes, WORD Time ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI EndSession( WORD AlarmCtrl, WORD Duration ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteScratchPad( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteChirpRate( WORD ChirpRate ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadRAM( + + WORD Offset, WORD Length , void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadASIC( WORD Register, WORD* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearWearer( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSReadWearer( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSIssue( + + BYTE* const WearerID, WORD IDLength, + BYTE* const WearerName, WORD NameLength ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSDeIssue( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearData( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSWritePassword( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSSetOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ADSClearOffEnable( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRLogin( DWORD Password ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteCalFactors( + + WORD K1, WORD K2, WORD K3, WORD K4, WORD K5, WORD K6 ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDetectorThresholds( + + WORD SG, WORD BC, WORD FB, WORD HG ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteRAM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteDirectEEPROM( + + WORD Offset, WORD Length, void* const Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRResetEpd( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRFormatEEPROM( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteASIC( WORD Register, WORD Data ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearAlwaysCount( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRSetGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRClearGolden( void ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWriteEpdID( + + DWORD EpdID, + WORD HardVersion, + WORD SoftVersion, + WORD FunctionFlags ); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI MFRWritePassword( DWORD Password ); + + + +//additional commands for ANALOG2 +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2Config( + BYTE* const byADC_LA, + BYTE* const byADC_LL, + BYTE* const byADC_SUPPLY, + BYTE* const byADC_BAT_TYPE, + WORD* const wOffDisplay, + BYTE* const byConfig7, + BYTE* const byConfig8); +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI ReadA2ConfigStatus( + BYTE* const byBatADC, + BYTE* const bySupplyADC, + BYTE* const byStatus3, + BYTE* const byStatus4); + +/*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI WriteA2Config( + BYTE byADC_LA, + BYTE byADC_LL, + BYTE byADC_SUPPLY, + BYTE byADC_BAT_TYPE, + WORD wOffDisplay, + BYTE byConfig7, + BYTE byConfig8 ); + + /*----------------------------------------------------------------------------* + * + * See the Developer's Guide to the Ex15 Interface DLL (611/HB/40571/000) for + * an explanation of this API function. + * + *----------------------------------------------------------------------------*/ + +WORD EPDDLL_API WINAPI TestBattery( void ); + + + +} diff --git a/EpdBase/x.txt b/EpdBase/x.txt new file mode 100644 index 0000000..f29ced1 --- /dev/null +++ b/EpdBase/x.txt @@ -0,0 +1,11678 @@ +Microsoft (R) COFF/PE Dumper Version 14.28.29915.0 +Copyright (C) Microsoft Corporation. All rights reserved. + + +Dump of file reader3.lib + +File Type: LIBRARY + +Archive member name at 8: / +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 8530 size +correct header end + + 951 public symbols + + 10AEA __IMPORT_DESCRIPTOR_reader3 + 10D14 __NULL_IMPORT_DESCRIPTOR + 10E4A reader3_NULL_THUNK_DATA + 10F9C _AwaitRemoval@20 + 10F9C __imp__AwaitRemoval@20 + 1100A _BeginClearAllStatus@8 + 1100A __imp__BeginClearAllStatus@8 + 1107E _BeginClearDose@8 + 1107E __imp__BeginClearDose@8 + 110EC _BeginClearDoseProfile_R3@8 + 110EC __imp__BeginClearDoseProfile_R3@8 + 11164 _BeginClearEEPROM_R3@8 + 11164 __imp__BeginClearEEPROM_R3@8 + 111D8 _BeginClearFaultStatus@8 + 111D8 __imp__BeginClearFaultStatus@8 + 1124E _BeginClearGraphic_R3@12 + 1124E __imp__BeginClearGraphic_R3@12 + 112C4 _BeginClearLatchedAlarms@8 + 112C4 __imp__BeginClearLatchedAlarms@8 + 1133C _BeginClearPeakRates@8 + 1133C __imp__BeginClearPeakRates@8 + 113B0 _BeginClearScratchPad@12 + 113B0 __imp__BeginClearScratchPad@12 + 11426 _BeginClearTotalDose@8 + 11426 __imp__BeginClearTotalDose@8 + 1149A _BeginClearWearerOrTaskId_R3@16 + 1149A __imp__BeginClearWearerOrTaskId_R3@16 + 11516 _BeginDeissueEPD@8 + 11516 __imp__BeginDeissueEPD@8 + 11586 _BeginEnableCovertMode_R3@12 + 11586 __imp__BeginEnableCovertMode_R3@12 + 11600 _BeginEnableDeepSleep_R3@12 + 11600 __imp__BeginEnableDeepSleep_R3@12 + 11678 _BeginEnableManufacturerLockout_R3@12 + 11678 __imp__BeginEnableManufacturerLockout_R3@12 + 116FA _BeginEnableProtectedSession_R3@12 + 116FA __imp__BeginEnableProtectedSession_R3@12 + 1177A _BeginEnableResponderMode_R3@12 + 1177A __imp__BeginEnableResponderMode_R3@12 + 117F6 _BeginEpdOnOff@12 + 117F6 __imp__BeginEpdOnOff@12 + 11864 _BeginInitiateFirmwareUpdate_R3@8 + 11864 __imp__BeginInitiateFirmwareUpdate_R3@8 + 118E2 _BeginIssueEPD@8 + 118E2 __imp__BeginIssueEPD@8 + 11950 _BeginMfrLogin_R2@12 + 11950 __imp__BeginMfrLogin_R2@12 + 119C2 _BeginReadAccessPermissionsForLevel_R3@12 + 119C2 __imp__BeginReadAccessPermissionsForLevel_R3@12 + 11A48 _BeginReadAlarmConfiguration@16 + 11A48 __imp__BeginReadAlarmConfiguration@16 + 11AC4 _BeginReadAlarmConfigurationLock_R3@8 + 11AC4 __imp__BeginReadAlarmConfigurationLock_R3@8 + 11B46 _BeginReadAlarmConfiguration_R3@16 + 11B46 __imp__BeginReadAlarmConfiguration_R3@16 + 11BC6 _BeginReadAlarmThresholds@20 + 11BC6 __imp__BeginReadAlarmThresholds@20 + 11C40 _BeginReadBacklightBrightness_R3@8 + 11C40 __imp__BeginReadBacklightBrightness_R3@8 + 11CC0 _BeginReadBacklightEnable_R3@8 + 11CC0 __imp__BeginReadBacklightEnable_R3@8 + 11D3C _BeginReadBacklightPeriod_R3@8 + 11D3C __imp__BeginReadBacklightPeriod_R3@8 + 11DB8 _BeginReadBaselineCounts@8 + 11DB8 __imp__BeginReadBaselineCounts@8 + 11E30 _BeginReadBatteryCriticalTiming_R3@8 + 11E30 __imp__BeginReadBatteryCriticalTiming_R3@8 + 11EB2 _BeginReadBatteryLowThreshold@12 + 11EB2 __imp__BeginReadBatteryLowThreshold@12 + 11F30 _BeginReadBatteryTestInterval@8 + 11F30 __imp__BeginReadBatteryTestInterval@8 + 11FAC _BeginReadBatteryTypeFitted_R3@8 + 11FAC __imp__BeginReadBatteryTypeFitted_R3@8 + 1202A _BeginReadBatteryTypeOverride_R3@8 + 1202A __imp__BeginReadBatteryTypeOverride_R3@8 + 120AA _BeginReadCalDueDate@8 + 120AA __imp__BeginReadCalDueDate@8 + 1211E _BeginReadCalDueDate_R3@8 + 1211E __imp__BeginReadCalDueDate_R3@8 + 12194 _BeginReadCalReference_R3@8 + 12194 __imp__BeginReadCalReference_R3@8 + 1220C _BeginReadCalibrationData_R2@8 + 1220C __imp__BeginReadCalibrationData_R2@8 + 12288 _BeginReadCalibrationFacility_R3@8 + 12288 __imp__BeginReadCalibrationFacility_R3@8 + 12308 _BeginReadCapabilities@8 + 12308 __imp__BeginReadCapabilities@8 + 1237E _BeginReadChirpEnable_R3@8 + 1237E __imp__BeginReadChirpEnable_R3@8 + 123F6 _BeginReadChirpSensitivity@8 + 123F6 __imp__BeginReadChirpSensitivity@8 + 12470 _BeginReadCounts@16 + 12470 __imp__BeginReadCounts@16 + 124E0 _BeginReadCurrentAccessLevel@8 + 124E0 __imp__BeginReadCurrentAccessLevel@8 + 1255C _BeginReadDeadTimeFactors_R3@16 + 1255C __imp__BeginReadDeadTimeFactors_R3@16 + 125D8 _BeginReadDebugRegister_R3@12 + 125D8 __imp__BeginReadDebugRegister_R3@12 + 12652 _BeginReadDetectorTestLimits_R3@16 + 12652 __imp__BeginReadDetectorTestLimits_R3@16 + 126D2 _BeginReadDetectorThresholdLimits_R3@16 + 126D2 __imp__BeginReadDetectorThresholdLimits_R3@16 + 12756 _BeginReadDetectorThresholds@16 + 12756 __imp__BeginReadDetectorThresholds@16 + 127D2 _BeginReadDetectorThresholds_R3@16 + 127D2 __imp__BeginReadDetectorThresholds_R3@16 + 12852 _BeginReadDisplayCapability_R3@12 + 12852 __imp__BeginReadDisplayCapability_R3@12 + 128D0 _BeginReadDisplayEnablePermissions_R3@12 + 128D0 __imp__BeginReadDisplayEnablePermissions_R3@12 + 12956 _BeginReadDisplayEnables_R3@16 + 12956 __imp__BeginReadDisplayEnables_R3@16 + 129D2 _BeginReadDisplayOptions@8 + 129D2 __imp__BeginReadDisplayOptions@8 + 12A4A _BeginReadDisplayOptionsLock_R3@8 + 12A4A __imp__BeginReadDisplayOptionsLock_R3@8 + 12AC8 _BeginReadDisplayTimeout@8 + 12AC8 __imp__BeginReadDisplayTimeout@8 + 12B40 _BeginReadDoseProfileByIndex_R3@16 + 12B40 __imp__BeginReadDoseProfileByIndex_R3@16 + 12BC0 _BeginReadDoseProfileByTime@16 + 12BC0 __imp__BeginReadDoseProfileByTime@16 + 12C3C _BeginReadDoseProfileConfiguration_R3@8 + 12C3C __imp__BeginReadDoseProfileConfiguration_R3@8 + 12CC0 _BeginReadDoseProfileInterval@8 + 12CC0 __imp__BeginReadDoseProfileInterval@8 + 12D3C _BeginReadDoseSaveInterval_R3@8 + 12D3C __imp__BeginReadDoseSaveInterval_R3@8 + 12DB8 _BeginReadDoses@16 + 12DB8 __imp__BeginReadDoses@16 + 12E28 _BeginReadEEProm@16 + 12E28 __imp__BeginReadEEProm@16 + 12E98 _BeginReadEpdIdentities@8 + 12E98 __imp__BeginReadEpdIdentities@8 + 12F0E _BeginReadEpdPartNumber_R3@8 + 12F0E __imp__BeginReadEpdPartNumber_R3@8 + 12F88 _BeginReadEpdRevision_R3@8 + 12F88 __imp__BeginReadEpdRevision_R3@8 + 13000 _BeginReadEpdSerialNum@8 + 13000 __imp__BeginReadEpdSerialNum@8 + 13076 _BeginReadEpdType@8 + 13076 __imp__BeginReadEpdType@8 + 130E6 _BeginReadEventLogLevel_R3@8 + 130E6 __imp__BeginReadEventLogLevel_R3@8 + 13160 _BeginReadEventsByIndex@16 + 13160 __imp__BeginReadEventsByIndex@16 + 131D8 _BeginReadFactoryCalDate@8 + 131D8 __imp__BeginReadFactoryCalDate@8 + 13250 _BeginReadFemSerialNum_R3@8 + 13250 __imp__BeginReadFemSerialNum_R3@8 + 132C8 _BeginReadFirmwarePartNumber_R3@8 + 132C8 __imp__BeginReadFirmwarePartNumber_R3@8 + 13346 _BeginReadFirmwareVersion@8 + 13346 __imp__BeginReadFirmwareVersion@8 + 133BE _BeginReadFlashTestCounts_R3@16 + 133BE __imp__BeginReadFlashTestCounts_R3@16 + 1343A _BeginReadFpgaVersion_R3@8 + 1343A __imp__BeginReadFpgaVersion_R3@8 + 134B2 _BeginReadGains@16 + 134B2 __imp__BeginReadGains@16 + 13522 _BeginReadGains_R3@16 + 13522 __imp__BeginReadGains_R3@16 + 13594 _BeginReadGraphicData_R3@12 + 13594 __imp__BeginReadGraphicData_R3@12 + 1360C _BeginReadGraphicSize_R3@12 + 1360C __imp__BeginReadGraphicSize_R3@12 + 13684 _BeginReadLastCalibrationProcess_R3@8 + 13684 __imp__BeginReadLastCalibrationProcess_R3@8 + 13706 _BeginReadMarkNumber@8 + 13706 __imp__BeginReadMarkNumber@8 + 1377A _BeginReadMeasurandIds_R3@8 + 1377A __imp__BeginReadMeasurandIds_R3@8 + 137F2 _BeginReadModelName_R3@8 + 137F2 __imp__BeginReadModelName_R3@8 + 13868 _BeginReadOffModeBatteryTestInterval_R3@8 + 13868 __imp__BeginReadOffModeBatteryTestInterval_R3@8 + 138EE _BeginReadOffModeDisplay_R3@8 + 138EE __imp__BeginReadOffModeDisplay_R3@8 + 13968 _BeginReadPcbPartNumber_R3@8 + 13968 __imp__BeginReadPcbPartNumber_R3@8 + 139E2 _BeginReadPcbRevision_R3@8 + 139E2 __imp__BeginReadPcbRevision_R3@8 + 13A5A _BeginReadPcbSerialNum_R3@8 + 13A5A __imp__BeginReadPcbSerialNum_R3@8 + 13AD2 _BeginReadPeakRates@16 + 13AD2 __imp__BeginReadPeakRates@16 + 13B46 _BeginReadPulseModeEnable_R3@8 + 13B46 __imp__BeginReadPulseModeEnable_R3@8 + 13BC2 _BeginReadPulseModeIndustrial_R3@8 + 13BC2 __imp__BeginReadPulseModeIndustrial_R3@8 + 13C42 _BeginReadPulseModeThreshold_R3@8 + 13C42 __imp__BeginReadPulseModeThreshold_R3@8 + 13CC0 _BeginReadPulsedModeOverrangeThreshold_R3@8 + 13CC0 __imp__BeginReadPulsedModeOverrangeThreshold_R3@8 + 13D48 _BeginReadQualityData@8 + 13D48 __imp__BeginReadQualityData@8 + 13DBC _BeginReadQuickAccessDisplays_R3@16 + 13DBC __imp__BeginReadQuickAccessDisplays_R3@16 + 13E3C _BeginReadRTC@8 + 13E3C __imp__BeginReadRTC@8 + 13EA8 _BeginReadRadioFirmwareVersion_R3@8 + 13EA8 __imp__BeginReadRadioFirmwareVersion_R3@8 + 13F28 _BeginReadRateOffPercentage@16 + 13F28 __imp__BeginReadRateOffPercentage@16 + 13FA4 _BeginReadRates@16 + 13FA4 __imp__BeginReadRates@16 + 14014 _BeginReadResponderTriggerUtc_R3@8 + 14014 __imp__BeginReadResponderTriggerUtc_R3@8 + 14094 _BeginReadReturnForReadTime@8 + 14094 __imp__BeginReadReturnForReadTime@8 + 1410E _BeginReadRunTime_R3@8 + 1410E __imp__BeginReadRunTime_R3@8 + 14182 _BeginReadScratchPad@16 + 14182 __imp__BeginReadScratchPad@16 + 141F6 _BeginReadScratchpadSize@8 + 141F6 __imp__BeginReadScratchpadSize@8 + 1426E _BeginReadSelfTestInterval@8 + 1426E __imp__BeginReadSelfTestInterval@8 + 142E8 _BeginReadSensitivities@16 + 142E8 __imp__BeginReadSensitivities@16 + 14360 _BeginReadSensitivities_R3@16 + 14360 __imp__BeginReadSensitivities_R3@16 + 143DA _BeginReadSnapshotAlarmThresholds_R3@12 + 143DA __imp__BeginReadSnapshotAlarmThresholds_R3@12 + 1445E _BeginReadSnapshotCounters_R3@12 + 1445E __imp__BeginReadSnapshotCounters_R3@12 + 144DC _BeginReadSnapshotMeasurements_R3@12 + 144DC __imp__BeginReadSnapshotMeasurements_R3@12 + 1455E _BeginReadSnapshotSummary_R3@12 + 1455E __imp__BeginReadSnapshotSummary_R3@12 + 145DA _BeginReadStatus@8 + 145DA __imp__BeginReadStatus@8 + 1464A _BeginReadStayTime_R3@8 + 1464A __imp__BeginReadStayTime_R3@8 + 146BE _BeginReadSwitchOnFromButton_R3@8 + 146BE __imp__BeginReadSwitchOnFromButton_R3@8 + 1473C _BeginReadTaskDatabaseId_R3@8 + 1473C __imp__BeginReadTaskDatabaseId_R3@8 + 147B6 _BeginReadTaskId_R3@12 + 147B6 __imp__BeginReadTaskId_R3@12 + 1482A _BeginReadTelemetryAdvConfig_R3@12 + 1482A __imp__BeginReadTelemetryAdvConfig_R3@12 + 148AA _BeginReadTelemetryAdvContent_R3@12 + 148AA __imp__BeginReadTelemetryAdvContent_R3@12 + 1492A _BeginReadTelemetryCxnConfig_R3@8 + 1492A __imp__BeginReadTelemetryCxnConfig_R3@8 + 149A8 _BeginReadTelemetryEnable_R3@12 + 149A8 __imp__BeginReadTelemetryEnable_R3@12 + 14A24 _BeginReadTelemetryMode_R2@8 + 14A24 __imp__BeginReadTelemetryMode_R2@8 + 14A9E _BeginReadTelemetryReportInterval_R3@8 + 14A9E __imp__BeginReadTelemetryReportInterval_R3@8 + 14B22 _BeginReadTelemetryTxPower_R3@12 + 14B22 __imp__BeginReadTelemetryTxPower_R3@12 + 14BA0 _BeginReadTotalDoses@16 + 14BA0 __imp__BeginReadTotalDoses@16 + 14C14 _BeginReadTriggeredDoses_R3@16 + 14C14 __imp__BeginReadTriggeredDoses_R3@16 + 14C90 _BeginReadVoltages@8 + 14C90 __imp__BeginReadVoltages@8 + 14D02 _BeginReadWearerDatabaseId_R3@8 + 14D02 __imp__BeginReadWearerDatabaseId_R3@8 + 14D7E _BeginReadWearerId@12 + 14D7E __imp__BeginReadWearerId@12 + 14DF0 _BeginReadZoneAccessPermitted@12 + 14DF0 __imp__BeginReadZoneAccessPermitted@12 + 14E6E _BeginReadZoneControlMap@8 + 14E6E __imp__BeginReadZoneControlMap@8 + 14EE6 _BeginSetBaselineCounters@8 + 14EE6 __imp__BeginSetBaselineCounters@8 + 14F5E _BeginStartDetectorTest@8 + 14F5E __imp__BeginStartDetectorTest@8 + 14FD4 _BeginTriggerBacklight_R3@8 + 14FD4 __imp__BeginTriggerBacklight_R3@8 + 1504C _BeginTriggerResponderMode_R3@8 + 1504C __imp__BeginTriggerResponderMode_R3@8 + 150C8 _BeginValidateEpdOwnerKey_R3@12 + 150C8 __imp__BeginValidateEpdOwnerKey_R3@12 + 15144 _BeginWriteAccessKey@20 + 15144 __imp__BeginWriteAccessKey@20 + 151B8 _BeginWriteAccessLevel@20 + 151B8 __imp__BeginWriteAccessLevel@20 + 1522E _BeginWriteAccessPermissionsForLevel_R3@20 + 1522E __imp__BeginWriteAccessPermissionsForLevel_R3@20 + 152B6 _BeginWriteAlarmConfigurationLock_R3@16 + 152B6 __imp__BeginWriteAlarmConfigurationLock_R3@16 + 1533A _BeginWriteAlarmConfiguration_R3@16 + 1533A __imp__BeginWriteAlarmConfiguration_R3@16 + 153BA _BeginWriteAlarmThresholds@20 + 153BA __imp__BeginWriteAlarmThresholds@20 + 15434 _BeginWriteBacklightBrightness_R3@12 + 15434 __imp__BeginWriteBacklightBrightness_R3@12 + 154B6 _BeginWriteBacklightEnable_R3@12 + 154B6 __imp__BeginWriteBacklightEnable_R3@12 + 15534 _BeginWriteBacklightPeriod_R3@12 + 15534 __imp__BeginWriteBacklightPeriod_R3@12 + 155B2 _BeginWriteBatteryCriticalTiming_R3@16 + 155B2 __imp__BeginWriteBatteryCriticalTiming_R3@16 + 15636 _BeginWriteBatteryLowThreshold@16 + 15636 __imp__BeginWriteBatteryLowThreshold@16 + 156B4 _BeginWriteBatteryTestInterval@12 + 156B4 __imp__BeginWriteBatteryTestInterval@12 + 15732 _BeginWriteBatteryTypeOverride_R3@12 + 15732 __imp__BeginWriteBatteryTypeOverride_R3@12 + 157B4 _BeginWriteCalDueDate@12 + 157B4 __imp__BeginWriteCalDueDate@12 + 1582A _BeginWriteCalDueDate_R3@12 + 1582A __imp__BeginWriteCalDueDate_R3@12 + 158A2 _BeginWriteCalReference_R3@12 + 158A2 __imp__BeginWriteCalReference_R3@12 + 1591C _BeginWriteCalibrationFacility_R3@16 + 1591C __imp__BeginWriteCalibrationFacility_R3@16 + 1599E _BeginWriteCapabilities_R3@12 + 1599E __imp__BeginWriteCapabilities_R3@12 + 15A18 _BeginWriteChirpEnable_R3@12 + 15A18 __imp__BeginWriteChirpEnable_R3@12 + 15A92 _BeginWriteChirpSensitivity@12 + 15A92 __imp__BeginWriteChirpSensitivity@12 + 15B0E _BeginWriteClearDoseOnSwitchOn@12 + 15B0E __imp__BeginWriteClearDoseOnSwitchOn@12 + 15B8C _BeginWriteDeadTimeFactors_R3@16 + 15B8C __imp__BeginWriteDeadTimeFactors_R3@16 + 15C0A _BeginWriteDebugRegister_R3@16 + 15C0A __imp__BeginWriteDebugRegister_R3@16 + 15C86 _BeginWriteDetectorTestLimits_R3@16 + 15C86 __imp__BeginWriteDetectorTestLimits_R3@16 + 15D06 _BeginWriteDetectorThresholds_R2@24 + 15D06 __imp__BeginWriteDetectorThresholds_R2@24 + 15D86 _BeginWriteDetectorThresholds_R3@16 + 15D86 __imp__BeginWriteDetectorThresholds_R3@16 + 15E06 _BeginWriteDisplayEnablePermissions_R3@20 + 15E06 __imp__BeginWriteDisplayEnablePermissions_R3@20 + 15E8C _BeginWriteDisplayEnables_R3@16 + 15E8C __imp__BeginWriteDisplayEnables_R3@16 + 15F08 _BeginWriteDisplayOptions@16 + 15F08 __imp__BeginWriteDisplayOptions@16 + 15F82 _BeginWriteDisplayOptionsLock_R3@16 + 15F82 __imp__BeginWriteDisplayOptionsLock_R3@16 + 16002 _BeginWriteDisplayTimeout@12 + 16002 __imp__BeginWriteDisplayTimeout@12 + 1607C _BeginWriteDoseProfileDoseIncrement_R3@12 + 1607C __imp__BeginWriteDoseProfileDoseIncrement_R3@12 + 16102 _BeginWriteDoseProfileInterval@12 + 16102 __imp__BeginWriteDoseProfileInterval@12 + 16180 _BeginWriteDoseProfileMeasurands_R3@16 + 16180 __imp__BeginWriteDoseProfileMeasurands_R3@16 + 16204 _BeginWriteDoseSaveInterval_R3@12 + 16204 __imp__BeginWriteDoseSaveInterval_R3@12 + 16282 _BeginWriteDoseWritableFlag@12 + 16282 __imp__BeginWriteDoseWritableFlag@12 + 162FE _BeginWriteDoses@16 + 162FE __imp__BeginWriteDoses@16 + 1636E _BeginWriteEEProm@20 + 1636E __imp__BeginWriteEEProm@20 + 163E0 _BeginWriteEpdPartNumber_R3@12 + 163E0 __imp__BeginWriteEpdPartNumber_R3@12 + 1645C _BeginWriteEpdRevision_R3@12 + 1645C __imp__BeginWriteEpdRevision_R3@12 + 164D6 _BeginWriteEpdSerialNumber@12 + 164D6 __imp__BeginWriteEpdSerialNumber@12 + 16550 _BeginWriteEventLogLevel_R3@12 + 16550 __imp__BeginWriteEventLogLevel_R3@12 + 165CC _BeginWriteFactoryCalDate@12 + 165CC __imp__BeginWriteFactoryCalDate@12 + 16646 _BeginWriteFemSerialNumber_R3@12 + 16646 __imp__BeginWriteFemSerialNumber_R3@12 + 166C4 _BeginWriteGainableFlag_R3@12 + 166C4 __imp__BeginWriteGainableFlag_R3@12 + 1673E _BeginWriteGains_R3@16 + 1673E __imp__BeginWriteGains_R3@16 + 167B2 _BeginWriteGoldenFlag_R3@12 + 167B2 __imp__BeginWriteGoldenFlag_R3@12 + 1682A _BeginWriteGraphicBitmap_R3@352 + 1682A __imp__BeginWriteGraphicBitmap_R3@352 + 168A6 _BeginWriteLastCalibrationProcess_R3@20 + 168A6 __imp__BeginWriteLastCalibrationProcess_R3@20 + 1692A _BeginWriteMarkNumber_R3@12 + 1692A __imp__BeginWriteMarkNumber_R3@12 + 169A2 _BeginWriteModelName_R3@40 + 169A2 __imp__BeginWriteModelName_R3@40 + 16A1A _BeginWriteNotCalibratedFlag_R3@12 + 16A1A __imp__BeginWriteNotCalibratedFlag_R3@12 + 16A9A _BeginWriteOffModeBatteryTestInterval_R3@12 + 16A9A __imp__BeginWriteOffModeBatteryTestInterval_R3@12 + 16B22 _BeginWriteOffModeDisplay_R3@16 + 16B22 __imp__BeginWriteOffModeDisplay_R3@16 + 16B9E _BeginWritePcbPartNumber_R3@12 + 16B9E __imp__BeginWritePcbPartNumber_R3@12 + 16C1A _BeginWritePcbRevision_R3@12 + 16C1A __imp__BeginWritePcbRevision_R3@12 + 16C94 _BeginWritePcbSerialNumber_R3@12 + 16C94 __imp__BeginWritePcbSerialNumber_R3@12 + 16D12 _BeginWritePulseModeEnable_R3@12 + 16D12 __imp__BeginWritePulseModeEnable_R3@12 + 16D90 _BeginWritePulseModeIndustrial_R3@12 + 16D90 __imp__BeginWritePulseModeIndustrial_R3@12 + 16E12 _BeginWritePulseModeThreshold_R3@12 + 16E12 __imp__BeginWritePulseModeThreshold_R3@12 + 16E92 _BeginWritePulsedModeOverrangeThreshold_R3@12 + 16E92 __imp__BeginWritePulsedModeOverrangeThreshold_R3@12 + 16F1C _BeginWriteQuickAccessDisplays_R3@16 + 16F1C __imp__BeginWriteQuickAccessDisplays_R3@16 + 16F9E _BeginWriteRTC_R3@12 + 16F9E __imp__BeginWriteRTC_R3@12 + 17010 _BeginWriteRateOffPercentage@16 + 17010 __imp__BeginWriteRateOffPercentage@16 + 1708C _BeginWriteReturnForReadTime@12 + 1708C __imp__BeginWriteReturnForReadTime@12 + 17108 _BeginWriteScratchPad@20 + 17108 __imp__BeginWriteScratchPad@20 + 1717E _BeginWriteSelfTestInterval@12 + 1717E __imp__BeginWriteSelfTestInterval@12 + 171FA _BeginWriteSensitivities_R2@32 + 171FA __imp__BeginWriteSensitivities_R2@32 + 17276 _BeginWriteSensitivities_R3@16 + 17276 __imp__BeginWriteSensitivities_R3@16 + 172F2 _BeginWriteStayTime_R3@12 + 172F2 __imp__BeginWriteStayTime_R3@12 + 17368 _BeginWriteSwitchOnFromButton_R3@12 + 17368 __imp__BeginWriteSwitchOnFromButton_R3@12 + 173E8 _BeginWriteTaskDatabaseId_R3@24 + 173E8 __imp__BeginWriteTaskDatabaseId_R3@24 + 17464 _BeginWriteTaskId_R3@76 + 17464 __imp__BeginWriteTaskId_R3@76 + 174D8 _BeginWriteTelemetryAdvConfig_R3@12 + 174D8 __imp__BeginWriteTelemetryAdvConfig_R3@12 + 17558 _BeginWriteTelemetryAdvContent_R3@16 + 17558 __imp__BeginWriteTelemetryAdvContent_R3@16 + 175DA _BeginWriteTelemetryCxnConfig_R3@12 + 175DA __imp__BeginWriteTelemetryCxnConfig_R3@12 + 1765A _BeginWriteTelemetryEnable_R3@16 + 1765A __imp__BeginWriteTelemetryEnable_R3@16 + 176D8 _BeginWriteTelemetryMode_R2@12 + 176D8 __imp__BeginWriteTelemetryMode_R2@12 + 17754 _BeginWriteTelemetryReportInterval_R3@12 + 17754 __imp__BeginWriteTelemetryReportInterval_R3@12 + 177DA _BeginWriteTelemetryTxPower_R3@16 + 177DA __imp__BeginWriteTelemetryTxPower_R3@16 + 17858 _BeginWriteTotalDoses@16 + 17858 __imp__BeginWriteTotalDoses@16 + 178CE _BeginWriteTriggeredDoses_R3@16 + 178CE __imp__BeginWriteTriggeredDoses_R3@16 + 1794A _BeginWriteWearerDatabaseId_R3@24 + 1794A __imp__BeginWriteWearerDatabaseId_R3@24 + 179C8 _BeginWriteWearerId@76 + 179C8 __imp__BeginWriteWearerId@76 + 17A3C _BeginWriteZoneControlMap@16 + 17A3C __imp__BeginWriteZoneControlMap@16 + 17AB6 _CleanUpReadDoseProfile@4 + 17AB6 __imp__CleanUpReadDoseProfile@4 + 17B2C _CleanUpReadEventLog@4 + 17B2C __imp__CleanUpReadEventLog@4 + 17BA0 _CloseReader@4 + 17BA0 __imp__CloseReader@4 + 17C0C _Commit3@4 + 17C0C __imp__Commit3@4 + 17C74 _Connect3@20 + 17C74 __imp__Connect3@20 + 17CDE _CreateReaderInterface@0 + 17CDE __imp__CreateReaderInterface@0 + 17D54 _DestroyReaderInterface@4 + 17D54 __imp__DestroyReaderInterface@4 + 17DCA _Disconnect@4 + 17DCA __imp__Disconnect@4 + 17E34 _DisconnectAndNotify@12 + 17E34 __imp__DisconnectAndNotify@12 + 17EA8 _EndClearAllStatus@8 + 17EA8 __imp__EndClearAllStatus@8 + 17F1A _EndClearDose@8 + 17F1A __imp__EndClearDose@8 + 17F86 _EndClearDoseProfile_R3@8 + 17F86 __imp__EndClearDoseProfile_R3@8 + 17FFC _EndClearEEPROM_R3@8 + 17FFC __imp__EndClearEEPROM_R3@8 + 1806E _EndClearFaultStatus@8 + 1806E __imp__EndClearFaultStatus@8 + 180E2 _EndClearGraphic_R3@8 + 180E2 __imp__EndClearGraphic_R3@8 + 18154 _EndClearLatchedAlarms@8 + 18154 __imp__EndClearLatchedAlarms@8 + 181CA _EndClearPeakRates@8 + 181CA __imp__EndClearPeakRates@8 + 1823C _EndClearScratchpad@8 + 1823C __imp__EndClearScratchpad@8 + 182AE _EndClearTotalDose@8 + 182AE __imp__EndClearTotalDose@8 + 18320 _EndClearWearerOrTaskId_R3@8 + 18320 __imp__EndClearWearerOrTaskId_R3@8 + 1839A _EndDeissueEPD@8 + 1839A __imp__EndDeissueEPD@8 + 18408 _EndEnableCovertMode_R3@8 + 18408 __imp__EndEnableCovertMode_R3@8 + 1847E _EndEnableDeepSleep_R3@8 + 1847E __imp__EndEnableDeepSleep_R3@8 + 184F4 _EndEnableManufacturerLockout_R3@8 + 184F4 __imp__EndEnableManufacturerLockout_R3@8 + 18574 _EndEnableProtectedSession_R3@8 + 18574 __imp__EndEnableProtectedSession_R3@8 + 185F0 _EndEnableResponderMode_R3@8 + 185F0 __imp__EndEnableResponderMode_R3@8 + 1866A _EndEpdOnOff@8 + 1866A __imp__EndEpdOnOff@8 + 186D6 _EndInitiateFirmwareUpdate_R3@8 + 186D6 __imp__EndInitiateFirmwareUpdate_R3@8 + 18752 _EndIssueEPD@8 + 18752 __imp__EndIssueEPD@8 + 187BE _EndMfrLogin_R2@8 + 187BE __imp__EndMfrLogin_R2@8 + 1882C _EndReadAccessPermissionsForLevel_R3@20 + 1882C __imp__EndReadAccessPermissionsForLevel_R3@20 + 188B0 _EndReadAlarmConfiguration@20 + 188B0 __imp__EndReadAlarmConfiguration@20 + 1892A _EndReadAlarmConfigurationLock_R3@20 + 1892A __imp__EndReadAlarmConfigurationLock_R3@20 + 189AC _EndReadAlarmConfiguration_R3@20 + 189AC __imp__EndReadAlarmConfiguration_R3@20 + 18A2A _EndReadAlarmThresholds@12 + 18A2A __imp__EndReadAlarmThresholds@12 + 18AA2 _EndReadBacklightBrightness_R3@12 + 18AA2 __imp__EndReadBacklightBrightness_R3@12 + 18B20 _EndReadBacklightEnable_R3@12 + 18B20 __imp__EndReadBacklightEnable_R3@12 + 18B9A _EndReadBacklightPeriod_R3@12 + 18B9A __imp__EndReadBacklightPeriod_R3@12 + 18C14 _EndReadBaselineCounts@24 + 18C14 __imp__EndReadBaselineCounts@24 + 18C8A _EndReadBatteryCriticalTiming_R3@16 + 18C8A __imp__EndReadBatteryCriticalTiming_R3@16 + 18D0A _EndReadBatteryLowThreshold@16 + 18D0A __imp__EndReadBatteryLowThreshold@16 + 18D86 _EndReadBatteryTestInterval@12 + 18D86 __imp__EndReadBatteryTestInterval@12 + 18E02 _EndReadBatteryTypeFitted_R3@12 + 18E02 __imp__EndReadBatteryTypeFitted_R3@12 + 18E7E _EndReadBatteryTypeOverride_R3@12 + 18E7E __imp__EndReadBatteryTypeOverride_R3@12 + 18EFC _EndReadCalDueDate@12 + 18EFC __imp__EndReadCalDueDate@12 + 18F6E _EndReadCalDueDate_R3@12 + 18F6E __imp__EndReadCalDueDate_R3@12 + 18FE4 _EndReadCalReference_R3@12 + 18FE4 __imp__EndReadCalReference_R3@12 + 1905C _EndReadCalibrationData_R2@48 + 1905C __imp__EndReadCalibrationData_R2@48 + 190D6 _EndReadCalibrationFacility_R3@12 + 190D6 __imp__EndReadCalibrationFacility_R3@12 + 19154 _EndReadCapabilities@12 + 19154 __imp__EndReadCapabilities@12 + 191C8 _EndReadChirpEnable_R3@12 + 191C8 __imp__EndReadChirpEnable_R3@12 + 1923E _EndReadChirpSensitivity@12 + 1923E __imp__EndReadChirpSensitivity@12 + 192B6 _EndReadCounts@28 + 192B6 __imp__EndReadCounts@28 + 19324 _EndReadCurrentAccessLevel@12 + 19324 __imp__EndReadCurrentAccessLevel@12 + 1939E _EndReadDeadTimeFactors_R3@20 + 1939E __imp__EndReadDeadTimeFactors_R3@20 + 19418 _EndReadDebugRegister_R3@16 + 19418 __imp__EndReadDebugRegister_R3@16 + 19490 _EndReadDetectorTestLimits_R3@20 + 19490 __imp__EndReadDetectorTestLimits_R3@20 + 1950E _EndReadDetectorThresholdLimits_R3@20 + 1950E __imp__EndReadDetectorThresholdLimits_R3@20 + 19590 _EndReadDetectorThresholds@20 + 19590 __imp__EndReadDetectorThresholds@20 + 1960A _EndReadDetectorThresholds_R3@20 + 1960A __imp__EndReadDetectorThresholds_R3@20 + 19688 _EndReadDisplayCapability_R3@24 + 19688 __imp__EndReadDisplayCapability_R3@24 + 19704 _EndReadDisplayEnablePermissions_R3@24 + 19704 __imp__EndReadDisplayEnablePermissions_R3@24 + 19788 _EndReadDisplayEnables_R3@20 + 19788 __imp__EndReadDisplayEnables_R3@20 + 19802 _EndReadDisplayOptions@12 + 19802 __imp__EndReadDisplayOptions@12 + 19878 _EndReadDisplayOptionsLock_R3@12 + 19878 __imp__EndReadDisplayOptionsLock_R3@12 + 198F6 _EndReadDisplayTimeout@12 + 198F6 __imp__EndReadDisplayTimeout@12 + 1996C _EndReadDoseProfileByIndex_R3@24 + 1996C __imp__EndReadDoseProfileByIndex_R3@24 + 199EA _EndReadDoseProfileByTime@16 + 199EA __imp__EndReadDoseProfileByTime@16 + 19A64 _EndReadDoseProfileConfiguration_R3@12 + 19A64 __imp__EndReadDoseProfileConfiguration_R3@12 + 19AE8 _EndReadDoseProfileInterval@12 + 19AE8 __imp__EndReadDoseProfileInterval@12 + 19B64 _EndReadDoseSaveInterval_R3@12 + 19B64 __imp__EndReadDoseSaveInterval_R3@12 + 19BE0 _EndReadDoses@24 + 19BE0 __imp__EndReadDoses@24 + 19C4E _EndReadEEProm@24 + 19C4E __imp__EndReadEEProm@24 + 19CBC _EndReadEpdIdentities@36 + 19CBC __imp__EndReadEpdIdentities@36 + 19D32 _EndReadEpdPartNumber_R3@12 + 19D32 __imp__EndReadEpdPartNumber_R3@12 + 19DAA _EndReadEpdRevision_R3@12 + 19DAA __imp__EndReadEpdRevision_R3@12 + 19E20 _EndReadEpdSerialNum@12 + 19E20 __imp__EndReadEpdSerialNum@12 + 19E94 _EndReadEpdType@12 + 19E94 __imp__EndReadEpdType@12 + 19F04 _EndReadEventLogLevel_R3@12 + 19F04 __imp__EndReadEventLogLevel_R3@12 + 19F7C _EndReadEventsByIndex@16 + 19F7C __imp__EndReadEventsByIndex@16 + 19FF2 _EndReadFactoryCalDate@12 + 19FF2 __imp__EndReadFactoryCalDate@12 + 1A068 _EndReadFemSerialNum_R3@12 + 1A068 __imp__EndReadFemSerialNum_R3@12 + 1A0E0 _EndReadFirmwarePartNumber_R3@12 + 1A0E0 __imp__EndReadFirmwarePartNumber_R3@12 + 1A15E _EndReadFirmwareVersion@12 + 1A15E __imp__EndReadFirmwareVersion@12 + 1A1D6 _EndReadFlashTestCounts_R3@24 + 1A1D6 __imp__EndReadFlashTestCounts_R3@24 + 1A250 _EndReadFpgaVersion_R3@16 + 1A250 __imp__EndReadFpgaVersion_R3@16 + 1A2C6 _EndReadGains@20 + 1A2C6 __imp__EndReadGains@20 + 1A334 _EndReadGains_R3@20 + 1A334 __imp__EndReadGains_R3@20 + 1A3A4 _EndReadGraphicData_R3@12 + 1A3A4 __imp__EndReadGraphicData_R3@12 + 1A41A _EndReadGraphicSize_R3@12 + 1A41A __imp__EndReadGraphicSize_R3@12 + 1A490 _EndReadLastCalibrationProcess_R3@12 + 1A490 __imp__EndReadLastCalibrationProcess_R3@12 + 1A512 _EndReadMarkNumber@12 + 1A512 __imp__EndReadMarkNumber@12 + 1A584 _EndReadMeasurandIds_R3@20 + 1A584 __imp__EndReadMeasurandIds_R3@20 + 1A5FC _EndReadModelName_R3@12 + 1A5FC __imp__EndReadModelName_R3@12 + 1A670 _EndReadOffModeBatteryTestInterval_R3@12 + 1A670 __imp__EndReadOffModeBatteryTestInterval_R3@12 + 1A6F6 _EndReadOffModeDisplay_R3@16 + 1A6F6 __imp__EndReadOffModeDisplay_R3@16 + 1A770 _EndReadPcbPartNumber_R3@12 + 1A770 __imp__EndReadPcbPartNumber_R3@12 + 1A7E8 _EndReadPcbRevision_R3@12 + 1A7E8 __imp__EndReadPcbRevision_R3@12 + 1A85E _EndReadPcbSerialNum_R3@12 + 1A85E __imp__EndReadPcbSerialNum_R3@12 + 1A8D6 _EndReadPeakRates@20 + 1A8D6 __imp__EndReadPeakRates@20 + 1A948 _EndReadPulseModeEnable_R3@12 + 1A948 __imp__EndReadPulseModeEnable_R3@12 + 1A9C2 _EndReadPulseModeIndustrial_R3@12 + 1A9C2 __imp__EndReadPulseModeIndustrial_R3@12 + 1AA40 _EndReadPulseModeThreshold_R3@12 + 1AA40 __imp__EndReadPulseModeThreshold_R3@12 + 1AABE _EndReadPulsedModeOverrangeThreshold_R3@12 + 1AABE __imp__EndReadPulsedModeOverrangeThreshold_R3@12 + 1AB46 _EndReadQualityData@12 + 1AB46 __imp__EndReadQualityData@12 + 1ABBA _EndReadQuickAccessDisplays_R3@20 + 1ABBA __imp__EndReadQuickAccessDisplays_R3@20 + 1AC38 _EndReadRTC@12 + 1AC38 __imp__EndReadRTC@12 + 1ACA4 _EndReadRadioFirmwareVersion_R3@12 + 1ACA4 __imp__EndReadRadioFirmwareVersion_R3@12 + 1AD24 _EndReadRateOffPercentage@20 + 1AD24 __imp__EndReadRateOffPercentage@20 + 1AD9E _EndReadRates@24 + 1AD9E __imp__EndReadRates@24 + 1AE0C _EndReadResponderTriggerUtc_R3@12 + 1AE0C __imp__EndReadResponderTriggerUtc_R3@12 + 1AE8A _EndReadReturnForReadTime@12 + 1AE8A __imp__EndReadReturnForReadTime@12 + 1AF04 _EndReadRunTime_R3@12 + 1AF04 __imp__EndReadRunTime_R3@12 + 1AF76 _EndReadScratchpad@24 + 1AF76 __imp__EndReadScratchpad@24 + 1AFE8 _EndReadScratchpadSize@12 + 1AFE8 __imp__EndReadScratchpadSize@12 + 1B05E _EndReadSelfTestInterval@12 + 1B05E __imp__EndReadSelfTestInterval@12 + 1B0D6 _EndReadSensitivities@20 + 1B0D6 __imp__EndReadSensitivities@20 + 1B14C _EndReadSensitivities_R3@20 + 1B14C __imp__EndReadSensitivities_R3@20 + 1B1C4 _EndReadSnapshotAlarmThresholds_R3@12 + 1B1C4 __imp__EndReadSnapshotAlarmThresholds_R3@12 + 1B246 _EndReadSnapshotCounters_R3@12 + 1B246 __imp__EndReadSnapshotCounters_R3@12 + 1B2C2 _EndReadSnapshotMeasurements_R3@12 + 1B2C2 __imp__EndReadSnapshotMeasurements_R3@12 + 1B342 _EndReadSnapshotSummary_R3@12 + 1B342 __imp__EndReadSnapshotSummary_R3@12 + 1B3BC _EndReadStatus@12 + 1B3BC __imp__EndReadStatus@12 + 1B42A _EndReadStayTime_R3@12 + 1B42A __imp__EndReadStayTime_R3@12 + 1B49E _EndReadSwitchOnFromButton_R3@12 + 1B49E __imp__EndReadSwitchOnFromButton_R3@12 + 1B51C _EndReadTaskDatabaseId_R3@12 + 1B51C __imp__EndReadTaskDatabaseId_R3@12 + 1B596 _EndReadTaskId_R3@12 + 1B596 __imp__EndReadTaskId_R3@12 + 1B608 _EndReadTelemetryAdvConfig_R3@12 + 1B608 __imp__EndReadTelemetryAdvConfig_R3@12 + 1B686 _EndReadTelemetryAdvContent_R3@16 + 1B686 __imp__EndReadTelemetryAdvContent_R3@16 + 1B704 _EndReadTelemetryCxnConfig_R3@12 + 1B704 __imp__EndReadTelemetryCxnConfig_R3@12 + 1B782 _EndReadTelemetryEnable_R3@16 + 1B782 __imp__EndReadTelemetryEnable_R3@16 + 1B7FC _EndReadTelemetryMode_R2@12 + 1B7FC __imp__EndReadTelemetryMode_R2@12 + 1B874 _EndReadTelemetryReportInterval_R3@12 + 1B874 __imp__EndReadTelemetryReportInterval_R3@12 + 1B8F6 _EndReadTelemetryTxPower_R3@16 + 1B8F6 __imp__EndReadTelemetryTxPower_R3@16 + 1B972 _EndReadTotalDoses@24 + 1B972 __imp__EndReadTotalDoses@24 + 1B9E4 _EndReadTriggeredDoses_R3@24 + 1B9E4 __imp__EndReadTriggeredDoses_R3@24 + 1BA5E _EndReadVoltages@20 + 1BA5E __imp__EndReadVoltages@20 + 1BACE _EndReadWearerDatabaseId_R3@12 + 1BACE __imp__EndReadWearerDatabaseId_R3@12 + 1BB4A _EndReadWearerId@12 + 1BB4A __imp__EndReadWearerId@12 + 1BBBA _EndReadZoneAccessPermitted@12 + 1BBBA __imp__EndReadZoneAccessPermitted@12 + 1BC36 _EndReadZoneControlMap@12 + 1BC36 __imp__EndReadZoneControlMap@12 + 1BCAC _EndSetBaselineCounters@8 + 1BCAC __imp__EndSetBaselineCounters@8 + 1BD22 _EndStartDetectorTest@8 + 1BD22 __imp__EndStartDetectorTest@8 + 1BD96 _EndTriggerBacklight_R3@8 + 1BD96 __imp__EndTriggerBacklight_R3@8 + 1BE0C _EndTriggerResponderMode_R3@8 + 1BE0C __imp__EndTriggerResponderMode_R3@8 + 1BE86 _EndValidateEpdOwnerKey_R3@12 + 1BE86 __imp__EndValidateEpdOwnerKey_R3@12 + 1BF00 _EndWriteAccessKey@8 + 1BF00 __imp__EndWriteAccessKey@8 + 1BF72 _EndWriteAccessLevel@8 + 1BF72 __imp__EndWriteAccessLevel@8 + 1BFE6 _EndWriteAccessPermissionsForLevel_R3@8 + 1BFE6 __imp__EndWriteAccessPermissionsForLevel_R3@8 + 1C06A _EndWriteAlarmConfigurationLock_R3@8 + 1C06A __imp__EndWriteAlarmConfigurationLock_R3@8 + 1C0EC _EndWriteAlarmConfiguration_R3@8 + 1C0EC __imp__EndWriteAlarmConfiguration_R3@8 + 1C16A _EndWriteAlarmThresholds@8 + 1C16A __imp__EndWriteAlarmThresholds@8 + 1C1E2 _EndWriteBacklightBrightness_R3@8 + 1C1E2 __imp__EndWriteBacklightBrightness_R3@8 + 1C260 _EndWriteBacklightEnable_R3@8 + 1C260 __imp__EndWriteBacklightEnable_R3@8 + 1C2DA _EndWriteBacklightPeriod_R3@8 + 1C2DA __imp__EndWriteBacklightPeriod_R3@8 + 1C354 _EndWriteBatteryCriticalTiming_R3@8 + 1C354 __imp__EndWriteBatteryCriticalTiming_R3@8 + 1C3D4 _EndWriteBatteryLowThreshold@8 + 1C3D4 __imp__EndWriteBatteryLowThreshold@8 + 1C450 _EndWriteBatteryTestInterval@8 + 1C450 __imp__EndWriteBatteryTestInterval@8 + 1C4CC _EndWriteBatteryTypeOverride_R3@8 + 1C4CC __imp__EndWriteBatteryTypeOverride_R3@8 + 1C54A _EndWriteCalDueDate@8 + 1C54A __imp__EndWriteCalDueDate@8 + 1C5BC _EndWriteCalDueDate_R3@8 + 1C5BC __imp__EndWriteCalDueDate_R3@8 + 1C632 _EndWriteCalReference_R3@8 + 1C632 __imp__EndWriteCalReference_R3@8 + 1C6AA _EndWriteCalibrationFacility_R3@8 + 1C6AA __imp__EndWriteCalibrationFacility_R3@8 + 1C728 _EndWriteCapabilities_R3@8 + 1C728 __imp__EndWriteCapabilities_R3@8 + 1C7A0 _EndWriteChirpEnable_R3@8 + 1C7A0 __imp__EndWriteChirpEnable_R3@8 + 1C816 _EndWriteChirpSensitivity@8 + 1C816 __imp__EndWriteChirpSensitivity@8 + 1C88E _EndWriteClearDoseOnSwitchOn@8 + 1C88E __imp__EndWriteClearDoseOnSwitchOn@8 + 1C90A _EndWriteDeadTimeFactors_R3@8 + 1C90A __imp__EndWriteDeadTimeFactors_R3@8 + 1C984 _EndWriteDebugRegister_R3@8 + 1C984 __imp__EndWriteDebugRegister_R3@8 + 1C9FC _EndWriteDetectorTestLimits_R3@8 + 1C9FC __imp__EndWriteDetectorTestLimits_R3@8 + 1CA7A _EndWriteDetectorThresholds_R2@8 + 1CA7A __imp__EndWriteDetectorThresholds_R2@8 + 1CAF8 _EndWriteDetectorThresholds_R3@8 + 1CAF8 __imp__EndWriteDetectorThresholds_R3@8 + 1CB76 _EndWriteDisplayEnablePermissions_R3@8 + 1CB76 __imp__EndWriteDisplayEnablePermissions_R3@8 + 1CBFA _EndWriteDisplayEnables_R3@8 + 1CBFA __imp__EndWriteDisplayEnables_R3@8 + 1CC74 _EndWriteDisplayOptions@8 + 1CC74 __imp__EndWriteDisplayOptions@8 + 1CCEA _EndWriteDisplayOptionsLock_R3@8 + 1CCEA __imp__EndWriteDisplayOptionsLock_R3@8 + 1CD68 _EndWriteDisplayTimeout@8 + 1CD68 __imp__EndWriteDisplayTimeout@8 + 1CDDE _EndWriteDoseProfileDoseIncrement_R3@8 + 1CDDE __imp__EndWriteDoseProfileDoseIncrement_R3@8 + 1CE62 _EndWriteDoseProfileInterval@8 + 1CE62 __imp__EndWriteDoseProfileInterval@8 + 1CEDE _EndWriteDoseProfileMeasurands_R3@8 + 1CEDE __imp__EndWriteDoseProfileMeasurands_R3@8 + 1CF5E _EndWriteDoseSaveInterval_R3@8 + 1CF5E __imp__EndWriteDoseSaveInterval_R3@8 + 1CFDA _EndWriteDoseWritableFlag@8 + 1CFDA __imp__EndWriteDoseWritableFlag@8 + 1D052 _EndWriteDoses@8 + 1D052 __imp__EndWriteDoses@8 + 1D0C0 _EndWriteEEProm@8 + 1D0C0 __imp__EndWriteEEProm@8 + 1D12E _EndWriteEpdPartNumber_R3@8 + 1D12E __imp__EndWriteEpdPartNumber_R3@8 + 1D1A6 _EndWriteEpdRevision_R3@8 + 1D1A6 __imp__EndWriteEpdRevision_R3@8 + 1D21C _EndWriteEpdSerialNumber@8 + 1D21C __imp__EndWriteEpdSerialNumber@8 + 1D294 _EndWriteEventLogLevel_R3@8 + 1D294 __imp__EndWriteEventLogLevel_R3@8 + 1D30C _EndWriteFactoryCalDate@8 + 1D30C __imp__EndWriteFactoryCalDate@8 + 1D382 _EndWriteFemSerialNumber_R3@8 + 1D382 __imp__EndWriteFemSerialNumber_R3@8 + 1D3FC _EndWriteGainableFlag_R3@8 + 1D3FC __imp__EndWriteGainableFlag_R3@8 + 1D474 _EndWriteGains_R3@8 + 1D474 __imp__EndWriteGains_R3@8 + 1D4E4 _EndWriteGoldenFlag_R3@8 + 1D4E4 __imp__EndWriteGoldenFlag_R3@8 + 1D55A _EndWriteGraphicBitmap_R3@8 + 1D55A __imp__EndWriteGraphicBitmap_R3@8 + 1D5D2 _EndWriteLastCalibrationProcess_R3@8 + 1D5D2 __imp__EndWriteLastCalibrationProcess_R3@8 + 1D654 _EndWriteMarkNumber_R3@8 + 1D654 __imp__EndWriteMarkNumber_R3@8 + 1D6CA _EndWriteModelName_R3@8 + 1D6CA __imp__EndWriteModelName_R3@8 + 1D73E _EndWriteNotCalibratedFlag_R3@8 + 1D73E __imp__EndWriteNotCalibratedFlag_R3@8 + 1D7BA _EndWriteOffModeBatteryTestInterval_R3@8 + 1D7BA __imp__EndWriteOffModeBatteryTestInterval_R3@8 + 1D840 _EndWriteOffModeDisplay_R3@8 + 1D840 __imp__EndWriteOffModeDisplay_R3@8 + 1D8BA _EndWritePcbPartNumber_R3@8 + 1D8BA __imp__EndWritePcbPartNumber_R3@8 + 1D932 _EndWritePcbRevision_R3@8 + 1D932 __imp__EndWritePcbRevision_R3@8 + 1D9A8 _EndWritePcbSerialNumber_R3@8 + 1D9A8 __imp__EndWritePcbSerialNumber_R3@8 + 1DA22 _EndWritePulseModeEnable_R3@8 + 1DA22 __imp__EndWritePulseModeEnable_R3@8 + 1DA9C _EndWritePulseModeIndustrial_R3@8 + 1DA9C __imp__EndWritePulseModeIndustrial_R3@8 + 1DB1A _EndWritePulseModeThreshold_R3@8 + 1DB1A __imp__EndWritePulseModeThreshold_R3@8 + 1DB98 _EndWritePulsedModeOverrangeThreshold_R3@8 + 1DB98 __imp__EndWritePulsedModeOverrangeThreshold_R3@8 + 1DC20 _EndWriteQuickAccessDisplays_R3@8 + 1DC20 __imp__EndWriteQuickAccessDisplays_R3@8 + 1DC9E _EndWriteRTC_R3@8 + 1DC9E __imp__EndWriteRTC_R3@8 + 1DD0C _EndWriteRateOffPercentage@8 + 1DD0C __imp__EndWriteRateOffPercentage@8 + 1DD86 _EndWriteReturnForReadTime@8 + 1DD86 __imp__EndWriteReturnForReadTime@8 + 1DE00 _EndWriteScratchpad@8 + 1DE00 __imp__EndWriteScratchpad@8 + 1DE72 _EndWriteSelfTestInterval@8 + 1DE72 __imp__EndWriteSelfTestInterval@8 + 1DEEA _EndWriteSensitivities_R2@8 + 1DEEA __imp__EndWriteSensitivities_R2@8 + 1DF62 _EndWriteSensitivities_R3@8 + 1DF62 __imp__EndWriteSensitivities_R3@8 + 1DFDA _EndWriteStayTime_R3@8 + 1DFDA __imp__EndWriteStayTime_R3@8 + 1E04E _EndWriteSwitchOnFromButton_R3@8 + 1E04E __imp__EndWriteSwitchOnFromButton_R3@8 + 1E0CC _EndWriteTaskDatabaseId_R3@8 + 1E0CC __imp__EndWriteTaskDatabaseId_R3@8 + 1E146 _EndWriteTaskId_R3@8 + 1E146 __imp__EndWriteTaskId_R3@8 + 1E1B8 _EndWriteTelemetryAdvConfig_R3@8 + 1E1B8 __imp__EndWriteTelemetryAdvConfig_R3@8 + 1E236 _EndWriteTelemetryAdvContent_R3@8 + 1E236 __imp__EndWriteTelemetryAdvContent_R3@8 + 1E2B4 _EndWriteTelemetryCxnConfig_R3@8 + 1E2B4 __imp__EndWriteTelemetryCxnConfig_R3@8 + 1E332 _EndWriteTelemetryEnable_R3@8 + 1E332 __imp__EndWriteTelemetryEnable_R3@8 + 1E3AC _EndWriteTelemetryMode_R2@8 + 1E3AC __imp__EndWriteTelemetryMode_R2@8 + 1E424 _EndWriteTelemetryReportInterval_R3@8 + 1E424 __imp__EndWriteTelemetryReportInterval_R3@8 + 1E4A6 _EndWriteTelemetryTxPower_R3@8 + 1E4A6 __imp__EndWriteTelemetryTxPower_R3@8 + 1E522 _EndWriteTotalDoses@8 + 1E522 __imp__EndWriteTotalDoses@8 + 1E594 _EndWriteTriggeredDoses_R3@8 + 1E594 __imp__EndWriteTriggeredDoses_R3@8 + 1E60E _EndWriteWearerDatabaseId_R3@8 + 1E60E __imp__EndWriteWearerDatabaseId_R3@8 + 1E68A _EndWriteWearerId@8 + 1E68A __imp__EndWriteWearerId@8 + 1E6FA _EndWriteZoneControlMap@8 + 1E6FA __imp__EndWriteZoneControlMap@8 + 1E770 _GetDiscoveredEpds@16 + 1E770 __imp__GetDiscoveredEpds@16 + 1E7E2 _GetDiscoveryTimeout@8 + 1E7E2 __imp__GetDiscoveryTimeout@8 + 1E856 _GetDiscoveryTimeslots@8 + 1E856 __imp__GetDiscoveryTimeslots@8 + 1E8CC _GetDllLogLevel@8 + 1E8CC __imp__GetDllLogLevel@8 + 1E93A _GetErrorCode@0 + 1E93A __imp__GetErrorCode@0 + 1E9A6 _GetMultipleDiscoveryMode@8 + 1E9A6 __imp__GetMultipleDiscoveryMode@8 + 1EA1E _GetResponseTimeout@8 + 1EA1E __imp__GetResponseTimeout@8 + 1EA90 _GetRetryCount@8 + 1EA90 __imp__GetRetryCount@8 + 1EAFE _OpenReader@8 + 1EAFE __imp__OpenReader@8 + 1EB68 _SetConnectCallback@8 + 1EB68 __imp__SetConnectCallback@8 + 1EBDA _SetDisconnectCallback@8 + 1EBDA __imp__SetDisconnectCallback@8 + 1EC50 _SetDiscoveryCacheTimeout@8 + 1EC50 __imp__SetDiscoveryCacheTimeout@8 + 1ECC8 _SetDiscoveryTimeslots@8 + 1ECC8 __imp__SetDiscoveryTimeslots@8 + 1ED3E _SetDllLogLevel@8 + 1ED3E __imp__SetDllLogLevel@8 + 1EDAC _SetMultipleDiscoveryMode@8 + 1EDAC __imp__SetMultipleDiscoveryMode@8 + 1EE24 _SetRemovedCallback@8 + 1EE24 __imp__SetRemovedCallback@8 + 1EE96 _SetResponseTimeout@8 + 1EE96 __imp__SetResponseTimeout@8 + 1EF08 _SetRetryCount@8 + 1EF08 __imp__SetRetryCount@8 + 1EF76 _StartDiscovery@8 + 1EF76 __imp__StartDiscovery@8 + 1EFE4 _StopDiscovery@4 + 1EFE4 __imp__StopDiscovery@4 + +Archive member name at 8574: / +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 853A size +correct header end + + 477 offsets + + 1 10AEA + 2 10D14 + 3 10E4A + 4 10F9C + 5 1100A + 6 1107E + 7 110EC + 8 11164 + 9 111D8 + A 1124E + B 112C4 + C 1133C + D 113B0 + E 11426 + F 1149A + 10 11516 + 11 11586 + 12 11600 + 13 11678 + 14 116FA + 15 1177A + 16 117F6 + 17 11864 + 18 118E2 + 19 11950 + 1A 119C2 + 1B 11A48 + 1C 11AC4 + 1D 11B46 + 1E 11BC6 + 1F 11C40 + 20 11CC0 + 21 11D3C + 22 11DB8 + 23 11E30 + 24 11EB2 + 25 11F30 + 26 11FAC + 27 1202A + 28 120AA + 29 1211E + 2A 12194 + 2B 1220C + 2C 12288 + 2D 12308 + 2E 1237E + 2F 123F6 + 30 12470 + 31 124E0 + 32 1255C + 33 125D8 + 34 12652 + 35 126D2 + 36 12756 + 37 127D2 + 38 12852 + 39 128D0 + 3A 12956 + 3B 129D2 + 3C 12A4A + 3D 12AC8 + 3E 12B40 + 3F 12BC0 + 40 12C3C + 41 12CC0 + 42 12D3C + 43 12DB8 + 44 12E28 + 45 12E98 + 46 12F0E + 47 12F88 + 48 13000 + 49 13076 + 4A 130E6 + 4B 13160 + 4C 131D8 + 4D 13250 + 4E 132C8 + 4F 13346 + 50 133BE + 51 1343A + 52 134B2 + 53 13522 + 54 13594 + 55 1360C + 56 13684 + 57 13706 + 58 1377A + 59 137F2 + 5A 13868 + 5B 138EE + 5C 13968 + 5D 139E2 + 5E 13A5A + 5F 13AD2 + 60 13B46 + 61 13BC2 + 62 13C42 + 63 13CC0 + 64 13D48 + 65 13DBC + 66 13E3C + 67 13EA8 + 68 13F28 + 69 13FA4 + 6A 14014 + 6B 14094 + 6C 1410E + 6D 14182 + 6E 141F6 + 6F 1426E + 70 142E8 + 71 14360 + 72 143DA + 73 1445E + 74 144DC + 75 1455E + 76 145DA + 77 1464A + 78 146BE + 79 1473C + 7A 147B6 + 7B 1482A + 7C 148AA + 7D 1492A + 7E 149A8 + 7F 14A24 + 80 14A9E + 81 14B22 + 82 14BA0 + 83 14C14 + 84 14C90 + 85 14D02 + 86 14D7E + 87 14DF0 + 88 14E6E + 89 14EE6 + 8A 14F5E + 8B 14FD4 + 8C 1504C + 8D 150C8 + 8E 15144 + 8F 151B8 + 90 1522E + 91 152B6 + 92 1533A + 93 153BA + 94 15434 + 95 154B6 + 96 15534 + 97 155B2 + 98 15636 + 99 156B4 + 9A 15732 + 9B 157B4 + 9C 1582A + 9D 158A2 + 9E 1591C + 9F 1599E + A0 15A18 + A1 15A92 + A2 15B0E + A3 15B8C + A4 15C0A + A5 15C86 + A6 15D06 + A7 15D86 + A8 15E06 + A9 15E8C + AA 15F08 + AB 15F82 + AC 16002 + AD 1607C + AE 16102 + AF 16180 + B0 16204 + B1 16282 + B2 162FE + B3 1636E + B4 163E0 + B5 1645C + B6 164D6 + B7 16550 + B8 165CC + B9 16646 + BA 166C4 + BB 1673E + BC 167B2 + BD 1682A + BE 168A6 + BF 1692A + C0 169A2 + C1 16A1A + C2 16A9A + C3 16B22 + C4 16B9E + C5 16C1A + C6 16C94 + C7 16D12 + C8 16D90 + C9 16E12 + CA 16E92 + CB 16F1C + CC 16F9E + CD 17010 + CE 1708C + CF 17108 + D0 1717E + D1 171FA + D2 17276 + D3 172F2 + D4 17368 + D5 173E8 + D6 17464 + D7 174D8 + D8 17558 + D9 175DA + DA 1765A + DB 176D8 + DC 17754 + DD 177DA + DE 17858 + DF 178CE + E0 1794A + E1 179C8 + E2 17A3C + E3 17AB6 + E4 17B2C + E5 17BA0 + E6 17C0C + E7 17C74 + E8 17CDE + E9 17D54 + EA 17DCA + EB 17E34 + EC 17EA8 + ED 17F1A + EE 17F86 + EF 17FFC + F0 1806E + F1 180E2 + F2 18154 + F3 181CA + F4 1823C + F5 182AE + F6 18320 + F7 1839A + F8 18408 + F9 1847E + FA 184F4 + FB 18574 + FC 185F0 + FD 1866A + FE 186D6 + FF 18752 + 100 187BE + 101 1882C + 102 188B0 + 103 1892A + 104 189AC + 105 18A2A + 106 18AA2 + 107 18B20 + 108 18B9A + 109 18C14 + 10A 18C8A + 10B 18D0A + 10C 18D86 + 10D 18E02 + 10E 18E7E + 10F 18EFC + 110 18F6E + 111 18FE4 + 112 1905C + 113 190D6 + 114 19154 + 115 191C8 + 116 1923E + 117 192B6 + 118 19324 + 119 1939E + 11A 19418 + 11B 19490 + 11C 1950E + 11D 19590 + 11E 1960A + 11F 19688 + 120 19704 + 121 19788 + 122 19802 + 123 19878 + 124 198F6 + 125 1996C + 126 199EA + 127 19A64 + 128 19AE8 + 129 19B64 + 12A 19BE0 + 12B 19C4E + 12C 19CBC + 12D 19D32 + 12E 19DAA + 12F 19E20 + 130 19E94 + 131 19F04 + 132 19F7C + 133 19FF2 + 134 1A068 + 135 1A0E0 + 136 1A15E + 137 1A1D6 + 138 1A250 + 139 1A2C6 + 13A 1A334 + 13B 1A3A4 + 13C 1A41A + 13D 1A490 + 13E 1A512 + 13F 1A584 + 140 1A5FC + 141 1A670 + 142 1A6F6 + 143 1A770 + 144 1A7E8 + 145 1A85E + 146 1A8D6 + 147 1A948 + 148 1A9C2 + 149 1AA40 + 14A 1AABE + 14B 1AB46 + 14C 1ABBA + 14D 1AC38 + 14E 1ACA4 + 14F 1AD24 + 150 1AD9E + 151 1AE0C + 152 1AE8A + 153 1AF04 + 154 1AF76 + 155 1AFE8 + 156 1B05E + 157 1B0D6 + 158 1B14C + 159 1B1C4 + 15A 1B246 + 15B 1B2C2 + 15C 1B342 + 15D 1B3BC + 15E 1B42A + 15F 1B49E + 160 1B51C + 161 1B596 + 162 1B608 + 163 1B686 + 164 1B704 + 165 1B782 + 166 1B7FC + 167 1B874 + 168 1B8F6 + 169 1B972 + 16A 1B9E4 + 16B 1BA5E + 16C 1BACE + 16D 1BB4A + 16E 1BBBA + 16F 1BC36 + 170 1BCAC + 171 1BD22 + 172 1BD96 + 173 1BE0C + 174 1BE86 + 175 1BF00 + 176 1BF72 + 177 1BFE6 + 178 1C06A + 179 1C0EC + 17A 1C16A + 17B 1C1E2 + 17C 1C260 + 17D 1C2DA + 17E 1C354 + 17F 1C3D4 + 180 1C450 + 181 1C4CC + 182 1C54A + 183 1C5BC + 184 1C632 + 185 1C6AA + 186 1C728 + 187 1C7A0 + 188 1C816 + 189 1C88E + 18A 1C90A + 18B 1C984 + 18C 1C9FC + 18D 1CA7A + 18E 1CAF8 + 18F 1CB76 + 190 1CBFA + 191 1CC74 + 192 1CCEA + 193 1CD68 + 194 1CDDE + 195 1CE62 + 196 1CEDE + 197 1CF5E + 198 1CFDA + 199 1D052 + 19A 1D0C0 + 19B 1D12E + 19C 1D1A6 + 19D 1D21C + 19E 1D294 + 19F 1D30C + 1A0 1D382 + 1A1 1D3FC + 1A2 1D474 + 1A3 1D4E4 + 1A4 1D55A + 1A5 1D5D2 + 1A6 1D654 + 1A7 1D6CA + 1A8 1D73E + 1A9 1D7BA + 1AA 1D840 + 1AB 1D8BA + 1AC 1D932 + 1AD 1D9A8 + 1AE 1DA22 + 1AF 1DA9C + 1B0 1DB1A + 1B1 1DB98 + 1B2 1DC20 + 1B3 1DC9E + 1B4 1DD0C + 1B5 1DD86 + 1B6 1DE00 + 1B7 1DE72 + 1B8 1DEEA + 1B9 1DF62 + 1BA 1DFDA + 1BB 1E04E + 1BC 1E0CC + 1BD 1E146 + 1BE 1E1B8 + 1BF 1E236 + 1C0 1E2B4 + 1C1 1E332 + 1C2 1E3AC + 1C3 1E424 + 1C4 1E4A6 + 1C5 1E522 + 1C6 1E594 + 1C7 1E60E + 1C8 1E68A + 1C9 1E6FA + 1CA 1E770 + 1CB 1E7E2 + 1CC 1E856 + 1CD 1E8CC + 1CE 1E93A + 1CF 1E9A6 + 1D0 1EA1E + 1D1 1EA90 + 1D2 1EAFE + 1D3 1EB68 + 1D4 1EBDA + 1D5 1EC50 + 1D6 1ECC8 + 1D7 1ED3E + 1D8 1EDAC + 1D9 1EE24 + 1DA 1EE96 + 1DB 1EF08 + 1DC 1EF76 + 1DD 1EFE4 + + 951 public symbols + + 4 _AwaitRemoval@20 + 5 _BeginClearAllStatus@8 + 6 _BeginClearDose@8 + 7 _BeginClearDoseProfile_R3@8 + 8 _BeginClearEEPROM_R3@8 + 9 _BeginClearFaultStatus@8 + A _BeginClearGraphic_R3@12 + B _BeginClearLatchedAlarms@8 + C _BeginClearPeakRates@8 + D _BeginClearScratchPad@12 + E _BeginClearTotalDose@8 + F _BeginClearWearerOrTaskId_R3@16 + 10 _BeginDeissueEPD@8 + 11 _BeginEnableCovertMode_R3@12 + 12 _BeginEnableDeepSleep_R3@12 + 13 _BeginEnableManufacturerLockout_R3@12 + 14 _BeginEnableProtectedSession_R3@12 + 15 _BeginEnableResponderMode_R3@12 + 16 _BeginEpdOnOff@12 + 17 _BeginInitiateFirmwareUpdate_R3@8 + 18 _BeginIssueEPD@8 + 19 _BeginMfrLogin_R2@12 + 1A _BeginReadAccessPermissionsForLevel_R3@12 + 1B _BeginReadAlarmConfiguration@16 + 1C _BeginReadAlarmConfigurationLock_R3@8 + 1D _BeginReadAlarmConfiguration_R3@16 + 1E _BeginReadAlarmThresholds@20 + 1F _BeginReadBacklightBrightness_R3@8 + 20 _BeginReadBacklightEnable_R3@8 + 21 _BeginReadBacklightPeriod_R3@8 + 22 _BeginReadBaselineCounts@8 + 23 _BeginReadBatteryCriticalTiming_R3@8 + 24 _BeginReadBatteryLowThreshold@12 + 25 _BeginReadBatteryTestInterval@8 + 26 _BeginReadBatteryTypeFitted_R3@8 + 27 _BeginReadBatteryTypeOverride_R3@8 + 28 _BeginReadCalDueDate@8 + 29 _BeginReadCalDueDate_R3@8 + 2A _BeginReadCalReference_R3@8 + 2B _BeginReadCalibrationData_R2@8 + 2C _BeginReadCalibrationFacility_R3@8 + 2D _BeginReadCapabilities@8 + 2E _BeginReadChirpEnable_R3@8 + 2F _BeginReadChirpSensitivity@8 + 30 _BeginReadCounts@16 + 31 _BeginReadCurrentAccessLevel@8 + 32 _BeginReadDeadTimeFactors_R3@16 + 33 _BeginReadDebugRegister_R3@12 + 34 _BeginReadDetectorTestLimits_R3@16 + 35 _BeginReadDetectorThresholdLimits_R3@16 + 36 _BeginReadDetectorThresholds@16 + 37 _BeginReadDetectorThresholds_R3@16 + 38 _BeginReadDisplayCapability_R3@12 + 39 _BeginReadDisplayEnablePermissions_R3@12 + 3A _BeginReadDisplayEnables_R3@16 + 3B _BeginReadDisplayOptions@8 + 3C _BeginReadDisplayOptionsLock_R3@8 + 3D _BeginReadDisplayTimeout@8 + 3E _BeginReadDoseProfileByIndex_R3@16 + 3F _BeginReadDoseProfileByTime@16 + 40 _BeginReadDoseProfileConfiguration_R3@8 + 41 _BeginReadDoseProfileInterval@8 + 42 _BeginReadDoseSaveInterval_R3@8 + 43 _BeginReadDoses@16 + 44 _BeginReadEEProm@16 + 45 _BeginReadEpdIdentities@8 + 46 _BeginReadEpdPartNumber_R3@8 + 47 _BeginReadEpdRevision_R3@8 + 48 _BeginReadEpdSerialNum@8 + 49 _BeginReadEpdType@8 + 4A _BeginReadEventLogLevel_R3@8 + 4B _BeginReadEventsByIndex@16 + 4C _BeginReadFactoryCalDate@8 + 4D _BeginReadFemSerialNum_R3@8 + 4E _BeginReadFirmwarePartNumber_R3@8 + 4F _BeginReadFirmwareVersion@8 + 50 _BeginReadFlashTestCounts_R3@16 + 51 _BeginReadFpgaVersion_R3@8 + 52 _BeginReadGains@16 + 53 _BeginReadGains_R3@16 + 54 _BeginReadGraphicData_R3@12 + 55 _BeginReadGraphicSize_R3@12 + 56 _BeginReadLastCalibrationProcess_R3@8 + 57 _BeginReadMarkNumber@8 + 58 _BeginReadMeasurandIds_R3@8 + 59 _BeginReadModelName_R3@8 + 5A _BeginReadOffModeBatteryTestInterval_R3@8 + 5B _BeginReadOffModeDisplay_R3@8 + 5C _BeginReadPcbPartNumber_R3@8 + 5D _BeginReadPcbRevision_R3@8 + 5E _BeginReadPcbSerialNum_R3@8 + 5F _BeginReadPeakRates@16 + 60 _BeginReadPulseModeEnable_R3@8 + 61 _BeginReadPulseModeIndustrial_R3@8 + 62 _BeginReadPulseModeThreshold_R3@8 + 63 _BeginReadPulsedModeOverrangeThreshold_R3@8 + 64 _BeginReadQualityData@8 + 65 _BeginReadQuickAccessDisplays_R3@16 + 66 _BeginReadRTC@8 + 67 _BeginReadRadioFirmwareVersion_R3@8 + 68 _BeginReadRateOffPercentage@16 + 69 _BeginReadRates@16 + 6A _BeginReadResponderTriggerUtc_R3@8 + 6B _BeginReadReturnForReadTime@8 + 6C _BeginReadRunTime_R3@8 + 6D _BeginReadScratchPad@16 + 6E _BeginReadScratchpadSize@8 + 6F _BeginReadSelfTestInterval@8 + 70 _BeginReadSensitivities@16 + 71 _BeginReadSensitivities_R3@16 + 72 _BeginReadSnapshotAlarmThresholds_R3@12 + 73 _BeginReadSnapshotCounters_R3@12 + 74 _BeginReadSnapshotMeasurements_R3@12 + 75 _BeginReadSnapshotSummary_R3@12 + 76 _BeginReadStatus@8 + 77 _BeginReadStayTime_R3@8 + 78 _BeginReadSwitchOnFromButton_R3@8 + 79 _BeginReadTaskDatabaseId_R3@8 + 7A _BeginReadTaskId_R3@12 + 7B _BeginReadTelemetryAdvConfig_R3@12 + 7C _BeginReadTelemetryAdvContent_R3@12 + 7D _BeginReadTelemetryCxnConfig_R3@8 + 7E _BeginReadTelemetryEnable_R3@12 + 7F _BeginReadTelemetryMode_R2@8 + 80 _BeginReadTelemetryReportInterval_R3@8 + 81 _BeginReadTelemetryTxPower_R3@12 + 82 _BeginReadTotalDoses@16 + 83 _BeginReadTriggeredDoses_R3@16 + 84 _BeginReadVoltages@8 + 85 _BeginReadWearerDatabaseId_R3@8 + 86 _BeginReadWearerId@12 + 87 _BeginReadZoneAccessPermitted@12 + 88 _BeginReadZoneControlMap@8 + 89 _BeginSetBaselineCounters@8 + 8A _BeginStartDetectorTest@8 + 8B _BeginTriggerBacklight_R3@8 + 8C _BeginTriggerResponderMode_R3@8 + 8D _BeginValidateEpdOwnerKey_R3@12 + 8E _BeginWriteAccessKey@20 + 8F _BeginWriteAccessLevel@20 + 90 _BeginWriteAccessPermissionsForLevel_R3@20 + 91 _BeginWriteAlarmConfigurationLock_R3@16 + 92 _BeginWriteAlarmConfiguration_R3@16 + 93 _BeginWriteAlarmThresholds@20 + 94 _BeginWriteBacklightBrightness_R3@12 + 95 _BeginWriteBacklightEnable_R3@12 + 96 _BeginWriteBacklightPeriod_R3@12 + 97 _BeginWriteBatteryCriticalTiming_R3@16 + 98 _BeginWriteBatteryLowThreshold@16 + 99 _BeginWriteBatteryTestInterval@12 + 9A _BeginWriteBatteryTypeOverride_R3@12 + 9B _BeginWriteCalDueDate@12 + 9C _BeginWriteCalDueDate_R3@12 + 9D _BeginWriteCalReference_R3@12 + 9E _BeginWriteCalibrationFacility_R3@16 + 9F _BeginWriteCapabilities_R3@12 + A0 _BeginWriteChirpEnable_R3@12 + A1 _BeginWriteChirpSensitivity@12 + A2 _BeginWriteClearDoseOnSwitchOn@12 + A3 _BeginWriteDeadTimeFactors_R3@16 + A4 _BeginWriteDebugRegister_R3@16 + A5 _BeginWriteDetectorTestLimits_R3@16 + A6 _BeginWriteDetectorThresholds_R2@24 + A7 _BeginWriteDetectorThresholds_R3@16 + A8 _BeginWriteDisplayEnablePermissions_R3@20 + A9 _BeginWriteDisplayEnables_R3@16 + AA _BeginWriteDisplayOptions@16 + AB _BeginWriteDisplayOptionsLock_R3@16 + AC _BeginWriteDisplayTimeout@12 + AD _BeginWriteDoseProfileDoseIncrement_R3@12 + AE _BeginWriteDoseProfileInterval@12 + AF _BeginWriteDoseProfileMeasurands_R3@16 + B0 _BeginWriteDoseSaveInterval_R3@12 + B1 _BeginWriteDoseWritableFlag@12 + B2 _BeginWriteDoses@16 + B3 _BeginWriteEEProm@20 + B4 _BeginWriteEpdPartNumber_R3@12 + B5 _BeginWriteEpdRevision_R3@12 + B6 _BeginWriteEpdSerialNumber@12 + B7 _BeginWriteEventLogLevel_R3@12 + B8 _BeginWriteFactoryCalDate@12 + B9 _BeginWriteFemSerialNumber_R3@12 + BA _BeginWriteGainableFlag_R3@12 + BB _BeginWriteGains_R3@16 + BC _BeginWriteGoldenFlag_R3@12 + BD _BeginWriteGraphicBitmap_R3@352 + BE _BeginWriteLastCalibrationProcess_R3@20 + BF _BeginWriteMarkNumber_R3@12 + C0 _BeginWriteModelName_R3@40 + C1 _BeginWriteNotCalibratedFlag_R3@12 + C2 _BeginWriteOffModeBatteryTestInterval_R3@12 + C3 _BeginWriteOffModeDisplay_R3@16 + C4 _BeginWritePcbPartNumber_R3@12 + C5 _BeginWritePcbRevision_R3@12 + C6 _BeginWritePcbSerialNumber_R3@12 + C7 _BeginWritePulseModeEnable_R3@12 + C8 _BeginWritePulseModeIndustrial_R3@12 + C9 _BeginWritePulseModeThreshold_R3@12 + CA _BeginWritePulsedModeOverrangeThreshold_R3@12 + CB _BeginWriteQuickAccessDisplays_R3@16 + CC _BeginWriteRTC_R3@12 + CD _BeginWriteRateOffPercentage@16 + CE _BeginWriteReturnForReadTime@12 + CF _BeginWriteScratchPad@20 + D0 _BeginWriteSelfTestInterval@12 + D1 _BeginWriteSensitivities_R2@32 + D2 _BeginWriteSensitivities_R3@16 + D3 _BeginWriteStayTime_R3@12 + D4 _BeginWriteSwitchOnFromButton_R3@12 + D5 _BeginWriteTaskDatabaseId_R3@24 + D6 _BeginWriteTaskId_R3@76 + D7 _BeginWriteTelemetryAdvConfig_R3@12 + D8 _BeginWriteTelemetryAdvContent_R3@16 + D9 _BeginWriteTelemetryCxnConfig_R3@12 + DA _BeginWriteTelemetryEnable_R3@16 + DB _BeginWriteTelemetryMode_R2@12 + DC _BeginWriteTelemetryReportInterval_R3@12 + DD _BeginWriteTelemetryTxPower_R3@16 + DE _BeginWriteTotalDoses@16 + DF _BeginWriteTriggeredDoses_R3@16 + E0 _BeginWriteWearerDatabaseId_R3@24 + E1 _BeginWriteWearerId@76 + E2 _BeginWriteZoneControlMap@16 + E3 _CleanUpReadDoseProfile@4 + E4 _CleanUpReadEventLog@4 + E5 _CloseReader@4 + E6 _Commit3@4 + E7 _Connect3@20 + E8 _CreateReaderInterface@0 + E9 _DestroyReaderInterface@4 + EA _Disconnect@4 + EB _DisconnectAndNotify@12 + EC _EndClearAllStatus@8 + ED _EndClearDose@8 + EE _EndClearDoseProfile_R3@8 + EF _EndClearEEPROM_R3@8 + F0 _EndClearFaultStatus@8 + F1 _EndClearGraphic_R3@8 + F2 _EndClearLatchedAlarms@8 + F3 _EndClearPeakRates@8 + F4 _EndClearScratchpad@8 + F5 _EndClearTotalDose@8 + F6 _EndClearWearerOrTaskId_R3@8 + F7 _EndDeissueEPD@8 + F8 _EndEnableCovertMode_R3@8 + F9 _EndEnableDeepSleep_R3@8 + FA _EndEnableManufacturerLockout_R3@8 + FB _EndEnableProtectedSession_R3@8 + FC _EndEnableResponderMode_R3@8 + FD _EndEpdOnOff@8 + FE _EndInitiateFirmwareUpdate_R3@8 + FF _EndIssueEPD@8 + 100 _EndMfrLogin_R2@8 + 101 _EndReadAccessPermissionsForLevel_R3@20 + 102 _EndReadAlarmConfiguration@20 + 103 _EndReadAlarmConfigurationLock_R3@20 + 104 _EndReadAlarmConfiguration_R3@20 + 105 _EndReadAlarmThresholds@12 + 106 _EndReadBacklightBrightness_R3@12 + 107 _EndReadBacklightEnable_R3@12 + 108 _EndReadBacklightPeriod_R3@12 + 109 _EndReadBaselineCounts@24 + 10A _EndReadBatteryCriticalTiming_R3@16 + 10B _EndReadBatteryLowThreshold@16 + 10C _EndReadBatteryTestInterval@12 + 10D _EndReadBatteryTypeFitted_R3@12 + 10E _EndReadBatteryTypeOverride_R3@12 + 10F _EndReadCalDueDate@12 + 110 _EndReadCalDueDate_R3@12 + 111 _EndReadCalReference_R3@12 + 112 _EndReadCalibrationData_R2@48 + 113 _EndReadCalibrationFacility_R3@12 + 114 _EndReadCapabilities@12 + 115 _EndReadChirpEnable_R3@12 + 116 _EndReadChirpSensitivity@12 + 117 _EndReadCounts@28 + 118 _EndReadCurrentAccessLevel@12 + 119 _EndReadDeadTimeFactors_R3@20 + 11A _EndReadDebugRegister_R3@16 + 11B _EndReadDetectorTestLimits_R3@20 + 11C _EndReadDetectorThresholdLimits_R3@20 + 11D _EndReadDetectorThresholds@20 + 11E _EndReadDetectorThresholds_R3@20 + 11F _EndReadDisplayCapability_R3@24 + 120 _EndReadDisplayEnablePermissions_R3@24 + 121 _EndReadDisplayEnables_R3@20 + 122 _EndReadDisplayOptions@12 + 123 _EndReadDisplayOptionsLock_R3@12 + 124 _EndReadDisplayTimeout@12 + 125 _EndReadDoseProfileByIndex_R3@24 + 126 _EndReadDoseProfileByTime@16 + 127 _EndReadDoseProfileConfiguration_R3@12 + 128 _EndReadDoseProfileInterval@12 + 129 _EndReadDoseSaveInterval_R3@12 + 12A _EndReadDoses@24 + 12B _EndReadEEProm@24 + 12C _EndReadEpdIdentities@36 + 12D _EndReadEpdPartNumber_R3@12 + 12E _EndReadEpdRevision_R3@12 + 12F _EndReadEpdSerialNum@12 + 130 _EndReadEpdType@12 + 131 _EndReadEventLogLevel_R3@12 + 132 _EndReadEventsByIndex@16 + 133 _EndReadFactoryCalDate@12 + 134 _EndReadFemSerialNum_R3@12 + 135 _EndReadFirmwarePartNumber_R3@12 + 136 _EndReadFirmwareVersion@12 + 137 _EndReadFlashTestCounts_R3@24 + 138 _EndReadFpgaVersion_R3@16 + 139 _EndReadGains@20 + 13A _EndReadGains_R3@20 + 13B _EndReadGraphicData_R3@12 + 13C _EndReadGraphicSize_R3@12 + 13D _EndReadLastCalibrationProcess_R3@12 + 13E _EndReadMarkNumber@12 + 13F _EndReadMeasurandIds_R3@20 + 140 _EndReadModelName_R3@12 + 141 _EndReadOffModeBatteryTestInterval_R3@12 + 142 _EndReadOffModeDisplay_R3@16 + 143 _EndReadPcbPartNumber_R3@12 + 144 _EndReadPcbRevision_R3@12 + 145 _EndReadPcbSerialNum_R3@12 + 146 _EndReadPeakRates@20 + 147 _EndReadPulseModeEnable_R3@12 + 148 _EndReadPulseModeIndustrial_R3@12 + 149 _EndReadPulseModeThreshold_R3@12 + 14A _EndReadPulsedModeOverrangeThreshold_R3@12 + 14B _EndReadQualityData@12 + 14C _EndReadQuickAccessDisplays_R3@20 + 14D _EndReadRTC@12 + 14E _EndReadRadioFirmwareVersion_R3@12 + 14F _EndReadRateOffPercentage@20 + 150 _EndReadRates@24 + 151 _EndReadResponderTriggerUtc_R3@12 + 152 _EndReadReturnForReadTime@12 + 153 _EndReadRunTime_R3@12 + 154 _EndReadScratchpad@24 + 155 _EndReadScratchpadSize@12 + 156 _EndReadSelfTestInterval@12 + 157 _EndReadSensitivities@20 + 158 _EndReadSensitivities_R3@20 + 159 _EndReadSnapshotAlarmThresholds_R3@12 + 15A _EndReadSnapshotCounters_R3@12 + 15B _EndReadSnapshotMeasurements_R3@12 + 15C _EndReadSnapshotSummary_R3@12 + 15D _EndReadStatus@12 + 15E _EndReadStayTime_R3@12 + 15F _EndReadSwitchOnFromButton_R3@12 + 160 _EndReadTaskDatabaseId_R3@12 + 161 _EndReadTaskId_R3@12 + 162 _EndReadTelemetryAdvConfig_R3@12 + 163 _EndReadTelemetryAdvContent_R3@16 + 164 _EndReadTelemetryCxnConfig_R3@12 + 165 _EndReadTelemetryEnable_R3@16 + 166 _EndReadTelemetryMode_R2@12 + 167 _EndReadTelemetryReportInterval_R3@12 + 168 _EndReadTelemetryTxPower_R3@16 + 169 _EndReadTotalDoses@24 + 16A _EndReadTriggeredDoses_R3@24 + 16B _EndReadVoltages@20 + 16C _EndReadWearerDatabaseId_R3@12 + 16D _EndReadWearerId@12 + 16E _EndReadZoneAccessPermitted@12 + 16F _EndReadZoneControlMap@12 + 170 _EndSetBaselineCounters@8 + 171 _EndStartDetectorTest@8 + 172 _EndTriggerBacklight_R3@8 + 173 _EndTriggerResponderMode_R3@8 + 174 _EndValidateEpdOwnerKey_R3@12 + 175 _EndWriteAccessKey@8 + 176 _EndWriteAccessLevel@8 + 177 _EndWriteAccessPermissionsForLevel_R3@8 + 178 _EndWriteAlarmConfigurationLock_R3@8 + 179 _EndWriteAlarmConfiguration_R3@8 + 17A _EndWriteAlarmThresholds@8 + 17B _EndWriteBacklightBrightness_R3@8 + 17C _EndWriteBacklightEnable_R3@8 + 17D _EndWriteBacklightPeriod_R3@8 + 17E _EndWriteBatteryCriticalTiming_R3@8 + 17F _EndWriteBatteryLowThreshold@8 + 180 _EndWriteBatteryTestInterval@8 + 181 _EndWriteBatteryTypeOverride_R3@8 + 182 _EndWriteCalDueDate@8 + 183 _EndWriteCalDueDate_R3@8 + 184 _EndWriteCalReference_R3@8 + 185 _EndWriteCalibrationFacility_R3@8 + 186 _EndWriteCapabilities_R3@8 + 187 _EndWriteChirpEnable_R3@8 + 188 _EndWriteChirpSensitivity@8 + 189 _EndWriteClearDoseOnSwitchOn@8 + 18A _EndWriteDeadTimeFactors_R3@8 + 18B _EndWriteDebugRegister_R3@8 + 18C _EndWriteDetectorTestLimits_R3@8 + 18D _EndWriteDetectorThresholds_R2@8 + 18E _EndWriteDetectorThresholds_R3@8 + 18F _EndWriteDisplayEnablePermissions_R3@8 + 190 _EndWriteDisplayEnables_R3@8 + 191 _EndWriteDisplayOptions@8 + 192 _EndWriteDisplayOptionsLock_R3@8 + 193 _EndWriteDisplayTimeout@8 + 194 _EndWriteDoseProfileDoseIncrement_R3@8 + 195 _EndWriteDoseProfileInterval@8 + 196 _EndWriteDoseProfileMeasurands_R3@8 + 197 _EndWriteDoseSaveInterval_R3@8 + 198 _EndWriteDoseWritableFlag@8 + 199 _EndWriteDoses@8 + 19A _EndWriteEEProm@8 + 19B _EndWriteEpdPartNumber_R3@8 + 19C _EndWriteEpdRevision_R3@8 + 19D _EndWriteEpdSerialNumber@8 + 19E _EndWriteEventLogLevel_R3@8 + 19F _EndWriteFactoryCalDate@8 + 1A0 _EndWriteFemSerialNumber_R3@8 + 1A1 _EndWriteGainableFlag_R3@8 + 1A2 _EndWriteGains_R3@8 + 1A3 _EndWriteGoldenFlag_R3@8 + 1A4 _EndWriteGraphicBitmap_R3@8 + 1A5 _EndWriteLastCalibrationProcess_R3@8 + 1A6 _EndWriteMarkNumber_R3@8 + 1A7 _EndWriteModelName_R3@8 + 1A8 _EndWriteNotCalibratedFlag_R3@8 + 1A9 _EndWriteOffModeBatteryTestInterval_R3@8 + 1AA _EndWriteOffModeDisplay_R3@8 + 1AB _EndWritePcbPartNumber_R3@8 + 1AC _EndWritePcbRevision_R3@8 + 1AD _EndWritePcbSerialNumber_R3@8 + 1AE _EndWritePulseModeEnable_R3@8 + 1AF _EndWritePulseModeIndustrial_R3@8 + 1B0 _EndWritePulseModeThreshold_R3@8 + 1B1 _EndWritePulsedModeOverrangeThreshold_R3@8 + 1B2 _EndWriteQuickAccessDisplays_R3@8 + 1B3 _EndWriteRTC_R3@8 + 1B4 _EndWriteRateOffPercentage@8 + 1B5 _EndWriteReturnForReadTime@8 + 1B6 _EndWriteScratchpad@8 + 1B7 _EndWriteSelfTestInterval@8 + 1B8 _EndWriteSensitivities_R2@8 + 1B9 _EndWriteSensitivities_R3@8 + 1BA _EndWriteStayTime_R3@8 + 1BB _EndWriteSwitchOnFromButton_R3@8 + 1BC _EndWriteTaskDatabaseId_R3@8 + 1BD _EndWriteTaskId_R3@8 + 1BE _EndWriteTelemetryAdvConfig_R3@8 + 1BF _EndWriteTelemetryAdvContent_R3@8 + 1C0 _EndWriteTelemetryCxnConfig_R3@8 + 1C1 _EndWriteTelemetryEnable_R3@8 + 1C2 _EndWriteTelemetryMode_R2@8 + 1C3 _EndWriteTelemetryReportInterval_R3@8 + 1C4 _EndWriteTelemetryTxPower_R3@8 + 1C5 _EndWriteTotalDoses@8 + 1C6 _EndWriteTriggeredDoses_R3@8 + 1C7 _EndWriteWearerDatabaseId_R3@8 + 1C8 _EndWriteWearerId@8 + 1C9 _EndWriteZoneControlMap@8 + 1CA _GetDiscoveredEpds@16 + 1CB _GetDiscoveryTimeout@8 + 1CC _GetDiscoveryTimeslots@8 + 1CD _GetDllLogLevel@8 + 1CE _GetErrorCode@0 + 1CF _GetMultipleDiscoveryMode@8 + 1D0 _GetResponseTimeout@8 + 1D1 _GetRetryCount@8 + 1D2 _OpenReader@8 + 1D3 _SetConnectCallback@8 + 1D4 _SetDisconnectCallback@8 + 1D5 _SetDiscoveryCacheTimeout@8 + 1D6 _SetDiscoveryTimeslots@8 + 1D7 _SetDllLogLevel@8 + 1D8 _SetMultipleDiscoveryMode@8 + 1D9 _SetRemovedCallback@8 + 1DA _SetResponseTimeout@8 + 1DB _SetRetryCount@8 + 1DC _StartDiscovery@8 + 1DD _StopDiscovery@4 + 1 __IMPORT_DESCRIPTOR_reader3 + 2 __NULL_IMPORT_DESCRIPTOR + 4 __imp__AwaitRemoval@20 + 5 __imp__BeginClearAllStatus@8 + 6 __imp__BeginClearDose@8 + 7 __imp__BeginClearDoseProfile_R3@8 + 8 __imp__BeginClearEEPROM_R3@8 + 9 __imp__BeginClearFaultStatus@8 + A __imp__BeginClearGraphic_R3@12 + B __imp__BeginClearLatchedAlarms@8 + C __imp__BeginClearPeakRates@8 + D __imp__BeginClearScratchPad@12 + E __imp__BeginClearTotalDose@8 + F __imp__BeginClearWearerOrTaskId_R3@16 + 10 __imp__BeginDeissueEPD@8 + 11 __imp__BeginEnableCovertMode_R3@12 + 12 __imp__BeginEnableDeepSleep_R3@12 + 13 __imp__BeginEnableManufacturerLockout_R3@12 + 14 __imp__BeginEnableProtectedSession_R3@12 + 15 __imp__BeginEnableResponderMode_R3@12 + 16 __imp__BeginEpdOnOff@12 + 17 __imp__BeginInitiateFirmwareUpdate_R3@8 + 18 __imp__BeginIssueEPD@8 + 19 __imp__BeginMfrLogin_R2@12 + 1A __imp__BeginReadAccessPermissionsForLevel_R3@12 + 1B __imp__BeginReadAlarmConfiguration@16 + 1C __imp__BeginReadAlarmConfigurationLock_R3@8 + 1D __imp__BeginReadAlarmConfiguration_R3@16 + 1E __imp__BeginReadAlarmThresholds@20 + 1F __imp__BeginReadBacklightBrightness_R3@8 + 20 __imp__BeginReadBacklightEnable_R3@8 + 21 __imp__BeginReadBacklightPeriod_R3@8 + 22 __imp__BeginReadBaselineCounts@8 + 23 __imp__BeginReadBatteryCriticalTiming_R3@8 + 24 __imp__BeginReadBatteryLowThreshold@12 + 25 __imp__BeginReadBatteryTestInterval@8 + 26 __imp__BeginReadBatteryTypeFitted_R3@8 + 27 __imp__BeginReadBatteryTypeOverride_R3@8 + 28 __imp__BeginReadCalDueDate@8 + 29 __imp__BeginReadCalDueDate_R3@8 + 2A __imp__BeginReadCalReference_R3@8 + 2B __imp__BeginReadCalibrationData_R2@8 + 2C __imp__BeginReadCalibrationFacility_R3@8 + 2D __imp__BeginReadCapabilities@8 + 2E __imp__BeginReadChirpEnable_R3@8 + 2F __imp__BeginReadChirpSensitivity@8 + 30 __imp__BeginReadCounts@16 + 31 __imp__BeginReadCurrentAccessLevel@8 + 32 __imp__BeginReadDeadTimeFactors_R3@16 + 33 __imp__BeginReadDebugRegister_R3@12 + 34 __imp__BeginReadDetectorTestLimits_R3@16 + 35 __imp__BeginReadDetectorThresholdLimits_R3@16 + 36 __imp__BeginReadDetectorThresholds@16 + 37 __imp__BeginReadDetectorThresholds_R3@16 + 38 __imp__BeginReadDisplayCapability_R3@12 + 39 __imp__BeginReadDisplayEnablePermissions_R3@12 + 3A __imp__BeginReadDisplayEnables_R3@16 + 3B __imp__BeginReadDisplayOptions@8 + 3C __imp__BeginReadDisplayOptionsLock_R3@8 + 3D __imp__BeginReadDisplayTimeout@8 + 3E __imp__BeginReadDoseProfileByIndex_R3@16 + 3F __imp__BeginReadDoseProfileByTime@16 + 40 __imp__BeginReadDoseProfileConfiguration_R3@8 + 41 __imp__BeginReadDoseProfileInterval@8 + 42 __imp__BeginReadDoseSaveInterval_R3@8 + 43 __imp__BeginReadDoses@16 + 44 __imp__BeginReadEEProm@16 + 45 __imp__BeginReadEpdIdentities@8 + 46 __imp__BeginReadEpdPartNumber_R3@8 + 47 __imp__BeginReadEpdRevision_R3@8 + 48 __imp__BeginReadEpdSerialNum@8 + 49 __imp__BeginReadEpdType@8 + 4A __imp__BeginReadEventLogLevel_R3@8 + 4B __imp__BeginReadEventsByIndex@16 + 4C __imp__BeginReadFactoryCalDate@8 + 4D __imp__BeginReadFemSerialNum_R3@8 + 4E __imp__BeginReadFirmwarePartNumber_R3@8 + 4F __imp__BeginReadFirmwareVersion@8 + 50 __imp__BeginReadFlashTestCounts_R3@16 + 51 __imp__BeginReadFpgaVersion_R3@8 + 52 __imp__BeginReadGains@16 + 53 __imp__BeginReadGains_R3@16 + 54 __imp__BeginReadGraphicData_R3@12 + 55 __imp__BeginReadGraphicSize_R3@12 + 56 __imp__BeginReadLastCalibrationProcess_R3@8 + 57 __imp__BeginReadMarkNumber@8 + 58 __imp__BeginReadMeasurandIds_R3@8 + 59 __imp__BeginReadModelName_R3@8 + 5A __imp__BeginReadOffModeBatteryTestInterval_R3@8 + 5B __imp__BeginReadOffModeDisplay_R3@8 + 5C __imp__BeginReadPcbPartNumber_R3@8 + 5D __imp__BeginReadPcbRevision_R3@8 + 5E __imp__BeginReadPcbSerialNum_R3@8 + 5F __imp__BeginReadPeakRates@16 + 60 __imp__BeginReadPulseModeEnable_R3@8 + 61 __imp__BeginReadPulseModeIndustrial_R3@8 + 62 __imp__BeginReadPulseModeThreshold_R3@8 + 63 __imp__BeginReadPulsedModeOverrangeThreshold_R3@8 + 64 __imp__BeginReadQualityData@8 + 65 __imp__BeginReadQuickAccessDisplays_R3@16 + 66 __imp__BeginReadRTC@8 + 67 __imp__BeginReadRadioFirmwareVersion_R3@8 + 68 __imp__BeginReadRateOffPercentage@16 + 69 __imp__BeginReadRates@16 + 6A __imp__BeginReadResponderTriggerUtc_R3@8 + 6B __imp__BeginReadReturnForReadTime@8 + 6C __imp__BeginReadRunTime_R3@8 + 6D __imp__BeginReadScratchPad@16 + 6E __imp__BeginReadScratchpadSize@8 + 6F __imp__BeginReadSelfTestInterval@8 + 70 __imp__BeginReadSensitivities@16 + 71 __imp__BeginReadSensitivities_R3@16 + 72 __imp__BeginReadSnapshotAlarmThresholds_R3@12 + 73 __imp__BeginReadSnapshotCounters_R3@12 + 74 __imp__BeginReadSnapshotMeasurements_R3@12 + 75 __imp__BeginReadSnapshotSummary_R3@12 + 76 __imp__BeginReadStatus@8 + 77 __imp__BeginReadStayTime_R3@8 + 78 __imp__BeginReadSwitchOnFromButton_R3@8 + 79 __imp__BeginReadTaskDatabaseId_R3@8 + 7A __imp__BeginReadTaskId_R3@12 + 7B __imp__BeginReadTelemetryAdvConfig_R3@12 + 7C __imp__BeginReadTelemetryAdvContent_R3@12 + 7D __imp__BeginReadTelemetryCxnConfig_R3@8 + 7E __imp__BeginReadTelemetryEnable_R3@12 + 7F __imp__BeginReadTelemetryMode_R2@8 + 80 __imp__BeginReadTelemetryReportInterval_R3@8 + 81 __imp__BeginReadTelemetryTxPower_R3@12 + 82 __imp__BeginReadTotalDoses@16 + 83 __imp__BeginReadTriggeredDoses_R3@16 + 84 __imp__BeginReadVoltages@8 + 85 __imp__BeginReadWearerDatabaseId_R3@8 + 86 __imp__BeginReadWearerId@12 + 87 __imp__BeginReadZoneAccessPermitted@12 + 88 __imp__BeginReadZoneControlMap@8 + 89 __imp__BeginSetBaselineCounters@8 + 8A __imp__BeginStartDetectorTest@8 + 8B __imp__BeginTriggerBacklight_R3@8 + 8C __imp__BeginTriggerResponderMode_R3@8 + 8D __imp__BeginValidateEpdOwnerKey_R3@12 + 8E __imp__BeginWriteAccessKey@20 + 8F __imp__BeginWriteAccessLevel@20 + 90 __imp__BeginWriteAccessPermissionsForLevel_R3@20 + 91 __imp__BeginWriteAlarmConfigurationLock_R3@16 + 92 __imp__BeginWriteAlarmConfiguration_R3@16 + 93 __imp__BeginWriteAlarmThresholds@20 + 94 __imp__BeginWriteBacklightBrightness_R3@12 + 95 __imp__BeginWriteBacklightEnable_R3@12 + 96 __imp__BeginWriteBacklightPeriod_R3@12 + 97 __imp__BeginWriteBatteryCriticalTiming_R3@16 + 98 __imp__BeginWriteBatteryLowThreshold@16 + 99 __imp__BeginWriteBatteryTestInterval@12 + 9A __imp__BeginWriteBatteryTypeOverride_R3@12 + 9B __imp__BeginWriteCalDueDate@12 + 9C __imp__BeginWriteCalDueDate_R3@12 + 9D __imp__BeginWriteCalReference_R3@12 + 9E __imp__BeginWriteCalibrationFacility_R3@16 + 9F __imp__BeginWriteCapabilities_R3@12 + A0 __imp__BeginWriteChirpEnable_R3@12 + A1 __imp__BeginWriteChirpSensitivity@12 + A2 __imp__BeginWriteClearDoseOnSwitchOn@12 + A3 __imp__BeginWriteDeadTimeFactors_R3@16 + A4 __imp__BeginWriteDebugRegister_R3@16 + A5 __imp__BeginWriteDetectorTestLimits_R3@16 + A6 __imp__BeginWriteDetectorThresholds_R2@24 + A7 __imp__BeginWriteDetectorThresholds_R3@16 + A8 __imp__BeginWriteDisplayEnablePermissions_R3@20 + A9 __imp__BeginWriteDisplayEnables_R3@16 + AA __imp__BeginWriteDisplayOptions@16 + AB __imp__BeginWriteDisplayOptionsLock_R3@16 + AC __imp__BeginWriteDisplayTimeout@12 + AD __imp__BeginWriteDoseProfileDoseIncrement_R3@12 + AE __imp__BeginWriteDoseProfileInterval@12 + AF __imp__BeginWriteDoseProfileMeasurands_R3@16 + B0 __imp__BeginWriteDoseSaveInterval_R3@12 + B1 __imp__BeginWriteDoseWritableFlag@12 + B2 __imp__BeginWriteDoses@16 + B3 __imp__BeginWriteEEProm@20 + B4 __imp__BeginWriteEpdPartNumber_R3@12 + B5 __imp__BeginWriteEpdRevision_R3@12 + B6 __imp__BeginWriteEpdSerialNumber@12 + B7 __imp__BeginWriteEventLogLevel_R3@12 + B8 __imp__BeginWriteFactoryCalDate@12 + B9 __imp__BeginWriteFemSerialNumber_R3@12 + BA __imp__BeginWriteGainableFlag_R3@12 + BB __imp__BeginWriteGains_R3@16 + BC __imp__BeginWriteGoldenFlag_R3@12 + BD __imp__BeginWriteGraphicBitmap_R3@352 + BE __imp__BeginWriteLastCalibrationProcess_R3@20 + BF __imp__BeginWriteMarkNumber_R3@12 + C0 __imp__BeginWriteModelName_R3@40 + C1 __imp__BeginWriteNotCalibratedFlag_R3@12 + C2 __imp__BeginWriteOffModeBatteryTestInterval_R3@12 + C3 __imp__BeginWriteOffModeDisplay_R3@16 + C4 __imp__BeginWritePcbPartNumber_R3@12 + C5 __imp__BeginWritePcbRevision_R3@12 + C6 __imp__BeginWritePcbSerialNumber_R3@12 + C7 __imp__BeginWritePulseModeEnable_R3@12 + C8 __imp__BeginWritePulseModeIndustrial_R3@12 + C9 __imp__BeginWritePulseModeThreshold_R3@12 + CA __imp__BeginWritePulsedModeOverrangeThreshold_R3@12 + CB __imp__BeginWriteQuickAccessDisplays_R3@16 + CC __imp__BeginWriteRTC_R3@12 + CD __imp__BeginWriteRateOffPercentage@16 + CE __imp__BeginWriteReturnForReadTime@12 + CF __imp__BeginWriteScratchPad@20 + D0 __imp__BeginWriteSelfTestInterval@12 + D1 __imp__BeginWriteSensitivities_R2@32 + D2 __imp__BeginWriteSensitivities_R3@16 + D3 __imp__BeginWriteStayTime_R3@12 + D4 __imp__BeginWriteSwitchOnFromButton_R3@12 + D5 __imp__BeginWriteTaskDatabaseId_R3@24 + D6 __imp__BeginWriteTaskId_R3@76 + D7 __imp__BeginWriteTelemetryAdvConfig_R3@12 + D8 __imp__BeginWriteTelemetryAdvContent_R3@16 + D9 __imp__BeginWriteTelemetryCxnConfig_R3@12 + DA __imp__BeginWriteTelemetryEnable_R3@16 + DB __imp__BeginWriteTelemetryMode_R2@12 + DC __imp__BeginWriteTelemetryReportInterval_R3@12 + DD __imp__BeginWriteTelemetryTxPower_R3@16 + DE __imp__BeginWriteTotalDoses@16 + DF __imp__BeginWriteTriggeredDoses_R3@16 + E0 __imp__BeginWriteWearerDatabaseId_R3@24 + E1 __imp__BeginWriteWearerId@76 + E2 __imp__BeginWriteZoneControlMap@16 + E3 __imp__CleanUpReadDoseProfile@4 + E4 __imp__CleanUpReadEventLog@4 + E5 __imp__CloseReader@4 + E6 __imp__Commit3@4 + E7 __imp__Connect3@20 + E8 __imp__CreateReaderInterface@0 + E9 __imp__DestroyReaderInterface@4 + EA __imp__Disconnect@4 + EB __imp__DisconnectAndNotify@12 + EC __imp__EndClearAllStatus@8 + ED __imp__EndClearDose@8 + EE __imp__EndClearDoseProfile_R3@8 + EF __imp__EndClearEEPROM_R3@8 + F0 __imp__EndClearFaultStatus@8 + F1 __imp__EndClearGraphic_R3@8 + F2 __imp__EndClearLatchedAlarms@8 + F3 __imp__EndClearPeakRates@8 + F4 __imp__EndClearScratchpad@8 + F5 __imp__EndClearTotalDose@8 + F6 __imp__EndClearWearerOrTaskId_R3@8 + F7 __imp__EndDeissueEPD@8 + F8 __imp__EndEnableCovertMode_R3@8 + F9 __imp__EndEnableDeepSleep_R3@8 + FA __imp__EndEnableManufacturerLockout_R3@8 + FB __imp__EndEnableProtectedSession_R3@8 + FC __imp__EndEnableResponderMode_R3@8 + FD __imp__EndEpdOnOff@8 + FE __imp__EndInitiateFirmwareUpdate_R3@8 + FF __imp__EndIssueEPD@8 + 100 __imp__EndMfrLogin_R2@8 + 101 __imp__EndReadAccessPermissionsForLevel_R3@20 + 102 __imp__EndReadAlarmConfiguration@20 + 103 __imp__EndReadAlarmConfigurationLock_R3@20 + 104 __imp__EndReadAlarmConfiguration_R3@20 + 105 __imp__EndReadAlarmThresholds@12 + 106 __imp__EndReadBacklightBrightness_R3@12 + 107 __imp__EndReadBacklightEnable_R3@12 + 108 __imp__EndReadBacklightPeriod_R3@12 + 109 __imp__EndReadBaselineCounts@24 + 10A __imp__EndReadBatteryCriticalTiming_R3@16 + 10B __imp__EndReadBatteryLowThreshold@16 + 10C __imp__EndReadBatteryTestInterval@12 + 10D __imp__EndReadBatteryTypeFitted_R3@12 + 10E __imp__EndReadBatteryTypeOverride_R3@12 + 10F __imp__EndReadCalDueDate@12 + 110 __imp__EndReadCalDueDate_R3@12 + 111 __imp__EndReadCalReference_R3@12 + 112 __imp__EndReadCalibrationData_R2@48 + 113 __imp__EndReadCalibrationFacility_R3@12 + 114 __imp__EndReadCapabilities@12 + 115 __imp__EndReadChirpEnable_R3@12 + 116 __imp__EndReadChirpSensitivity@12 + 117 __imp__EndReadCounts@28 + 118 __imp__EndReadCurrentAccessLevel@12 + 119 __imp__EndReadDeadTimeFactors_R3@20 + 11A __imp__EndReadDebugRegister_R3@16 + 11B __imp__EndReadDetectorTestLimits_R3@20 + 11C __imp__EndReadDetectorThresholdLimits_R3@20 + 11D __imp__EndReadDetectorThresholds@20 + 11E __imp__EndReadDetectorThresholds_R3@20 + 11F __imp__EndReadDisplayCapability_R3@24 + 120 __imp__EndReadDisplayEnablePermissions_R3@24 + 121 __imp__EndReadDisplayEnables_R3@20 + 122 __imp__EndReadDisplayOptions@12 + 123 __imp__EndReadDisplayOptionsLock_R3@12 + 124 __imp__EndReadDisplayTimeout@12 + 125 __imp__EndReadDoseProfileByIndex_R3@24 + 126 __imp__EndReadDoseProfileByTime@16 + 127 __imp__EndReadDoseProfileConfiguration_R3@12 + 128 __imp__EndReadDoseProfileInterval@12 + 129 __imp__EndReadDoseSaveInterval_R3@12 + 12A __imp__EndReadDoses@24 + 12B __imp__EndReadEEProm@24 + 12C __imp__EndReadEpdIdentities@36 + 12D __imp__EndReadEpdPartNumber_R3@12 + 12E __imp__EndReadEpdRevision_R3@12 + 12F __imp__EndReadEpdSerialNum@12 + 130 __imp__EndReadEpdType@12 + 131 __imp__EndReadEventLogLevel_R3@12 + 132 __imp__EndReadEventsByIndex@16 + 133 __imp__EndReadFactoryCalDate@12 + 134 __imp__EndReadFemSerialNum_R3@12 + 135 __imp__EndReadFirmwarePartNumber_R3@12 + 136 __imp__EndReadFirmwareVersion@12 + 137 __imp__EndReadFlashTestCounts_R3@24 + 138 __imp__EndReadFpgaVersion_R3@16 + 139 __imp__EndReadGains@20 + 13A __imp__EndReadGains_R3@20 + 13B __imp__EndReadGraphicData_R3@12 + 13C __imp__EndReadGraphicSize_R3@12 + 13D __imp__EndReadLastCalibrationProcess_R3@12 + 13E __imp__EndReadMarkNumber@12 + 13F __imp__EndReadMeasurandIds_R3@20 + 140 __imp__EndReadModelName_R3@12 + 141 __imp__EndReadOffModeBatteryTestInterval_R3@12 + 142 __imp__EndReadOffModeDisplay_R3@16 + 143 __imp__EndReadPcbPartNumber_R3@12 + 144 __imp__EndReadPcbRevision_R3@12 + 145 __imp__EndReadPcbSerialNum_R3@12 + 146 __imp__EndReadPeakRates@20 + 147 __imp__EndReadPulseModeEnable_R3@12 + 148 __imp__EndReadPulseModeIndustrial_R3@12 + 149 __imp__EndReadPulseModeThreshold_R3@12 + 14A __imp__EndReadPulsedModeOverrangeThreshold_R3@12 + 14B __imp__EndReadQualityData@12 + 14C __imp__EndReadQuickAccessDisplays_R3@20 + 14D __imp__EndReadRTC@12 + 14E __imp__EndReadRadioFirmwareVersion_R3@12 + 14F __imp__EndReadRateOffPercentage@20 + 150 __imp__EndReadRates@24 + 151 __imp__EndReadResponderTriggerUtc_R3@12 + 152 __imp__EndReadReturnForReadTime@12 + 153 __imp__EndReadRunTime_R3@12 + 154 __imp__EndReadScratchpad@24 + 155 __imp__EndReadScratchpadSize@12 + 156 __imp__EndReadSelfTestInterval@12 + 157 __imp__EndReadSensitivities@20 + 158 __imp__EndReadSensitivities_R3@20 + 159 __imp__EndReadSnapshotAlarmThresholds_R3@12 + 15A __imp__EndReadSnapshotCounters_R3@12 + 15B __imp__EndReadSnapshotMeasurements_R3@12 + 15C __imp__EndReadSnapshotSummary_R3@12 + 15D __imp__EndReadStatus@12 + 15E __imp__EndReadStayTime_R3@12 + 15F __imp__EndReadSwitchOnFromButton_R3@12 + 160 __imp__EndReadTaskDatabaseId_R3@12 + 161 __imp__EndReadTaskId_R3@12 + 162 __imp__EndReadTelemetryAdvConfig_R3@12 + 163 __imp__EndReadTelemetryAdvContent_R3@16 + 164 __imp__EndReadTelemetryCxnConfig_R3@12 + 165 __imp__EndReadTelemetryEnable_R3@16 + 166 __imp__EndReadTelemetryMode_R2@12 + 167 __imp__EndReadTelemetryReportInterval_R3@12 + 168 __imp__EndReadTelemetryTxPower_R3@16 + 169 __imp__EndReadTotalDoses@24 + 16A __imp__EndReadTriggeredDoses_R3@24 + 16B __imp__EndReadVoltages@20 + 16C __imp__EndReadWearerDatabaseId_R3@12 + 16D __imp__EndReadWearerId@12 + 16E __imp__EndReadZoneAccessPermitted@12 + 16F __imp__EndReadZoneControlMap@12 + 170 __imp__EndSetBaselineCounters@8 + 171 __imp__EndStartDetectorTest@8 + 172 __imp__EndTriggerBacklight_R3@8 + 173 __imp__EndTriggerResponderMode_R3@8 + 174 __imp__EndValidateEpdOwnerKey_R3@12 + 175 __imp__EndWriteAccessKey@8 + 176 __imp__EndWriteAccessLevel@8 + 177 __imp__EndWriteAccessPermissionsForLevel_R3@8 + 178 __imp__EndWriteAlarmConfigurationLock_R3@8 + 179 __imp__EndWriteAlarmConfiguration_R3@8 + 17A __imp__EndWriteAlarmThresholds@8 + 17B __imp__EndWriteBacklightBrightness_R3@8 + 17C __imp__EndWriteBacklightEnable_R3@8 + 17D __imp__EndWriteBacklightPeriod_R3@8 + 17E __imp__EndWriteBatteryCriticalTiming_R3@8 + 17F __imp__EndWriteBatteryLowThreshold@8 + 180 __imp__EndWriteBatteryTestInterval@8 + 181 __imp__EndWriteBatteryTypeOverride_R3@8 + 182 __imp__EndWriteCalDueDate@8 + 183 __imp__EndWriteCalDueDate_R3@8 + 184 __imp__EndWriteCalReference_R3@8 + 185 __imp__EndWriteCalibrationFacility_R3@8 + 186 __imp__EndWriteCapabilities_R3@8 + 187 __imp__EndWriteChirpEnable_R3@8 + 188 __imp__EndWriteChirpSensitivity@8 + 189 __imp__EndWriteClearDoseOnSwitchOn@8 + 18A __imp__EndWriteDeadTimeFactors_R3@8 + 18B __imp__EndWriteDebugRegister_R3@8 + 18C __imp__EndWriteDetectorTestLimits_R3@8 + 18D __imp__EndWriteDetectorThresholds_R2@8 + 18E __imp__EndWriteDetectorThresholds_R3@8 + 18F __imp__EndWriteDisplayEnablePermissions_R3@8 + 190 __imp__EndWriteDisplayEnables_R3@8 + 191 __imp__EndWriteDisplayOptions@8 + 192 __imp__EndWriteDisplayOptionsLock_R3@8 + 193 __imp__EndWriteDisplayTimeout@8 + 194 __imp__EndWriteDoseProfileDoseIncrement_R3@8 + 195 __imp__EndWriteDoseProfileInterval@8 + 196 __imp__EndWriteDoseProfileMeasurands_R3@8 + 197 __imp__EndWriteDoseSaveInterval_R3@8 + 198 __imp__EndWriteDoseWritableFlag@8 + 199 __imp__EndWriteDoses@8 + 19A __imp__EndWriteEEProm@8 + 19B __imp__EndWriteEpdPartNumber_R3@8 + 19C __imp__EndWriteEpdRevision_R3@8 + 19D __imp__EndWriteEpdSerialNumber@8 + 19E __imp__EndWriteEventLogLevel_R3@8 + 19F __imp__EndWriteFactoryCalDate@8 + 1A0 __imp__EndWriteFemSerialNumber_R3@8 + 1A1 __imp__EndWriteGainableFlag_R3@8 + 1A2 __imp__EndWriteGains_R3@8 + 1A3 __imp__EndWriteGoldenFlag_R3@8 + 1A4 __imp__EndWriteGraphicBitmap_R3@8 + 1A5 __imp__EndWriteLastCalibrationProcess_R3@8 + 1A6 __imp__EndWriteMarkNumber_R3@8 + 1A7 __imp__EndWriteModelName_R3@8 + 1A8 __imp__EndWriteNotCalibratedFlag_R3@8 + 1A9 __imp__EndWriteOffModeBatteryTestInterval_R3@8 + 1AA __imp__EndWriteOffModeDisplay_R3@8 + 1AB __imp__EndWritePcbPartNumber_R3@8 + 1AC __imp__EndWritePcbRevision_R3@8 + 1AD __imp__EndWritePcbSerialNumber_R3@8 + 1AE __imp__EndWritePulseModeEnable_R3@8 + 1AF __imp__EndWritePulseModeIndustrial_R3@8 + 1B0 __imp__EndWritePulseModeThreshold_R3@8 + 1B1 __imp__EndWritePulsedModeOverrangeThreshold_R3@8 + 1B2 __imp__EndWriteQuickAccessDisplays_R3@8 + 1B3 __imp__EndWriteRTC_R3@8 + 1B4 __imp__EndWriteRateOffPercentage@8 + 1B5 __imp__EndWriteReturnForReadTime@8 + 1B6 __imp__EndWriteScratchpad@8 + 1B7 __imp__EndWriteSelfTestInterval@8 + 1B8 __imp__EndWriteSensitivities_R2@8 + 1B9 __imp__EndWriteSensitivities_R3@8 + 1BA __imp__EndWriteStayTime_R3@8 + 1BB __imp__EndWriteSwitchOnFromButton_R3@8 + 1BC __imp__EndWriteTaskDatabaseId_R3@8 + 1BD __imp__EndWriteTaskId_R3@8 + 1BE __imp__EndWriteTelemetryAdvConfig_R3@8 + 1BF __imp__EndWriteTelemetryAdvContent_R3@8 + 1C0 __imp__EndWriteTelemetryCxnConfig_R3@8 + 1C1 __imp__EndWriteTelemetryEnable_R3@8 + 1C2 __imp__EndWriteTelemetryMode_R2@8 + 1C3 __imp__EndWriteTelemetryReportInterval_R3@8 + 1C4 __imp__EndWriteTelemetryTxPower_R3@8 + 1C5 __imp__EndWriteTotalDoses@8 + 1C6 __imp__EndWriteTriggeredDoses_R3@8 + 1C7 __imp__EndWriteWearerDatabaseId_R3@8 + 1C8 __imp__EndWriteWearerId@8 + 1C9 __imp__EndWriteZoneControlMap@8 + 1CA __imp__GetDiscoveredEpds@16 + 1CB __imp__GetDiscoveryTimeout@8 + 1CC __imp__GetDiscoveryTimeslots@8 + 1CD __imp__GetDllLogLevel@8 + 1CE __imp__GetErrorCode@0 + 1CF __imp__GetMultipleDiscoveryMode@8 + 1D0 __imp__GetResponseTimeout@8 + 1D1 __imp__GetRetryCount@8 + 1D2 __imp__OpenReader@8 + 1D3 __imp__SetConnectCallback@8 + 1D4 __imp__SetDisconnectCallback@8 + 1D5 __imp__SetDiscoveryCacheTimeout@8 + 1D6 __imp__SetDiscoveryTimeslots@8 + 1D7 __imp__SetDllLogLevel@8 + 1D8 __imp__SetMultipleDiscoveryMode@8 + 1D9 __imp__SetRemovedCallback@8 + 1DA __imp__SetResponseTimeout@8 + 1DB __imp__SetRetryCount@8 + 1DC __imp__StartDiscovery@8 + 1DD __imp__StopDiscovery@4 + 3 reader3_NULL_THUNK_DATA + +Archive member name at 10AEA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 1ED size +correct header end + +FILE HEADER VALUES + 14C machine (x86) + 3 number of sections + 60B0A2B9 time date stamp Fri May 28 09:58:49 2021 + 10B file pointer to symbol table + 8 number of symbols + 0 size of optional header + 100 characteristics + 32 bit word machine + +SECTION HEADER #1 +.debug$S name + 0 physical address + 0 virtual address + 41 size of raw data + 8C file pointer to raw data (0000008C to 000000CC) + 0 file pointer to relocation table + 0 file pointer to line numbers + 0 number of relocations + 0 number of line numbers +42100040 flags + Initialized Data + Discardable + 1 byte align + Read Only + +RAW DATA #1 + 00000000: 02 00 00 00 12 00 09 00 00 00 00 00 0B 72 65 61 .............rea + 00000010: 64 65 72 33 2E 64 6C 6C 27 00 13 10 07 00 00 00 der3.dll'....... + 00000020: 03 00 00 00 00 00 00 00 0E 00 1C 00 DB 74 12 4D ............Ût.M + 00000030: 69 63 72 6F 73 6F 66 74 20 28 52 29 20 4C 49 4E icrosoft (R) LIN + 00000040: 4B K + +SECTION HEADER #2 +.idata$2 name + 0 physical address + 0 virtual address + 14 size of raw data + CD file pointer to raw data (000000CD to 000000E0) + E1 file pointer to relocation table + 0 file pointer to line numbers + 3 number of relocations + 0 number of line numbers +C0300040 flags + Initialized Data + 4 byte align + Read Write + +RAW DATA #2 + 00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 00000010: 00 00 00 00 .... + +RELOCATIONS #2 + Symbol Symbol + Offset Type Applied To Index Name + -------- ---------------- ----------------- -------- ------ + 0000000C DIR32NB 00000000 3 .idata$6 + 00000000 DIR32NB 00000000 4 .idata$4 + 00000010 DIR32NB 00000000 5 .idata$5 + +SECTION HEADER #3 +.idata$6 name + 0 physical address + 0 virtual address + C size of raw data + FF file pointer to raw data (000000FF to 0000010A) + E1 file pointer to relocation table + 0 file pointer to line numbers + 0 number of relocations + 0 number of line numbers +C0200040 flags + Initialized Data + 2 byte align + Read Write + +RAW DATA #3 + 00000000: 72 65 61 64 65 72 33 2E 64 6C 6C 00 reader3.dll. + +COFF SYMBOL TABLE +000 010174DB ABS notype Static | @comp.id +001 00000000 SECT2 notype External | __IMPORT_DESCRIPTOR_reader3 +002 C0000040 SECT2 notype Section | .idata$2 +003 00000000 SECT3 notype Static | .idata$6 +004 C0000040 UNDEF notype Section | .idata$4 +005 C0000040 UNDEF notype Section | .idata$5 +006 00000000 UNDEF notype External | __NULL_IMPORT_DESCRIPTOR +007 00000000 UNDEF notype External | reader3_NULL_THUNK_DATA + +String Table Size = 0x52 bytes + +Archive member name at 10D14: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + FA size +correct header end + +FILE HEADER VALUES + 14C machine (x86) + 2 number of sections + 60B0A2B9 time date stamp Fri May 28 09:58:49 2021 + B9 file pointer to symbol table + 2 number of symbols + 0 size of optional header + 100 characteristics + 32 bit word machine + +SECTION HEADER #1 +.debug$S name + 0 physical address + 0 virtual address + 41 size of raw data + 64 file pointer to raw data (00000064 to 000000A4) + 0 file pointer to relocation table + 0 file pointer to line numbers + 0 number of relocations + 0 number of line numbers +42100040 flags + Initialized Data + Discardable + 1 byte align + Read Only + +RAW DATA #1 + 00000000: 02 00 00 00 12 00 09 00 00 00 00 00 0B 72 65 61 .............rea + 00000010: 64 65 72 33 2E 64 6C 6C 27 00 13 10 07 00 00 00 der3.dll'....... + 00000020: 03 00 00 00 00 00 00 00 0E 00 1C 00 DB 74 12 4D ............Ût.M + 00000030: 69 63 72 6F 73 6F 66 74 20 28 52 29 20 4C 49 4E icrosoft (R) LIN + 00000040: 4B K + +SECTION HEADER #2 +.idata$3 name + 0 physical address + 0 virtual address + 14 size of raw data + A5 file pointer to raw data (000000A5 to 000000B8) + 0 file pointer to relocation table + 0 file pointer to line numbers + 0 number of relocations + 0 number of line numbers +C0300040 flags + Initialized Data + 4 byte align + Read Write + +RAW DATA #2 + 00000000: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ + 00000010: 00 00 00 00 .... + +COFF SYMBOL TABLE +000 010174DB ABS notype Static | @comp.id +001 00000000 SECT2 notype External | __NULL_IMPORT_DESCRIPTOR + +String Table Size = 0x1D bytes + +Archive member name at 10E4A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 116 size +correct header end + +FILE HEADER VALUES + 14C machine (x86) + 3 number of sections + 60B0A2B9 time date stamp Fri May 28 09:58:49 2021 + D5 file pointer to symbol table + 2 number of symbols + 0 size of optional header + 100 characteristics + 32 bit word machine + +SECTION HEADER #1 +.debug$S name + 0 physical address + 0 virtual address + 41 size of raw data + 8C file pointer to raw data (0000008C to 000000CC) + 0 file pointer to relocation table + 0 file pointer to line numbers + 0 number of relocations + 0 number of line numbers +42100040 flags + Initialized Data + Discardable + 1 byte align + Read Only + +RAW DATA #1 + 00000000: 02 00 00 00 12 00 09 00 00 00 00 00 0B 72 65 61 .............rea + 00000010: 64 65 72 33 2E 64 6C 6C 27 00 13 10 07 00 00 00 der3.dll'....... + 00000020: 03 00 00 00 00 00 00 00 0E 00 1C 00 DB 74 12 4D ............Ût.M + 00000030: 69 63 72 6F 73 6F 66 74 20 28 52 29 20 4C 49 4E icrosoft (R) LIN + 00000040: 4B K + +SECTION HEADER #2 +.idata$5 name + 0 physical address + 0 virtual address + 4 size of raw data + CD file pointer to raw data (000000CD to 000000D0) + 0 file pointer to relocation table + 0 file pointer to line numbers + 0 number of relocations + 0 number of line numbers +C0300040 flags + Initialized Data + 4 byte align + Read Write + +RAW DATA #2 + 00000000: 00 00 00 00 .... + +SECTION HEADER #3 +.idata$4 name + 0 physical address + 0 virtual address + 4 size of raw data + D1 file pointer to raw data (000000D1 to 000000D4) + 0 file pointer to relocation table + 0 file pointer to line numbers + 0 number of relocations + 0 number of line numbers +C0300040 flags + Initialized Data + 4 byte align + Read Write + +RAW DATA #3 + 00000000: 00 00 00 00 .... + +COFF SYMBOL TABLE +000 010174DB ABS notype Static | @comp.id +001 00000000 SECT2 notype External | reader3_NULL_THUNK_DATA + +String Table Size = 0x1D bytes + +Archive member name at 10F9C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _AwaitRemoval@20 + Type : code + Name type : ordinal + Ordinal : 1 + +Archive member name at 1100A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginClearAllStatus@8 + Type : code + Name type : ordinal + Ordinal : 2 + +Archive member name at 1107E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _BeginClearDose@8 + Type : code + Name type : ordinal + Ordinal : 3 + +Archive member name at 110EC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginClearDoseProfile_R3@8 + Type : code + Name type : ordinal + Ordinal : 4 + +Archive member name at 11164: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginClearEEPROM_R3@8 + Type : code + Name type : ordinal + Ordinal : 5 + +Archive member name at 111D8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginClearFaultStatus@8 + Type : code + Name type : ordinal + Ordinal : 6 + +Archive member name at 1124E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginClearGraphic_R3@12 + Type : code + Name type : ordinal + Ordinal : 7 + +Archive member name at 112C4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginClearLatchedAlarms@8 + Type : code + Name type : ordinal + Ordinal : 8 + +Archive member name at 1133C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginClearPeakRates@8 + Type : code + Name type : ordinal + Ordinal : 9 + +Archive member name at 113B0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginClearScratchPad@12 + Type : code + Name type : ordinal + Ordinal : 10 + +Archive member name at 11426: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginClearTotalDose@8 + Type : code + Name type : ordinal + Ordinal : 11 + +Archive member name at 1149A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginClearWearerOrTaskId_R3@16 + Type : code + Name type : ordinal + Ordinal : 12 + +Archive member name at 11516: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 33 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001F + DLL name : reader3.dll + Symbol name : _BeginDeissueEPD@8 + Type : code + Name type : ordinal + Ordinal : 13 + +Archive member name at 11586: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginEnableCovertMode_R3@12 + Type : code + Name type : ordinal + Ordinal : 14 + +Archive member name at 11600: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginEnableDeepSleep_R3@12 + Type : code + Name type : ordinal + Ordinal : 15 + +Archive member name at 11678: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 46 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000032 + DLL name : reader3.dll + Symbol name : _BeginEnableManufacturerLockout_R3@12 + Type : code + Name type : ordinal + Ordinal : 16 + +Archive member name at 116FA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginEnableProtectedSession_R3@12 + Type : code + Name type : ordinal + Ordinal : 17 + +Archive member name at 1177A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginEnableResponderMode_R3@12 + Type : code + Name type : ordinal + Ordinal : 18 + +Archive member name at 117F6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _BeginEpdOnOff@12 + Type : code + Name type : ordinal + Ordinal : 19 + +Archive member name at 11864: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginInitiateFirmwareUpdate_R3@8 + Type : code + Name type : ordinal + Ordinal : 20 + +Archive member name at 118E2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _BeginIssueEPD@8 + Type : code + Name type : ordinal + Ordinal : 21 + +Archive member name at 11950: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _BeginMfrLogin_R2@12 + Type : code + Name type : ordinal + Ordinal : 22 + +Archive member name at 119C2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000036 + DLL name : reader3.dll + Symbol name : _BeginReadAccessPermissionsForLevel_R3@12 + Type : code + Name type : ordinal + Ordinal : 23 + +Archive member name at 11A48: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadAlarmConfiguration@16 + Type : code + Name type : ordinal + Ordinal : 24 + +Archive member name at 11AC4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 46 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000032 + DLL name : reader3.dll + Symbol name : _BeginReadAlarmConfigurationLock_R3@8 + Type : code + Name type : ordinal + Ordinal : 25 + +Archive member name at 11B46: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadAlarmConfiguration_R3@16 + Type : code + Name type : ordinal + Ordinal : 26 + +Archive member name at 11BC6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginReadAlarmThresholds@20 + Type : code + Name type : ordinal + Ordinal : 27 + +Archive member name at 11C40: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadBacklightBrightness_R3@8 + Type : code + Name type : ordinal + Ordinal : 28 + +Archive member name at 11CC0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadBacklightEnable_R3@8 + Type : code + Name type : ordinal + Ordinal : 29 + +Archive member name at 11D3C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadBacklightPeriod_R3@8 + Type : code + Name type : ordinal + Ordinal : 30 + +Archive member name at 11DB8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadBaselineCounts@8 + Type : code + Name type : ordinal + Ordinal : 31 + +Archive member name at 11E30: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _BeginReadBatteryCriticalTiming_R3@8 + Type : code + Name type : ordinal + Ordinal : 32 + +Archive member name at 11EB2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginReadBatteryLowThreshold@12 + Type : code + Name type : ordinal + Ordinal : 33 + +Archive member name at 11F30: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadBatteryTestInterval@8 + Type : code + Name type : ordinal + Ordinal : 34 + +Archive member name at 11FAC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginReadBatteryTypeFitted_R3@8 + Type : code + Name type : ordinal + Ordinal : 35 + +Archive member name at 1202A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadBatteryTypeOverride_R3@8 + Type : code + Name type : ordinal + Ordinal : 36 + +Archive member name at 120AA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginReadCalDueDate@8 + Type : code + Name type : ordinal + Ordinal : 37 + +Archive member name at 1211E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _BeginReadCalDueDate_R3@8 + Type : code + Name type : ordinal + Ordinal : 38 + +Archive member name at 12194: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginReadCalReference_R3@8 + Type : code + Name type : ordinal + Ordinal : 39 + +Archive member name at 1220C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadCalibrationData_R2@8 + Type : code + Name type : ordinal + Ordinal : 40 + +Archive member name at 12288: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadCalibrationFacility_R3@8 + Type : code + Name type : ordinal + Ordinal : 41 + +Archive member name at 12308: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginReadCapabilities@8 + Type : code + Name type : ordinal + Ordinal : 42 + +Archive member name at 1237E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadChirpEnable_R3@8 + Type : code + Name type : ordinal + Ordinal : 43 + +Archive member name at 123F6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginReadChirpSensitivity@8 + Type : code + Name type : ordinal + Ordinal : 44 + +Archive member name at 12470: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _BeginReadCounts@16 + Type : code + Name type : ordinal + Ordinal : 45 + +Archive member name at 124E0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadCurrentAccessLevel@8 + Type : code + Name type : ordinal + Ordinal : 46 + +Archive member name at 1255C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadDeadTimeFactors_R3@16 + Type : code + Name type : ordinal + Ordinal : 47 + +Archive member name at 125D8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginReadDebugRegister_R3@12 + Type : code + Name type : ordinal + Ordinal : 48 + +Archive member name at 12652: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadDetectorTestLimits_R3@16 + Type : code + Name type : ordinal + Ordinal : 49 + +Archive member name at 126D2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 48 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000034 + DLL name : reader3.dll + Symbol name : _BeginReadDetectorThresholdLimits_R3@16 + Type : code + Name type : ordinal + Ordinal : 50 + +Archive member name at 12756: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadDetectorThresholds@16 + Type : code + Name type : ordinal + Ordinal : 51 + +Archive member name at 127D2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadDetectorThresholds_R3@16 + Type : code + Name type : ordinal + Ordinal : 52 + +Archive member name at 12852: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginReadDisplayCapability_R3@12 + Type : code + Name type : ordinal + Ordinal : 53 + +Archive member name at 128D0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 49 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000035 + DLL name : reader3.dll + Symbol name : _BeginReadDisplayEnablePermissions_R3@12 + Type : code + Name type : ordinal + Ordinal : 54 + +Archive member name at 12956: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadDisplayEnables_R3@16 + Type : code + Name type : ordinal + Ordinal : 55 + +Archive member name at 129D2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadDisplayOptions@8 + Type : code + Name type : ordinal + Ordinal : 56 + +Archive member name at 12A4A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginReadDisplayOptionsLock_R3@8 + Type : code + Name type : ordinal + Ordinal : 57 + +Archive member name at 12AC8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadDisplayTimeout@8 + Type : code + Name type : ordinal + Ordinal : 58 + +Archive member name at 12B40: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadDoseProfileByIndex_R3@16 + Type : code + Name type : ordinal + Ordinal : 59 + +Archive member name at 12BC0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadDoseProfileByTime@16 + Type : code + Name type : ordinal + Ordinal : 60 + +Archive member name at 12C3C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 48 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000034 + DLL name : reader3.dll + Symbol name : _BeginReadDoseProfileConfiguration_R3@8 + Type : code + Name type : ordinal + Ordinal : 61 + +Archive member name at 12CC0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadDoseProfileInterval@8 + Type : code + Name type : ordinal + Ordinal : 62 + +Archive member name at 12D3C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadDoseSaveInterval_R3@8 + Type : code + Name type : ordinal + Ordinal : 63 + +Archive member name at 12DB8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 33 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001F + DLL name : reader3.dll + Symbol name : _BeginReadDoses@16 + Type : code + Name type : ordinal + Ordinal : 64 + +Archive member name at 12E28: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _BeginReadEEProm@16 + Type : code + Name type : ordinal + Ordinal : 65 + +Archive member name at 12E98: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _BeginReadEpdIdentities@8 + Type : code + Name type : ordinal + Ordinal : 66 + +Archive member name at 12F0E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginReadEpdPartNumber_R3@8 + Type : code + Name type : ordinal + Ordinal : 67 + +Archive member name at 12F88: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadEpdRevision_R3@8 + Type : code + Name type : ordinal + Ordinal : 68 + +Archive member name at 13000: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginReadEpdSerialNum@8 + Type : code + Name type : ordinal + Ordinal : 69 + +Archive member name at 13076: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _BeginReadEpdType@8 + Type : code + Name type : ordinal + Ordinal : 70 + +Archive member name at 130E6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginReadEventLogLevel_R3@8 + Type : code + Name type : ordinal + Ordinal : 71 + +Archive member name at 13160: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadEventsByIndex@16 + Type : code + Name type : ordinal + Ordinal : 72 + +Archive member name at 131D8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadFactoryCalDate@8 + Type : code + Name type : ordinal + Ordinal : 73 + +Archive member name at 13250: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginReadFemSerialNum_R3@8 + Type : code + Name type : ordinal + Ordinal : 74 + +Archive member name at 132C8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginReadFirmwarePartNumber_R3@8 + Type : code + Name type : ordinal + Ordinal : 75 + +Archive member name at 13346: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginReadFirmwareVersion@8 + Type : code + Name type : ordinal + Ordinal : 76 + +Archive member name at 133BE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadFlashTestCounts_R3@16 + Type : code + Name type : ordinal + Ordinal : 77 + +Archive member name at 1343A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadFpgaVersion_R3@8 + Type : code + Name type : ordinal + Ordinal : 78 + +Archive member name at 134B2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 33 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001F + DLL name : reader3.dll + Symbol name : _BeginReadGains@16 + Type : code + Name type : ordinal + Ordinal : 79 + +Archive member name at 13522: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _BeginReadGains_R3@16 + Type : code + Name type : ordinal + Ordinal : 80 + +Archive member name at 13594: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginReadGraphicData_R3@12 + Type : code + Name type : ordinal + Ordinal : 81 + +Archive member name at 1360C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginReadGraphicSize_R3@12 + Type : code + Name type : ordinal + Ordinal : 82 + +Archive member name at 13684: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 46 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000032 + DLL name : reader3.dll + Symbol name : _BeginReadLastCalibrationProcess_R3@8 + Type : code + Name type : ordinal + Ordinal : 83 + +Archive member name at 13706: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginReadMarkNumber@8 + Type : code + Name type : ordinal + Ordinal : 84 + +Archive member name at 1377A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginReadMeasurandIds_R3@8 + Type : code + Name type : ordinal + Ordinal : 85 + +Archive member name at 137F2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginReadModelName_R3@8 + Type : code + Name type : ordinal + Ordinal : 86 + +Archive member name at 13868: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000036 + DLL name : reader3.dll + Symbol name : _BeginReadOffModeBatteryTestInterval_R3@8 + Type : code + Name type : ordinal + Ordinal : 87 + +Archive member name at 138EE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginReadOffModeDisplay_R3@8 + Type : code + Name type : ordinal + Ordinal : 88 + +Archive member name at 13968: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginReadPcbPartNumber_R3@8 + Type : code + Name type : ordinal + Ordinal : 89 + +Archive member name at 139E2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadPcbRevision_R3@8 + Type : code + Name type : ordinal + Ordinal : 90 + +Archive member name at 13A5A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginReadPcbSerialNum_R3@8 + Type : code + Name type : ordinal + Ordinal : 91 + +Archive member name at 13AD2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginReadPeakRates@16 + Type : code + Name type : ordinal + Ordinal : 92 + +Archive member name at 13B46: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadPulseModeEnable_R3@8 + Type : code + Name type : ordinal + Ordinal : 93 + +Archive member name at 13BC2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadPulseModeIndustrial_R3@8 + Type : code + Name type : ordinal + Ordinal : 94 + +Archive member name at 13C42: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginReadPulseModeThreshold_R3@8 + Type : code + Name type : ordinal + Ordinal : 95 + +Archive member name at 13CC0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000038 + DLL name : reader3.dll + Symbol name : _BeginReadPulsedModeOverrangeThreshold_R3@8 + Type : code + Name type : ordinal + Ordinal : 96 + +Archive member name at 13D48: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _BeginReadQualityData@8 + Type : code + Name type : ordinal + Ordinal : 97 + +Archive member name at 13DBC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginReadQuickAccessDisplays_R3@16 + Type : code + Name type : ordinal + Ordinal : 98 + +Archive member name at 13E3C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 30 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001C + DLL name : reader3.dll + Symbol name : _BeginReadRTC@8 + Type : code + Name type : ordinal + Ordinal : 99 + +Archive member name at 13EA8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginReadRadioFirmwareVersion_R3@8 + Type : code + Name type : ordinal + Ordinal : 100 + +Archive member name at 13F28: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadRateOffPercentage@16 + Type : code + Name type : ordinal + Ordinal : 101 + +Archive member name at 13FA4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 33 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001F + DLL name : reader3.dll + Symbol name : _BeginReadRates@16 + Type : code + Name type : ordinal + Ordinal : 102 + +Archive member name at 14014: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadResponderTriggerUtc_R3@8 + Type : code + Name type : ordinal + Ordinal : 103 + +Archive member name at 14094: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginReadReturnForReadTime@8 + Type : code + Name type : ordinal + Ordinal : 104 + +Archive member name at 1410E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginReadRunTime_R3@8 + Type : code + Name type : ordinal + Ordinal : 105 + +Archive member name at 14182: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _BeginReadScratchPad@16 + Type : code + Name type : ordinal + Ordinal : 106 + +Archive member name at 141F6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadScratchpadSize@8 + Type : code + Name type : ordinal + Ordinal : 107 + +Archive member name at 1426E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginReadSelfTestInterval@8 + Type : code + Name type : ordinal + Ordinal : 108 + +Archive member name at 142E8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadSensitivities@16 + Type : code + Name type : ordinal + Ordinal : 109 + +Archive member name at 14360: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginReadSensitivities_R3@16 + Type : code + Name type : ordinal + Ordinal : 110 + +Archive member name at 143DA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 48 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000034 + DLL name : reader3.dll + Symbol name : _BeginReadSnapshotAlarmThresholds_R3@12 + Type : code + Name type : ordinal + Ordinal : 111 + +Archive member name at 1445E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginReadSnapshotCounters_R3@12 + Type : code + Name type : ordinal + Ordinal : 112 + +Archive member name at 144DC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _BeginReadSnapshotMeasurements_R3@12 + Type : code + Name type : ordinal + Ordinal : 113 + +Archive member name at 1455E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadSnapshotSummary_R3@12 + Type : code + Name type : ordinal + Ordinal : 114 + +Archive member name at 145DA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 33 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001F + DLL name : reader3.dll + Symbol name : _BeginReadStatus@8 + Type : code + Name type : ordinal + Ordinal : 115 + +Archive member name at 1464A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _BeginReadStayTime_R3@8 + Type : code + Name type : ordinal + Ordinal : 116 + +Archive member name at 146BE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginReadSwitchOnFromButton_R3@8 + Type : code + Name type : ordinal + Ordinal : 117 + +Archive member name at 1473C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginReadTaskDatabaseId_R3@8 + Type : code + Name type : ordinal + Ordinal : 118 + +Archive member name at 147B6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginReadTaskId_R3@12 + Type : code + Name type : ordinal + Ordinal : 119 + +Archive member name at 1482A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginReadTelemetryAdvConfig_R3@12 + Type : code + Name type : ordinal + Ordinal : 120 + +Archive member name at 148AA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginReadTelemetryAdvContent_R3@12 + Type : code + Name type : ordinal + Ordinal : 121 + +Archive member name at 1492A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginReadTelemetryCxnConfig_R3@8 + Type : code + Name type : ordinal + Ordinal : 122 + +Archive member name at 149A8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadTelemetryEnable_R3@12 + Type : code + Name type : ordinal + Ordinal : 123 + +Archive member name at 14A24: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginReadTelemetryMode_R2@8 + Type : code + Name type : ordinal + Ordinal : 124 + +Archive member name at 14A9E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 47 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000033 + DLL name : reader3.dll + Symbol name : _BeginReadTelemetryReportInterval_R3@8 + Type : code + Name type : ordinal + Ordinal : 125 + +Archive member name at 14B22: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginReadTelemetryTxPower_R3@12 + Type : code + Name type : ordinal + Ordinal : 126 + +Archive member name at 14BA0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _BeginReadTotalDoses@16 + Type : code + Name type : ordinal + Ordinal : 127 + +Archive member name at 14C14: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginReadTriggeredDoses_R3@16 + Type : code + Name type : ordinal + Ordinal : 128 + +Archive member name at 14C90: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _BeginReadVoltages@8 + Type : code + Name type : ordinal + Ordinal : 129 + +Archive member name at 14D02: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginReadWearerDatabaseId_R3@8 + Type : code + Name type : ordinal + Ordinal : 130 + +Archive member name at 14D7E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _BeginReadWearerId@12 + Type : code + Name type : ordinal + Ordinal : 131 + +Archive member name at 14DF0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginReadZoneAccessPermitted@12 + Type : code + Name type : ordinal + Ordinal : 132 + +Archive member name at 14E6E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginReadZoneControlMap@8 + Type : code + Name type : ordinal + Ordinal : 133 + +Archive member name at 14EE6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginSetBaselineCounters@8 + Type : code + Name type : ordinal + Ordinal : 134 + +Archive member name at 14F5E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _BeginStartDetectorTest@8 + Type : code + Name type : ordinal + Ordinal : 135 + +Archive member name at 14FD4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginTriggerBacklight_R3@8 + Type : code + Name type : ordinal + Ordinal : 136 + +Archive member name at 1504C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginTriggerResponderMode_R3@8 + Type : code + Name type : ordinal + Ordinal : 137 + +Archive member name at 150C8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginValidateEpdOwnerKey_R3@12 + Type : code + Name type : ordinal + Ordinal : 138 + +Archive member name at 15144: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _BeginWriteAccessKey@20 + Type : code + Name type : ordinal + Ordinal : 139 + +Archive member name at 151B8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _BeginWriteAccessLevel@20 + Type : code + Name type : ordinal + Ordinal : 140 + +Archive member name at 1522E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000037 + DLL name : reader3.dll + Symbol name : _BeginWriteAccessPermissionsForLevel_R3@20 + Type : code + Name type : ordinal + Ordinal : 141 + +Archive member name at 152B6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 48 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000034 + DLL name : reader3.dll + Symbol name : _BeginWriteAlarmConfigurationLock_R3@16 + Type : code + Name type : ordinal + Ordinal : 142 + +Archive member name at 1533A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWriteAlarmConfiguration_R3@16 + Type : code + Name type : ordinal + Ordinal : 143 + +Archive member name at 153BA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginWriteAlarmThresholds@20 + Type : code + Name type : ordinal + Ordinal : 144 + +Archive member name at 15434: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _BeginWriteBacklightBrightness_R3@12 + Type : code + Name type : ordinal + Ordinal : 145 + +Archive member name at 154B6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginWriteBacklightEnable_R3@12 + Type : code + Name type : ordinal + Ordinal : 146 + +Archive member name at 15534: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginWriteBacklightPeriod_R3@12 + Type : code + Name type : ordinal + Ordinal : 147 + +Archive member name at 155B2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 47 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000033 + DLL name : reader3.dll + Symbol name : _BeginWriteBatteryCriticalTiming_R3@16 + Type : code + Name type : ordinal + Ordinal : 148 + +Archive member name at 15636: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginWriteBatteryLowThreshold@16 + Type : code + Name type : ordinal + Ordinal : 149 + +Archive member name at 156B4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginWriteBatteryTestInterval@12 + Type : code + Name type : ordinal + Ordinal : 150 + +Archive member name at 15732: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _BeginWriteBatteryTypeOverride_R3@12 + Type : code + Name type : ordinal + Ordinal : 151 + +Archive member name at 157B4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginWriteCalDueDate@12 + Type : code + Name type : ordinal + Ordinal : 152 + +Archive member name at 1582A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginWriteCalDueDate_R3@12 + Type : code + Name type : ordinal + Ordinal : 153 + +Archive member name at 158A2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginWriteCalReference_R3@12 + Type : code + Name type : ordinal + Ordinal : 154 + +Archive member name at 1591C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _BeginWriteCalibrationFacility_R3@16 + Type : code + Name type : ordinal + Ordinal : 155 + +Archive member name at 1599E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginWriteCapabilities_R3@12 + Type : code + Name type : ordinal + Ordinal : 156 + +Archive member name at 15A18: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginWriteChirpEnable_R3@12 + Type : code + Name type : ordinal + Ordinal : 157 + +Archive member name at 15A92: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteChirpSensitivity@12 + Type : code + Name type : ordinal + Ordinal : 158 + +Archive member name at 15B0E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginWriteClearDoseOnSwitchOn@12 + Type : code + Name type : ordinal + Ordinal : 159 + +Archive member name at 15B8C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginWriteDeadTimeFactors_R3@16 + Type : code + Name type : ordinal + Ordinal : 160 + +Archive member name at 15C0A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteDebugRegister_R3@16 + Type : code + Name type : ordinal + Ordinal : 161 + +Archive member name at 15C86: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWriteDetectorTestLimits_R3@16 + Type : code + Name type : ordinal + Ordinal : 162 + +Archive member name at 15D06: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWriteDetectorThresholds_R2@24 + Type : code + Name type : ordinal + Ordinal : 163 + +Archive member name at 15D86: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWriteDetectorThresholds_R3@16 + Type : code + Name type : ordinal + Ordinal : 164 + +Archive member name at 15E06: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000036 + DLL name : reader3.dll + Symbol name : _BeginWriteDisplayEnablePermissions_R3@20 + Type : code + Name type : ordinal + Ordinal : 165 + +Archive member name at 15E8C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginWriteDisplayEnables_R3@16 + Type : code + Name type : ordinal + Ordinal : 166 + +Archive member name at 15F08: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginWriteDisplayOptions@16 + Type : code + Name type : ordinal + Ordinal : 167 + +Archive member name at 15F82: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWriteDisplayOptionsLock_R3@16 + Type : code + Name type : ordinal + Ordinal : 168 + +Archive member name at 16002: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginWriteDisplayTimeout@12 + Type : code + Name type : ordinal + Ordinal : 169 + +Archive member name at 1607C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000036 + DLL name : reader3.dll + Symbol name : _BeginWriteDoseProfileDoseIncrement_R3@12 + Type : code + Name type : ordinal + Ordinal : 170 + +Archive member name at 16102: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginWriteDoseProfileInterval@12 + Type : code + Name type : ordinal + Ordinal : 171 + +Archive member name at 16180: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 47 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000033 + DLL name : reader3.dll + Symbol name : _BeginWriteDoseProfileMeasurands_R3@16 + Type : code + Name type : ordinal + Ordinal : 172 + +Archive member name at 16204: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginWriteDoseSaveInterval_R3@12 + Type : code + Name type : ordinal + Ordinal : 173 + +Archive member name at 16282: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteDoseWritableFlag@12 + Type : code + Name type : ordinal + Ordinal : 174 + +Archive member name at 162FE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _BeginWriteDoses@16 + Type : code + Name type : ordinal + Ordinal : 175 + +Archive member name at 1636E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _BeginWriteEEProm@20 + Type : code + Name type : ordinal + Ordinal : 176 + +Archive member name at 163E0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteEpdPartNumber_R3@12 + Type : code + Name type : ordinal + Ordinal : 177 + +Archive member name at 1645C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginWriteEpdRevision_R3@12 + Type : code + Name type : ordinal + Ordinal : 178 + +Archive member name at 164D6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginWriteEpdSerialNumber@12 + Type : code + Name type : ordinal + Ordinal : 179 + +Archive member name at 16550: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteEventLogLevel_R3@12 + Type : code + Name type : ordinal + Ordinal : 180 + +Archive member name at 165CC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginWriteFactoryCalDate@12 + Type : code + Name type : ordinal + Ordinal : 181 + +Archive member name at 16646: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginWriteFemSerialNumber_R3@12 + Type : code + Name type : ordinal + Ordinal : 182 + +Archive member name at 166C4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _BeginWriteGainableFlag_R3@12 + Type : code + Name type : ordinal + Ordinal : 183 + +Archive member name at 1673E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginWriteGains_R3@16 + Type : code + Name type : ordinal + Ordinal : 184 + +Archive member name at 167B2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginWriteGoldenFlag_R3@12 + Type : code + Name type : ordinal + Ordinal : 185 + +Archive member name at 1682A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginWriteGraphicBitmap_R3@352 + Type : code + Name type : ordinal + Ordinal : 186 + +Archive member name at 168A6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 48 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000034 + DLL name : reader3.dll + Symbol name : _BeginWriteLastCalibrationProcess_R3@20 + Type : code + Name type : ordinal + Ordinal : 187 + +Archive member name at 1692A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _BeginWriteMarkNumber_R3@12 + Type : code + Name type : ordinal + Ordinal : 188 + +Archive member name at 169A2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _BeginWriteModelName_R3@40 + Type : code + Name type : ordinal + Ordinal : 189 + +Archive member name at 16A1A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _BeginWriteNotCalibratedFlag_R3@12 + Type : code + Name type : ordinal + Ordinal : 190 + +Archive member name at 16A9A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000038 + DLL name : reader3.dll + Symbol name : _BeginWriteOffModeBatteryTestInterval_R3@12 + Type : code + Name type : ordinal + Ordinal : 191 + +Archive member name at 16B22: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginWriteOffModeDisplay_R3@16 + Type : code + Name type : ordinal + Ordinal : 192 + +Archive member name at 16B9E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWritePcbPartNumber_R3@12 + Type : code + Name type : ordinal + Ordinal : 193 + +Archive member name at 16C1A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginWritePcbRevision_R3@12 + Type : code + Name type : ordinal + Ordinal : 194 + +Archive member name at 16C94: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginWritePcbSerialNumber_R3@12 + Type : code + Name type : ordinal + Ordinal : 195 + +Archive member name at 16D12: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginWritePulseModeEnable_R3@12 + Type : code + Name type : ordinal + Ordinal : 196 + +Archive member name at 16D90: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _BeginWritePulseModeIndustrial_R3@12 + Type : code + Name type : ordinal + Ordinal : 197 + +Archive member name at 16E12: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWritePulseModeThreshold_R3@12 + Type : code + Name type : ordinal + Ordinal : 198 + +Archive member name at 16E92: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000003A + DLL name : reader3.dll + Symbol name : _BeginWritePulsedModeOverrangeThreshold_R3@12 + Type : code + Name type : ordinal + Ordinal : 199 + +Archive member name at 16F1C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _BeginWriteQuickAccessDisplays_R3@16 + Type : code + Name type : ordinal + Ordinal : 200 + +Archive member name at 16F9E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _BeginWriteRTC_R3@12 + Type : code + Name type : ordinal + Ordinal : 201 + +Archive member name at 17010: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginWriteRateOffPercentage@16 + Type : code + Name type : ordinal + Ordinal : 202 + +Archive member name at 1708C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginWriteReturnForReadTime@12 + Type : code + Name type : ordinal + Ordinal : 203 + +Archive member name at 17108: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginWriteScratchPad@20 + Type : code + Name type : ordinal + Ordinal : 204 + +Archive member name at 1717E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteSelfTestInterval@12 + Type : code + Name type : ordinal + Ordinal : 205 + +Archive member name at 171FA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteSensitivities_R2@32 + Type : code + Name type : ordinal + Ordinal : 206 + +Archive member name at 17276: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteSensitivities_R3@16 + Type : code + Name type : ordinal + Ordinal : 207 + +Archive member name at 172F2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _BeginWriteStayTime_R3@12 + Type : code + Name type : ordinal + Ordinal : 208 + +Archive member name at 17368: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWriteSwitchOnFromButton_R3@12 + Type : code + Name type : ordinal + Ordinal : 209 + +Archive member name at 173E8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginWriteTaskDatabaseId_R3@24 + Type : code + Name type : ordinal + Ordinal : 210 + +Archive member name at 17464: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _BeginWriteTaskId_R3@76 + Type : code + Name type : ordinal + Ordinal : 211 + +Archive member name at 174D8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWriteTelemetryAdvConfig_R3@12 + Type : code + Name type : ordinal + Ordinal : 212 + +Archive member name at 17558: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _BeginWriteTelemetryAdvContent_R3@16 + Type : code + Name type : ordinal + Ordinal : 213 + +Archive member name at 175DA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _BeginWriteTelemetryCxnConfig_R3@12 + Type : code + Name type : ordinal + Ordinal : 214 + +Archive member name at 1765A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _BeginWriteTelemetryEnable_R3@16 + Type : code + Name type : ordinal + Ordinal : 215 + +Archive member name at 176D8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _BeginWriteTelemetryMode_R2@12 + Type : code + Name type : ordinal + Ordinal : 216 + +Archive member name at 17754: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 49 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000035 + DLL name : reader3.dll + Symbol name : _BeginWriteTelemetryReportInterval_R3@12 + Type : code + Name type : ordinal + Ordinal : 217 + +Archive member name at 177DA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginWriteTelemetryTxPower_R3@16 + Type : code + Name type : ordinal + Ordinal : 218 + +Archive member name at 17858: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _BeginWriteTotalDoses@16 + Type : code + Name type : ordinal + Ordinal : 219 + +Archive member name at 178CE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _BeginWriteTriggeredDoses_R3@16 + Type : code + Name type : ordinal + Ordinal : 220 + +Archive member name at 1794A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _BeginWriteWearerDatabaseId_R3@24 + Type : code + Name type : ordinal + Ordinal : 221 + +Archive member name at 179C8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _BeginWriteWearerId@76 + Type : code + Name type : ordinal + Ordinal : 222 + +Archive member name at 17A3C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _BeginWriteZoneControlMap@16 + Type : code + Name type : ordinal + Ordinal : 223 + +Archive member name at 17AB6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _CleanUpReadDoseProfile@4 + Type : code + Name type : ordinal + Ordinal : 224 + +Archive member name at 17B2C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _CleanUpReadEventLog@4 + Type : code + Name type : ordinal + Ordinal : 225 + +Archive member name at 17BA0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 2F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001B + DLL name : reader3.dll + Symbol name : _CloseReader@4 + Type : code + Name type : ordinal + Ordinal : 226 + +Archive member name at 17C0C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 2B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000017 + DLL name : reader3.dll + Symbol name : _Commit3@4 + Type : code + Name type : ordinal + Ordinal : 227 + +Archive member name at 17C74: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 2D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000019 + DLL name : reader3.dll + Symbol name : _Connect3@20 + Type : code + Name type : ordinal + Ordinal : 228 + +Archive member name at 17CDE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _CreateReaderInterface@0 + Type : code + Name type : ordinal + Ordinal : 229 + +Archive member name at 17D54: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _DestroyReaderInterface@4 + Type : code + Name type : ordinal + Ordinal : 230 + +Archive member name at 17DCA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 2E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001A + DLL name : reader3.dll + Symbol name : _Disconnect@4 + Type : code + Name type : ordinal + Ordinal : 231 + +Archive member name at 17E34: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _DisconnectAndNotify@12 + Type : code + Name type : ordinal + Ordinal : 232 + +Archive member name at 17EA8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _EndClearAllStatus@8 + Type : code + Name type : ordinal + Ordinal : 233 + +Archive member name at 17F1A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 30 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001C + DLL name : reader3.dll + Symbol name : _EndClearDose@8 + Type : code + Name type : ordinal + Ordinal : 234 + +Archive member name at 17F86: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndClearDoseProfile_R3@8 + Type : code + Name type : ordinal + Ordinal : 235 + +Archive member name at 17FFC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _EndClearEEPROM_R3@8 + Type : code + Name type : ordinal + Ordinal : 236 + +Archive member name at 1806E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _EndClearFaultStatus@8 + Type : code + Name type : ordinal + Ordinal : 237 + +Archive member name at 180E2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndClearGraphic_R3@8 + Type : code + Name type : ordinal + Ordinal : 238 + +Archive member name at 18154: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndClearLatchedAlarms@8 + Type : code + Name type : ordinal + Ordinal : 239 + +Archive member name at 181CA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _EndClearPeakRates@8 + Type : code + Name type : ordinal + Ordinal : 240 + +Archive member name at 1823C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndClearScratchpad@8 + Type : code + Name type : ordinal + Ordinal : 241 + +Archive member name at 182AE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _EndClearTotalDose@8 + Type : code + Name type : ordinal + Ordinal : 242 + +Archive member name at 18320: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndClearWearerOrTaskId_R3@8 + Type : code + Name type : ordinal + Ordinal : 243 + +Archive member name at 1839A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _EndDeissueEPD@8 + Type : code + Name type : ordinal + Ordinal : 244 + +Archive member name at 18408: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndEnableCovertMode_R3@8 + Type : code + Name type : ordinal + Ordinal : 245 + +Archive member name at 1847E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndEnableDeepSleep_R3@8 + Type : code + Name type : ordinal + Ordinal : 246 + +Archive member name at 184F4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _EndEnableManufacturerLockout_R3@8 + Type : code + Name type : ordinal + Ordinal : 247 + +Archive member name at 18574: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _EndEnableProtectedSession_R3@8 + Type : code + Name type : ordinal + Ordinal : 248 + +Archive member name at 185F0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndEnableResponderMode_R3@8 + Type : code + Name type : ordinal + Ordinal : 249 + +Archive member name at 1866A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 2F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001B + DLL name : reader3.dll + Symbol name : _EndEpdOnOff@8 + Type : code + Name type : ordinal + Ordinal : 250 + +Archive member name at 186D6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _EndInitiateFirmwareUpdate_R3@8 + Type : code + Name type : ordinal + Ordinal : 251 + +Archive member name at 18752: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 2F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001B + DLL name : reader3.dll + Symbol name : _EndIssueEPD@8 + Type : code + Name type : ordinal + Ordinal : 252 + +Archive member name at 187BE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _EndMfrLogin_R2@8 + Type : code + Name type : ordinal + Ordinal : 253 + +Archive member name at 1882C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 48 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000034 + DLL name : reader3.dll + Symbol name : _EndReadAccessPermissionsForLevel_R3@20 + Type : code + Name type : ordinal + Ordinal : 254 + +Archive member name at 188B0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadAlarmConfiguration@20 + Type : code + Name type : ordinal + Ordinal : 255 + +Archive member name at 1892A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _EndReadAlarmConfigurationLock_R3@20 + Type : code + Name type : ordinal + Ordinal : 256 + +Archive member name at 189AC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadAlarmConfiguration_R3@20 + Type : code + Name type : ordinal + Ordinal : 257 + +Archive member name at 18A2A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndReadAlarmThresholds@12 + Type : code + Name type : ordinal + Ordinal : 258 + +Archive member name at 18AA2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndReadBacklightBrightness_R3@12 + Type : code + Name type : ordinal + Ordinal : 259 + +Archive member name at 18B20: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadBacklightEnable_R3@12 + Type : code + Name type : ordinal + Ordinal : 260 + +Archive member name at 18B9A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadBacklightPeriod_R3@12 + Type : code + Name type : ordinal + Ordinal : 261 + +Archive member name at 18C14: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadBaselineCounts@24 + Type : code + Name type : ordinal + Ordinal : 262 + +Archive member name at 18C8A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _EndReadBatteryCriticalTiming_R3@16 + Type : code + Name type : ordinal + Ordinal : 263 + +Archive member name at 18D0A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndReadBatteryLowThreshold@16 + Type : code + Name type : ordinal + Ordinal : 264 + +Archive member name at 18D86: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndReadBatteryTestInterval@12 + Type : code + Name type : ordinal + Ordinal : 265 + +Archive member name at 18E02: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _EndReadBatteryTypeFitted_R3@12 + Type : code + Name type : ordinal + Ordinal : 266 + +Archive member name at 18E7E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndReadBatteryTypeOverride_R3@12 + Type : code + Name type : ordinal + Ordinal : 267 + +Archive member name at 18EFC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndReadCalDueDate@12 + Type : code + Name type : ordinal + Ordinal : 268 + +Archive member name at 18F6E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndReadCalDueDate_R3@12 + Type : code + Name type : ordinal + Ordinal : 269 + +Archive member name at 18FE4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndReadCalReference_R3@12 + Type : code + Name type : ordinal + Ordinal : 270 + +Archive member name at 1905C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadCalibrationData_R2@48 + Type : code + Name type : ordinal + Ordinal : 271 + +Archive member name at 190D6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndReadCalibrationFacility_R3@12 + Type : code + Name type : ordinal + Ordinal : 272 + +Archive member name at 19154: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _EndReadCapabilities@12 + Type : code + Name type : ordinal + Ordinal : 273 + +Archive member name at 191C8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadChirpEnable_R3@12 + Type : code + Name type : ordinal + Ordinal : 274 + +Archive member name at 1923E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndReadChirpSensitivity@12 + Type : code + Name type : ordinal + Ordinal : 275 + +Archive member name at 192B6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _EndReadCounts@28 + Type : code + Name type : ordinal + Ordinal : 276 + +Archive member name at 19324: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadCurrentAccessLevel@12 + Type : code + Name type : ordinal + Ordinal : 277 + +Archive member name at 1939E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadDeadTimeFactors_R3@20 + Type : code + Name type : ordinal + Ordinal : 278 + +Archive member name at 19418: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndReadDebugRegister_R3@16 + Type : code + Name type : ordinal + Ordinal : 279 + +Archive member name at 19490: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadDetectorTestLimits_R3@20 + Type : code + Name type : ordinal + Ordinal : 280 + +Archive member name at 1950E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 46 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000032 + DLL name : reader3.dll + Symbol name : _EndReadDetectorThresholdLimits_R3@20 + Type : code + Name type : ordinal + Ordinal : 281 + +Archive member name at 19590: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadDetectorThresholds@20 + Type : code + Name type : ordinal + Ordinal : 282 + +Archive member name at 1960A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadDetectorThresholds_R3@20 + Type : code + Name type : ordinal + Ordinal : 283 + +Archive member name at 19688: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _EndReadDisplayCapability_R3@24 + Type : code + Name type : ordinal + Ordinal : 284 + +Archive member name at 19704: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 47 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000033 + DLL name : reader3.dll + Symbol name : _EndReadDisplayEnablePermissions_R3@24 + Type : code + Name type : ordinal + Ordinal : 285 + +Archive member name at 19788: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndReadDisplayEnables_R3@20 + Type : code + Name type : ordinal + Ordinal : 286 + +Archive member name at 19802: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadDisplayOptions@12 + Type : code + Name type : ordinal + Ordinal : 287 + +Archive member name at 19878: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadDisplayOptionsLock_R3@12 + Type : code + Name type : ordinal + Ordinal : 288 + +Archive member name at 198F6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadDisplayTimeout@12 + Type : code + Name type : ordinal + Ordinal : 289 + +Archive member name at 1996C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadDoseProfileByIndex_R3@24 + Type : code + Name type : ordinal + Ordinal : 290 + +Archive member name at 199EA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndReadDoseProfileByTime@16 + Type : code + Name type : ordinal + Ordinal : 291 + +Archive member name at 19A64: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 47 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000033 + DLL name : reader3.dll + Symbol name : _EndReadDoseProfileConfiguration_R3@12 + Type : code + Name type : ordinal + Ordinal : 292 + +Archive member name at 19AE8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndReadDoseProfileInterval@12 + Type : code + Name type : ordinal + Ordinal : 293 + +Archive member name at 19B64: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndReadDoseSaveInterval_R3@12 + Type : code + Name type : ordinal + Ordinal : 294 + +Archive member name at 19BE0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _EndReadDoses@24 + Type : code + Name type : ordinal + Ordinal : 295 + +Archive member name at 19C4E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _EndReadEEProm@24 + Type : code + Name type : ordinal + Ordinal : 296 + +Archive member name at 19CBC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndReadEpdIdentities@36 + Type : code + Name type : ordinal + Ordinal : 297 + +Archive member name at 19D32: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndReadEpdPartNumber_R3@12 + Type : code + Name type : ordinal + Ordinal : 298 + +Archive member name at 19DAA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadEpdRevision_R3@12 + Type : code + Name type : ordinal + Ordinal : 299 + +Archive member name at 19E20: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _EndReadEpdSerialNum@12 + Type : code + Name type : ordinal + Ordinal : 300 + +Archive member name at 19E94: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 33 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001F + DLL name : reader3.dll + Symbol name : _EndReadEpdType@12 + Type : code + Name type : ordinal + Ordinal : 301 + +Archive member name at 19F04: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndReadEventLogLevel_R3@12 + Type : code + Name type : ordinal + Ordinal : 302 + +Archive member name at 19F7C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndReadEventsByIndex@16 + Type : code + Name type : ordinal + Ordinal : 303 + +Archive member name at 19FF2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadFactoryCalDate@12 + Type : code + Name type : ordinal + Ordinal : 304 + +Archive member name at 1A068: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndReadFemSerialNum_R3@12 + Type : code + Name type : ordinal + Ordinal : 305 + +Archive member name at 1A0E0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadFirmwarePartNumber_R3@12 + Type : code + Name type : ordinal + Ordinal : 306 + +Archive member name at 1A15E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndReadFirmwareVersion@12 + Type : code + Name type : ordinal + Ordinal : 307 + +Archive member name at 1A1D6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadFlashTestCounts_R3@24 + Type : code + Name type : ordinal + Ordinal : 308 + +Archive member name at 1A250: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadFpgaVersion_R3@16 + Type : code + Name type : ordinal + Ordinal : 309 + +Archive member name at 1A2C6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _EndReadGains@20 + Type : code + Name type : ordinal + Ordinal : 310 + +Archive member name at 1A334: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _EndReadGains_R3@20 + Type : code + Name type : ordinal + Ordinal : 311 + +Archive member name at 1A3A4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadGraphicData_R3@12 + Type : code + Name type : ordinal + Ordinal : 312 + +Archive member name at 1A41A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadGraphicSize_R3@12 + Type : code + Name type : ordinal + Ordinal : 313 + +Archive member name at 1A490: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _EndReadLastCalibrationProcess_R3@12 + Type : code + Name type : ordinal + Ordinal : 314 + +Archive member name at 1A512: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndReadMarkNumber@12 + Type : code + Name type : ordinal + Ordinal : 315 + +Archive member name at 1A584: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndReadMeasurandIds_R3@20 + Type : code + Name type : ordinal + Ordinal : 316 + +Archive member name at 1A5FC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _EndReadModelName_R3@12 + Type : code + Name type : ordinal + Ordinal : 317 + +Archive member name at 1A670: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 49 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000035 + DLL name : reader3.dll + Symbol name : _EndReadOffModeBatteryTestInterval_R3@12 + Type : code + Name type : ordinal + Ordinal : 318 + +Archive member name at 1A6F6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndReadOffModeDisplay_R3@16 + Type : code + Name type : ordinal + Ordinal : 319 + +Archive member name at 1A770: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndReadPcbPartNumber_R3@12 + Type : code + Name type : ordinal + Ordinal : 320 + +Archive member name at 1A7E8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadPcbRevision_R3@12 + Type : code + Name type : ordinal + Ordinal : 321 + +Archive member name at 1A85E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndReadPcbSerialNum_R3@12 + Type : code + Name type : ordinal + Ordinal : 322 + +Archive member name at 1A8D6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _EndReadPeakRates@20 + Type : code + Name type : ordinal + Ordinal : 323 + +Archive member name at 1A948: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadPulseModeEnable_R3@12 + Type : code + Name type : ordinal + Ordinal : 324 + +Archive member name at 1A9C2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndReadPulseModeIndustrial_R3@12 + Type : code + Name type : ordinal + Ordinal : 325 + +Archive member name at 1AA40: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadPulseModeThreshold_R3@12 + Type : code + Name type : ordinal + Ordinal : 326 + +Archive member name at 1AABE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000037 + DLL name : reader3.dll + Symbol name : _EndReadPulsedModeOverrangeThreshold_R3@12 + Type : code + Name type : ordinal + Ordinal : 327 + +Archive member name at 1AB46: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _EndReadQualityData@12 + Type : code + Name type : ordinal + Ordinal : 328 + +Archive member name at 1ABBA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndReadQuickAccessDisplays_R3@20 + Type : code + Name type : ordinal + Ordinal : 329 + +Archive member name at 1AC38: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 2F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001B + DLL name : reader3.dll + Symbol name : _EndReadRTC@12 + Type : code + Name type : ordinal + Ordinal : 330 + +Archive member name at 1ACA4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _EndReadRadioFirmwareVersion_R3@12 + Type : code + Name type : ordinal + Ordinal : 331 + +Archive member name at 1AD24: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndReadRateOffPercentage@20 + Type : code + Name type : ordinal + Ordinal : 332 + +Archive member name at 1AD9E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _EndReadRates@24 + Type : code + Name type : ordinal + Ordinal : 333 + +Archive member name at 1AE0C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndReadResponderTriggerUtc_R3@12 + Type : code + Name type : ordinal + Ordinal : 334 + +Archive member name at 1AE8A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndReadReturnForReadTime@12 + Type : code + Name type : ordinal + Ordinal : 335 + +Archive member name at 1AF04: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndReadRunTime_R3@12 + Type : code + Name type : ordinal + Ordinal : 336 + +Archive member name at 1AF76: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndReadScratchpad@24 + Type : code + Name type : ordinal + Ordinal : 337 + +Archive member name at 1AFE8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadScratchpadSize@12 + Type : code + Name type : ordinal + Ordinal : 338 + +Archive member name at 1B05E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndReadSelfTestInterval@12 + Type : code + Name type : ordinal + Ordinal : 339 + +Archive member name at 1B0D6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndReadSensitivities@20 + Type : code + Name type : ordinal + Ordinal : 340 + +Archive member name at 1B14C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndReadSensitivities_R3@20 + Type : code + Name type : ordinal + Ordinal : 341 + +Archive member name at 1B1C4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 46 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000032 + DLL name : reader3.dll + Symbol name : _EndReadSnapshotAlarmThresholds_R3@12 + Type : code + Name type : ordinal + Ordinal : 342 + +Archive member name at 1B246: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndReadSnapshotCounters_R3@12 + Type : code + Name type : ordinal + Ordinal : 343 + +Archive member name at 1B2C2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 43 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002F + DLL name : reader3.dll + Symbol name : _EndReadSnapshotMeasurements_R3@12 + Type : code + Name type : ordinal + Ordinal : 344 + +Archive member name at 1B342: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadSnapshotSummary_R3@12 + Type : code + Name type : ordinal + Ordinal : 345 + +Archive member name at 1B3BC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _EndReadStatus@12 + Type : code + Name type : ordinal + Ordinal : 346 + +Archive member name at 1B42A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _EndReadStayTime_R3@12 + Type : code + Name type : ordinal + Ordinal : 347 + +Archive member name at 1B49E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadSwitchOnFromButton_R3@12 + Type : code + Name type : ordinal + Ordinal : 348 + +Archive member name at 1B51C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndReadTaskDatabaseId_R3@12 + Type : code + Name type : ordinal + Ordinal : 349 + +Archive member name at 1B596: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _EndReadTaskId_R3@12 + Type : code + Name type : ordinal + Ordinal : 350 + +Archive member name at 1B608: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadTelemetryAdvConfig_R3@12 + Type : code + Name type : ordinal + Ordinal : 351 + +Archive member name at 1B686: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndReadTelemetryAdvContent_R3@16 + Type : code + Name type : ordinal + Ordinal : 352 + +Archive member name at 1B704: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndReadTelemetryCxnConfig_R3@12 + Type : code + Name type : ordinal + Ordinal : 353 + +Archive member name at 1B782: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndReadTelemetryEnable_R3@16 + Type : code + Name type : ordinal + Ordinal : 354 + +Archive member name at 1B7FC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndReadTelemetryMode_R2@12 + Type : code + Name type : ordinal + Ordinal : 355 + +Archive member name at 1B874: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 46 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000032 + DLL name : reader3.dll + Symbol name : _EndReadTelemetryReportInterval_R3@12 + Type : code + Name type : ordinal + Ordinal : 356 + +Archive member name at 1B8F6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndReadTelemetryTxPower_R3@16 + Type : code + Name type : ordinal + Ordinal : 357 + +Archive member name at 1B972: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndReadTotalDoses@24 + Type : code + Name type : ordinal + Ordinal : 358 + +Archive member name at 1B9E4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndReadTriggeredDoses_R3@24 + Type : code + Name type : ordinal + Ordinal : 359 + +Archive member name at 1BA5E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _EndReadVoltages@20 + Type : code + Name type : ordinal + Ordinal : 360 + +Archive member name at 1BACE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndReadWearerDatabaseId_R3@12 + Type : code + Name type : ordinal + Ordinal : 361 + +Archive member name at 1BB4A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _EndReadWearerId@12 + Type : code + Name type : ordinal + Ordinal : 362 + +Archive member name at 1BBBA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndReadZoneAccessPermitted@12 + Type : code + Name type : ordinal + Ordinal : 363 + +Archive member name at 1BC36: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndReadZoneControlMap@12 + Type : code + Name type : ordinal + Ordinal : 364 + +Archive member name at 1BCAC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndSetBaselineCounters@8 + Type : code + Name type : ordinal + Ordinal : 365 + +Archive member name at 1BD22: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _EndStartDetectorTest@8 + Type : code + Name type : ordinal + Ordinal : 366 + +Archive member name at 1BD96: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndTriggerBacklight_R3@8 + Type : code + Name type : ordinal + Ordinal : 367 + +Archive member name at 1BE0C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndTriggerResponderMode_R3@8 + Type : code + Name type : ordinal + Ordinal : 368 + +Archive member name at 1BE86: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndValidateEpdOwnerKey_R3@12 + Type : code + Name type : ordinal + Ordinal : 369 + +Archive member name at 1BF00: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _EndWriteAccessKey@8 + Type : code + Name type : ordinal + Ordinal : 370 + +Archive member name at 1BF72: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _EndWriteAccessLevel@8 + Type : code + Name type : ordinal + Ordinal : 371 + +Archive member name at 1BFE6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 48 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000034 + DLL name : reader3.dll + Symbol name : _EndWriteAccessPermissionsForLevel_R3@8 + Type : code + Name type : ordinal + Ordinal : 372 + +Archive member name at 1C06A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _EndWriteAlarmConfigurationLock_R3@8 + Type : code + Name type : ordinal + Ordinal : 373 + +Archive member name at 1C0EC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWriteAlarmConfiguration_R3@8 + Type : code + Name type : ordinal + Ordinal : 374 + +Archive member name at 1C16A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndWriteAlarmThresholds@8 + Type : code + Name type : ordinal + Ordinal : 375 + +Archive member name at 1C1E2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndWriteBacklightBrightness_R3@8 + Type : code + Name type : ordinal + Ordinal : 376 + +Archive member name at 1C260: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndWriteBacklightEnable_R3@8 + Type : code + Name type : ordinal + Ordinal : 377 + +Archive member name at 1C2DA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndWriteBacklightPeriod_R3@8 + Type : code + Name type : ordinal + Ordinal : 378 + +Archive member name at 1C354: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _EndWriteBatteryCriticalTiming_R3@8 + Type : code + Name type : ordinal + Ordinal : 379 + +Archive member name at 1C3D4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndWriteBatteryLowThreshold@8 + Type : code + Name type : ordinal + Ordinal : 380 + +Archive member name at 1C450: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndWriteBatteryTestInterval@8 + Type : code + Name type : ordinal + Ordinal : 381 + +Archive member name at 1C4CC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndWriteBatteryTypeOverride_R3@8 + Type : code + Name type : ordinal + Ordinal : 382 + +Archive member name at 1C54A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndWriteCalDueDate@8 + Type : code + Name type : ordinal + Ordinal : 383 + +Archive member name at 1C5BC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndWriteCalDueDate_R3@8 + Type : code + Name type : ordinal + Ordinal : 384 + +Archive member name at 1C632: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndWriteCalReference_R3@8 + Type : code + Name type : ordinal + Ordinal : 385 + +Archive member name at 1C6AA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndWriteCalibrationFacility_R3@8 + Type : code + Name type : ordinal + Ordinal : 386 + +Archive member name at 1C728: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndWriteCapabilities_R3@8 + Type : code + Name type : ordinal + Ordinal : 387 + +Archive member name at 1C7A0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndWriteChirpEnable_R3@8 + Type : code + Name type : ordinal + Ordinal : 388 + +Archive member name at 1C816: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteChirpSensitivity@8 + Type : code + Name type : ordinal + Ordinal : 389 + +Archive member name at 1C88E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndWriteClearDoseOnSwitchOn@8 + Type : code + Name type : ordinal + Ordinal : 390 + +Archive member name at 1C90A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndWriteDeadTimeFactors_R3@8 + Type : code + Name type : ordinal + Ordinal : 391 + +Archive member name at 1C984: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteDebugRegister_R3@8 + Type : code + Name type : ordinal + Ordinal : 392 + +Archive member name at 1C9FC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWriteDetectorTestLimits_R3@8 + Type : code + Name type : ordinal + Ordinal : 393 + +Archive member name at 1CA7A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWriteDetectorThresholds_R2@8 + Type : code + Name type : ordinal + Ordinal : 394 + +Archive member name at 1CAF8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWriteDetectorThresholds_R3@8 + Type : code + Name type : ordinal + Ordinal : 395 + +Archive member name at 1CB76: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 47 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000033 + DLL name : reader3.dll + Symbol name : _EndWriteDisplayEnablePermissions_R3@8 + Type : code + Name type : ordinal + Ordinal : 396 + +Archive member name at 1CBFA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndWriteDisplayEnables_R3@8 + Type : code + Name type : ordinal + Ordinal : 397 + +Archive member name at 1CC74: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndWriteDisplayOptions@8 + Type : code + Name type : ordinal + Ordinal : 398 + +Archive member name at 1CCEA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWriteDisplayOptionsLock_R3@8 + Type : code + Name type : ordinal + Ordinal : 399 + +Archive member name at 1CD68: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndWriteDisplayTimeout@8 + Type : code + Name type : ordinal + Ordinal : 400 + +Archive member name at 1CDDE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 47 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000033 + DLL name : reader3.dll + Symbol name : _EndWriteDoseProfileDoseIncrement_R3@8 + Type : code + Name type : ordinal + Ordinal : 401 + +Archive member name at 1CE62: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndWriteDoseProfileInterval@8 + Type : code + Name type : ordinal + Ordinal : 402 + +Archive member name at 1CEDE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 44 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000030 + DLL name : reader3.dll + Symbol name : _EndWriteDoseProfileMeasurands_R3@8 + Type : code + Name type : ordinal + Ordinal : 403 + +Archive member name at 1CF5E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndWriteDoseSaveInterval_R3@8 + Type : code + Name type : ordinal + Ordinal : 404 + +Archive member name at 1CFDA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteDoseWritableFlag@8 + Type : code + Name type : ordinal + Ordinal : 405 + +Archive member name at 1D052: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _EndWriteDoses@8 + Type : code + Name type : ordinal + Ordinal : 406 + +Archive member name at 1D0C0: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _EndWriteEEProm@8 + Type : code + Name type : ordinal + Ordinal : 407 + +Archive member name at 1D12E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteEpdPartNumber_R3@8 + Type : code + Name type : ordinal + Ordinal : 408 + +Archive member name at 1D1A6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndWriteEpdRevision_R3@8 + Type : code + Name type : ordinal + Ordinal : 409 + +Archive member name at 1D21C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndWriteEpdSerialNumber@8 + Type : code + Name type : ordinal + Ordinal : 410 + +Archive member name at 1D294: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteEventLogLevel_R3@8 + Type : code + Name type : ordinal + Ordinal : 411 + +Archive member name at 1D30C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndWriteFactoryCalDate@8 + Type : code + Name type : ordinal + Ordinal : 412 + +Archive member name at 1D382: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndWriteFemSerialNumber_R3@8 + Type : code + Name type : ordinal + Ordinal : 413 + +Archive member name at 1D3FC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000027 + DLL name : reader3.dll + Symbol name : _EndWriteGainableFlag_R3@8 + Type : code + Name type : ordinal + Ordinal : 414 + +Archive member name at 1D474: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _EndWriteGains_R3@8 + Type : code + Name type : ordinal + Ordinal : 415 + +Archive member name at 1D4E4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndWriteGoldenFlag_R3@8 + Type : code + Name type : ordinal + Ordinal : 416 + +Archive member name at 1D55A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteGraphicBitmap_R3@8 + Type : code + Name type : ordinal + Ordinal : 417 + +Archive member name at 1D5D2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 45 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000031 + DLL name : reader3.dll + Symbol name : _EndWriteLastCalibrationProcess_R3@8 + Type : code + Name type : ordinal + Ordinal : 418 + +Archive member name at 1D654: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _EndWriteMarkNumber_R3@8 + Type : code + Name type : ordinal + Ordinal : 419 + +Archive member name at 1D6CA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 38 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000024 + DLL name : reader3.dll + Symbol name : _EndWriteModelName_R3@8 + Type : code + Name type : ordinal + Ordinal : 420 + +Archive member name at 1D73E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 40 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002C + DLL name : reader3.dll + Symbol name : _EndWriteNotCalibratedFlag_R3@8 + Type : code + Name type : ordinal + Ordinal : 421 + +Archive member name at 1D7BA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 49 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000035 + DLL name : reader3.dll + Symbol name : _EndWriteOffModeBatteryTestInterval_R3@8 + Type : code + Name type : ordinal + Ordinal : 422 + +Archive member name at 1D840: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndWriteOffModeDisplay_R3@8 + Type : code + Name type : ordinal + Ordinal : 423 + +Archive member name at 1D8BA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWritePcbPartNumber_R3@8 + Type : code + Name type : ordinal + Ordinal : 424 + +Archive member name at 1D932: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndWritePcbRevision_R3@8 + Type : code + Name type : ordinal + Ordinal : 425 + +Archive member name at 1D9A8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndWritePcbSerialNumber_R3@8 + Type : code + Name type : ordinal + Ordinal : 426 + +Archive member name at 1DA22: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndWritePulseModeEnable_R3@8 + Type : code + Name type : ordinal + Ordinal : 427 + +Archive member name at 1DA9C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndWritePulseModeIndustrial_R3@8 + Type : code + Name type : ordinal + Ordinal : 428 + +Archive member name at 1DB1A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWritePulseModeThreshold_R3@8 + Type : code + Name type : ordinal + Ordinal : 429 + +Archive member name at 1DB98: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 4B size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000037 + DLL name : reader3.dll + Symbol name : _EndWritePulsedModeOverrangeThreshold_R3@8 + Type : code + Name type : ordinal + Ordinal : 430 + +Archive member name at 1DC20: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndWriteQuickAccessDisplays_R3@8 + Type : code + Name type : ordinal + Ordinal : 431 + +Archive member name at 1DC9E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _EndWriteRTC_R3@8 + Type : code + Name type : ordinal + Ordinal : 432 + +Archive member name at 1DD0C: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndWriteRateOffPercentage@8 + Type : code + Name type : ordinal + Ordinal : 433 + +Archive member name at 1DD86: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndWriteReturnForReadTime@8 + Type : code + Name type : ordinal + Ordinal : 434 + +Archive member name at 1DE00: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndWriteScratchpad@8 + Type : code + Name type : ordinal + Ordinal : 435 + +Archive member name at 1DE72: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteSelfTestInterval@8 + Type : code + Name type : ordinal + Ordinal : 436 + +Archive member name at 1DEEA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteSensitivities_R2@8 + Type : code + Name type : ordinal + Ordinal : 437 + +Archive member name at 1DF62: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteSensitivities_R3@8 + Type : code + Name type : ordinal + Ordinal : 438 + +Archive member name at 1DFDA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _EndWriteStayTime_R3@8 + Type : code + Name type : ordinal + Ordinal : 439 + +Archive member name at 1E04E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWriteSwitchOnFromButton_R3@8 + Type : code + Name type : ordinal + Ordinal : 440 + +Archive member name at 1E0CC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndWriteTaskDatabaseId_R3@8 + Type : code + Name type : ordinal + Ordinal : 441 + +Archive member name at 1E146: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 35 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000021 + DLL name : reader3.dll + Symbol name : _EndWriteTaskId_R3@8 + Type : code + Name type : ordinal + Ordinal : 442 + +Archive member name at 1E1B8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWriteTelemetryAdvConfig_R3@8 + Type : code + Name type : ordinal + Ordinal : 443 + +Archive member name at 1E236: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 42 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002E + DLL name : reader3.dll + Symbol name : _EndWriteTelemetryAdvContent_R3@8 + Type : code + Name type : ordinal + Ordinal : 444 + +Archive member name at 1E2B4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 41 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002D + DLL name : reader3.dll + Symbol name : _EndWriteTelemetryCxnConfig_R3@8 + Type : code + Name type : ordinal + Ordinal : 445 + +Archive member name at 1E332: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002A + DLL name : reader3.dll + Symbol name : _EndWriteTelemetryEnable_R3@8 + Type : code + Name type : ordinal + Ordinal : 446 + +Archive member name at 1E3AC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _EndWriteTelemetryMode_R2@8 + Type : code + Name type : ordinal + Ordinal : 447 + +Archive member name at 1E424: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 46 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000032 + DLL name : reader3.dll + Symbol name : _EndWriteTelemetryReportInterval_R3@8 + Type : code + Name type : ordinal + Ordinal : 448 + +Archive member name at 1E4A6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndWriteTelemetryTxPower_R3@8 + Type : code + Name type : ordinal + Ordinal : 449 + +Archive member name at 1E522: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _EndWriteTotalDoses@8 + Type : code + Name type : ordinal + Ordinal : 450 + +Archive member name at 1E594: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3D size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000029 + DLL name : reader3.dll + Symbol name : _EndWriteTriggeredDoses_R3@8 + Type : code + Name type : ordinal + Ordinal : 451 + +Archive member name at 1E60E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3F size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000002B + DLL name : reader3.dll + Symbol name : _EndWriteWearerDatabaseId_R3@8 + Type : code + Name type : ordinal + Ordinal : 452 + +Archive member name at 1E68A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 34 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000020 + DLL name : reader3.dll + Symbol name : _EndWriteWearerId@8 + Type : code + Name type : ordinal + Ordinal : 453 + +Archive member name at 1E6FA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3A size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000026 + DLL name : reader3.dll + Symbol name : _EndWriteZoneControlMap@8 + Type : code + Name type : ordinal + Ordinal : 454 + +Archive member name at 1E770: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _GetDiscoveredEpds@16 + Type : code + Name type : ordinal + Ordinal : 455 + +Archive member name at 1E7E2: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 37 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000023 + DLL name : reader3.dll + Symbol name : _GetDiscoveryTimeout@8 + Type : code + Name type : ordinal + Ordinal : 456 + +Archive member name at 1E856: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _GetDiscoveryTimeslots@8 + Type : code + Name type : ordinal + Ordinal : 457 + +Archive member name at 1E8CC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _GetDllLogLevel@8 + Type : code + Name type : ordinal + Ordinal : 458 + +Archive member name at 1E93A: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 30 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001C + DLL name : reader3.dll + Symbol name : _GetErrorCode@0 + Type : code + Name type : ordinal + Ordinal : 459 + +Archive member name at 1E9A6: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _GetMultipleDiscoveryMode@8 + Type : code + Name type : ordinal + Ordinal : 460 + +Archive member name at 1EA1E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _GetResponseTimeout@8 + Type : code + Name type : ordinal + Ordinal : 461 + +Archive member name at 1EA90: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _GetRetryCount@8 + Type : code + Name type : ordinal + Ordinal : 462 + +Archive member name at 1EAFE: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 2E size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001A + DLL name : reader3.dll + Symbol name : _OpenReader@8 + Type : code + Name type : ordinal + Ordinal : 463 + +Archive member name at 1EB68: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _SetConnectCallback@8 + Type : code + Name type : ordinal + Ordinal : 464 + +Archive member name at 1EBDA: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _SetDisconnectCallback@8 + Type : code + Name type : ordinal + Ordinal : 465 + +Archive member name at 1EC50: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _SetDiscoveryCacheTimeout@8 + Type : code + Name type : ordinal + Ordinal : 466 + +Archive member name at 1ECC8: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 39 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000025 + DLL name : reader3.dll + Symbol name : _SetDiscoveryTimeslots@8 + Type : code + Name type : ordinal + Ordinal : 467 + +Archive member name at 1ED3E: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _SetDllLogLevel@8 + Type : code + Name type : ordinal + Ordinal : 468 + +Archive member name at 1EDAC: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 3C size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000028 + DLL name : reader3.dll + Symbol name : _SetMultipleDiscoveryMode@8 + Type : code + Name type : ordinal + Ordinal : 469 + +Archive member name at 1EE24: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _SetRemovedCallback@8 + Type : code + Name type : ordinal + Ordinal : 470 + +Archive member name at 1EE96: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 36 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 00000022 + DLL name : reader3.dll + Symbol name : _SetResponseTimeout@8 + Type : code + Name type : ordinal + Ordinal : 471 + +Archive member name at 1EF08: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _SetRetryCount@8 + Type : code + Name type : ordinal + Ordinal : 472 + +Archive member name at 1EF76: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 32 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001E + DLL name : reader3.dll + Symbol name : _StartDiscovery@8 + Type : code + Name type : ordinal + Ordinal : 473 + +Archive member name at 1EFE4: reader3.dll/ +60B0A2B9 time/date Fri May 28 09:58:49 2021 + uid + gid + 0 mode + 31 size +correct header end + + Version : 0 + Machine : 14C (x86) + TimeDateStamp: 60B0A2B9 Fri May 28 09:58:49 2021 + SizeOfData : 0000001D + DLL name : reader3.dll + Symbol name : _StopDiscovery@4 + Type : code + Name type : ordinal + Ordinal : 474 + + Exports + + ordinal name + + 1 _AwaitRemoval@20 + 2 _BeginClearAllStatus@8 + 3 _BeginClearDose@8 + 4 _BeginClearDoseProfile_R3@8 + 5 _BeginClearEEPROM_R3@8 + 6 _BeginClearFaultStatus@8 + 7 _BeginClearGraphic_R3@12 + 8 _BeginClearLatchedAlarms@8 + 9 _BeginClearPeakRates@8 + 10 _BeginClearScratchPad@12 + 11 _BeginClearTotalDose@8 + 12 _BeginClearWearerOrTaskId_R3@16 + 13 _BeginDeissueEPD@8 + 14 _BeginEnableCovertMode_R3@12 + 15 _BeginEnableDeepSleep_R3@12 + 16 _BeginEnableManufacturerLockout_R3@12 + 17 _BeginEnableProtectedSession_R3@12 + 18 _BeginEnableResponderMode_R3@12 + 19 _BeginEpdOnOff@12 + 20 _BeginInitiateFirmwareUpdate_R3@8 + 21 _BeginIssueEPD@8 + 22 _BeginMfrLogin_R2@12 + 23 _BeginReadAccessPermissionsForLevel_R3@12 + 24 _BeginReadAlarmConfiguration@16 + 25 _BeginReadAlarmConfigurationLock_R3@8 + 26 _BeginReadAlarmConfiguration_R3@16 + 27 _BeginReadAlarmThresholds@20 + 28 _BeginReadBacklightBrightness_R3@8 + 29 _BeginReadBacklightEnable_R3@8 + 30 _BeginReadBacklightPeriod_R3@8 + 31 _BeginReadBaselineCounts@8 + 32 _BeginReadBatteryCriticalTiming_R3@8 + 33 _BeginReadBatteryLowThreshold@12 + 34 _BeginReadBatteryTestInterval@8 + 35 _BeginReadBatteryTypeFitted_R3@8 + 36 _BeginReadBatteryTypeOverride_R3@8 + 37 _BeginReadCalDueDate@8 + 38 _BeginReadCalDueDate_R3@8 + 39 _BeginReadCalReference_R3@8 + 40 _BeginReadCalibrationData_R2@8 + 41 _BeginReadCalibrationFacility_R3@8 + 42 _BeginReadCapabilities@8 + 43 _BeginReadChirpEnable_R3@8 + 44 _BeginReadChirpSensitivity@8 + 45 _BeginReadCounts@16 + 46 _BeginReadCurrentAccessLevel@8 + 47 _BeginReadDeadTimeFactors_R3@16 + 48 _BeginReadDebugRegister_R3@12 + 49 _BeginReadDetectorTestLimits_R3@16 + 50 _BeginReadDetectorThresholdLimits_R3@16 + 51 _BeginReadDetectorThresholds@16 + 52 _BeginReadDetectorThresholds_R3@16 + 53 _BeginReadDisplayCapability_R3@12 + 54 _BeginReadDisplayEnablePermissions_R3@12 + 55 _BeginReadDisplayEnables_R3@16 + 56 _BeginReadDisplayOptions@8 + 57 _BeginReadDisplayOptionsLock_R3@8 + 58 _BeginReadDisplayTimeout@8 + 59 _BeginReadDoseProfileByIndex_R3@16 + 60 _BeginReadDoseProfileByTime@16 + 61 _BeginReadDoseProfileConfiguration_R3@8 + 62 _BeginReadDoseProfileInterval@8 + 63 _BeginReadDoseSaveInterval_R3@8 + 64 _BeginReadDoses@16 + 65 _BeginReadEEProm@16 + 66 _BeginReadEpdIdentities@8 + 67 _BeginReadEpdPartNumber_R3@8 + 68 _BeginReadEpdRevision_R3@8 + 69 _BeginReadEpdSerialNum@8 + 70 _BeginReadEpdType@8 + 71 _BeginReadEventLogLevel_R3@8 + 72 _BeginReadEventsByIndex@16 + 73 _BeginReadFactoryCalDate@8 + 74 _BeginReadFemSerialNum_R3@8 + 75 _BeginReadFirmwarePartNumber_R3@8 + 76 _BeginReadFirmwareVersion@8 + 77 _BeginReadFlashTestCounts_R3@16 + 78 _BeginReadFpgaVersion_R3@8 + 79 _BeginReadGains@16 + 80 _BeginReadGains_R3@16 + 81 _BeginReadGraphicData_R3@12 + 82 _BeginReadGraphicSize_R3@12 + 83 _BeginReadLastCalibrationProcess_R3@8 + 84 _BeginReadMarkNumber@8 + 85 _BeginReadMeasurandIds_R3@8 + 86 _BeginReadModelName_R3@8 + 87 _BeginReadOffModeBatteryTestInterval_R3@8 + 88 _BeginReadOffModeDisplay_R3@8 + 89 _BeginReadPcbPartNumber_R3@8 + 90 _BeginReadPcbRevision_R3@8 + 91 _BeginReadPcbSerialNum_R3@8 + 92 _BeginReadPeakRates@16 + 93 _BeginReadPulseModeEnable_R3@8 + 94 _BeginReadPulseModeIndustrial_R3@8 + 95 _BeginReadPulseModeThreshold_R3@8 + 96 _BeginReadPulsedModeOverrangeThreshold_R3@8 + 97 _BeginReadQualityData@8 + 98 _BeginReadQuickAccessDisplays_R3@16 + 99 _BeginReadRTC@8 + 100 _BeginReadRadioFirmwareVersion_R3@8 + 101 _BeginReadRateOffPercentage@16 + 102 _BeginReadRates@16 + 103 _BeginReadResponderTriggerUtc_R3@8 + 104 _BeginReadReturnForReadTime@8 + 105 _BeginReadRunTime_R3@8 + 106 _BeginReadScratchPad@16 + 107 _BeginReadScratchpadSize@8 + 108 _BeginReadSelfTestInterval@8 + 109 _BeginReadSensitivities@16 + 110 _BeginReadSensitivities_R3@16 + 111 _BeginReadSnapshotAlarmThresholds_R3@12 + 112 _BeginReadSnapshotCounters_R3@12 + 113 _BeginReadSnapshotMeasurements_R3@12 + 114 _BeginReadSnapshotSummary_R3@12 + 115 _BeginReadStatus@8 + 116 _BeginReadStayTime_R3@8 + 117 _BeginReadSwitchOnFromButton_R3@8 + 118 _BeginReadTaskDatabaseId_R3@8 + 119 _BeginReadTaskId_R3@12 + 120 _BeginReadTelemetryAdvConfig_R3@12 + 121 _BeginReadTelemetryAdvContent_R3@12 + 122 _BeginReadTelemetryCxnConfig_R3@8 + 123 _BeginReadTelemetryEnable_R3@12 + 124 _BeginReadTelemetryMode_R2@8 + 125 _BeginReadTelemetryReportInterval_R3@8 + 126 _BeginReadTelemetryTxPower_R3@12 + 127 _BeginReadTotalDoses@16 + 128 _BeginReadTriggeredDoses_R3@16 + 129 _BeginReadVoltages@8 + 130 _BeginReadWearerDatabaseId_R3@8 + 131 _BeginReadWearerId@12 + 132 _BeginReadZoneAccessPermitted@12 + 133 _BeginReadZoneControlMap@8 + 134 _BeginSetBaselineCounters@8 + 135 _BeginStartDetectorTest@8 + 136 _BeginTriggerBacklight_R3@8 + 137 _BeginTriggerResponderMode_R3@8 + 138 _BeginValidateEpdOwnerKey_R3@12 + 139 _BeginWriteAccessKey@20 + 140 _BeginWriteAccessLevel@20 + 141 _BeginWriteAccessPermissionsForLevel_R3@20 + 142 _BeginWriteAlarmConfigurationLock_R3@16 + 143 _BeginWriteAlarmConfiguration_R3@16 + 144 _BeginWriteAlarmThresholds@20 + 145 _BeginWriteBacklightBrightness_R3@12 + 146 _BeginWriteBacklightEnable_R3@12 + 147 _BeginWriteBacklightPeriod_R3@12 + 148 _BeginWriteBatteryCriticalTiming_R3@16 + 149 _BeginWriteBatteryLowThreshold@16 + 150 _BeginWriteBatteryTestInterval@12 + 151 _BeginWriteBatteryTypeOverride_R3@12 + 152 _BeginWriteCalDueDate@12 + 153 _BeginWriteCalDueDate_R3@12 + 154 _BeginWriteCalReference_R3@12 + 155 _BeginWriteCalibrationFacility_R3@16 + 156 _BeginWriteCapabilities_R3@12 + 157 _BeginWriteChirpEnable_R3@12 + 158 _BeginWriteChirpSensitivity@12 + 159 _BeginWriteClearDoseOnSwitchOn@12 + 160 _BeginWriteDeadTimeFactors_R3@16 + 161 _BeginWriteDebugRegister_R3@16 + 162 _BeginWriteDetectorTestLimits_R3@16 + 163 _BeginWriteDetectorThresholds_R2@24 + 164 _BeginWriteDetectorThresholds_R3@16 + 165 _BeginWriteDisplayEnablePermissions_R3@20 + 166 _BeginWriteDisplayEnables_R3@16 + 167 _BeginWriteDisplayOptions@16 + 168 _BeginWriteDisplayOptionsLock_R3@16 + 169 _BeginWriteDisplayTimeout@12 + 170 _BeginWriteDoseProfileDoseIncrement_R3@12 + 171 _BeginWriteDoseProfileInterval@12 + 172 _BeginWriteDoseProfileMeasurands_R3@16 + 173 _BeginWriteDoseSaveInterval_R3@12 + 174 _BeginWriteDoseWritableFlag@12 + 175 _BeginWriteDoses@16 + 176 _BeginWriteEEProm@20 + 177 _BeginWriteEpdPartNumber_R3@12 + 178 _BeginWriteEpdRevision_R3@12 + 179 _BeginWriteEpdSerialNumber@12 + 180 _BeginWriteEventLogLevel_R3@12 + 181 _BeginWriteFactoryCalDate@12 + 182 _BeginWriteFemSerialNumber_R3@12 + 183 _BeginWriteGainableFlag_R3@12 + 184 _BeginWriteGains_R3@16 + 185 _BeginWriteGoldenFlag_R3@12 + 186 _BeginWriteGraphicBitmap_R3@352 + 187 _BeginWriteLastCalibrationProcess_R3@20 + 188 _BeginWriteMarkNumber_R3@12 + 189 _BeginWriteModelName_R3@40 + 190 _BeginWriteNotCalibratedFlag_R3@12 + 191 _BeginWriteOffModeBatteryTestInterval_R3@12 + 192 _BeginWriteOffModeDisplay_R3@16 + 193 _BeginWritePcbPartNumber_R3@12 + 194 _BeginWritePcbRevision_R3@12 + 195 _BeginWritePcbSerialNumber_R3@12 + 196 _BeginWritePulseModeEnable_R3@12 + 197 _BeginWritePulseModeIndustrial_R3@12 + 198 _BeginWritePulseModeThreshold_R3@12 + 199 _BeginWritePulsedModeOverrangeThreshold_R3@12 + 200 _BeginWriteQuickAccessDisplays_R3@16 + 201 _BeginWriteRTC_R3@12 + 202 _BeginWriteRateOffPercentage@16 + 203 _BeginWriteReturnForReadTime@12 + 204 _BeginWriteScratchPad@20 + 205 _BeginWriteSelfTestInterval@12 + 206 _BeginWriteSensitivities_R2@32 + 207 _BeginWriteSensitivities_R3@16 + 208 _BeginWriteStayTime_R3@12 + 209 _BeginWriteSwitchOnFromButton_R3@12 + 210 _BeginWriteTaskDatabaseId_R3@24 + 211 _BeginWriteTaskId_R3@76 + 212 _BeginWriteTelemetryAdvConfig_R3@12 + 213 _BeginWriteTelemetryAdvContent_R3@16 + 214 _BeginWriteTelemetryCxnConfig_R3@12 + 215 _BeginWriteTelemetryEnable_R3@16 + 216 _BeginWriteTelemetryMode_R2@12 + 217 _BeginWriteTelemetryReportInterval_R3@12 + 218 _BeginWriteTelemetryTxPower_R3@16 + 219 _BeginWriteTotalDoses@16 + 220 _BeginWriteTriggeredDoses_R3@16 + 221 _BeginWriteWearerDatabaseId_R3@24 + 222 _BeginWriteWearerId@76 + 223 _BeginWriteZoneControlMap@16 + 224 _CleanUpReadDoseProfile@4 + 225 _CleanUpReadEventLog@4 + 226 _CloseReader@4 + 227 _Commit3@4 + 228 _Connect3@20 + 229 _CreateReaderInterface@0 + 230 _DestroyReaderInterface@4 + 231 _Disconnect@4 + 232 _DisconnectAndNotify@12 + 233 _EndClearAllStatus@8 + 234 _EndClearDose@8 + 235 _EndClearDoseProfile_R3@8 + 236 _EndClearEEPROM_R3@8 + 237 _EndClearFaultStatus@8 + 238 _EndClearGraphic_R3@8 + 239 _EndClearLatchedAlarms@8 + 240 _EndClearPeakRates@8 + 241 _EndClearScratchpad@8 + 242 _EndClearTotalDose@8 + 243 _EndClearWearerOrTaskId_R3@8 + 244 _EndDeissueEPD@8 + 245 _EndEnableCovertMode_R3@8 + 246 _EndEnableDeepSleep_R3@8 + 247 _EndEnableManufacturerLockout_R3@8 + 248 _EndEnableProtectedSession_R3@8 + 249 _EndEnableResponderMode_R3@8 + 250 _EndEpdOnOff@8 + 251 _EndInitiateFirmwareUpdate_R3@8 + 252 _EndIssueEPD@8 + 253 _EndMfrLogin_R2@8 + 254 _EndReadAccessPermissionsForLevel_R3@20 + 255 _EndReadAlarmConfiguration@20 + 256 _EndReadAlarmConfigurationLock_R3@20 + 257 _EndReadAlarmConfiguration_R3@20 + 258 _EndReadAlarmThresholds@12 + 259 _EndReadBacklightBrightness_R3@12 + 260 _EndReadBacklightEnable_R3@12 + 261 _EndReadBacklightPeriod_R3@12 + 262 _EndReadBaselineCounts@24 + 263 _EndReadBatteryCriticalTiming_R3@16 + 264 _EndReadBatteryLowThreshold@16 + 265 _EndReadBatteryTestInterval@12 + 266 _EndReadBatteryTypeFitted_R3@12 + 267 _EndReadBatteryTypeOverride_R3@12 + 268 _EndReadCalDueDate@12 + 269 _EndReadCalDueDate_R3@12 + 270 _EndReadCalReference_R3@12 + 271 _EndReadCalibrationData_R2@48 + 272 _EndReadCalibrationFacility_R3@12 + 273 _EndReadCapabilities@12 + 274 _EndReadChirpEnable_R3@12 + 275 _EndReadChirpSensitivity@12 + 276 _EndReadCounts@28 + 277 _EndReadCurrentAccessLevel@12 + 278 _EndReadDeadTimeFactors_R3@20 + 279 _EndReadDebugRegister_R3@16 + 280 _EndReadDetectorTestLimits_R3@20 + 281 _EndReadDetectorThresholdLimits_R3@20 + 282 _EndReadDetectorThresholds@20 + 283 _EndReadDetectorThresholds_R3@20 + 284 _EndReadDisplayCapability_R3@24 + 285 _EndReadDisplayEnablePermissions_R3@24 + 286 _EndReadDisplayEnables_R3@20 + 287 _EndReadDisplayOptions@12 + 288 _EndReadDisplayOptionsLock_R3@12 + 289 _EndReadDisplayTimeout@12 + 290 _EndReadDoseProfileByIndex_R3@24 + 291 _EndReadDoseProfileByTime@16 + 292 _EndReadDoseProfileConfiguration_R3@12 + 293 _EndReadDoseProfileInterval@12 + 294 _EndReadDoseSaveInterval_R3@12 + 295 _EndReadDoses@24 + 296 _EndReadEEProm@24 + 297 _EndReadEpdIdentities@36 + 298 _EndReadEpdPartNumber_R3@12 + 299 _EndReadEpdRevision_R3@12 + 300 _EndReadEpdSerialNum@12 + 301 _EndReadEpdType@12 + 302 _EndReadEventLogLevel_R3@12 + 303 _EndReadEventsByIndex@16 + 304 _EndReadFactoryCalDate@12 + 305 _EndReadFemSerialNum_R3@12 + 306 _EndReadFirmwarePartNumber_R3@12 + 307 _EndReadFirmwareVersion@12 + 308 _EndReadFlashTestCounts_R3@24 + 309 _EndReadFpgaVersion_R3@16 + 310 _EndReadGains@20 + 311 _EndReadGains_R3@20 + 312 _EndReadGraphicData_R3@12 + 313 _EndReadGraphicSize_R3@12 + 314 _EndReadLastCalibrationProcess_R3@12 + 315 _EndReadMarkNumber@12 + 316 _EndReadMeasurandIds_R3@20 + 317 _EndReadModelName_R3@12 + 318 _EndReadOffModeBatteryTestInterval_R3@12 + 319 _EndReadOffModeDisplay_R3@16 + 320 _EndReadPcbPartNumber_R3@12 + 321 _EndReadPcbRevision_R3@12 + 322 _EndReadPcbSerialNum_R3@12 + 323 _EndReadPeakRates@20 + 324 _EndReadPulseModeEnable_R3@12 + 325 _EndReadPulseModeIndustrial_R3@12 + 326 _EndReadPulseModeThreshold_R3@12 + 327 _EndReadPulsedModeOverrangeThreshold_R3@12 + 328 _EndReadQualityData@12 + 329 _EndReadQuickAccessDisplays_R3@20 + 330 _EndReadRTC@12 + 331 _EndReadRadioFirmwareVersion_R3@12 + 332 _EndReadRateOffPercentage@20 + 333 _EndReadRates@24 + 334 _EndReadResponderTriggerUtc_R3@12 + 335 _EndReadReturnForReadTime@12 + 336 _EndReadRunTime_R3@12 + 337 _EndReadScratchpad@24 + 338 _EndReadScratchpadSize@12 + 339 _EndReadSelfTestInterval@12 + 340 _EndReadSensitivities@20 + 341 _EndReadSensitivities_R3@20 + 342 _EndReadSnapshotAlarmThresholds_R3@12 + 343 _EndReadSnapshotCounters_R3@12 + 344 _EndReadSnapshotMeasurements_R3@12 + 345 _EndReadSnapshotSummary_R3@12 + 346 _EndReadStatus@12 + 347 _EndReadStayTime_R3@12 + 348 _EndReadSwitchOnFromButton_R3@12 + 349 _EndReadTaskDatabaseId_R3@12 + 350 _EndReadTaskId_R3@12 + 351 _EndReadTelemetryAdvConfig_R3@12 + 352 _EndReadTelemetryAdvContent_R3@16 + 353 _EndReadTelemetryCxnConfig_R3@12 + 354 _EndReadTelemetryEnable_R3@16 + 355 _EndReadTelemetryMode_R2@12 + 356 _EndReadTelemetryReportInterval_R3@12 + 357 _EndReadTelemetryTxPower_R3@16 + 358 _EndReadTotalDoses@24 + 359 _EndReadTriggeredDoses_R3@24 + 360 _EndReadVoltages@20 + 361 _EndReadWearerDatabaseId_R3@12 + 362 _EndReadWearerId@12 + 363 _EndReadZoneAccessPermitted@12 + 364 _EndReadZoneControlMap@12 + 365 _EndSetBaselineCounters@8 + 366 _EndStartDetectorTest@8 + 367 _EndTriggerBacklight_R3@8 + 368 _EndTriggerResponderMode_R3@8 + 369 _EndValidateEpdOwnerKey_R3@12 + 370 _EndWriteAccessKey@8 + 371 _EndWriteAccessLevel@8 + 372 _EndWriteAccessPermissionsForLevel_R3@8 + 373 _EndWriteAlarmConfigurationLock_R3@8 + 374 _EndWriteAlarmConfiguration_R3@8 + 375 _EndWriteAlarmThresholds@8 + 376 _EndWriteBacklightBrightness_R3@8 + 377 _EndWriteBacklightEnable_R3@8 + 378 _EndWriteBacklightPeriod_R3@8 + 379 _EndWriteBatteryCriticalTiming_R3@8 + 380 _EndWriteBatteryLowThreshold@8 + 381 _EndWriteBatteryTestInterval@8 + 382 _EndWriteBatteryTypeOverride_R3@8 + 383 _EndWriteCalDueDate@8 + 384 _EndWriteCalDueDate_R3@8 + 385 _EndWriteCalReference_R3@8 + 386 _EndWriteCalibrationFacility_R3@8 + 387 _EndWriteCapabilities_R3@8 + 388 _EndWriteChirpEnable_R3@8 + 389 _EndWriteChirpSensitivity@8 + 390 _EndWriteClearDoseOnSwitchOn@8 + 391 _EndWriteDeadTimeFactors_R3@8 + 392 _EndWriteDebugRegister_R3@8 + 393 _EndWriteDetectorTestLimits_R3@8 + 394 _EndWriteDetectorThresholds_R2@8 + 395 _EndWriteDetectorThresholds_R3@8 + 396 _EndWriteDisplayEnablePermissions_R3@8 + 397 _EndWriteDisplayEnables_R3@8 + 398 _EndWriteDisplayOptions@8 + 399 _EndWriteDisplayOptionsLock_R3@8 + 400 _EndWriteDisplayTimeout@8 + 401 _EndWriteDoseProfileDoseIncrement_R3@8 + 402 _EndWriteDoseProfileInterval@8 + 403 _EndWriteDoseProfileMeasurands_R3@8 + 404 _EndWriteDoseSaveInterval_R3@8 + 405 _EndWriteDoseWritableFlag@8 + 406 _EndWriteDoses@8 + 407 _EndWriteEEProm@8 + 408 _EndWriteEpdPartNumber_R3@8 + 409 _EndWriteEpdRevision_R3@8 + 410 _EndWriteEpdSerialNumber@8 + 411 _EndWriteEventLogLevel_R3@8 + 412 _EndWriteFactoryCalDate@8 + 413 _EndWriteFemSerialNumber_R3@8 + 414 _EndWriteGainableFlag_R3@8 + 415 _EndWriteGains_R3@8 + 416 _EndWriteGoldenFlag_R3@8 + 417 _EndWriteGraphicBitmap_R3@8 + 418 _EndWriteLastCalibrationProcess_R3@8 + 419 _EndWriteMarkNumber_R3@8 + 420 _EndWriteModelName_R3@8 + 421 _EndWriteNotCalibratedFlag_R3@8 + 422 _EndWriteOffModeBatteryTestInterval_R3@8 + 423 _EndWriteOffModeDisplay_R3@8 + 424 _EndWritePcbPartNumber_R3@8 + 425 _EndWritePcbRevision_R3@8 + 426 _EndWritePcbSerialNumber_R3@8 + 427 _EndWritePulseModeEnable_R3@8 + 428 _EndWritePulseModeIndustrial_R3@8 + 429 _EndWritePulseModeThreshold_R3@8 + 430 _EndWritePulsedModeOverrangeThreshold_R3@8 + 431 _EndWriteQuickAccessDisplays_R3@8 + 432 _EndWriteRTC_R3@8 + 433 _EndWriteRateOffPercentage@8 + 434 _EndWriteReturnForReadTime@8 + 435 _EndWriteScratchpad@8 + 436 _EndWriteSelfTestInterval@8 + 437 _EndWriteSensitivities_R2@8 + 438 _EndWriteSensitivities_R3@8 + 439 _EndWriteStayTime_R3@8 + 440 _EndWriteSwitchOnFromButton_R3@8 + 441 _EndWriteTaskDatabaseId_R3@8 + 442 _EndWriteTaskId_R3@8 + 443 _EndWriteTelemetryAdvConfig_R3@8 + 444 _EndWriteTelemetryAdvContent_R3@8 + 445 _EndWriteTelemetryCxnConfig_R3@8 + 446 _EndWriteTelemetryEnable_R3@8 + 447 _EndWriteTelemetryMode_R2@8 + 448 _EndWriteTelemetryReportInterval_R3@8 + 449 _EndWriteTelemetryTxPower_R3@8 + 450 _EndWriteTotalDoses@8 + 451 _EndWriteTriggeredDoses_R3@8 + 452 _EndWriteWearerDatabaseId_R3@8 + 453 _EndWriteWearerId@8 + 454 _EndWriteZoneControlMap@8 + 455 _GetDiscoveredEpds@16 + 456 _GetDiscoveryTimeout@8 + 457 _GetDiscoveryTimeslots@8 + 458 _GetDllLogLevel@8 + 459 _GetErrorCode@0 + 460 _GetMultipleDiscoveryMode@8 + 461 _GetResponseTimeout@8 + 462 _GetRetryCount@8 + 463 _OpenReader@8 + 464 _SetConnectCallback@8 + 465 _SetDisconnectCallback@8 + 466 _SetDiscoveryCacheTimeout@8 + 467 _SetDiscoveryTimeslots@8 + 468 _SetDllLogLevel@8 + 469 _SetMultipleDiscoveryMode@8 + 470 _SetRemovedCallback@8 + 471 _SetResponseTimeout@8 + 472 _SetRetryCount@8 + 473 _StartDiscovery@8 + 474 _StopDiscovery@4 + + Summary + + C3 .debug$S + 14 .idata$2 + 14 .idata$3 + 4 .idata$4 + 4 .idata$5 + C .idata$6 diff --git a/EpdBase3/CommonEpdTypes.h b/EpdBase3/CommonEpdTypes.h new file mode 100644 index 0000000..114ce48 --- /dev/null +++ b/EpdBase3/CommonEpdTypes.h @@ -0,0 +1,45 @@ +#ifndef common_epd_types_h +#define common_epd_types_h +enum class EpdGeneration +{ + None, + Mk2, + Mk3 +}; +enum class EpdTypes : uint8_t +{ + Mk2BetaGamma = 0, + Mk2Neutron = 3, + Mk3BetaGamma = 4, + Mk3Neutron = 7, + Mk2Gamma = 16, + Mk3Gamma = 20 +}; +#pragma pack (push) +#pragma pack (1) +struct DiscoveryId +{ + uint32_t Id; + EpdGeneration Gen; + uint32_t MaxBaud; + bool operator==(const DiscoveryId &other) const + { + return (Id == other.Id) && (Gen == other.Gen); + } + bool operator !=(const DiscoveryId &other) const + { + return !(*this == other); + } +} ; +typedef struct +{ + uint16_t Address; + uint8_t Length; +} MemoryBlockDetails; +typedef struct +{ + MemoryBlockDetails BlockDetail; + uint8_t Data[UINT8_MAX]; +} MemoryData; +#pragma pack (pop) +#endif \ No newline at end of file diff --git a/EpdBase3/Epd2.h b/EpdBase3/Epd2.h new file mode 100644 index 0000000..b46972b --- /dev/null +++ b/EpdBase3/Epd2.h @@ -0,0 +1,75 @@ +#ifndef epd2_h +#define epd2_h +/****************************************************************************** +* +* Module Name : Reader3.DLL +* +* File Name : Epd3.h +* +* File Description : Public API For EPD MK3 Communication +* +* Authors: : T Banahan +* +****************************************************************************** +* +* This is an unpublished work, the copyright of which vests in Thermo +* Fisher Scientific. All rights reserved. +* +* The information contained herein is the property of Thermo Fisher +* Scientific and is supplied without liability for errors or ommissions +* and no part may be reproduced, used or disclosed except as authorised +* by contract or other written permission. The copyright and the foregoing +* restriction on reproduction, use and disclosure extends to all the media +* in which this information may be embodied. +* +******************************************************************************/ +#ifndef WINAPI +#define WINAPI __stdcall +#endif + +#ifdef READER3_EXPORTS +#define EPDDLL_API __declspec(dllexport) WINAPI +#else +#define EPDDLL_API __declspec(dllimport) WINAPI +#endif + +#include +extern "C" +{ + /******************************************************************************************************************************************** + * + * Telemetry + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadTelemetryMode_R2(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadTelemetryMode_R2(CommsHandle hComms, CompletionToken token, uint8_t *mode); + CompletionToken EPDDLL_API BeginWriteTelemetryMode_R2(CommsHandle hComms, uint8_t mode, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTelemetryMode_R2(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * + * Calibration data + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadCalibrationData_R2(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadCalibrationData_R2(CommsHandle hComms, CompletionToken token, + uint16_t * HGSens10, uint16_t * SGSens10, uint16_t * HGSens07, uint16_t * SGSens07, + uint16_t * FBSens07, uint16_t * BCSens07, + uint16_t * SGthresh, uint16_t * BCthresh, + uint16_t * FBthresh, uint16_t * HGthresh); + CompletionToken EPDDLL_API BeginWriteDetectorThresholds_R2(CommsHandle hComms, CompletionCallback callback, + uint16_t SGthresh, uint16_t BCthresh, + uint16_t FBthresh, uint16_t HGthresh); + int32_t EPDDLL_API EndWriteDetectorThresholds_R2(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteSensitivities_R2(CommsHandle hComms, CompletionCallback callback, + uint16_t HGSens10, uint16_t SGSens10, uint16_t HGSens07, uint16_t SGSens07, + uint16_t FBSens07, uint16_t BCSens07); + int32_t EPDDLL_API EndWriteSensitivities_R2(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * + * Manufacturer Login + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginMfrLogin_R2(CommsHandle hComms, uint32_t password, CompletionCallback callback); + int32_t EPDDLL_API EndMfrLogin_R2(CommsHandle hComms, CompletionToken token); +} +#endif \ No newline at end of file diff --git a/EpdBase3/Epd3.h b/EpdBase3/Epd3.h new file mode 100644 index 0000000..62ba1b1 --- /dev/null +++ b/EpdBase3/Epd3.h @@ -0,0 +1,435 @@ +#ifndef epd3_h +#define epd3_h +/****************************************************************************** +* +* Module Name : Reader3.DLL +* +* File Name : Epd3.h +* +* File Description : Public API For EPD MK3 Communication +* +* Authors: : P Beeson +* +****************************************************************************** +* +* This is an unpublished work, the copyright of which vests in Thermo +* Fisher Scientific. All rights reserved. +* +* The information contained herein is the property of Thermo Fisher +* Scientific and is supplied without liability for errors or ommissions +* and no part may be reproduced, used or disclosed except as authorised +* by contract or other written permission. The copyright and the foregoing +* restriction on reproduction, use and disclosure extends to all the media +* in which this information may be embodied. +* +******************************************************************************/ +#ifndef WINAPI +#define WINAPI __stdcall +#endif + +#ifdef READER3_EXPORTS +#define EPDDLL_API __declspec(dllexport) WINAPI +#else +#define EPDDLL_API __declspec(dllimport) WINAPI +#endif + +#include +#include "Mk3Types.h" +extern "C" +{ + /******************************************************************************************************************************************** + * + * MK3 Specific Event Log + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteEventLogLevel_R3(CommsHandle hComms, uint8_t level, CompletionCallback callback = nullptr); + int32_t EPDDLL_API EndWriteEventLogLevel_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadEventLogLevel_R3(CommsHandle hComms, CompletionCallback callback = nullptr); + int32_t EPDDLL_API EndReadEventLogLevel_R3(CommsHandle hComms, CompletionToken token, uint8_t* level); + /******************************************************************************************************************************************** + * MK3 Specific Counts Acquisition + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadFlashTestCounts_R3(CommsHandle hComms, uint8_t counterIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadFlashTestCounts_R3(CommsHandle hComms, CompletionToken token, Counter_t counts[], uint8_t length, uint8_t * numCounts, uint32_t * utc); + /******************************************************************************************************************************************** + * + * Triggered Dose + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadTriggeredDoses_R3(CommsHandle hComms, uint8_t ids[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadTriggeredDoses_R3(CommsHandle hComms, CompletionToken token, MeasValue_t doses[], uint8_t length, uint8_t * numDoses, uint32_t * utc); + CompletionToken EPDDLL_API BeginWriteTriggeredDoses_R3(CommsHandle hComms, MeasValue_t doses[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTriggeredDoses_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * + * Real Time Clock + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteRTC_R3(CommsHandle hComms, uint32_t rtc, CompletionCallback callback = nullptr); + int32_t EPDDLL_API EndWriteRTC_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * + * MK3 Specific Calibration + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadDetectorThresholds_R3(CommsHandle hComms, uint8_t counterIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadDetectorThresholds_R3(CommsHandle hComms, CompletionToken token, DetectorThreshold_t thresholds[], uint8_t length, uint8_t * numThresholds); + CompletionToken EPDDLL_API BeginWriteDetectorThresholds_R3(CommsHandle hComms, DetectorThreshold_t thresholds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDetectorThresholds_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadSensitivities_R3(CommsHandle hComms, uint8_t sensIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadSensitivities_R3(CommsHandle hComms, CompletionToken token, CalSensitivity_t sensitivities[], uint8_t length, uint8_t * numSensitivities); + CompletionToken EPDDLL_API BeginWriteSensitivities_R3(CommsHandle hComms, CalSensitivity_t sensitivities[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteSensitivities_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadGains_R3(CommsHandle hComms, uint8_t sensIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadGains_R3(CommsHandle hComms, CompletionToken token, CalGain_t gains[], uint8_t length, uint8_t * numGains); + CompletionToken EPDDLL_API BeginWriteGains_R3(CommsHandle hComms, CalGain_t gains[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteGains_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteNotCalibratedFlag_R3(CommsHandle hComms, uint8_t notCalibrated, CompletionCallback callback); + int32_t EPDDLL_API EndWriteNotCalibratedFlag_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteGainableFlag_R3(CommsHandle hComms, uint8_t gainable, CompletionCallback callback); + int32_t EPDDLL_API EndWriteGainableFlag_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteLastCalibrationProcess_R3(CommsHandle hComms, CalProcess_t process, CompletionCallback callback); + int32_t EPDDLL_API EndWriteLastCalibrationProcess_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadLastCalibrationProcess_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadLastCalibrationProcess_R3(CommsHandle hComms, CompletionToken token, CalProcess_t * process); + CompletionToken EPDDLL_API BeginWriteCalibrationFacility_R3(CommsHandle hComms, CalFacility_t facility, CompletionCallback callback); + int32_t EPDDLL_API EndWriteCalibrationFacility_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadCalibrationFacility_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadCalibrationFacility_R3(CommsHandle hComms, CompletionToken token, CalFacility_t * facility); + CompletionToken EPDDLL_API BeginWriteCalReference_R3(CommsHandle hComms, uint32_t calRef, CompletionCallback callback); + int32_t EPDDLL_API EndWriteCalReference_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadCalReference_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadCalReference_R3(CommsHandle hComms, CompletionToken token, uint32_t * calRef); + CompletionToken EPDDLL_API BeginWriteCalDueDate_R3(CommsHandle hComms, uint32_t utc, CompletionCallback callback); + int32_t EPDDLL_API EndWriteCalDueDate_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadCalDueDate_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadCalDueDate_R3(CommsHandle hComms, CompletionToken token, uint32_t* utc); + CompletionToken EPDDLL_API BeginWriteGoldenFlag_R3(CommsHandle hComms, uint8_t onState, CompletionCallback callback); + int32_t EPDDLL_API EndWriteGoldenFlag_R3(CommsHandle hComms, CompletionToken token); + // ***** MK3 Specific Detector Threshold Limits + CompletionToken EPDDLL_API BeginReadDetectorThresholdLimits_R3(CommsHandle hComms, uint8_t counterIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadDetectorThresholdLimits_R3(CommsHandle hComms, CompletionToken token, DetectorThresholdLimit_t limits[], uint8_t length, uint8_t * numLimits); + // * MK3 Specific Dead Time Factors + CompletionToken EPDDLL_API BeginReadDeadTimeFactors_R3(CommsHandle hComms, uint8_t counterIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadDeadTimeFactors_R3(CommsHandle hComms, CompletionToken token, DeadTimeCoefficient_t thresholds[], uint8_t length, uint8_t * numFactors); + CompletionToken EPDDLL_API BeginWriteDeadTimeFactors_R3(CommsHandle hComms, DeadTimeCoefficient_t factors[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDeadTimeFactors_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * End of Calibration methods + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteDoseSaveInterval_R3(CommsHandle hComms, uint8_t intervalMins, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDoseSaveInterval_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadDoseSaveInterval_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadDoseSaveInterval_R3(CommsHandle hComms, CompletionToken token, uint8_t *intervalMins); + CompletionToken EPDDLL_API BeginClearEEPROM_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndClearEEPROM_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * MK3 Specific Identities + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadPcbSerialNum_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadPcbSerialNum_R3(CommsHandle hComms, CompletionToken token, uint32_t* pcbSerialNum); + CompletionToken EPDDLL_API BeginWritePcbSerialNumber_R3(CommsHandle hComms, uint32_t serNum, CompletionCallback callback); + int32_t EPDDLL_API EndWritePcbSerialNumber_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadFemSerialNum_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadFemSerialNum_R3(CommsHandle hComms, CompletionToken token, uint32_t* serialNum); + CompletionToken EPDDLL_API BeginWriteFemSerialNumber_R3(CommsHandle hComms, uint32_t serNum, CompletionCallback callback); + int32_t EPDDLL_API EndWriteFemSerialNumber_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadEpdPartNumber_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadEpdPartNumber_R3(CommsHandle hComms, CompletionToken token, PartNumber_t partNum); + CompletionToken EPDDLL_API BeginWriteEpdPartNumber_R3(CommsHandle hComms, PartNumber_t partNum, CompletionCallback callback); + int32_t EPDDLL_API EndWriteEpdPartNumber_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadModelName_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadModelName_R3(CommsHandle hComms, CompletionToken token, ModelName_t * name); + CompletionToken EPDDLL_API BeginWriteModelName_R3(CommsHandle hComms, ModelName_t name, CompletionCallback callback); + int32_t EPDDLL_API EndWriteModelName_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteCapabilities_R3(CommsHandle hComms, uint32_t capabilities, CompletionCallback callback); + int32_t EPDDLL_API EndWriteCapabilities_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteMarkNumber_R3(CommsHandle hComms, MarkNumber_t markNumber, CompletionCallback callback); + int32_t EPDDLL_API EndWriteMarkNumber_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadFirmwarePartNumber_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadFirmwarePartNumber_R3(CommsHandle hComms, CompletionToken token, FirmwarePartNumber_t partNum); + CompletionToken EPDDLL_API BeginReadFpgaVersion_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadFpgaVersion_R3(CommsHandle hComms, CompletionToken token, uint8_t *major, uint8_t *minor); + CompletionToken EPDDLL_API BeginWritePcbRevision_R3(CommsHandle hComms, uint16_t rev, CompletionCallback callback); + int32_t EPDDLL_API EndWritePcbRevision_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadPcbRevision_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadPcbRevision_R3(CommsHandle hComms, CompletionToken token, uint16_t* rev); + CompletionToken EPDDLL_API BeginReadPcbPartNumber_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadPcbPartNumber_R3(CommsHandle hComms, CompletionToken token, PcbPartNumber_t partNum); + CompletionToken EPDDLL_API BeginWritePcbPartNumber_R3(CommsHandle hComms, PcbPartNumber_t partNum, CompletionCallback callback); + int32_t EPDDLL_API EndWritePcbPartNumber_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteEpdRevision_R3(CommsHandle hComms, uint16_t rev, CompletionCallback callback); + int32_t EPDDLL_API EndWriteEpdRevision_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadEpdRevision_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadEpdRevision_R3(CommsHandle hComms, CompletionToken token, uint16_t* rev); + CompletionToken EPDDLL_API BeginReadRadioFirmwareVersion_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadRadioFirmwareVersion_R3(CommsHandle hComms, CompletionToken token, VersionNumber_t * version); + /******************************************************************************************************************************************** + * MK3 Detector Test Limits + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadDetectorTestLimits_R3(CommsHandle hComms, uint8_t counterIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadDetectorTestLimits_R3(CommsHandle hComms, CompletionToken token, DetectorTestLimit_t limits[], uint8_t length, uint8_t * numLimits); + CompletionToken EPDDLL_API BeginWriteDetectorTestLimits_R3(CommsHandle hComms, DetectorTestLimit_t limits[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDetectorTestLimits_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Pulse Mode + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWritePulseModeEnable_R3(CommsHandle hComms, uint8_t enable, CompletionCallback callback); + int32_t EPDDLL_API EndWritePulseModeEnable_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadPulseModeEnable_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadPulseModeEnable_R3(CommsHandle hComms, CompletionToken token, uint8_t * enabled); + CompletionToken EPDDLL_API BeginWritePulseModeIndustrial_R3(CommsHandle hComms, uint8_t industrial, CompletionCallback callback); + int32_t EPDDLL_API EndWritePulseModeIndustrial_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadPulseModeIndustrial_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadPulseModeIndustrial_R3(CommsHandle hComms, CompletionToken token, uint8_t * enabled); + CompletionToken EPDDLL_API BeginWritePulseModeThreshold_R3(CommsHandle hComms, uint8_t counts, CompletionCallback callback); + int32_t EPDDLL_API EndWritePulseModeThreshold_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadPulseModeThreshold_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadPulseModeThreshold_R3(CommsHandle hComms, CompletionToken token, uint8_t * counts); + CompletionToken EPDDLL_API BeginReadPulsedModeOverrangeThreshold_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadPulsedModeOverrangeThreshold_R3(CommsHandle hComms, CompletionToken token, float* threshold); + CompletionToken EPDDLL_API BeginWritePulsedModeOverrangeThreshold_R3(CommsHandle hComms, float threshold, CompletionCallback callback); + int32_t EPDDLL_API EndWritePulsedModeOverrangeThreshold_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadChirpEnable_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadChirpEnable_R3(CommsHandle hComms, CompletionToken token, uint8_t * enabled); + CompletionToken EPDDLL_API BeginWriteChirpEnable_R3(CommsHandle hComms, uint8_t enable, CompletionCallback callback); + int32_t EPDDLL_API EndWriteChirpEnable_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * MK3 Specific Wearer Identity + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadWearerDatabaseId_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadWearerDatabaseId_R3(CommsHandle hComms, CompletionToken token, DatabaseId_t * dbid); + CompletionToken EPDDLL_API BeginWriteWearerDatabaseId_R3(CommsHandle hComms, DatabaseId_t dbid, CompletionCallback callback); + int32_t EPDDLL_API EndWriteWearerDatabaseId_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadTaskId_R3(CommsHandle hComms, uint16_t type, CompletionCallback callback); + int32_t EPDDLL_API EndReadTaskId_R3(CommsHandle hComms, CompletionToken token, IdString_t * taskId); + CompletionToken EPDDLL_API BeginWriteTaskId_R3(CommsHandle hComms, IdString_t taskId, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTaskId_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadTaskDatabaseId_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadTaskDatabaseId_R3(CommsHandle hComms, CompletionToken token, DatabaseId_t * dbid); + CompletionToken EPDDLL_API BeginWriteTaskDatabaseId_R3(CommsHandle hComms, DatabaseId_t dbid, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTaskDatabaseId_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginClearWearerOrTaskId_R3(CommsHandle hComms, WearerAndTaskIdType_t ids[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndClearWearerOrTaskId_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * MK3 Graphics + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadGraphicSize_R3(CommsHandle hComms, uint16_t graphicId, CompletionCallback callback); + int32_t EPDDLL_API EndReadGraphicSize_R3(CommsHandle hComms, CompletionToken token, GraphicSize_t * size); + CompletionToken EPDDLL_API BeginClearGraphic_R3(CommsHandle hComms, uint16_t graphicId, CompletionCallback callback); + int32_t EPDDLL_API EndClearGraphic_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadGraphicData_R3(CommsHandle hComms, uint16_t graphicId, CompletionCallback callback); + int32_t EPDDLL_API EndReadGraphicData_R3(CommsHandle hComms, CompletionToken token, GraphicBitmap_t * data); + CompletionToken EPDDLL_API BeginWriteGraphicBitmap_R3(CommsHandle hComms, GraphicBitmap_t data, CompletionCallback callback); + int32_t EPDDLL_API EndWriteGraphicBitmap_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * MK3 Snapshot Summary + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadSnapshotSummary_R3(CommsHandle hComms, uint8_t snapshotNum, CompletionCallback callback); + int32_t EPDDLL_API EndReadSnapshotSummary_R3(CommsHandle hComms, CompletionToken token, Mk3SnapshotSummary_t * data); + CompletionToken EPDDLL_API BeginReadSnapshotMeasurements_R3(CommsHandle hComms, uint8_t snapshotNum, CompletionCallback callback); + int32_t EPDDLL_API EndReadSnapshotMeasurements_R3(CommsHandle hComms, CompletionToken token, Mk3SnapshotMeasurements_t * data); + CompletionToken EPDDLL_API BeginReadSnapshotCounters_R3(CommsHandle hComms, uint8_t snapshotNum, CompletionCallback callback); + int32_t EPDDLL_API EndReadSnapshotCounters_R3(CommsHandle hComms, CompletionToken token, Mk3SnapshotCounters_t * data); + CompletionToken EPDDLL_API BeginReadSnapshotAlarmThresholds_R3(CommsHandle hComms, uint8_t snapshotNum, CompletionCallback callback); + int32_t EPDDLL_API EndReadSnapshotAlarmThresholds_R3(CommsHandle hComms, CompletionToken token, Mk3SnapshotAlarmThresholds_t * data); + /******************************************************************************************************************************************** + * MK3 Specific Dose Profile + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteDoseProfileDoseIncrement_R3(CommsHandle hComms, float doseIncrement, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDoseProfileDoseIncrement_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteDoseProfileMeasurands_R3(CommsHandle hComms, uint8_t ids[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDoseProfileMeasurands_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadDoseProfileByIndex_R3(CommsHandle hComms, uint16_t start, uint16_t numRequested, CompletionCallback callback); + int32_t EPDDLL_API EndReadDoseProfileByIndex_R3(CommsHandle hComms, CompletionToken token, uint16_t * startIndex, DoseProfileRecord_t profile[], uint16_t length, uint16_t *count); + CompletionToken EPDDLL_API BeginReadDoseProfileConfiguration_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadDoseProfileConfiguration_R3(CommsHandle hComms, CompletionToken token, DoseProfileConfig_t * config); + CompletionToken EPDDLL_API BeginClearDoseProfile_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndClearDoseProfile_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Other MK3 Specific Functions + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginEnableDeepSleep_R3(CommsHandle hComms, uint8_t onState, CompletionCallback callback); + int32_t EPDDLL_API EndEnableDeepSleep_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginEnableCovertMode_R3(CommsHandle hComms, uint8_t onState, CompletionCallback callback); + int32_t EPDDLL_API EndEnableCovertMode_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginEnableManufacturerLockout_R3(CommsHandle hComms, uint8_t onState, CompletionCallback callback); + int32_t EPDDLL_API EndEnableManufacturerLockout_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginEnableProtectedSession_R3(CommsHandle hComms, uint8_t onState, CompletionCallback callback); + int32_t EPDDLL_API EndEnableProtectedSession_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginEnableResponderMode_R3(CommsHandle hComms, uint8_t onState, CompletionCallback callback); + int32_t EPDDLL_API EndEnableResponderMode_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginTriggerResponderMode_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndTriggerResponderMode_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadResponderTriggerUtc_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadResponderTriggerUtc_R3(CommsHandle hComms, CompletionToken token, uint32_t *utc); + CompletionToken EPDDLL_API BeginReadRunTime_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadRunTime_R3(CommsHandle hComms, CompletionToken token, uint32_t *seconds); + CompletionToken EPDDLL_API BeginWriteStayTime_R3(CommsHandle hComms, uint16_t minutes, CompletionCallback callback); + int32_t EPDDLL_API EndWriteStayTime_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadStayTime_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadStayTime_R3(CommsHandle hComms, CompletionToken token, uint16_t* minutes); + CompletionToken EPDDLL_API BeginWriteOffModeBatteryTestInterval_R3(CommsHandle hComms, uint16_t minutes, CompletionCallback callback); + int32_t EPDDLL_API EndWriteOffModeBatteryTestInterval_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadOffModeBatteryTestInterval_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadOffModeBatteryTestInterval_R3(CommsHandle hComms, CompletionToken token, uint16_t* minutes); + CompletionToken EPDDLL_API BeginWriteBatteryCriticalTiming_R3(CommsHandle hComms, uint16_t minutesToCritical, uint16_t minutesToShutdown, CompletionCallback callback); + int32_t EPDDLL_API EndWriteBatteryCriticalTiming_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadBatteryCriticalTiming_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadBatteryCriticalTiming_R3(CommsHandle hComms, CompletionToken token, uint16_t *minutesToCritical, uint16_t *minutesToShutdown); + CompletionToken EPDDLL_API BeginWriteBatteryTypeOverride_R3(CommsHandle hComms, int8_t batteryType, CompletionCallback callback); + int32_t EPDDLL_API EndWriteBatteryTypeOverride_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadBatteryTypeOverride_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadBatteryTypeOverride_R3(CommsHandle hComms, CompletionToken token, int8_t *batteryType); + CompletionToken EPDDLL_API BeginReadBatteryTypeFitted_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadBatteryTypeFitted_R3(CommsHandle hComms, CompletionToken token, int8_t *batteryType); + /******************************************************************************************************************************************** + * MK3 Specific Access Level Functions + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadAccessPermissionsForLevel_R3(CommsHandle hComms, AccessLevel_t level, CompletionCallback callback); + int32_t EPDDLL_API EndReadAccessPermissionsForLevel_R3(CommsHandle hComms, uint16_t commandIds[], uint16_t length, uint16_t *numIds, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteAccessPermissionsForLevel_R3(CommsHandle hComms, AccessLevel_t level, uint16_t commandIds[], uint16_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteAccessPermissionsForLevel_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * + * Displays + * + ********************************************************************************************************************************************/ + /******************************************************************************************************************************************** + * + * Display Quick Access List + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadQuickAccessDisplays_R3(CommsHandle hComms, uint8_t locationIndexes[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadQuickAccessDisplays_R3(CommsHandle hComms, CompletionToken token, QuickAccessDisplay_t displayIds[], uint8_t length, uint8_t * numDisplays); + CompletionToken EPDDLL_API BeginWriteQuickAccessDisplays_R3(CommsHandle hComms, QuickAccessDisplay_t displayIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteQuickAccessDisplays_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * + * Display Enables + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadDisplayEnables_R3(CommsHandle hComms, uint8_t menuIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadDisplayEnables_R3(CommsHandle hComms, CompletionToken token, DisplayAttributeMap_t enables[], uint8_t length, uint8_t * numItems); + CompletionToken EPDDLL_API BeginWriteDisplayEnables_R3(CommsHandle hComms, DisplayAttributeMap_t enables[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDisplayEnables_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadDisplayEnablePermissions_R3(CommsHandle hComms, AccessLevel_t level, CompletionCallback callback); + int32_t EPDDLL_API EndReadDisplayEnablePermissions_R3(CommsHandle hComms, CompletionToken token, AccessLevel_t * level, uint16_t permissions[], uint8_t length, uint8_t * numMenus); + CompletionToken EPDDLL_API BeginWriteDisplayEnablePermissions_R3(CommsHandle hComms, AccessLevel_t level, uint16_t enables[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDisplayEnablePermissions_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * + * Display Capabilities + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadDisplayCapability_R3(CommsHandle hComms, DisplayCapability_t capability, CompletionCallback callback); + int32_t EPDDLL_API EndReadDisplayCapability_R3(CommsHandle hComms, CompletionToken token, DisplayCapability_t* capabilityRequested, DisplayAttributeMap_t displayMaps[], uint8_t length, uint8_t * numItems); + /******************************************************************************************************************************************** + * + * Off Mode Display + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteOffModeDisplay_R3(CommsHandle hComms, OffModeDutyCycle dutyCycle, OffModeDisplayId_t offModeDispId, CompletionCallback callback); + int32_t EPDDLL_API EndWriteOffModeDisplay_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadOffModeDisplay_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadOffModeDisplay_R3(CommsHandle hComms, CompletionToken token, OffModeDutyCycle * dutyCycle, OffModeDisplayId_t * offModeDispId); + /******************************************************************************************************************************************** + * + * Backlight + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteBacklightEnable_R3(CommsHandle hComms, uint8_t enable, CompletionCallback callback); + int32_t EPDDLL_API EndWriteBacklightEnable_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadBacklightEnable_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadBacklightEnable_R3(CommsHandle hComms, CompletionToken token, uint8_t * enabled); + CompletionToken EPDDLL_API BeginTriggerBacklight_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndTriggerBacklight_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteSwitchOnFromButton_R3(CommsHandle hComms, uint8_t enable, CompletionCallback callback); + int32_t EPDDLL_API EndWriteSwitchOnFromButton_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadSwitchOnFromButton_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadSwitchOnFromButton_R3(CommsHandle hComms, CompletionToken token, uint8_t * enabled); + CompletionToken EPDDLL_API BeginWriteBacklightPeriod_R3(CommsHandle hComms, uint8_t seconds, CompletionCallback callback); + int32_t EPDDLL_API EndWriteBacklightPeriod_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadBacklightPeriod_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadBacklightPeriod_R3(CommsHandle hComms, CompletionToken token, uint8_t * seconds); + CompletionToken EPDDLL_API BeginWriteBacklightBrightness_R3(CommsHandle hComms, uint8_t level, CompletionCallback callback); + int32_t EPDDLL_API EndWriteBacklightBrightness_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadBacklightBrightness_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadBacklightBrightness_R3(CommsHandle hComms, CompletionToken token, uint8_t* level); + /******************************************************************************************************************************************** + * + * Display Options + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteDisplayOptionsLock_R3(CommsHandle hComms, uint8_t value, uint8_t mask, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDisplayOptionsLock_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadDisplayOptionsLock_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadDisplayOptionsLock_R3(CommsHandle hComms, CompletionToken token, uint8_t * value); + // end of display group + /******************************************************************************************************************************************** + * + * Alarm Configuration + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteAlarmConfiguration_R3(CommsHandle hComms, AlarmConfig_t alarmConfigs[], uint16_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteAlarmConfiguration_R3(CommsHandle hComms, CompletionToken token); + __declspec(deprecated("BeginReadAlarmConfiguration_R3 is now deprecated. Use BeginReadAlarmConfiguration instead")) + CompletionToken EPDDLL_API BeginReadAlarmConfiguration_R3(CommsHandle hComms, AlarmConfigId alarmConfigIds[], uint16_t length, CompletionCallback callback); + __declspec(deprecated("EndReadAlarmConfiguration_R3 is now deprecated. Use EndReadAlarmConfiguration instead")) + int32_t EPDDLL_API EndReadAlarmConfiguration_R3(CommsHandle hComms, CompletionToken token, AlarmConfig_t alarmConfigs[], uint16_t length, uint16_t * numConfigs); + CompletionToken EPDDLL_API BeginWriteAlarmConfigurationLock_R3(CommsHandle hComms, AlarmConfig_t alarmConfigLocks[], uint16_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteAlarmConfigurationLock_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadAlarmConfigurationLock_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadAlarmConfigurationLock_R3(CommsHandle hComms, CompletionToken token, AlarmConfig_t alarmConfigLocks[], uint16_t length, uint16_t * numConfigs); + CompletionToken EPDDLL_API BeginReadMeasurandIds_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadMeasurandIds_R3(CommsHandle hComms, CompletionToken token, MeasurementId ids[], uint8_t length, uint8_t * numIds); + /******************************************************************************************************************************************** + * + * Telemetry + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadTelemetryEnable_R3(CommsHandle hComms, uint8_t mode, CompletionCallback callback); + int32_t EPDDLL_API EndReadTelemetryEnable_R3(CommsHandle hComms, uint8_t *mode, uint8_t *enabled, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteTelemetryEnable_R3(CommsHandle hComms, uint8_t mode, uint8_t enabled, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTelemetryEnable_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadTelemetryTxPower_R3(CommsHandle hComms, uint8_t mode, CompletionCallback callback); + int32_t EPDDLL_API EndReadTelemetryTxPower_R3(CommsHandle hComms, uint8_t *mode, int8_t *dBm, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteTelemetryTxPower_R3(CommsHandle hComms, uint8_t mode, int8_t dBm, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTelemetryTxPower_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadTelemetryAdvContent_R3(CommsHandle hComms, uint8_t mode, CompletionCallback callback); + int32_t EPDDLL_API EndReadTelemetryAdvContent_R3(CommsHandle hComms, uint8_t *mode, uint8_t *advFlags, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteTelemetryAdvContent_R3(CommsHandle hComms, uint8_t mode, uint8_t advFlags, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTelemetryAdvContent_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadTelemetryAdvConfig_R3(CommsHandle hComms, uint8_t mode, CompletionCallback callback); + int32_t EPDDLL_API EndReadTelemetryAdvConfig_R3(CommsHandle hComms, TeleAdvConfig_t *config, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteTelemetryAdvConfig_R3(CommsHandle hComms, TeleAdvConfig_t *config, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTelemetryAdvConfig_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadTelemetryCxnConfig_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadTelemetryCxnConfig_R3(CommsHandle hComms, TeleCxnConfig_t *config, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteTelemetryCxnConfig_R3(CommsHandle hComms, TeleCxnConfig_t *config, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTelemetryCxnConfig_R3(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadTelemetryReportInterval_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadTelemetryReportInterval_R3(CommsHandle hComms, uint8_t *interval, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteTelemetryReportInterval_R3(CommsHandle hComms, uint8_t interval, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTelemetryReportInterval_R3(CommsHandle hComms, CompletionToken token); + /*Debug Registers*/ + CompletionToken EPDDLL_API BeginReadDebugRegister_R3(CommsHandle hComms, uint8_t registerId, CompletionCallback callback); + int32_t EPDDLL_API EndReadDebugRegister_R3(CommsHandle hComms, uint8_t *registerId, uint32_t *value, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteDebugRegister_R3(CommsHandle hComms, uint8_t registerId, uint32_t value, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDebugRegister_R3(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * + * MK3 Specific Zone Control + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginValidateEpdOwnerKey_R3(CommsHandle hComms, uint8_t encData[], CompletionCallback callback); + int32_t EPDDLL_API EndValidateEpdOwnerKey_R3(CommsHandle hComms, uint8_t *decData, CompletionToken token); + /******************************************************************************************************************************************** + * + * MK3 Firmware Update + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginInitiateFirmwareUpdate_R3(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndInitiateFirmwareUpdate_R3(CommsHandle hComms, CompletionToken token); +} +#endif \ No newline at end of file diff --git a/EpdBase3/Epd3Base.cpp b/EpdBase3/Epd3Base.cpp new file mode 100644 index 0000000..9fcf5e6 --- /dev/null +++ b/EpdBase3/Epd3Base.cpp @@ -0,0 +1,909 @@ +#include "pch.h" +#pragma unmanaged +#include "Epd3Base.h" +#include "TimeFunctions.h" +#pragma unmanaged + + +Epd3Base::Epd3U* current; + +void WINAPI completion(CommsHandle hComms, CompletionToken token) +{ + SetEvent(current->hCompletion); +} + +void WINAPI discovery(CommsHandle hComms, DiscoveryId const discovered[], int32_t count) +{ + if (count > 0) + { + current->CurrentDeviceID = discovered[0].Id; + current->DeviceCount = count; + memcpy(¤t->Epd, &discovered[0], sizeof(DiscoveryId)); + SetEvent(current->hCompletion); + } +} + +Epd3Base::Epd3U::Epd3U(int _comport) +{ + port = _comport; + comPort[3] = 48 + _comport; + CommsInitialized = 0; + epdComsHandle = INVALID_HANDLE_VALUE; + Error = 123; + current = this; + if (_comport == 0) return; + if (hCompletion == 0) hCompletion = CreateEvent(NULL, TRUE, FALSE, NULL); + if (hWaitTimer == 0) hWaitTimer = CreateEvent(NULL, TRUE, FALSE, NULL); +} + +Epd3Base::Epd3U::~Epd3U() +{ + EndCom(); + if (hCompletion != 0) { CloseHandle(hCompletion); hCompletion = 0; } +} + +DWORD Epd3Base::Epd3U::StartCom() +{ + ErrorReason = 0; + int mx = 10; + epdComsHandle = INVALID_HANDLE_VALUE; + if (port == 0) { + CommsInitialized = 1; + return 1; + } + if (CommsInitialized == 0) { + epdComsHandle = CreateReaderInterface(); + Dll3RV = OpenReader(epdComsHandle, comPort); + if (Dll3RV == 0) + { + Dll3RV = SetMultipleDiscoveryMode(epdComsHandle, false); + CommsInitialized = 1; + } + } + return Dll3RV; +} + +void Epd3Base::Epd3U::EndCom() +{ + if (CommsInitialized == 1) { + if (epdComsHandle != INVALID_HANDLE_VALUE) { + CloseReader(epdComsHandle); + DestroyReaderInterface(epdComsHandle); + } + } + CommsInitialized = 0; + epdComsHandle = INVALID_HANDLE_VALUE; +} + +/// +/// +/// +/// +/// rv=1 bij timeout <>1 voor error +int Epd3Base::Epd3U::StartDiscover(int tokentimeout) +{ + int32_t rv=1; + Error = 0; + if (port == 0) { + DeviceCount = 1; + DeviceIDs[0] = 768; + return 0; + } + Dll3RV = SetDiscoveryCacheTimeout(epdComsHandle, tokentimeout); + //Dll3RV = Commit3(epdComsHandle); + DeviceCount = 0; ConnectTries = 1; + ResetEvent(hCompletion); + ConnectTimerFired = 0; + current = this; + Dll3RV = StartDiscovery(epdComsHandle, discovery); + if (Dll3RV == 0) { + Dll3RV = WaitForSingleObject(hCompletion, tokentimeout); + if (Dll3RV == WAIT_OBJECT_0) rv = 1; + else if (Dll3RV == WAIT_TIMEOUT) { + rv = 1; ConnectTimerFired = 1; + } else rv = 2; + } + if ( DeviceCount > 0) { + Dll3RV = Connect3(epdComsHandle, Epd, true); + if (Dll3RV != 0) rv = 2; + } + return rv; +} + +int Epd3Base::Epd3U::OpenDev(DiscoveryId DeviceID) +{ + CurrentDeviceID = DeviceID.Id; + if (epdComsHandle != INVALID_HANDLE_VALUE) + { + Dll3RV = Connect3(epdComsHandle, DeviceID, true); + } + else { Dll3RV = 0; } + return Dll3RV; +} + +void Epd3Base::Epd3U::CloseDev(bool CloseAll) +{ + if (epdComsHandle != INVALID_HANDLE_VALUE) { + Disconnect(epdComsHandle); + if (CloseAll) { + CloseReader(epdComsHandle); + DestroyReaderInterface(epdComsHandle); + epdComsHandle = INVALID_HANDLE_VALUE; + } + } +} + + +BYTE checkStatus(OpStatusFlags status, OpStatusFlags flag) +{ + if (((uint32_t)status & (uint32_t)flag) == (uint32_t)flag) return 1; else return 0; +} +BYTE checkStatus(FaultStatusFlags status, FaultStatusFlags flag) +{ + if (((uint32_t)status & (uint32_t)flag) == (uint32_t)flag) return 1; else return 0; +} + +BYTE checkStatus(AlarmStatusFlags status, AlarmStatusFlags flag) +{ + uint32_t ustatus = (uint32_t)status; + uint32_t uflag = (uint32_t)flag; + if ((ustatus & uflag) == uflag) return 1; else return 0; +} +BYTE checkStatus(DoseAlarmFlags status, DoseAlarmFlags flag) +{ + if (((uint32_t)status & (uint32_t)flag) == (uint32_t)flag) return 1; else return 0; +} + +void Epd3Base::Epd3U::DecodeStatus() +{ + DetectorsOn = checkStatus(epd3status.OperatingStatus, OpStatusFlags::EpdOn); + EPDIssued = checkStatus(epd3status.OperatingStatus, OpStatusFlags::EpdIssued); + EPDLocked = checkStatus(epd3status.OperatingStatus, OpStatusFlags::GainAdjustable); + EPDTesting = checkStatus(epd3status.OperatingStatus, OpStatusFlags::DetectorTestRequested); + EPDFaulty = checkStatus(epd3status.FaultStatus, FaultStatusFlags::EpdFaulty); + + EPDNewFault = checkStatus(epd3status.FaultStatus, FaultStatusFlags::EpdFaulty); + EPDComFault = checkStatus(epd3status.FaultStatus, FaultStatusFlags::EarlyCommsTermination); + EPDCalFault = checkStatus(epd3status.FaultStatus, FaultStatusFlags::NotCalibrated); + EPDDetFault = checkStatus(epd3status.FaultStatus, FaultStatusFlags::DetectorTestFail); + EPDEprFault = checkStatus(epd3status.FaultStatus, FaultStatusFlags::EepromFailure); + EPDTrhFault = checkStatus(epd3status.FaultStatus, FaultStatusFlags::BadThreshold); + + for (int ix = 0; ix < 4; ix++) + { + DoseAlarmFlags status = epd3status.DoseAlarms[ix].Status; + switch ((MeasurementId)epd3status.DoseAlarms[ix].Id) + { + case MeasurementId::Meas_Hp07: + case MeasurementId::Meas_Hp10N: + AlarmDoseHP07N = checkStatus(status, DoseAlarmFlags::DoseAlarm); + AlarmRateHP07N = checkStatus(status, DoseAlarmFlags::RateAlarm); + break; + case MeasurementId::Meas_Hp10: + case MeasurementId::Meas_Hp10G: + AlarmDoseHP101G = checkStatus(status, DoseAlarmFlags::DoseAlarm); + AlarmDoseHP102G = AlarmDoseHP101G; + AlarmRateHP101G = checkStatus(status, DoseAlarmFlags::RateAlarm); + AlarmRateHP102G = AlarmRateHP101G; + break; + } + } + OtherAlarmReturn = checkStatus(epd3status.AlarmStatus, AlarmStatusFlags::ReturnForRead); + OtherAlarmBatLow = checkStatus(epd3status.AlarmStatus, AlarmStatusFlags::LowBattery); + OtherAlarmCarrier = checkStatus(epd3status.AlarmStatus, AlarmStatusFlags::TelemetryAlert); + OtherAlarmBatVolt = checkStatus(epd3status.AlarmStatus, AlarmStatusFlags::LowBattery); +} + +void Epd3Base::Epd3U::SetTime() //Only R3 +{ + if (Epd.Gen == EpdGeneration::Mk3) { + utc = TimeFunctions::NowToEpdTime(Epd.Gen == EpdGeneration::Mk2); + token = BeginWriteRTC_R3(epdComsHandle, utc, nullptr); + uint32_t r = Commit3(epdComsHandle); + Dll3RV = EndWriteRTC_R3(epdComsHandle, token); + } +} + +int Epd3Base::Epd3U::ReadStatus() +{ + int32_t r; //0=ok + Error = 0; + if (port == 0) { + EpdID = 4567; + EpdType = EpdTypes::Mk2BetaGamma; + isBG = 1; + isMK3 = false; + FunctionFlags = 0x000; + Epd.Gen = EpdGeneration::None; + Epd.MaxBaud = 0; + Epd.Id = EpdID; + return 0; + } + + isMK3 = Epd.Gen == EpdGeneration::Mk3; + OperatingStatus = (OpStatusFlags)0U; + AlarmStatus = (AlarmStatusFlags)0U; + ErrorStatus = (FaultStatusFlags)0; + IssueCount = OtherAlarms = EEPROMBadSectors = 0; + RealTime = EpdClock = OffTime = EpdID = 0; + ErrorSource = ErrorReason = ErrorData = 0; + HardVersion = SoftVersion = FunctionFlags = 0; + + SetResponseTimeout(epdComsHandle, 2000); + token = BeginReadStatus(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndReadStatus(epdComsHandle, token, &epd3status); + + if (r != 0) { + Error = GetErrorCode(); return r; + } + + IssueCount = epd3status.IssueCount; + OperatingStatus = epd3status.OperatingStatus; + AlarmStatus = epd3status.AlarmStatus; + ErrorStatus = epd3status.FaultStatus; + OtherAlarms = epd3status.OtherBits; + + uint32_t EpdID32; + uint32_t capabilities; + MarkNumber_t MarkNumber; + VersionNumber_t VersionNumber; + + token = BeginReadEpdIdentities(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndReadEpdIdentities(epdComsHandle, token, &EpdID32, (EpdTypes*)&EpdType, &capabilities, &MarkNumber, &VersionNumber, NULL, 0); + if (r != 0) { + Error = GetErrorCode(); return r; + } + + EpdID = EpdID32; + isBG = (EpdType == EpdTypes::Mk2BetaGamma || EpdType == EpdTypes::Mk3BetaGamma); + DecodeStatus(); + + memset(WearerID, 0, WearerIDLength + 1); + memset(WearerName, 0, WearerNameLength + 1); + + //Counts + uint8_t length = 0; + countsRead = 0; utc = 0; seconds = 0; + token = BeginReadCounts(epdComsHandle, nullptr, 0, nullptr); + r = Commit3(epdComsHandle); + r = EndReadCounts(epdComsHandle, token, Counts, MaxCounts, &countsRead, &utc, &seconds); + // - 101 = InvalidParam + // - 104 = FunctionFail, + if (r != 0 && r != -104) { + Error = GetErrorCode(); return r; + } + decodeCounters(countsRead); //HG,SG .. + + //Wearer + if (EPDIssued) { + IdString_t mk3WearerID; + //Mk2 EPDs only support Name and Primary ID + token = BeginReadWearerId(epdComsHandle, static_cast(WearerIdType::WearerId_Name), nullptr); + r = Commit3(epdComsHandle); + r = EndReadWearerId(epdComsHandle, token, &mk3WearerID); + if (r != 0) { + Error = GetErrorCode(); return r; + } + + if (mk3WearerID.Length > WearerNameLength) mk3WearerID.Length = WearerNameLength; + memcpy(WearerName, mk3WearerID.Utf8String, mk3WearerID.Length); WearerName[mk3WearerID.Length] = 0; + + token = BeginReadWearerId(epdComsHandle, static_cast(WearerIdType::WearerId_Primary), nullptr); + r = Commit3(epdComsHandle); + r = EndReadWearerId(epdComsHandle, token, &mk3WearerID); + if (r != 0) { + Error = GetErrorCode(); return r; + } + + if (mk3WearerID.Length > WearerIDLength) mk3WearerID.Length = WearerIDLength; + memcpy(this->WearerID, mk3WearerID.Utf8String, mk3WearerID.Length); WearerName[mk3WearerID.Length] = 0; + for (int i = 0; i < mk3WearerID.Length; i++) + if (WearerID[i] == 0xb) WearerID[i] = '0'; else WearerID[i] |= 0x30; + } + + //Times + //1601-01-01T00:00:00Z. + //MK2 .. some utc... but no real time clock + if (utc == 0) { + token = BeginReadRTC(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndReadRTC(epdComsHandle, token, &utc); //EpdClock for MK2 + EpdClock = utc; + utc = TimeFunctions::NowToEpdTime(true); + } + else { + EpdClock = utc; + } + + FILETIME fUTC; + TimeFunctions::EpdTimeToFileTime(utc, &fUTC, Epd.Gen == EpdGeneration::Mk2); + FileTimeToSystemTime(&fUTC, &tRealTime); + + return r; +} + + +/// +/// discover, connect and read status +/// +/// +/// 0=success 1=connect error, 2 = no devices, 3= error reading status +int Epd3Base::Epd3U::ConnectAndStatus(int tokenSourceTimeout) +{ + WORD dllStatus; + int rv = 1; + if (CommsInitialized == 0) StartCom(); + dllStatus = StartDiscover(tokenSourceTimeout); + if (dllStatus != 1) rv = 1; //Connect error + else if (DeviceCount < 1) rv = 2; //TO + else if (ReadStatus() != 0) rv = 1; //Read Error + else rv = 0; + return rv; +} + +void Epd3Base::Epd3U::decodeSensitivities(int count) { + + K1 = K2 = K3 = K4 = K4 = K6 = 0.0F; + for (int ix = count - 1; ix >= 0; ix--) { + switch ((SensitivityId)sensitivities[ix].id) + { + case SensitivityId::Hg1Sens10G: K1 = sensitivities[ix].value; break; + case SensitivityId::Sg1Sens10G: K2 = sensitivities[ix].value; break; + case SensitivityId::Hg1Sens07G: K3 = sensitivities[ix].value; break; //Neutr=FN + case SensitivityId::Sg1Sens07G: K4 = sensitivities[ix].value; break; //Neutr=AN + case SensitivityId::Fb1Sens07B: K5 = sensitivities[ix].value; break; + case SensitivityId::Sg2Sens07B: K6 = sensitivities[ix].value; break; + default: break; + } + } +} +void Epd3Base::Epd3U::decodetotDoses(int count) +{ + //doses + Hp10Total = Hp07Total = 0; + for (int ix = 0; ix < count; ix++) + { + switch ((MeasurementId)doses[ix].id) { + case MeasurementId::Meas_Hp07: Hp07Total = doses[ix].value; break; + case MeasurementId::Meas_Hp10: Hp10Total = doses[ix].value; break; + case MeasurementId::Meas_Hp10N: Hp07Total = doses[ix].value; break; + case MeasurementId::Meas_Hp10G: Hp10Total = doses[ix].value; break; + } + } +} +void Epd3Base::Epd3U::decodeDoses(int count) +{ + //doses + Hp10Dose = Hp07Dose = 0; + for (int ix = 0; ix < count; ix++) + { + switch ((MeasurementId)doses[ix].id) { + case MeasurementId::Meas_Hp07: Hp07Dose = doses[ix].value; break; + case MeasurementId::Meas_Hp10: Hp10Dose = doses[ix].value; break; + case MeasurementId::Meas_Hp10N: Hp07Dose = doses[ix].value; break; + case MeasurementId::Meas_Hp10G: Hp10Dose = doses[ix].value; break; + } + } +} +void Epd3Base::Epd3U::decodePeakRates(int count) +{ + //Rates + Hp10Peak = Hp07Peak = 0; + Hp10Time = Hp07Time = 0; + for (int ix = 0; ix < count; ix++) + { + switch ((MeasurementId)peakRates[ix].id) { + case MeasurementId::Meas_Hp07: + case MeasurementId::Meas_Hp10N: + Hp07Peak = peakRates[ix].value; + Hp07Time = peakRates[ix].timestamp; + break; + case MeasurementId::Meas_Hp10: + case MeasurementId::Meas_Hp10G: + Hp10Peak = peakRates[ix].value; + Hp10Time = peakRates[ix].timestamp; + break; + } + } +} +void Epd3Base::Epd3U::decodeCounters(int count) +{ + HG = SG = BC = FB = 0; + for (int ix = 0; ix < count; ix++) + { + switch ((CounterType)Counts[ix].type) { + case CounterType::Counter_Hg1: HG = Counts[ix].value; break; + case CounterType::Counter_Sg1: SG = Counts[ix].value; break; + case CounterType::Counter_Sg2: BC = Counts[ix].value; break; + case CounterType::Counter_Fb1: FB = Counts[ix].value; break; + } + } +} +void Epd3Base::Epd3U::decodeBaseCounters(int count) +{ + for (int ix = 0; ix < count; ix++) + { + switch ((CounterType)Counts[ix].type) { + case CounterType::Counter_Hg1: D1 = Counts[ix].value; break; + case CounterType::Counter_Sg1: D2 = Counts[ix].value; break; + case CounterType::Counter_Sg2: D3 = Counts[ix].value; break; + case CounterType::Counter_Fb1: D4 = Counts[ix].value; break; + } + } + +} +void Epd3Base::Epd3U::decodeTreshold(Mk3AlarmThresholds_t* th) +{ + float* pThDose = nullptr, * pThRate = nullptr, * pTHDoseWarning = nullptr, * pTHRateWarning = nullptr; + switch ((MeasurementId)th->MeasId) + { + case MeasurementId::Meas_Hp07: + case MeasurementId::Meas_Hp10N: + Hp07THDose = 0; Hp07RateOn = 0; Hp07RateOff = 0; + pThDose = &Hp07THDose; + pThRate = &Hp07RateOn; + pTHDoseWarning = pTHRateWarning = nullptr; + break; + case MeasurementId::Meas_Hp10: + Hp10THDose1 = 0; Hp10THDose2 = 0; + Hp10Rate1On = Hp10Rate2On = Hp10Rate1Off = Hp10Rate2Off = 0; + pThDose = &Hp10THDose2; + pThRate = &Hp10Rate2On; + pTHDoseWarning = &Hp10THDose1; + pTHRateWarning = &Hp10Rate1Off; + break; + } + + for (int ix = 0; ix < th->NumberThresholds; ix++) + { + switch ((ThresholdId)th->Thresholds[ix].Id) { + case ThresholdId::Thres_DoseAlarm: if (pThDose != nullptr) *pThDose = th->Thresholds[ix].Value; break; + case ThresholdId::Thres_DoseWarning: if (pTHDoseWarning != nullptr) *pTHDoseWarning = th->Thresholds[ix].Value; break; + case ThresholdId::Thres_RateAlarm: if (pThRate != nullptr) *pThRate = th->Thresholds[ix].Value; break; + case ThresholdId::Thres_RateWarning: if (pTHRateWarning != nullptr) *pTHRateWarning = th->Thresholds[ix].Value; break; + } + } +} +void Epd3Base::Epd3U::encodeTreshold(Mk3AlarmThresholds_t* th) +{ + //th.MeasId + float* pThDose, * pThRate, * pTHDoseWarning, * pTHRateWarning; + + th->NumberThresholds = 4; + switch ((MeasurementId)th->MeasId) { + case MeasurementId::Meas_Hp07: + case MeasurementId::Meas_Hp10N: + pThDose = &Hp07THDose; + pTHDoseWarning = &Hp07THDose; + pThRate = &Hp07RateOn; + pTHRateWarning = &Hp07RateOff; + RatePct[0].MeasId = th->MeasId; + RatePct[0].Value = 85; // (int)(Hp07RateOff * 100.0 / Hp07RateOn); + break; + case MeasurementId::Meas_Hp10: + case MeasurementId::Meas_Hp10G: + pThDose = &Hp10THDose2; + pThRate = &Hp10Rate2On; + pTHDoseWarning = &Hp10THDose1; + pTHRateWarning = &Hp10Rate1On; + RatePct[1].MeasId = th->MeasId; + RatePct[1].Value = 85; // (int)(Hp10Rate2Off * 100.0 / Hp10Rate2On); + break; + default: + pThDose = &Hp07THDose; + pTHDoseWarning = &Hp07THDose; + pThRate = &Hp07RateOn; + pTHRateWarning = &Hp07RateOff; + } + + th->Thresholds[0].Id = (uint16_t)ThresholdId::Thres_DoseAlarm; + th->Thresholds[0].Value = *pThDose; + th->Thresholds[1].Id = (uint16_t)ThresholdId::Thres_RateAlarm; + th->Thresholds[1].Value = *pThRate; + th->Thresholds[2].Id = (uint16_t)ThresholdId::Thres_DoseWarning; + th->Thresholds[2].Value = *pTHDoseWarning; + th->Thresholds[3].Id = (uint16_t)ThresholdId::Thres_RateWarning; + th->Thresholds[3].Value = *pTHRateWarning; +} +void Epd3Base::Epd3U::decodedTresholds(int numdTresholds) +{ + for (int ix = 0; ix < numdTresholds; ix++) { + switch ((CounterType)dTresholds[ix].type) { + case CounterType::Counter_Hg1: HG = dTresholds[ix].value; break; + case CounterType::Counter_Sg1: SG = dTresholds[ix].value; break; + case CounterType::Counter_Sg2: BC = dTresholds[ix].value; break; + case CounterType::Counter_Fb1: FB = dTresholds[ix].value; break; + case CounterType::Counter_An1: BC = dTresholds[ix].value; break; //AN-> BC + case CounterType::Counter_Fn2: FB = dTresholds[ix].value; break; //FN->FB + + + } + } +} + +/// +/// +/// +/// 0 OK +WORD Epd3Base::Epd3U::ReadSensitivitiesAndTresholds() +{ + int32_t r = 0; + if (Epd.Gen == EpdGeneration::Mk2) { + uint16_t HGSens10; + uint16_t SGSens10; + uint16_t HGSens07; + uint16_t SGSens07; + uint16_t FBSens07; + uint16_t BCSens07; + uint16_t SGthresh; + uint16_t BCthresh; + uint16_t FBthresh; + uint16_t HGthresh; + + //ResetEvent(Ev1); + //token = BeginReadDoses(epdComsHandle, new uint8_t[]{ 0, 1 }, 2 , completion); + token = BeginReadCalibrationData_R2(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + //r = WaitForSingleObject(Ev1, 10000); // no time-out interval + r = EndReadCalibrationData_R2(epdComsHandle, token, + &HGSens10, + &SGSens10, + &HGSens07, + &SGSens07, + &FBSens07, + &BCSens07, + &SGthresh, + &BCthresh, + &FBthresh, + &HGthresh + ); + K1 = HGSens10; + K2 = SGSens10; + K3 = HGSens07; + K4 = SGSens07; + K5 = FBSens07; + K6 = BCSens07; + SG = SGthresh; + BC = BCthresh; + FB = FBthresh; + HG = HGthresh; + } + else { + + token = BeginReadDetectorThresholds_R3(epdComsHandle, nullptr, 0, nullptr); + r = Commit3(epdComsHandle); + r = EndReadDetectorThresholds_R3(epdComsHandle, token, dTresholds, MaxTresholds, &numTresholds); + decodedTresholds(numTresholds); + + + token = BeginReadSensitivities(epdComsHandle, nullptr, 0, nullptr); + r = Commit3(epdComsHandle); + r = EndReadSensitivities(epdComsHandle, token, sensitivities, MaxSensitivities, &numSensitivities); + decodeSensitivities(numSensitivities); + } + return r; +} +/// +/// +/// +/// 0 OK +WORD Epd3Base::Epd3U::ReadDoses() +{ + int32_t r = 1; + if (port == 0) { + Hp10Dose = Hp07Dose = Hp10Total = Hp07Total = 0.0; + Knocks = Resets = QualityData = 21; + Hp10Peak = Hp07Peak = 0.0; + Hp10Time = Hp07Time = 1000; + ErrorSource = ErrorReason = ErrorData = 0; + K1 = 1; K2 = 2; K3 = 3; K4 = 4; K5 = 5; K6 = 6; + SG = 7; BC = 8; FB = 9; HG = 10; + return 0; + } + + numDoses = 0; utc = 0; + SetResponseTimeout(epdComsHandle, 2000); + //ResetEvent(Ev1); + token = BeginReadDoses(epdComsHandle, nullptr, 0, nullptr); + r = Commit3(epdComsHandle); + //r = WaitForSingleObject(Ev1, 10000); // no time-out interval + r = EndReadDoses(epdComsHandle, token, doses, MaxDoses, &numDoses, &utc); + decodeDoses(numDoses); + + //ResetEvent(Ev1); + token = BeginReadTotalDoses(epdComsHandle, nullptr, 0, nullptr); + r = Commit3(epdComsHandle); + //r = WaitForSingleObject(Ev1, 10000); // no time-out interval + r = EndReadTotalDoses(epdComsHandle, token, totdoses, MaxDoses, &numtotDoses, &utc); + decodetotDoses(numtotDoses); + + token = BeginReadQualityData(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndReadQualityData(epdComsHandle, token, &quality); + Knocks = quality.Knocks; + Resets = quality.PowerCycles; + + token = BeginReadPeakRates(epdComsHandle, nullptr, 0, nullptr); + r = Commit3(epdComsHandle); + r = EndReadPeakRates(epdComsHandle, token, peakRates, MaxPeakRates, &numRates); + decodePeakRates(numRates); + + ReadSensitivitiesAndTresholds(); + return r; +} +void Epd3Base::Epd3U::ClearDoses() +{ + int32_t r = 1; + token = BeginClearDose(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndClearDose(epdComsHandle, token); + if (r != 0) + goto error; + + token = BeginClearTotalDose(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndClearTotalDose(epdComsHandle, token); + if (r != 0) + goto error; + + token = BeginClearPeakRates(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndClearPeakRates(epdComsHandle, token); + if (r != 0) + goto error; + +error: return; +} +void Epd3Base::Epd3U::ClearAlarms() +{ + token = BeginClearFaultStatus(epdComsHandle, nullptr); + int32_t r = Commit3(epdComsHandle); + r = EndClearFaultStatus(epdComsHandle, token); + + token = BeginClearLatchedAlarms(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndClearLatchedAlarms(epdComsHandle, token); + + token = BeginClearAllStatus(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndClearAllStatus(epdComsHandle, token); +} +WORD Epd3Base::Epd3U::PrepareForIssue() +{ + if (port == 0) return 0; + //CommitRV = WriteConfig(); + ClearDoses(); + ClearAlarms(); + return 0; +} +WORD Epd3Base::Epd3U::ReadAlarmConfig() { + //Alleen MK3 ? leeg bij MK2 + token = BeginReadAlarmConfiguration(epdComsHandle, nullptr, 0, nullptr); + int32_t r = Commit3(epdComsHandle); + r = EndReadAlarmConfiguration(epdComsHandle, token, alarmConfig, MaxAlarmConfig, &numAlarm); + return numAlarm; +} +WORD Epd3Base::Epd3U::ReadAlarmTresholds() { + //Alleen MK3 ? leeg bij MK2 + + bool isNeutron = (EpdType == EpdTypes::Mk2Neutron || EpdType == EpdTypes::Mk3Neutron); + uint8_t measID; + uint32_t r; + + + if (isNeutron) measID = (uint8_t)MeasurementId::Meas_Hp10N; else measID = (uint8_t)MeasurementId::Meas_Hp07; + + SetResponseTimeout(epdComsHandle, 2000); + //ResetEvent(Ev1); + hp07tresholds.MeasId = measID; + token = BeginReadAlarmThresholds(epdComsHandle, (uint8_t)hp07tresholds.MeasId, nullptr, 0, nullptr); + r = Commit3(epdComsHandle); + //r = WaitForSingleObject(Ev1, 10000); // no time-out interval + r = EndReadAlarmThresholds(epdComsHandle, token, &hp07tresholds); + decodeTreshold(&hp07tresholds); + + if (isNeutron) measID = (uint8_t)MeasurementId::Meas_Hp10G; else measID = (uint8_t)MeasurementId::Meas_Hp10; + hp10tresholds.MeasId = 0; + //ResetEvent(Ev1); + token = BeginReadAlarmThresholds(epdComsHandle, (uint8_t)hp10tresholds.MeasId, nullptr, 0, nullptr); + r = Commit3(epdComsHandle); + //r = WaitForSingleObject(Ev1, 10000); // no time-out interval + r = EndReadAlarmThresholds(epdComsHandle, token, &hp10tresholds); + decodeTreshold(&hp10tresholds); + return r; +} +WORD Epd3Base::Epd3U::WriteAlarmTresholds() { + //Alleen MK3 ? leeg bij MK2 + uint32_t r; + + bool isNeutron = (EpdType == EpdTypes::Mk2Neutron || EpdType == EpdTypes::Mk3Neutron); + uint8_t measID; + + if (isNeutron) measID = (uint8_t)MeasurementId::Meas_Hp10G; else measID = (uint8_t)MeasurementId::Meas_Hp10; + hp10tresholds.MeasId = measID; + encodeTreshold(&hp10tresholds); + + token = BeginWriteAlarmThresholds(epdComsHandle, (uint8_t)hp10tresholds.MeasId, (uint8_t)hp10tresholds.NumberThresholds, hp10tresholds.Thresholds, nullptr); + r = Commit3(epdComsHandle); + if (r != 0) + goto error; + r = EndWriteAlarmThresholds(epdComsHandle, token); + if (r != 0) + goto error; + + + if (isNeutron) measID = (uint8_t)MeasurementId::Meas_Hp10N; else measID = (uint8_t)MeasurementId::Meas_Hp07; + hp07tresholds.MeasId = measID; + encodeTreshold(&hp07tresholds); + + hp07tresholds.NumberThresholds = 2; + token = BeginWriteAlarmThresholds(epdComsHandle, (uint8_t)hp07tresholds.MeasId, (uint8_t)hp07tresholds.NumberThresholds, hp07tresholds.Thresholds, nullptr); + r = Commit3(epdComsHandle); + if (r != 0) + goto error; + r = EndWriteAlarmThresholds(epdComsHandle, token); + if (r != 0) + goto error; + + + token = BeginWriteRateOffPercentage(epdComsHandle, RatePct, 2, nullptr); + r = Commit3(epdComsHandle); + if (r != 0) + goto error; + r = EndWriteRateOffPercentage(epdComsHandle, token); + if (r != 0) + goto error; + + +error: + return r; + +} +WORD Epd3Base::Epd3U::DeIssue() +{ + int32_t r = 1; + if (!EPDIssued) return 0; + if (port == 0) return 0; + ClearDoses(); + ClearAlarms(); + + token = BeginDeissueEPD(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndDeissueEPD(epdComsHandle, token); + if (r != 0) + goto error; + + token = BeginEpdOnOff(epdComsHandle, 0, nullptr); + r = Commit3(epdComsHandle); + r = EndEpdOnOff(epdComsHandle, token); + if (r != 0) + goto error; + EndCom(); +error: + return r; +} +WORD Epd3Base::Epd3U::WriteWearer() { + + token = BeginSetBaselineCounters(epdComsHandle, nullptr); + int32_t r = Commit3(epdComsHandle); + r = EndSetBaselineCounters(epdComsHandle, token); + + IdString_t mk3WearerID; + //Mk2 EPDs only support Name and Primary ID + + mk3WearerID.IdType = (uint16_t)WearerIdType::WearerId_Name; + mk3WearerID.Length = 23; + memcpy(mk3WearerID.Utf8String, WearerName, 23); + + token = BeginWriteWearerId(epdComsHandle, mk3WearerID, nullptr); + r = Commit3(epdComsHandle); + r = EndWriteWearerId(epdComsHandle, token); + + mk3WearerID.IdType = (uint16_t)WearerIdType::WearerId_Primary; + mk3WearerID.Length = 13; + memcpy(mk3WearerID.Utf8String, WearerID, 13); + + token = BeginWriteWearerId(epdComsHandle, mk3WearerID, nullptr); + r = Commit3(epdComsHandle); + r = EndWriteWearerId(epdComsHandle, token); + + return 0; +} + +/// +/// +/// +/// 0 Success +WORD Epd3Base::Epd3U::Issue() +{ + uint32_t r=0; + if (port == 0) return r; + + r = WriteAlarmTresholds(); + if (r != 0) + goto error; + r = WriteWearer(); + if (r != 0) + goto error; + /*r = WriteCal(); + if (r != 0) + goto error;*/ + + //EPDIssued + if (!DetectorsOn) { + token = BeginEpdOnOff(epdComsHandle, 1, nullptr); + r = Commit3(epdComsHandle); + r = EndEpdOnOff(epdComsHandle, token); + // OKRV = EpdOn(); OKRV = Commit3(); + //Sleep(1500); + } + token = BeginIssueEPD(epdComsHandle, nullptr); + r = Commit3(epdComsHandle); + r = EndIssueEPD(epdComsHandle, token); + if (r != 0) + goto error; + EndCom(); + + +error: + return r; +} +WORD Epd3Base::Epd3U::EPDReadExtraStatus() +{ + if (port == 0) return 1; + //byBatADC = bySupplyADC = 0; + /*CommitRV = ReadA2ConfigStatus( + &byBatADC, + &bySupplyADC, + &byStatus3, + &byStatus4); + if (CommitRV == 1) CommitRV = Commit3();*/ + + token = BeginReadBaselineCounts(epdComsHandle, nullptr); + uint32_t r = Commit3(epdComsHandle); + r = EndReadBaselineCounts(epdComsHandle, token, Counts, 10, &utc, &countsRead); + decodeBaseCounters(countsRead); + //if (CommitRV == 1) CommitRV = ReadCounts(&D1, &D2, &D3, &D4, &CountsClock); + //if (CommitRV == 1) CommitRV = Commit3(); + //if (CommitRV == 1) CommitRV = ReadBaseCounts(&BaseD1, &BaseD2, &BaseD3, &BaseD4, &BaseCountsClock); + //if (CommitRV == 1) CommitRV = Commit3(); + return r; +} +WORD Epd3Base::Epd3U::WriteCal() +{ + uint32_t r = 0; + if (port == 0) return 0; + + if (K6 > 2000) + { + r = 0; + return 0; + } + + if (EpdType == EpdTypes::Mk2Neutron) + { + Password = 9; + token = BeginMfrLogin_R2(epdComsHandle, Password, nullptr); + uint32_t r = Commit3(epdComsHandle); + if (r != 0) + goto error; + r = EndMfrLogin_R2(epdComsHandle, token); + if (r != 0) + goto error; + + token = BeginWriteSensitivities_R2(epdComsHandle, nullptr, (uint16_t)K1, (uint16_t)K2, (uint16_t)K3, (uint16_t)K4, (uint16_t)K5, (uint16_t)K6); + r = Commit3(epdComsHandle); + if (r != 0) + goto error; + if (r != 0) + goto error; + r = EndWriteSensitivities_R2(epdComsHandle, token); + if (r != 0) + goto error; + } + return r; +error: + return r; +} \ No newline at end of file diff --git a/EpdBase3/Epd3Base.h b/EpdBase3/Epd3Base.h new file mode 100644 index 0000000..34df979 --- /dev/null +++ b/EpdBase3/Epd3Base.h @@ -0,0 +1,265 @@ +#pragma once +#pragma unmanaged +#include +#pragma unmanaged +#include "EpdCommon.h" +#include "Epd3.h" +#include "Epd2.h" + +#pragma unmanaged +#define MaxPeakRates 10 +#define MaxSensitivities 10 +#define MaxDoses 4 +#define MaxCounts 6 +#define MaxAlarmConfig 10 +#define MaxTresholds 10 + +namespace Epd3Base { + class Epd3U + { + public: + char comPort[5] = { "COM4" }; + CommsHandle epdComsHandle; + uint32_t CurrentDeviceID; + EpdGeneration EpdGen; + DiscoveryId Epd; + CompletionToken token; + WORD port = 3; + const WORD MaxDevices = 10; + WORD DeviceCount = 0; + DWORD DeviceIDs[10]; + + WORD Error = 0; + WORD ErrorSource; + WORD ErrorReason; + WORD ErrorData; + + int32_t Dll3RV; + + public: + HANDLE hWaitTimer = 0; + HANDLE hCompletion = 0; + + + private: + WORD CommsInitialized = 0; + + public: + Epd3U(int _comport); + ~Epd3U(); + DWORD StartCom(); + void EndCom(); + int StartDiscover(int tokentimeout); + + //OperatingStatus + BYTE DetectorsOn = 0; + BYTE EPDIssued = 0; + BYTE EPDLocked = 0; + BYTE EPDTesting = 0; + BYTE EPDProcSec = 0; + BYTE EPDFaulty = 0; + + + //ERrrostatus + BYTE EPDNewFault = 0; + BYTE EPDComFault = 0; + BYTE EPDCalFault = 0; + BYTE EPDDetFault = 0; + BYTE EPDEprFault = 0; + BYTE EPDTrhFault = 0; + BYTE EPDOthFault = 0; + + + //AlarmStatus + BYTE AlarmDoseHP101G = 0; + BYTE AlarmDoseHP102G = 0; + BYTE AlarmDoseHP07N = 0; + BYTE AlarmRateHP101G = 0; + BYTE AlarmRateHP102G = 0; + BYTE AlarmRateHP07N = 0; + + //OtherAlarm + BYTE OtherAlarmRateHp101G = 0; + BYTE OtherAlarmRateHp102G = 0; + BYTE OtherAlarmRateHp07N = 0; + BYTE OtherAlarmReturn = 0; + BYTE OtherAlarmBatLow = 0; + BYTE OtherAlarmCarrier = 0; + BYTE OtherAlarmBatVolt = 0; + + DWORD Password = 9; + + //Identification + + DWORD EpdID = 0; + WORD HardVersion; + WORD SoftVersion; + WORD FunctionFlags; + + DWORD EpdClock; + DWORD RealTime; + WORD IssueCount; + DWORD OffTime; + WORD OtherAlarms; + WORD EEPROMBadSectors; + + EpdTypes EpdType = EpdTypes::Mk2Gamma; + bool isBG = false; + bool isMK3 = false; + SYSTEMTIME tRealTime; + + //Wearer +#define WearerIDLength 12 + BYTE WearerID[(WearerIDLength)+1]; +#define WearerNameLength 22 + BYTE WearerName[WearerNameLength + 1]; + + // Dose + + float Hp10Dose; + float Hp07Dose; + float Hp10Total; + float Hp07Total; + WORD Knocks; + WORD Resets; + WORD QualityData; + + //Peaks + float Hp10Peak; + float Hp07Peak; + DWORD Hp10Time; + DWORD Hp07Time; + + + //AlarmDoseTreshold + float Hp10THDose1; + float Hp10THDose2; + float Hp07THDose; + + float Hp10Rate1On; + float Hp10Rate2On; + float Hp07RateOn; + float Hp10Rate1Off; + float Hp10Rate2Off; + float Hp07RateOff; + + + float K1; + float K2; + float K3; + float K4; + float K5; + float K6; + uint32_t SG; + uint32_t BC; + uint32_t FB; + uint32_t HG; + + DWORD D1; + DWORD D2; + DWORD D3; + DWORD D4; + DWORD CountsClock; + + DWORD BaseD1; + DWORD BaseD2; + DWORD BaseD3; + DWORD BaseD4; + DWORD BaseCountsClock; + + + + + BYTE ConnectTimerFired; + int ConnectTries; + + OpStatusFlags OperatingStatus; + FaultStatusFlags ErrorStatus; + AlarmStatusFlags AlarmStatus; + + StatusData_t epd3status; + uint8_t counterIds[MaxCounts]; //max 6 for mk3 + uint8_t counterIdLen; + + MeasurementId mIDs[MAX_MEASUREMENTS]; + uint8_t nmIDs = 0; + + MeasValue_t doses[MaxDoses]; + MeasValue_t totdoses[MaxDoses]; + PeakRate_t peakRates[MaxPeakRates]; + AlarmConfig_t alarmConfig[MaxAlarmConfig]; + CalSensitivity_t sensitivities[MaxSensitivities]; + Counter_t Counts[MaxCounts]; + uint8_t countsRead; + uint32_t seconds; + uint8_t numDoses, numtotDoses, numRates, numSensitivities, numTresholds; + uint16_t numAlarm; + uint32_t utc; + Mk3QualityData_t quality; + Mk3AlarmThresholds_t hp07tresholds; + Mk3RatePercentage_t RatePct[2]; + Mk3AlarmThresholds_t hp10tresholds; + + DetectorThreshold_t dTresholds[MaxTresholds]; + + //Functions + int OpenDev(DiscoveryId DeviceID); + void CloseDev(bool CloseAll); + void DecodeStatus(); + void SetTime(); + int ReadStatus(); + void decodeCounters(int count); + + void decodeBaseCounters(int count); + + void decodeTreshold(Mk3AlarmThresholds_t* th); + + void encodeTreshold(Mk3AlarmThresholds_t* th); + + void decodedTresholds(int numdTresholds); + + WORD ReadSensitivitiesAndTresholds(); + + WORD ReadDoses(); + + void ClearDoses(); + + void ClearAlarms(); + + WORD PrepareForIssue(); + + WORD ReadAlarmConfig(); + + int ConnectAndStatus(int tokenSourceTimeout); + + void decodeSensitivities(int count); + + void decodetotDoses(int count); + + void decodeDoses(int count); + + void decodePeakRates(int count); + + WORD ReadAlarmTresholds(); + + WORD WriteAlarmTresholds(); + + WORD DeIssue(); + + WORD WriteWearer(); + + + + + + + + WORD Issue(); + + WORD EPDReadExtraStatus(); + + WORD WriteCal(); + +}; +} + diff --git a/EpdBase3/EpdBase3.cpp b/EpdBase3/EpdBase3.cpp new file mode 100644 index 0000000..16017d2 --- /dev/null +++ b/EpdBase3/EpdBase3.cpp @@ -0,0 +1,10 @@ +// EpdBase3.cpp : Defines the functions for the static library. +// + +#include "pch.h" +#include "framework.h" + +// TODO: This is an example of a library function +void fnEpdBase3() +{ +} diff --git a/EpdBase3/EpdBase3.vcxproj b/EpdBase3/EpdBase3.vcxproj new file mode 100644 index 0000000..da59c99 --- /dev/null +++ b/EpdBase3/EpdBase3.vcxproj @@ -0,0 +1,178 @@ + + + + + Debug + Win32 + + + Release + Win32 + + + Debug + x64 + + + Release + x64 + + + + 16.0 + Win32Proj + {e6bb4f4e-4774-4fe3-b341-7f4c24dc61e7} + EpdBase3 + 10.0 + Epd3Base + + + + StaticLibrary + true + v142 + Unicode + + + StaticLibrary + false + v142 + true + Unicode + + + StaticLibrary + true + v142 + Unicode + + + StaticLibrary + false + v142 + true + Unicode + + + + + + + + + + + + + + + + + + + + + true + + + false + + + true + + + false + + + + Level3 + true + WIN32;_DEBUG;_LIB;%(PreprocessorDefinitions) + true + Use + pch.h + + + + + true + + + + + Level3 + true + true + true + WIN32;NDEBUG;_LIB;%(PreprocessorDefinitions) + true + Use + pch.h + + + + + true + true + true + + + + + Level3 + true + _DEBUG;_LIB;%(PreprocessorDefinitions) + true + Use + pch.h + + + + + true + + + + + Level3 + true + true + true + NDEBUG;_LIB;%(PreprocessorDefinitions) + true + Use + pch.h + + + + + true + true + true + + + + + + + + + + + + + + + + + Create + Create + Create + Create + + + + + + + \ No newline at end of file diff --git a/EpdBase3/EpdBase3.vcxproj.filters b/EpdBase3/EpdBase3.vcxproj.filters new file mode 100644 index 0000000..8e95487 --- /dev/null +++ b/EpdBase3/EpdBase3.vcxproj.filters @@ -0,0 +1,57 @@ + + + + + {4FC737F1-C7A5-4376-A066-2A32D752A2FF} + cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx + + + {93995380-89BD-4b04-88EB-625FBE52EBFB} + h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd + + + {67DA6AB6-F800-4c08-8B7A-83BB121AAD01} + rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms + + + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + Header Files + + + + + Source Files + + + Source Files + + + Source Files + + + \ No newline at end of file diff --git a/EpdBase3/EpdCommon.h b/EpdBase3/EpdCommon.h new file mode 100644 index 0000000..385f894 --- /dev/null +++ b/EpdBase3/EpdCommon.h @@ -0,0 +1,321 @@ +#ifndef epd_common_h +#define epd_common_h +#ifndef WINAPI +#define WINAPI __stdcall +#endif + +#ifdef READER3_EXPORTS +#define EPDDLL_API __declspec(dllexport) WINAPI +#else +#define EPDDLL_API __declspec(dllimport) WINAPI +#endif + +#include +#include "Mk3Types.h" +// Grouping for Doxygen comments and function descriptions +// Documentation for method return codes +extern "C" +{ + const int r_OK = 0; + const int r_UnknownError = -1; + const int r_InvalidCommsHandle = -2; + const int r_InvalidPortName = -3; + const int r_PortAlreadyOpen = -4; + const int r_PortClosed = -5; + const int r_OperationFailed = -6; + const int r_InvalidState = -7; + const int r_InvalidCompletionToken = -8; + const int r_OperationTimeout = -9; + const int r_UnknownCmd = -100; + const int r_InvalidParam = -101; + const int r_InsufficientPriv = -102; + const int r_UnsupportedOp = -103; + const int r_FunctionFail = -104; + const int r_InvalidOp = -105; + const int r_IncompleteCommand = -106; + const int r_ResponseTooBig = -107; //response exceeded single frame length + const int r_ErrorBadStoredData = -108; + const int r_InvalidResponseDataLength = -109; + const int r_PayloadTooBig = -110; + const int r_ParseFailure = -111; + const int r_EEPROMWriteFailure = -112; + const int r_Busy = -113; + //These are Mk2 errors + const int r_EEPROMReadFailure = -121; + const int r_WearerNameMismatch = -122; + const int r_DataTooLongForBuffer = -123; + // Error codes generated within DLL + const int r_ErrorUnexpectedResponse = -200; + const int r_ErrorNotProcessed = -201; //command not processed due to previous failure + const int r_ErrorNotConnected = -202; + const int r_ErrorUserCancelled = -203; + typedef void* CommsHandle; + typedef void* CompletionToken; + typedef void(WINAPI *DiscoveryCallback)(CommsHandle hComms, DiscoveryId const discovered[], int32_t count); + typedef void(WINAPI *CompletionCallback)(CommsHandle hComms, CompletionToken token); + typedef void(WINAPI *ConnectCallback)(CommsHandle hComms, DiscoveryId id); + typedef void(WINAPI *DisconnectCallback)(CommsHandle hComms, DiscoveryId id); + typedef void(WINAPI *RemovedCallback)(CommsHandle hComms, DiscoveryId id); + /******************************************************************************************************************************************** + * + * Interface Setup & Tear down + * + ********************************************************************************************************************************************/ + CommsHandle EPDDLL_API CreateReaderInterface(); + int32_t EPDDLL_API DestroyReaderInterface(CommsHandle hComms); + int32_t EPDDLL_API OpenReader(CommsHandle hComms, char* portName); + int32_t EPDDLL_API CloseReader(CommsHandle hComms); + /******************************************************************************************************************************************** + * + * Interface configuration + * + ********************************************************************************************************************************************/ + int32_t EPDDLL_API SetDllLogLevel(CommsHandle hComms, uint32_t level); + int32_t EPDDLL_API GetDllLogLevel(CommsHandle hComms, uint32_t* level); + int32_t EPDDLL_API SetResponseTimeout(CommsHandle hComms, uint32_t ms); + int32_t EPDDLL_API GetResponseTimeout(CommsHandle hComms, uint32_t* ms); + int32_t EPDDLL_API SetRetryCount(CommsHandle hComms, uint32_t retries); + int32_t EPDDLL_API GetRetryCount(CommsHandle hComms, uint32_t* retries); + int32_t EPDDLL_API SetMultipleDiscoveryMode(CommsHandle hComms, bool state); + int32_t EPDDLL_API GetMultipleDiscoveryMode(CommsHandle hComms, bool *state); + int32_t EPDDLL_API SetDiscoveryTimeslots(CommsHandle hComms, uint32_t slots); + int32_t EPDDLL_API GetDiscoveryTimeslots(CommsHandle hComms, uint32_t *slots); + int32_t EPDDLL_API SetDiscoveryCacheTimeout(CommsHandle hComms, uint32_t ms); + int32_t EPDDLL_API GetDiscoveryTimeout(CommsHandle hComms, uint32_t *ms); + /******************************************************************************************************************************************** + * + * General Stack Operation, Discovery, Connection Management etc + * + ********************************************************************************************************************************************/ + int32_t EPDDLL_API Commit3(CommsHandle hComms); + int32_t EPDDLL_API CommitAndWait(CommsHandle hComms); + int32_t EPDDLL_API Cancel(CommsHandle hComms); + int32_t EPDDLL_API StartDiscovery(CommsHandle hComms, DiscoveryCallback callback); + int32_t EPDDLL_API StopDiscovery(CommsHandle hComms); + int32_t EPDDLL_API GetDiscoveredEpds(CommsHandle hComms, DiscoveryId discovered[], uint32_t size, uint32_t* count); + int32_t EPDDLL_API Connect3(CommsHandle hComms, DiscoveryId epd, bool wait = false); + int32_t EPDDLL_API Disconnect(CommsHandle hComms); + int32_t EPDDLL_API DisconnectAndNotify(CommsHandle hComms, uint16_t alarmConfig, uint16_t duration); + int32_t EPDDLL_API SetConnectCallback(CommsHandle hComms, ConnectCallback callback); + int32_t EPDDLL_API SetDisconnectCallback(CommsHandle hComms, DisconnectCallback callback); + int32_t EPDDLL_API AwaitRemoval(CommsHandle hComms, DiscoveryId epd, bool wait=false); + int32_t EPDDLL_API SetRemovedCallback(CommsHandle hComms, RemovedCallback callback); + int32_t EPDDLL_API GetErrorCode(); + /******************************************************************************************************************************************** + * Real Time Clock + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadRTC(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadRTC(CommsHandle hComms, CompletionToken token, uint32_t* rtc); + /******************************************************************************************************************************************** + * Common Counts Acquisition + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadCounts(CommsHandle hComms, uint8_t counterIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadCounts(CommsHandle hComms, CompletionToken token, Counter_t counts[], uint8_t length, uint8_t * numCounts, uint32_t * utc, uint32_t * secondsSinceBaseline); + CompletionToken EPDDLL_API BeginReadBaselineCounts(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadBaselineCounts(CommsHandle hComms, CompletionToken token, Counter_t counts[], uint8_t length, uint32_t * timestamp, uint8_t * numCounts); + CompletionToken EPDDLL_API BeginSetBaselineCounters(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndSetBaselineCounters(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginStartDetectorTest(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndStartDetectorTest(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadSelfTestInterval(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadSelfTestInterval(CommsHandle hComms, CompletionToken token, uint16_t * minutes); + CompletionToken EPDDLL_API BeginWriteSelfTestInterval(CommsHandle hComms, uint16_t minutes, CompletionCallback callback); + int32_t EPDDLL_API EndWriteSelfTestInterval(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteChirpSensitivity(CommsHandle hComms, float sensitivity, CompletionCallback callback); + int32_t EPDDLL_API EndWriteChirpSensitivity(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadChirpSensitivity(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadChirpSensitivity(CommsHandle hComms, CompletionToken token, float * sensitivity); + /******************************************************************************************************************************************** + * + * Common Calibration + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteFactoryCalDate(CommsHandle hComms, uint32_t utc, CompletionCallback callback); + int32_t EPDDLL_API EndWriteFactoryCalDate(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadFactoryCalDate(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadFactoryCalDate(CommsHandle hComms, CompletionToken token, uint32_t* utc); + CompletionToken EPDDLL_API BeginWriteCalDueDate(CommsHandle hComms, uint32_t utc, CompletionCallback callback); + int32_t EPDDLL_API EndWriteCalDueDate(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadCalDueDate(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadCalDueDate(CommsHandle hComms, CompletionToken token, uint32_t* utc); + CompletionToken EPDDLL_API BeginReadSensitivities(CommsHandle hComms, uint8_t sensIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadSensitivities(CommsHandle hComms, CompletionToken token, CalSensitivity_t sensitivities[], uint8_t length, uint8_t * numSensitivities); + CompletionToken EPDDLL_API BeginReadDetectorThresholds(CommsHandle hComms, uint8_t counterIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadDetectorThresholds(CommsHandle hComms, CompletionToken token, DetectorThreshold_t thresholds[], uint8_t length, uint8_t * numThresholds); + CompletionToken EPDDLL_API BeginReadGains(CommsHandle hComms, uint8_t sensIds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadGains(CommsHandle hComms, CompletionToken token, CalGain_t gains[], uint8_t length, uint8_t * numGains); + /******************************************************************************************************************************************** + * + * Common Dose Measurements + * + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadDoses(CommsHandle hComms, uint8_t ids[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadDoses(CommsHandle hComms, CompletionToken token, MeasValue_t doses[], uint8_t length, uint8_t * numDoses, uint32_t * utc); + CompletionToken EPDDLL_API BeginReadTotalDoses(CommsHandle hComms, uint8_t ids[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadTotalDoses(CommsHandle hComms, CompletionToken token, MeasValue_t doses[], uint8_t length, uint8_t * numDoses, uint32_t * utc); + CompletionToken EPDDLL_API BeginClearDose(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndClearDose(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginClearTotalDose(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndClearTotalDose(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginClearPeakRates(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndClearPeakRates(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteDoses(CommsHandle hComms, MeasValue_t doses[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDoses(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteTotalDoses(CommsHandle hComms, MeasValue_t doses[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteTotalDoses(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadRates(CommsHandle hComms, uint8_t ids[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadRates(CommsHandle hComms, CompletionToken token, MeasValue_t rates[], uint8_t length, uint8_t * numRates, uint32_t * utc); + CompletionToken EPDDLL_API BeginReadPeakRates(CommsHandle hComms, uint8_t ids[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadPeakRates(CommsHandle hComms, CompletionToken token, PeakRate_t rates[], uint8_t length, uint8_t * numRates); + CompletionToken EPDDLL_API BeginReadQualityData(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadQualityData(CommsHandle hComms, CompletionToken token, Mk3QualityData_t * quality); + /******************************************************************************************************************************************** + * Common Alarm Thresholds + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadAlarmThresholds(CommsHandle hComms, uint8_t measurandId, uint8_t thresholdIds[], uint8_t numThresholds, CompletionCallback callback); + int32_t EPDDLL_API EndReadAlarmThresholds(CommsHandle hComms, CompletionToken token, Mk3AlarmThresholds_t * thresholds); + CompletionToken EPDDLL_API BeginWriteAlarmThresholds(CommsHandle hComms, uint8_t measurandId, uint8_t numThresholds, Mk3AlarmThreshold_t thresholds[], CompletionCallback callback); + int32_t EPDDLL_API EndWriteAlarmThresholds(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadRateOffPercentage(CommsHandle hComms, uint8_t measurandIds[], uint8_t numThresholds, CompletionCallback callback); + int32_t EPDDLL_API EndReadRateOffPercentage(CommsHandle hComms, CompletionToken token, Mk3RatePercentage_t offThresholds[], uint8_t length, uint8_t * numThresholds); + CompletionToken EPDDLL_API BeginWriteRateOffPercentage(CommsHandle hComms, Mk3RatePercentage_t thresholds[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteRateOffPercentage(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Common General Management + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginEpdOnOff(CommsHandle hComms, uint8_t onState, CompletionCallback callback); + int32_t EPDDLL_API EndEpdOnOff(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Common EPD Status + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadStatus(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadStatus(CommsHandle hComms, CompletionToken token, StatusData_t * status); + CompletionToken EPDDLL_API BeginClearFaultStatus(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndClearFaultStatus(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginClearLatchedAlarms(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndClearLatchedAlarms(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginClearAllStatus(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndClearAllStatus(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Common Wearer Identity + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadWearerId(CommsHandle hComms, uint16_t type, CompletionCallback callback); + int32_t EPDDLL_API EndReadWearerId(CommsHandle hComms, CompletionToken token, IdString_t * wearerId); + CompletionToken EPDDLL_API BeginWriteWearerId(CommsHandle hComms, IdString_t wearerId, CompletionCallback callback); + int32_t EPDDLL_API EndWriteWearerId(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Common Issue & Return + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginIssueEPD(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndIssueEPD(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginDeissueEPD(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndDeissueEPD(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Common Identities + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadEpdIdentities(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadEpdIdentities(CommsHandle hComms, CompletionToken token, uint32_t * epdId, EpdTypes * epdType, uint32_t * capabilities, + MarkNumber_t * markNumber, VersionNumber_t * firmwareVersion, char* vcsRevBuf, uint32_t buflen); + CompletionToken EPDDLL_API BeginWriteEpdSerialNumber(CommsHandle hComms, uint32_t epdId, CompletionCallback callback); + int32_t EPDDLL_API EndWriteEpdSerialNumber(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadEpdSerialNum(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadEpdSerialNum(CommsHandle hComms, CompletionToken token, uint32_t* epdSerialNum); + CompletionToken EPDDLL_API BeginReadCapabilities(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadCapabilities(CommsHandle hComms, CompletionToken token, uint32_t* capabilities); + CompletionToken EPDDLL_API BeginReadMarkNumber(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadMarkNumber(CommsHandle hComms, CompletionToken token, MarkNumber_t * markNumber); + CompletionToken EPDDLL_API BeginReadEpdType(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadEpdType(CommsHandle hComms, CompletionToken token, EpdTypes * epdType); + CompletionToken EPDDLL_API BeginReadFirmwareVersion(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadFirmwareVersion(CommsHandle hComms, CompletionToken token, VersionNumber_t * version); + /******************************************************************************************************************************************** + * Common General Configuration + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteDoseWritableFlag(CommsHandle hComms, uint8_t enabled, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDoseWritableFlag(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteClearDoseOnSwitchOn(CommsHandle hComms, uint8_t enable, CompletionCallback callback); + int32_t EPDDLL_API EndWriteClearDoseOnSwitchOn(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginWriteReturnForReadTime(CommsHandle hComms, uint32_t utc, CompletionCallback callback); + int32_t EPDDLL_API EndWriteReturnForReadTime(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadReturnForReadTime(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadReturnForReadTime(CommsHandle hComms, CompletionToken token, uint32_t* utc); + CompletionToken EPDDLL_API BeginReadAlarmConfiguration(CommsHandle hComms, AlarmConfigId alarmConfigIds[], uint16_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadAlarmConfiguration(CommsHandle hComms, CompletionToken token, AlarmConfig_t alarmConfigs[], uint16_t length, uint16_t * numConfigs); + /******************************************************************************************************************************************** + * Common Dose Profile + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteDoseProfileInterval(CommsHandle hComms, uint16_t interval, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDoseProfileInterval(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadDoseProfileInterval(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadDoseProfileInterval(CommsHandle hComms, CompletionToken token, uint16_t * interval); + CompletionToken EPDDLL_API BeginReadDoseProfileByTime(CommsHandle hComms, uint32_t startTime, uint32_t endTime, CompletionCallback callback); + int32_t EPDDLL_API EndReadDoseProfileByTime(CommsHandle hComms, CompletionToken token, DoseProfileRecord_t * profile[], uint16_t *count); + void EPDDLL_API CleanUpReadDoseProfile(DoseProfileRecord_t * profile); + /******************************************************************************************************************************************** + * Common Event Log + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadEventsByIndex(CommsHandle hComms, uint8_t start, uint8_t requested, CompletionCallback callback = nullptr); + int32_t EPDDLL_API EndReadEventsByIndex(CommsHandle hComms, CompletionToken token, EventLog * logs[], uint8_t *count); + void EPDDLL_API CleanUpReadEventLog(EventLog * logs); + /******************************************************************************************************************************************** + * Common Scratchpad + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadScratchPad(CommsHandle hComms, uint16_t startAddress, uint16_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadScratchpad(CommsHandle hComms, CompletionToken token, uint16_t *address, uint8_t buffer[], uint16_t length, uint16_t* read); + CompletionToken EPDDLL_API BeginWriteScratchPad(CommsHandle hComms, uint16_t startAddress, uint8_t buffer[], uint16_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteScratchpad(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadScratchpadSize(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadScratchpadSize(CommsHandle hComms, CompletionToken token, uint16_t* size); + CompletionToken EPDDLL_API BeginClearScratchPad(CommsHandle hComms, uint8_t fillChar, CompletionCallback callback); + int32_t EPDDLL_API EndClearScratchpad(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Common EEProm + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginReadEEProm(CommsHandle hComms, uint16_t startAddress, uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndReadEEProm(CommsHandle hComms, CompletionToken token, uint16_t *address, uint8_t buffer[], uint8_t length, uint8_t* read); + CompletionToken EPDDLL_API BeginWriteEEProm(CommsHandle hComms, uint16_t startAddress, uint8_t buffer[], uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteEEProm(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Common Access level + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteAccessLevel(CommsHandle hComms, AccessLevel_t level, EncryptionKey key, uint8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteAccessLevel(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadCurrentAccessLevel(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadCurrentAccessLevel(CommsHandle hComms, CompletionToken token, AccessLevel_t * level); + CompletionToken EPDDLL_API BeginWriteAccessKey(CommsHandle hComms, AccessLevel_t level, EncryptionKey key, int8_t length, CompletionCallback callback); + int32_t EPDDLL_API EndWriteAccessKey(CommsHandle hComms, CompletionToken token); + /******************************************************************************************************************************************** + * Common Battery Management + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteBatteryTestInterval(CommsHandle hComms, uint16_t minutes, CompletionCallback callback); + int32_t EPDDLL_API EndWriteBatteryTestInterval(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadBatteryTestInterval(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadBatteryTestInterval(CommsHandle hComms, CompletionToken token, uint16_t* minutes); + CompletionToken EPDDLL_API BeginWriteBatteryLowThreshold(CommsHandle hComms, int8_t batteryType, uint16_t mV, CompletionCallback callback); + int32_t EPDDLL_API EndWriteBatteryLowThreshold(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadBatteryLowThreshold(CommsHandle hComms, int8_t batteryType, CompletionCallback callback); + int32_t EPDDLL_API EndReadBatteryLowThreshold(CommsHandle hComms, CompletionToken token, int8_t* batteryType, uint16_t* mV ); + CompletionToken EPDDLL_API BeginReadVoltages(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadVoltages(CommsHandle hComms, CompletionToken token, uint16_t* vbat0, uint16_t* vbat1, uint16_t* vcpu); + /******************************************************************************************************************************************** + * Common User Inteface + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteDisplayOptions(CommsHandle hComms, uint8_t value, uint8_t mask, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDisplayOptions(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadDisplayOptions(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadDisplayOptions(CommsHandle hComms, CompletionToken token, uint8_t * value); + CompletionToken EPDDLL_API BeginWriteDisplayTimeout(CommsHandle hComms, uint8_t seconds, CompletionCallback callback); + int32_t EPDDLL_API EndWriteDisplayTimeout(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadDisplayTimeout(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadDisplayTimeout(CommsHandle hComms, CompletionToken token, uint8_t* seconds); + /******************************************************************************************************************************************** + * Common Zone Control + ********************************************************************************************************************************************/ + CompletionToken EPDDLL_API BeginWriteZoneControlMap(CommsHandle hComms, uint8_t map[], uint8_t mask[], CompletionCallback callback); + int32_t EPDDLL_API EndWriteZoneControlMap(CommsHandle hComms, CompletionToken token); + CompletionToken EPDDLL_API BeginReadZoneControlMap(CommsHandle hComms, CompletionCallback callback); + int32_t EPDDLL_API EndReadZoneControlMap(CommsHandle hComms, CompletionToken token, uint8_t map[]); + CompletionToken EPDDLL_API BeginReadZoneAccessPermitted(CommsHandle hComms, uint8_t zone, CompletionCallback callback); + int32_t EPDDLL_API EndReadZoneAccessPermitted(CommsHandle hComms, CompletionToken token, bool *permitted); +} +#endif \ No newline at end of file diff --git a/EpdBase3/Mk3Types.h b/EpdBase3/Mk3Types.h new file mode 100644 index 0000000..16bf652 --- /dev/null +++ b/EpdBase3/Mk3Types.h @@ -0,0 +1,581 @@ +#ifndef Mk3Types_h +#define Mk3Types_h +#include +#include "CommonEpdTypes.h" +#include +#define MAX_COUNTERS 6 +// Mk3 Measurands +#define MK3_MEAS_HP10 0 +#define MK3_MEAS_HP07 1 +#define MK3_MEAS_HP10G 2 +#define MK3_MEAS_HP10N 3 +enum class CounterType : uint16_t +{ + Counter_Hg1 = 0, // MK2 HG + Counter_Hg2 = 1, + Counter_Sg1 = 2, // Mk2 SG + Counter_Sg2 = 3, // Mk2 BC + Counter_Sg3 = 4, + Counter_Fb1 = 5, // Mk2 FB + Counter_Fb2 = 6, + Counter_An1 = 7, + Counter_Fn2 = 8 +}; +#define MAX_DET_THRESHOLDS MAX_COUNTERS +#pragma pack (push) +#pragma pack (1) +typedef struct +{ + uint16_t eventId; + uint16_t info; + uint32_t timestamp; +}EventLog; +typedef struct +{ + uint16_t type; + uint32_t value; +}Counter_t; +typedef struct +{ + uint16_t type; + uint16_t value; +}DetectorThreshold_t; +typedef struct +{ + CounterType id; + uint16_t scaledDeadTime; + uint16_t scaledCoefficient; +}DeadTimeCoefficient_t; +typedef struct +{ + CounterType id; + uint8_t value; +}DetectorTestLimit_t; +typedef struct +{ + uint16_t type; + uint16_t va; + uint16_t vb; +}DetectorThresholdLimit_t; +enum class OffModeDutyCycle :uint8_t +{ + Off = 0, + On = 1, + Pct50 = 2, + Pct33 = 3, + Pct25 = 4, + Pct10 = 5, + NoChange = 255 +}; +enum class SensitivityId +{ + //Hp10 Gamma contributors + Hg1Sens10G = 0, // Mk2 HGSens10 (K1) + Hg2Sens10G = 1, + Sg1Sens10G = 2, // Mk2 SGSens10 (K2) + Sg2Sens10G = 3, + Sg3Sens10G = 4, + //Hp10 Neutron contributors + //Hp07 Gamma contributors + Hg1Sens07G = 5, // Mk2 HGSens07 (K3) + Hg2Sens07G = 6, + Sg1Sens07G = 7, // Mk2 SGSens07 (K4) + Sg2Sens07G = 8, + Sg3Sens07G = 9, + //Hp07 Beta contributors + Fb1Sens07B = 10, // Mk2 FBSens07 (K5) + Fb2Sens07B = 11, + Sg2Sens07B = 12, // Mk2 BCSens07 (K6) + Sg3Sens07B = 13, + MaxSensitivity +}; +#define MAX_SENSITIVITIES ((uint16_t)SensitivityId::MaxSensitivity) +#define LAST_SENSITIVITY (((uint16_t)SensitivityId::MaxSensitivity) - 1) +enum class MeasurementId : uint16_t +{ + Meas_Hp10, + Meas_Hp07, + Meas_Hp10G, + Meas_Hp10N +}; +#define MAX_MEASUREMENTS 4 +enum class ThresholdId +{ + Thres_DoseAlarm = 0, + Thres_DoseWarning = 1, + Thres_RateAlarm = 2, + Thres_RateWarning = 3 +}; +#define MAX_ALM_THRESHOLDS 4 +enum class WearerIdType +{ + WearerId_Name, + WearerId_Primary, + WearerId_Id2, + WearerId_Id3 +}; +#define MAX_WEARER_ID_TYPES 4 +enum class TaskIdType +{ + Task_Name, + Task_Primary +}; +#define MAX_TASK_ID_TYPES 2 +enum class WearerAndTaskIdType_t : uint16_t +{ + WearerId_Name, + WearerId_Primary, + WearerId_Id2, + WearerId_Id3, + TaskName, + TaskID, + WearerDBID, + TaskDBID +}; +#define MAX_WEARER_TASK_ID_TYPES 8 +typedef struct +{ + uint8_t RecordType; + uint8_t Measurand; + int32_t TimeStamp; + uint32_t Value; +}DoseProfileRecord_t; +typedef struct +{ + float DoseIncrement; + uint16_t Interval; + uint16_t NumberOfMeasurands; + MeasurementId Enables[MAX_MEASUREMENTS]; +}DoseProfileConfig_t; +typedef struct +{ + uint16_t id; + float value; +}CalSensitivity_t; +typedef struct +{ + uint16_t id; + float value; +}CalGain_t; +typedef struct +{ + uint16_t id; + float value; +}MeasValue_t; +typedef struct +{ + uint16_t id; + float value; + uint32_t timestamp; +}PeakRate_t; +typedef struct +{ + uint32_t Utc; + uint16_t NumberOfMeasurands; + MeasValue_t Measurements[MAX_MEASUREMENTS]; +}MeasurandDoseOrRate_t; +typedef struct +{ + uint8_t Major; + uint8_t Minor; + uint8_t Patch; + uint16_t Build; +}VersionNumber_t; +typedef struct MarkNumberTag +{ + uint8_t Major; + uint8_t Minor; + uint8_t Revision; + uint8_t Build; +} MarkNumber_t; +#define PART_NUM_LENGTH 10 +typedef uint8_t PartNumber_t[PART_NUM_LENGTH]; +#define PCB_PART_NUM_LENGTH 14 +typedef uint8_t PcbPartNumber_t[PCB_PART_NUM_LENGTH]; +#define FIRMWARE_PART_NUM_LENGTH 16 +typedef uint8_t FirmwarePartNumber_t[FIRMWARE_PART_NUM_LENGTH]; +#define MODEL_NAME_LENGTH 32 +typedef struct ModelNameTag +{ + uint8_t Name[MODEL_NAME_LENGTH]; +} ModelName_t; +#define CAL_PROCESS_LENGTH 12 +typedef struct CalProcessTag +{ + uint8_t Process[CAL_PROCESS_LENGTH]; +} CalProcess_t; +#define CAL_FACILITY_LENGTH 8 +typedef struct CalFacilityTag +{ + uint8_t Name[CAL_FACILITY_LENGTH]; +} CalFacility_t; +#define MAX_ID_STRING_LENGTH 64 +typedef struct IdStringTag +{ + uint16_t IdType; + uint16_t Length; + uint8_t Utf8String[MAX_ID_STRING_LENGTH]; +} IdString_t; +#define DB_ID_LENGTH 16 +typedef struct DbIdTag +{ + uint8_t Id[DB_ID_LENGTH]; +} DatabaseId_t; +#define MAX_GRAPHIC_WIDTH 112 +#define MAX_GRAPHIC_HEIGHT 24 +#define MAX_GRAPHIC_PIXELS (MAX_GRAPHIC_WIDTH * MAX_GRAPHIC_HEIGHT) +#define MAX_GRAPHIC_ID 1 +#define MAX_GRAPHIC_BYTES ((MAX_GRAPHIC_PIXELS)/8) +typedef struct GraphicSizeTag +{ + uint16_t Id; + uint16_t Height; + uint16_t Width; +} GraphicSize_t; +typedef struct +{ + GraphicSize_t Meta; + uint16_t DataLength; + uint8_t Data[MAX_GRAPHIC_BYTES]; +} GraphicBitmap_t; +enum class OpStatusFlags : uint32_t { + EpdOn = 0x0001, + EpdIssued = 0x0002, + DetectorTestRequested = 0x0004, + DetectorTestPassed = 0x0008, + TelemetryOn = 0x0010, + TelemetryConnected = 0x0020, + CalibrationDue = 0x0040, + CalibrationInProgress = 0x0080, + GainAdjustable = 0x0100, + GainAdjusted = 0x0200, + ReducedRateOverrange = 0x0400, + DoseWriteEnabled = 0x0800, + ClearOnOnEnabled = 0x1000, + Golden = 0x2000, + ProtectedSession = 0x4000, + //NotYetDefined = 0x8000, + ResponderEnabled = 0x00010000, + ResponderTriggered = 0x00020000, + AlkalineFitted = 0x00040000, + DeepSleep = 0x00080000, + CovertMode = 0x00100000, + PulsedModeEnabled = 0x00200000, + PulsedModeActive = 0x00400000, + PulsedModeIndustrial=0x00800000, +}; +enum class FaultStatusFlags : uint32_t { + NotInitialized = 0x0001, + BadThreshold = 0x0002, + BadSensitivities = 0x0004, + DetectorTestFail = 0x0008, + NotCalibrated = 0x0010, + EepromFailure = 0x0020, + ErrorLogged = 0x0040, + EpdFaulty = 0x0080, + TimeInvalid = 0x0100, + EarlyCommsTermination = 0x0200, + SounderFailure = 0x0400, + ResetWhileIssued = 0x0800, +}; +enum class AlarmStatusFlags : uint32_t { + DoseWarning = 0x00000001, + DoseAlarm = 0x00000002, + DoseOverrange = 0x00000004, + TotalDoseOverrange = 0x00000008, + RateWarning = 0x00000010, + RateAlarm = 0x00000020, + RateOverrange = 0x00000040, + PulseOverrange = 0x00000080, + LatchedRateWarning = 0x00000100, + LatchedRateAlarm = 0x00000200, + LatchedRateOverrange = 0x00000400, + LatchedPulseOverrange = 0x00000800, + StayTimeExceeded = 0x00010000, + ReturnForRead = 0x00020000, + AbuseAlarm = 0x00040000, + LowBattery = 0x00080000, + TelemetryAlert = 0x00100000 +}; +enum class DoseAlarmFlags : uint32_t { + DoseWarning = 0x0001, + DoseAlarm = 0x0002, + DoseOverrange = 0x0004, + TotalDoseOverrange = 0x0008, + RateWarning = 0x0010, + RateAlarm = 0x0020, + RateOverrange = 0x0040, + LatchedRateWarning = 0x0100, + LatchedRateAlarm = 0x0200, + LatchedRateOverrange = 0x0400 +}; +enum class Mk2StatusFlags : uint32_t { + ADSIssued = 0x0001, + OneSecCountsProcessing = 0x0002, + RadioBatteryLow = 0x0004 +}; +typedef struct +{ + uint16_t Id; + DoseAlarmFlags Status; +}Mk3DoseStatus_t; +typedef struct +{ + OpStatusFlags OperatingStatus; + FaultStatusFlags FaultStatus; + AlarmStatusFlags AlarmStatus; + uint16_t IssueCount; + uint16_t FaultCode; + uint32_t OtherBits; + uint16_t NumberDoseAlarmWords; + Mk3DoseStatus_t DoseAlarms[MAX_MEASUREMENTS]; +}StatusData_t; +enum class QualityFlags +{ + DoseOverrange = 0x0001, + RateOverrange = 0x0002, + AbuseWarning = 0x0004, + CrcFailure = 0x0008, + CounterOverrange = 0x0010, + DetectorFail = 0x0040 +}; +typedef struct +{ + uint16_t PowerCycles; + uint16_t Knocks; + QualityFlags Flags; +}Mk3QualityData_t; +typedef struct +{ + uint16_t Id; + float Value; +}Mk3AlarmThreshold_t; +typedef struct +{ + uint16_t MeasId; + uint16_t NumberThresholds; + Mk3AlarmThreshold_t Thresholds[MAX_ALM_THRESHOLDS]; +}Mk3AlarmThresholds_t; +typedef struct +{ + uint16_t MeasId; + std::vector Thresholds; +}Mk3AlarmThresholdsRequest_t; +typedef struct +{ + uint16_t MeasId; + uint16_t Value; +}Mk3RatePercentage_t; +typedef struct +{ + uint16_t MeasId; + uint16_t AlarmFlags; + float Dose; +}Mk3SnapshotDoseAndFlags_t; +typedef struct +{ + uint16_t SnapshotNumber; + uint16_t IssueCount; + uint32_t StartTime; + uint32_t EndTime; + DatabaseId_t WearerDbId; + DatabaseId_t TaskDbId; + uint32_t OperatingStatus; + uint32_t FaultStatus; + uint32_t AlarmStatus; + uint16_t NumberOfMeasurands; + Mk3SnapshotDoseAndFlags_t DoseAndFlags[MAX_MEASUREMENTS]; +}Mk3SnapshotSummary_t; +typedef struct +{ + uint16_t MeasId; + uint16_t AlarmFlags; + float Dose; + float TriggeredDose; + float TotalDose; + float PeakRate; + uint32_t PeakRateTime; +}Mk3SnapshotMeasurement_t; +typedef struct +{ + uint16_t SnapshotNumber; + uint16_t NumberOfMeasurands; + Mk3SnapshotMeasurement_t DoseAndFlags[MAX_MEASUREMENTS]; +}Mk3SnapshotMeasurements_t; +typedef struct +{ + uint16_t CounterId; + uint32_t StartCount; + uint32_t EndCount; +}Mk3SnapshotCount_t; +typedef struct +{ + uint16_t SnapshotNumber; + uint16_t NumberOfCounters; + uint32_t StartTime; + uint32_t EndTime; + Mk3SnapshotCount_t Counters[MAX_COUNTERS]; +}Mk3SnapshotCounters_t; +typedef struct +{ + float DoseWarning; + float DoseAlarm; + float RateWarning; + float RateAlarm; + uint16_t MeasId; +}Mk3SnapshotAlarmThreshold_t; +typedef struct +{ + uint16_t SnapshotNumber; + uint16_t NumberOfMeasurands; + Mk3SnapshotAlarmThreshold_t Thresholds[MAX_MEASUREMENTS]; +}Mk3SnapshotAlarmThresholds_t; +// **************** +// Access Level +// +#define COMMAND_ID_MAP_SIZE 64 +#define ENCRYPT_IV_SIZE 16 +#define ENCRYPT_KEY_SIZE 32 +#define ENCRYPT_CIPHER_SIZE 16 +typedef uint8_t EncryptionKey[ENCRYPT_KEY_SIZE]; +typedef uint8_t EncryptionText[ENCRYPT_CIPHER_SIZE]; +typedef uint8_t PlainText[ENCRYPT_CIPHER_SIZE]; +enum class AccessLevel_t : uint8_t +{ + Open = 0, + Admin = 1, + Regulator = 2, + Manufacturer = 3 +}; +typedef struct SetAccessLevelRqTag +{ + bool Granted; + EncryptionText Code; + EncryptionKey Key; + AccessLevel_t Level; +} SetAccessLevelRq_t; +typedef struct SetAccessPasswordRqTag +{ + EncryptionKey Key; + AccessLevel_t Level; +} SetAccessPasswordRq_t; +typedef struct CommandIdPermissionsTag +{ + AccessLevel_t Level; + uint8_t CommandIdPermissions[COMMAND_ID_MAP_SIZE]; +}CommandIdPermissions_t; +// **************** +// UI Config +// +#define MAX_QUICK_ACCESS_DISPLAYS 6 /*5 + default display*/ +typedef struct QuickAccessDisplayTag +{ + uint8_t Position; + uint8_t DisplayId; +}QuickAccessDisplay_t; +typedef struct DisplayEnablesTag +{ + uint8_t MenuId; + uint16_t EnableMask; + uint16_t Enables; +}DisplayAttributeMap_t; +#define MAX_MENUS 15 +typedef struct DisplayEnablePrivilegesTag +{ + AccessLevel_t Level; + uint8_t NumMenus; + uint16_t Privileges[MAX_MENUS]; +} DisplayEnablePrivileges_t; +enum class DisplayCapability_t :uint8_t +{ + DefaultDisplay = 1, + QuickDisplay = 2, +}; +enum class OffModeDisplayId_t : uint8_t +{ + Undefined = 0, + OffText = 1, + CalDueDate = 2, + UserBitmap = 3, + Manufacturer_PartnerLogo = 4, + CustomerLogo = 5, + ModelVersion=6 +}; +enum class AlarmIds : uint16_t +{ + DoseAlarm = 0, + DoseWarning = 1, + RateWarning = 2, + RateAlarm = 3, + DoseOrRateOverRange = 4, + FailureAlarm = 5, + AbuseAlarm = 6, + BatteryLow = 7, + ReturnForRead = 8 +}; +#define MAX_OTHER_ALARMS 5 +typedef struct AlarmConfigTag +{ + AlarmIds AlarmId; + uint16_t MeasurandId; + uint16_t AlarmConfigMask; + uint16_t AlarmConfigBits; + uint16_t Duration; +}AlarmConfig_t; +typedef struct AlarmConfigIdTag +{ + AlarmIds AlarmId; + uint16_t MeasurandId; +}AlarmConfigId; +// **************** +// Telemetry +// +typedef struct TeleAdvConfigTag +{ + uint8_t operatingMode; + uint16_t undirectedInterval; + uint16_t directedInterval; + uint16_t directedTimeout; +}TeleAdvConfig_t; +typedef struct TeleCxnConfigTag +{ + uint16_t minInterval; + uint16_t maxInterval; + uint16_t slaveLatency; + uint16_t supervisoryTimeout; +}TeleCxnConfig_t; +// **************** +// Debug Registers +// +typedef struct DebugRegisterValueTag +{ + uint8_t registerId; + uint32_t value; +}DebugRegisterValue_t; +// **************** +// Battery Low Thesholds +// +typedef struct BatteryLowThresholdTag +{ + uint8_t batteryType; + uint16_t mv; +}BatteryLowThreshold_t; +// **************** +// Battery Critical Timing +// +typedef struct BatteryCriticalTimingTag +{ + uint16_t timeToCritical; + uint16_t timeToShutdown; +}BatteryCriticalTiming_t; +// **************** +// Battery Critical Timing +// +typedef struct MeasuredVoltagesTag +{ + uint16_t vbat0; + uint16_t vbat1; + uint16_t vcpu; +}MeasuredVoltages_t; +#pragma pack (pop) +#endif \ No newline at end of file diff --git a/EpdBase3/Reader3.dll b/EpdBase3/Reader3.dll new file mode 100644 index 0000000..0d215ff Binary files /dev/null and b/EpdBase3/Reader3.dll differ diff --git a/EpdBase3/TimeFunctions.cpp b/EpdBase3/TimeFunctions.cpp new file mode 100644 index 0000000..da6ba62 --- /dev/null +++ b/EpdBase3/TimeFunctions.cpp @@ -0,0 +1,79 @@ +#include "pch.h" +#include "TimeFunctions.h" +#pragma unmanaged + +TimeFunctions::TimeFunctions() +{ +} + + +UINT32 FileTime_to_POSIX(FILETIME ft) +{ + // takes the last modified date + LARGE_INTEGER date, adjust; + date.HighPart = ft.dwHighDateTime; + date.LowPart = ft.dwLowDateTime; + + // 100-nanoseconds = milliseconds * 10000 + adjust.QuadPart = 11644473600000 * 10000; + + // removes the diff between 1970 and 1601 + date.QuadPart -= adjust.QuadPart; + + // converts back from 100-nanoseconds to seconds + return (UINT32)(date.QuadPart / 10000000); +} + +UINT32 UnixTimeNow() { + FILETIME ft; + GetSystemTimeAsFileTime(&ft); + return FileTime_to_POSIX(ft); +} + +void TimeFunctions::UnixTimeToFileTime(time_t t, LPFILETIME pft) +{ + // Note that LONGLONG is a 64-bit value + LONGLONG ll; + + ll = Int32x32To64(t, 10000000) + 116444736000000000; + pft->dwLowDateTime = (DWORD)ll; + pft->dwHighDateTime = ll >> 32; +} + + void TimeFunctions::UnixTimeToSystemTime(time_t t, LPSYSTEMTIME pst) +{ + FILETIME ft; + UnixTimeToFileTime(t, &ft); + FileTimeToSystemTime(&ft, pst); +} + + + void TimeFunctions::EpdTimeToFileTime(INT32 t, LPFILETIME pft, bool isMK2) //MK3 + { + LONGLONG offset; + if (isMK2) offset = 116444736000000000; else offset = 125911584000000000;; + LONGLONG ll; + ll = Int32x32To64(t, 10000000) + offset; //1601-1-1 -> 2000 + pft->dwLowDateTime = (DWORD)ll; + pft->dwHighDateTime = ll >> 32; + } + + void TimeFunctions::FileTimeToEpdTime(FILETIME pft, INT32* t, bool isMK2) + { + LONGLONG offset; + if (isMK2) offset = 116444736000000000; else offset = 125911584000000000; + LONGLONG ll = ((((LONGLONG)pft.dwHighDateTime << 32) + pft.dwLowDateTime) - offset) / 10000000; + *t = (DWORD)ll; + } + + UINT32 TimeFunctions::NowToEpdTime(bool isMK2) + { + LONGLONG offset; + if (isMK2) offset = 116444736000000000; else offset = 125911584000000000; + SYSTEMTIME t; + GetSystemTime(&t); + FILETIME ft; + SystemTimeToFileTime((const SYSTEMTIME*)&t, &ft); + LONGLONG ll = ((((LONGLONG)ft.dwHighDateTime << 32U) + ft.dwLowDateTime) - offset) / 10000000; + return (DWORD)ll; + } \ No newline at end of file diff --git a/EpdBase3/TimeFunctions.h b/EpdBase3/TimeFunctions.h new file mode 100644 index 0000000..3f4baa0 --- /dev/null +++ b/EpdBase3/TimeFunctions.h @@ -0,0 +1,17 @@ +#pragma once +#include +#include + +class TimeFunctions +{ +public: + TimeFunctions(); + static void EpdTimeToFileTime(INT32 t, LPFILETIME pft, bool isMK2); + void FileTimeToEpdTime(FILETIME pft, INT32* t, bool isMK2); + static UINT32 NowToEpdTime(bool isMK2); + static void UnixTimeToFileTime(time_t t, LPFILETIME pft); + static void UnixTimeToSystemTime(time_t t, LPSYSTEMTIME pst); +}; + +UINT32 FileTime_to_POSIX(FILETIME ft); +UINT32 UnixTimeNow(); diff --git a/EpdBase3/framework.h b/EpdBase3/framework.h new file mode 100644 index 0000000..3209b4a --- /dev/null +++ b/EpdBase3/framework.h @@ -0,0 +1,3 @@ +#pragma once + +#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers diff --git a/EpdBase3/pch.cpp b/EpdBase3/pch.cpp new file mode 100644 index 0000000..64b7eef --- /dev/null +++ b/EpdBase3/pch.cpp @@ -0,0 +1,5 @@ +// pch.cpp: source file corresponding to the pre-compiled header + +#include "pch.h" + +// When you are using pre-compiled headers, this source file is necessary for compilation to succeed. diff --git a/EpdBase3/pch.h b/EpdBase3/pch.h new file mode 100644 index 0000000..885d5d6 --- /dev/null +++ b/EpdBase3/pch.h @@ -0,0 +1,13 @@ +// pch.h: This is a precompiled header file. +// Files listed below are compiled only once, improving build performance for future builds. +// This also affects IntelliSense performance, including code completion and many code browsing features. +// However, files listed here are ALL re-compiled if any one of them is updated between builds. +// Do not add files here that you will be updating frequently as this negates the performance advantage. + +#ifndef PCH_H +#define PCH_H + +// add headers that you want to pre-compile here +#include "framework.h" + +#endif //PCH_H diff --git a/EpdBase3/reader3.def b/EpdBase3/reader3.def new file mode 100644 index 0000000..f8ca24b --- /dev/null +++ b/EpdBase3/reader3.def @@ -0,0 +1,476 @@ +LIBRARY reader3 +EXPORTS +AwaitRemoval@20 @1 +BeginClearAllStatus@8 @2 +BeginClearDose@8 @3 +BeginClearDoseProfile_R3@8 @4 +BeginClearEEPROM_R3@8 @5 +BeginClearFaultStatus@8 @6 +BeginClearGraphic_R3@12 @7 +BeginClearLatchedAlarms@8 @8 +BeginClearPeakRates@8 @9 +BeginClearScratchPad@12 @10 +BeginClearTotalDose@8 @11 +BeginClearWearerOrTaskId_R3@16 @12 +BeginDeissueEPD@8 @13 +BeginEnableCovertMode_R3@12 @14 +BeginEnableDeepSleep_R3@12 @15 +BeginEnableManufacturerLockout_R3@12 @16 +BeginEnableProtectedSession_R3@12 @17 +BeginEnableResponderMode_R3@12 @18 +BeginEpdOnOff@12 @19 +BeginInitiateFirmwareUpdate_R3@8 @20 +BeginIssueEPD@8 @21 +BeginMfrLogin_R2@12 @22 +BeginReadAccessPermissionsForLevel_R3@12 @23 +BeginReadAlarmConfiguration@16 @24 +BeginReadAlarmConfigurationLock_R3@8 @25 +BeginReadAlarmConfiguration_R3@16 @26 +BeginReadAlarmThresholds@20 @27 +BeginReadBacklightBrightness_R3@8 @28 +BeginReadBacklightEnable_R3@8 @29 +BeginReadBacklightPeriod_R3@8 @30 +BeginReadBaselineCounts@8 @31 +BeginReadBatteryCriticalTiming_R3@8 @32 +BeginReadBatteryLowThreshold@12 @33 +BeginReadBatteryTestInterval@8 @34 +BeginReadBatteryTypeFitted_R3@8 @35 +BeginReadBatteryTypeOverride_R3@8 @36 +BeginReadCalDueDate@8 @37 +BeginReadCalDueDate_R3@8 @38 +BeginReadCalReference_R3@8 @39 +BeginReadCalibrationData_R2@8 @40 +BeginReadCalibrationFacility_R3@8 @41 +BeginReadCapabilities@8 @42 +BeginReadChirpEnable_R3@8 @43 +BeginReadChirpSensitivity@8 @44 +BeginReadCounts@16 @45 +BeginReadCurrentAccessLevel@8 @46 +BeginReadDeadTimeFactors_R3@16 @47 +BeginReadDebugRegister_R3@12 @48 +BeginReadDetectorTestLimits_R3@16 @49 +BeginReadDetectorThresholdLimits_R3@16 @50 +BeginReadDetectorThresholds@16 @51 +BeginReadDetectorThresholds_R3@16 @52 +BeginReadDisplayCapability_R3@12 @53 +BeginReadDisplayEnablePermissions_R3@12 @54 +BeginReadDisplayEnables_R3@16 @55 +BeginReadDisplayOptions@8 @56 +BeginReadDisplayOptionsLock_R3@8 @57 +BeginReadDisplayTimeout@8 @58 +BeginReadDoseProfileByIndex_R3@16 @59 +BeginReadDoseProfileByTime@16 @60 +BeginReadDoseProfileConfiguration_R3@8 @61 +BeginReadDoseProfileInterval@8 @62 +BeginReadDoseSaveInterval_R3@8 @63 +BeginReadDoses@16 @64 +BeginReadEEProm@16 @65 +BeginReadEpdIdentities@8 @66 +BeginReadEpdPartNumber_R3@8 @67 +BeginReadEpdRevision_R3@8 @68 +BeginReadEpdSerialNum@8 @69 +BeginReadEpdType@8 @70 +BeginReadEventLogLevel_R3@8 @71 +BeginReadEventsByIndex@16 @72 +BeginReadFactoryCalDate@8 @73 +BeginReadFemSerialNum_R3@8 @74 +BeginReadFirmwarePartNumber_R3@8 @75 +BeginReadFirmwareVersion@8 @76 +BeginReadFlashTestCounts_R3@16 @77 +BeginReadFpgaVersion_R3@8 @78 +BeginReadGains@16 @79 +BeginReadGains_R3@16 @80 +BeginReadGraphicData_R3@12 @81 +BeginReadGraphicSize_R3@12 @82 +BeginReadLastCalibrationProcess_R3@8 @83 +BeginReadMarkNumber@8 @84 +BeginReadMeasurandIds_R3@8 @85 +BeginReadModelName_R3@8 @86 +BeginReadOffModeBatteryTestInterval_R3@8 @87 +BeginReadOffModeDisplay_R3@8 @88 +BeginReadPcbPartNumber_R3@8 @89 +BeginReadPcbRevision_R3@8 @90 +BeginReadPcbSerialNum_R3@8 @91 +BeginReadPeakRates@16 @92 +BeginReadPulseModeEnable_R3@8 @93 +BeginReadPulseModeIndustrial_R3@8 @94 +BeginReadPulseModeThreshold_R3@8 @95 +BeginReadPulsedModeOverrangeThreshold_R3@8 @96 +BeginReadQualityData@8 @97 +BeginReadQuickAccessDisplays_R3@16 @98 +BeginReadRTC@8 @99 +BeginReadRadioFirmwareVersion_R3@8 @100 +BeginReadRateOffPercentage@16 @101 +BeginReadRates@16 @102 +BeginReadResponderTriggerUtc_R3@8 @103 +BeginReadReturnForReadTime@8 @104 +BeginReadRunTime_R3@8 @105 +BeginReadScratchPad@16 @106 +BeginReadScratchpadSize@8 @107 +BeginReadSelfTestInterval@8 @108 +BeginReadSensitivities@16 @109 +BeginReadSensitivities_R3@16 @110 +BeginReadSnapshotAlarmThresholds_R3@12 @111 +BeginReadSnapshotCounters_R3@12 @112 +BeginReadSnapshotMeasurements_R3@12 @113 +BeginReadSnapshotSummary_R3@12 @114 +BeginReadStatus@8 @115 +BeginReadStayTime_R3@8 @116 +BeginReadSwitchOnFromButton_R3@8 @117 +BeginReadTaskDatabaseId_R3@8 @118 +BeginReadTaskId_R3@12 @119 +BeginReadTelemetryAdvConfig_R3@12 @120 +BeginReadTelemetryAdvContent_R3@12 @121 +BeginReadTelemetryCxnConfig_R3@8 @122 +BeginReadTelemetryEnable_R3@12 @123 +BeginReadTelemetryMode_R2@8 @124 +BeginReadTelemetryReportInterval_R3@8 @125 +BeginReadTelemetryTxPower_R3@12 @126 +BeginReadTotalDoses@16 @127 +BeginReadTriggeredDoses_R3@16 @128 +BeginReadVoltages@8 @129 +BeginReadWearerDatabaseId_R3@8 @130 +BeginReadWearerId@12 @131 +BeginReadZoneAccessPermitted@12 @132 +BeginReadZoneControlMap@8 @133 +BeginSetBaselineCounters@8 @134 +BeginStartDetectorTest@8 @135 +BeginTriggerBacklight_R3@8 @136 +BeginTriggerResponderMode_R3@8 @137 +BeginValidateEpdOwnerKey_R3@12 @138 +BeginWriteAccessKey@20 @139 +BeginWriteAccessLevel@20 @140 +BeginWriteAccessPermissionsForLevel_R3@20 @141 +BeginWriteAlarmConfigurationLock_R3@16 @142 +BeginWriteAlarmConfiguration_R3@16 @143 +BeginWriteAlarmThresholds@20 @144 +BeginWriteBacklightBrightness_R3@12 @145 +BeginWriteBacklightEnable_R3@12 @146 +BeginWriteBacklightPeriod_R3@12 @147 +BeginWriteBatteryCriticalTiming_R3@16 @148 +BeginWriteBatteryLowThreshold@16 @149 +BeginWriteBatteryTestInterval@12 @150 +BeginWriteBatteryTypeOverride_R3@12 @151 +BeginWriteCalDueDate@12 @152 +BeginWriteCalDueDate_R3@12 @153 +BeginWriteCalReference_R3@12 @154 +BeginWriteCalibrationFacility_R3@16 @155 +BeginWriteCapabilities_R3@12 @156 +BeginWriteChirpEnable_R3@12 @157 +BeginWriteChirpSensitivity@12 @158 +BeginWriteClearDoseOnSwitchOn@12 @159 +BeginWriteDeadTimeFactors_R3@16 @160 +BeginWriteDebugRegister_R3@16 @161 +BeginWriteDetectorTestLimits_R3@16 @162 +BeginWriteDetectorThresholds_R2@24 @163 +BeginWriteDetectorThresholds_R3@16 @164 +BeginWriteDisplayEnablePermissions_R3@20 @165 +BeginWriteDisplayEnables_R3@16 @166 +BeginWriteDisplayOptions@16 @167 +BeginWriteDisplayOptionsLock_R3@16 @168 +BeginWriteDisplayTimeout@12 @169 +BeginWriteDoseProfileDoseIncrement_R3@12 @170 +BeginWriteDoseProfileInterval@12 @171 +BeginWriteDoseProfileMeasurands_R3@16 @172 +BeginWriteDoseSaveInterval_R3@12 @173 +BeginWriteDoseWritableFlag@12 @174 +BeginWriteDoses@16 @175 +BeginWriteEEProm@20 @176 +BeginWriteEpdPartNumber_R3@12 @177 +BeginWriteEpdRevision_R3@12 @178 +BeginWriteEpdSerialNumber@12 @179 +BeginWriteEventLogLevel_R3@12 @180 +BeginWriteFactoryCalDate@12 @181 +BeginWriteFemSerialNumber_R3@12 @182 +BeginWriteGainableFlag_R3@12 @183 +BeginWriteGains_R3@16 @184 +BeginWriteGoldenFlag_R3@12 @185 +BeginWriteGraphicBitmap_R3@352 @186 +BeginWriteLastCalibrationProcess_R3@20 @187 +BeginWriteMarkNumber_R3@12 @188 +BeginWriteModelName_R3@40 @189 +BeginWriteNotCalibratedFlag_R3@12 @190 +BeginWriteOffModeBatteryTestInterval_R3@12 @191 +BeginWriteOffModeDisplay_R3@16 @192 +BeginWritePcbPartNumber_R3@12 @193 +BeginWritePcbRevision_R3@12 @194 +BeginWritePcbSerialNumber_R3@12 @195 +BeginWritePulseModeEnable_R3@12 @196 +BeginWritePulseModeIndustrial_R3@12 @197 +BeginWritePulseModeThreshold_R3@12 @198 +BeginWritePulsedModeOverrangeThreshold_R3@12 @199 +BeginWriteQuickAccessDisplays_R3@16 @200 +BeginWriteRTC_R3@12 @201 +BeginWriteRateOffPercentage@16 @202 +BeginWriteReturnForReadTime@12 @203 +BeginWriteScratchPad@20 @204 +BeginWriteSelfTestInterval@12 @205 +BeginWriteSensitivities_R2@32 @206 +BeginWriteSensitivities_R3@16 @207 +BeginWriteStayTime_R3@12 @208 +BeginWriteSwitchOnFromButton_R3@12 @209 +BeginWriteTaskDatabaseId_R3@24 @210 +BeginWriteTaskId_R3@76 @211 +BeginWriteTelemetryAdvConfig_R3@12 @212 +BeginWriteTelemetryAdvContent_R3@16 @213 +BeginWriteTelemetryCxnConfig_R3@12 @214 +BeginWriteTelemetryEnable_R3@16 @215 +BeginWriteTelemetryMode_R2@12 @216 +BeginWriteTelemetryReportInterval_R3@12 @217 +BeginWriteTelemetryTxPower_R3@16 @218 +BeginWriteTotalDoses@16 @219 +BeginWriteTriggeredDoses_R3@16 @220 +BeginWriteWearerDatabaseId_R3@24 @221 +BeginWriteWearerId@76 @222 +BeginWriteZoneControlMap@16 @223 +CleanUpReadDoseProfile@4 @224 +CleanUpReadEventLog@4 @225 +CloseReader@4 @226 +Commit3@4=Commit@4 @227 +Connect3@20=Connect3@20 @228 +CreateReaderInterface@0 @229 +DestroyReaderInterface@4 @230 +Disconnect@4 @231 +DisconnectAndNotify@12 @232 +EndClearAllStatus@8 @233 +EndClearDose@8 @234 +EndClearDoseProfile_R3@8 @235 +EndClearEEPROM_R3@8 @236 +EndClearFaultStatus@8 @237 +EndClearGraphic_R3@8 @238 +EndClearLatchedAlarms@8 @239 +EndClearPeakRates@8 @240 +EndClearScratchpad@8 @241 +EndClearTotalDose@8 @242 +EndClearWearerOrTaskId_R3@8 @243 +EndDeissueEPD@8 @244 +EndEnableCovertMode_R3@8 @245 +EndEnableDeepSleep_R3@8 @246 +EndEnableManufacturerLockout_R3@8 @247 +EndEnableProtectedSession_R3@8 @248 +EndEnableResponderMode_R3@8 @249 +EndEpdOnOff@8 @250 +EndInitiateFirmwareUpdate_R3@8 @251 +EndIssueEPD@8 @252 +EndMfrLogin_R2@8 @253 +EndReadAccessPermissionsForLevel_R3@20 @254 +EndReadAlarmConfiguration@20 @255 +EndReadAlarmConfigurationLock_R3@20 @256 +EndReadAlarmConfiguration_R3@20 @257 +EndReadAlarmThresholds@12 @258 +EndReadBacklightBrightness_R3@12 @259 +EndReadBacklightEnable_R3@12 @260 +EndReadBacklightPeriod_R3@12 @261 +EndReadBaselineCounts@24 @262 +EndReadBatteryCriticalTiming_R3@16 @263 +EndReadBatteryLowThreshold@16 @264 +EndReadBatteryTestInterval@12 @265 +EndReadBatteryTypeFitted_R3@12 @266 +EndReadBatteryTypeOverride_R3@12 @267 +EndReadCalDueDate@12 @268 +EndReadCalDueDate_R3@12 @269 +EndReadCalReference_R3@12 @270 +EndReadCalibrationData_R2@48 @271 +EndReadCalibrationFacility_R3@12 @272 +EndReadCapabilities@12 @273 +EndReadChirpEnable_R3@12 @274 +EndReadChirpSensitivity@12 @275 +EndReadCounts@28 @276 +EndReadCurrentAccessLevel@12 @277 +EndReadDeadTimeFactors_R3@20 @278 +EndReadDebugRegister_R3@16 @279 +EndReadDetectorTestLimits_R3@20 @280 +EndReadDetectorThresholdLimits_R3@20 @281 +EndReadDetectorThresholds@20 @282 +EndReadDetectorThresholds_R3@20 @283 +EndReadDisplayCapability_R3@24 @284 +EndReadDisplayEnablePermissions_R3@24 @285 +EndReadDisplayEnables_R3@20 @286 +EndReadDisplayOptions@12 @287 +EndReadDisplayOptionsLock_R3@12 @288 +EndReadDisplayTimeout@12 @289 +EndReadDoseProfileByIndex_R3@24 @290 +EndReadDoseProfileByTime@16 @291 +EndReadDoseProfileConfiguration_R3@12 @292 +EndReadDoseProfileInterval@12 @293 +EndReadDoseSaveInterval_R3@12 @294 +EndReadDoses@24 @295 +EndReadEEProm@24 @296 +EndReadEpdIdentities@36 @297 +EndReadEpdPartNumber_R3@12 @298 +EndReadEpdRevision_R3@12 @299 +EndReadEpdSerialNum@12 @300 +EndReadEpdType@12 @301 +EndReadEventLogLevel_R3@12 @302 +EndReadEventsByIndex@16 @303 +EndReadFactoryCalDate@12 @304 +EndReadFemSerialNum_R3@12 @305 +EndReadFirmwarePartNumber_R3@12 @306 +EndReadFirmwareVersion@12 @307 +EndReadFlashTestCounts_R3@24 @308 +EndReadFpgaVersion_R3@16 @309 +EndReadGains@20 @310 +EndReadGains_R3@20 @311 +EndReadGraphicData_R3@12 @312 +EndReadGraphicSize_R3@12 @313 +EndReadLastCalibrationProcess_R3@12 @314 +EndReadMarkNumber@12 @315 +EndReadMeasurandIds_R3@20 @316 +EndReadModelName_R3@12 @317 +EndReadOffModeBatteryTestInterval_R3@12 @318 +EndReadOffModeDisplay_R3@16 @319 +EndReadPcbPartNumber_R3@12 @320 +EndReadPcbRevision_R3@12 @321 +EndReadPcbSerialNum_R3@12 @322 +EndReadPeakRates@20 @323 +EndReadPulseModeEnable_R3@12 @324 +EndReadPulseModeIndustrial_R3@12 @325 +EndReadPulseModeThreshold_R3@12 @326 +EndReadPulsedModeOverrangeThreshold_R3@12 @327 +EndReadQualityData@12 @328 +EndReadQuickAccessDisplays_R3@20 @329 +EndReadRTC@12 @330 +EndReadRadioFirmwareVersion_R3@12 @331 +EndReadRateOffPercentage@20 @332 +EndReadRates@24 @333 +EndReadResponderTriggerUtc_R3@12 @334 +EndReadReturnForReadTime@12 @335 +EndReadRunTime_R3@12 @336 +EndReadScratchpad@24 @337 +EndReadScratchpadSize@12 @338 +EndReadSelfTestInterval@12 @339 +EndReadSensitivities@20 @340 +EndReadSensitivities_R3@20 @341 +EndReadSnapshotAlarmThresholds_R3@12 @342 +EndReadSnapshotCounters_R3@12 @343 +EndReadSnapshotMeasurements_R3@12 @344 +EndReadSnapshotSummary_R3@12 @345 +EndReadStatus@12 @346 +EndReadStayTime_R3@12 @347 +EndReadSwitchOnFromButton_R3@12 @348 +EndReadTaskDatabaseId_R3@12 @349 +EndReadTaskId_R3@12 @350 +EndReadTelemetryAdvConfig_R3@12 @351 +EndReadTelemetryAdvContent_R3@16 @352 +EndReadTelemetryCxnConfig_R3@12 @353 +EndReadTelemetryEnable_R3@16 @354 +EndReadTelemetryMode_R2@12 @355 +EndReadTelemetryReportInterval_R3@12 @356 +EndReadTelemetryTxPower_R3@16 @357 +EndReadTotalDoses@24 @358 +EndReadTriggeredDoses_R3@24 @359 +EndReadVoltages@20 @360 +EndReadWearerDatabaseId_R3@12 @361 +EndReadWearerId@12 @362 +EndReadZoneAccessPermitted@12 @363 +EndReadZoneControlMap@12 @364 +EndSetBaselineCounters@8 @365 +EndStartDetectorTest@8 @366 +EndTriggerBacklight_R3@8 @367 +EndTriggerResponderMode_R3@8 @368 +EndValidateEpdOwnerKey_R3@12 @369 +EndWriteAccessKey@8 @370 +EndWriteAccessLevel@8 @371 +EndWriteAccessPermissionsForLevel_R3@8 @372 +EndWriteAlarmConfigurationLock_R3@8 @373 +EndWriteAlarmConfiguration_R3@8 @374 +EndWriteAlarmThresholds@8 @375 +EndWriteBacklightBrightness_R3@8 @376 +EndWriteBacklightEnable_R3@8 @377 +EndWriteBacklightPeriod_R3@8 @378 +EndWriteBatteryCriticalTiming_R3@8 @379 +EndWriteBatteryLowThreshold@8 @380 +EndWriteBatteryTestInterval@8 @381 +EndWriteBatteryTypeOverride_R3@8 @382 +EndWriteCalDueDate@8 @383 +EndWriteCalDueDate_R3@8 @384 +EndWriteCalReference_R3@8 @385 +EndWriteCalibrationFacility_R3@8 @386 +EndWriteCapabilities_R3@8 @387 +EndWriteChirpEnable_R3@8 @388 +EndWriteChirpSensitivity@8 @389 +EndWriteClearDoseOnSwitchOn@8 @390 +EndWriteDeadTimeFactors_R3@8 @391 +EndWriteDebugRegister_R3@8 @392 +EndWriteDetectorTestLimits_R3@8 @393 +EndWriteDetectorThresholds_R2@8 @394 +EndWriteDetectorThresholds_R3@8 @395 +EndWriteDisplayEnablePermissions_R3@8 @396 +EndWriteDisplayEnables_R3@8 @397 +EndWriteDisplayOptions@8 @398 +EndWriteDisplayOptionsLock_R3@8 @399 +EndWriteDisplayTimeout@8 @400 +EndWriteDoseProfileDoseIncrement_R3@8 @401 +EndWriteDoseProfileInterval@8 @402 +EndWriteDoseProfileMeasurands_R3@8 @403 +EndWriteDoseSaveInterval_R3@8 @404 +EndWriteDoseWritableFlag@8 @405 +EndWriteDoses@8 @406 +EndWriteEEProm@8 @407 +EndWriteEpdPartNumber_R3@8 @408 +EndWriteEpdRevision_R3@8 @409 +EndWriteEpdSerialNumber@8 @410 +EndWriteEventLogLevel_R3@8 @411 +EndWriteFactoryCalDate@8 @412 +EndWriteFemSerialNumber_R3@8 @413 +EndWriteGainableFlag_R3@8 @414 +EndWriteGains_R3@8 @415 +EndWriteGoldenFlag_R3@8 @416 +EndWriteGraphicBitmap_R3@8 @417 +EndWriteLastCalibrationProcess_R3@8 @418 +EndWriteMarkNumber_R3@8 @419 +EndWriteModelName_R3@8 @420 +EndWriteNotCalibratedFlag_R3@8 @421 +EndWriteOffModeBatteryTestInterval_R3@8 @422 +EndWriteOffModeDisplay_R3@8 @423 +EndWritePcbPartNumber_R3@8 @424 +EndWritePcbRevision_R3@8 @425 +EndWritePcbSerialNumber_R3@8 @426 +EndWritePulseModeEnable_R3@8 @427 +EndWritePulseModeIndustrial_R3@8 @428 +EndWritePulseModeThreshold_R3@8 @429 +EndWritePulsedModeOverrangeThreshold_R3@8 @430 +EndWriteQuickAccessDisplays_R3@8 @431 +EndWriteRTC_R3@8 @432 +EndWriteRateOffPercentage@8 @433 +EndWriteReturnForReadTime@8 @434 +EndWriteScratchpad@8 @435 +EndWriteSelfTestInterval@8 @436 +EndWriteSensitivities_R2@8 @437 +EndWriteSensitivities_R3@8 @438 +EndWriteStayTime_R3@8 @439 +EndWriteSwitchOnFromButton_R3@8 @440 +EndWriteTaskDatabaseId_R3@8 @441 +EndWriteTaskId_R3@8 @442 +EndWriteTelemetryAdvConfig_R3@8 @443 +EndWriteTelemetryAdvContent_R3@8 @444 +EndWriteTelemetryCxnConfig_R3@8 @445 +EndWriteTelemetryEnable_R3@8 @446 +EndWriteTelemetryMode_R2@8 @447 +EndWriteTelemetryReportInterval_R3@8 @448 +EndWriteTelemetryTxPower_R3@8 @449 +EndWriteTotalDoses@8 @450 +EndWriteTriggeredDoses_R3@8 @451 +EndWriteWearerDatabaseId_R3@8 @452 +EndWriteWearerId@8 @453 +EndWriteZoneControlMap@8 @454 +GetDiscoveredEpds@16 @455 +GetDiscoveryTimeout@8 @456 +GetDiscoveryTimeslots@8 @457 +GetDllLogLevel@8 @458 +GetErrorCode@0 @459 +GetMultipleDiscoveryMode@8 @460 +GetResponseTimeout@8 @461 +GetRetryCount@8 @462 +OpenReader@8 @463 +SetConnectCallback@8 @464 +SetDisconnectCallback@8 @465 +SetDiscoveryCacheTimeout@8 @466 +SetDiscoveryTimeslots@8 @467 +SetDllLogLevel@8 @468 +SetMultipleDiscoveryMode@8 @469 +SetRemovedCallback@8 @470 +SetResponseTimeout@8 @471 +SetRetryCount@8 @472 +StartDiscovery@8 @473 +StopDiscovery@4 @474 diff --git a/EpdBase3/reader3.exp b/EpdBase3/reader3.exp new file mode 100644 index 0000000..d416609 Binary files /dev/null and b/EpdBase3/reader3.exp differ diff --git a/EpdBase3/reader3.lib b/EpdBase3/reader3.lib new file mode 100644 index 0000000..43915aa Binary files /dev/null and b/EpdBase3/reader3.lib differ diff --git a/EpdBaseClr/EpdBaseClr.cpp b/EpdBaseClr/EpdBaseClr.cpp index 67ff1b1..d647a91 100644 --- a/EpdBaseClr/EpdBaseClr.cpp +++ b/EpdBaseClr/EpdBaseClr.cpp @@ -1,35 +1,40 @@ #include "stdafx.h" #include "EpdBaseClr.h" +#pragma managed EpdBaseClr::Epd2::Epd2(int port) { //HANDLE hMod = LoadLibrary(L"Reader2.dll"); EpdID = 0; + Jan2000 = gcnew DateTime(2000, 1, 1); isMK3 = Issued = isBG = 0; epd = new EpdBase::Epd2U(port); + epd3 = new Epd3Base::Epd3U(port); this->InitRV = epd->InitRv; - epd->StartCom(); + //epd->StartCom(); } - EpdBaseClr::Epd2::~Epd2() { if (epd != nullptr) { - delete epd; epd = nullptr; + epd->EndCom(); + delete epd; + epd = nullptr; + } + if (epd3 != nullptr) { + epd3->EndCom(); + delete epd3; + epd3 = nullptr; } this->!Epd2(); } - EpdBaseClr::Epd2::!Epd2() { } - int EpdBaseClr::Epd2::SetFeedbackSound(byte sound) { epd->EndSessionControl = sound; return 0; } - - /// /// find Epd /// @@ -60,15 +65,16 @@ int EpdBaseClr::Epd2::Connect(bool reinit, int EPDTimeout) } return rv; } - int EpdBaseClr::Epd2::Close() { EpdID= 0; - if (epd!=nullptr) epd->Close(); + if (epd !=nullptr) + epd->EndCom(); + if (epd3 != nullptr) + epd3->EndCom(); return 0; } - -int EpdBaseClr::Epd2::DecodeStatus() +int EpdBaseClr::Epd2::DecodeStatus(Epd3Base::Epd3U* epd) { epd->DecodeStatus(); //OperatingStatus @@ -104,7 +110,42 @@ int EpdBaseClr::Epd2::DecodeStatus() return 1; } +int EpdBaseClr::Epd2::DecodeStatus(EpdBase::Epd2U* epd) +{ + epd->DecodeStatus(); + //OperatingStatus + DetectorsOn = epd->DetectorsOn; + EPDIssued = epd->EPDIssued; + EPDLocked = epd->EPDLocked; + EPDTesting = epd->EPDTesting; + EPDProcSec = epd->EPDProcSec; + EPDFaulty = epd->EPDFaulty; + EPDNewFault = epd->EPDNewFault; + EPDComFault = epd->EPDComFault; + EPDCalFault = epd->EPDCalFault; + EPDDetFault = epd->EPDDetFault; + EPDEprFault = epd->EPDEprFault; + EPDTrhFault = epd->EPDTrhFault; + EPDOthFault = epd->EPDOthFault; + + AlarmDoseHP101G = epd->AlarmDoseHP101G; + AlarmDoseHP102G = epd->AlarmDoseHP102G; + AlarmDoseHP07N = epd->AlarmDoseHP07N; + AlarmRateHP101G = epd->AlarmRateHP101G; + AlarmRateHP102G = epd->AlarmRateHP102G; + AlarmRateHP07N = epd->AlarmRateHP07N; + + OtherAlarmRateHp101G = epd->OtherAlarmRateHp101G; + OtherAlarmRateHp102G = epd->OtherAlarmRateHp102G; + OtherAlarmRateHp07N = epd->OtherAlarmRateHp07N; + OtherAlarmReturn = epd->OtherAlarmReturn; + OtherAlarmBatLow = epd->OtherAlarmBatLow; + OtherAlarmCarrier = epd->OtherAlarmCarrier; + OtherAlarmBatVolt = epd->OtherAlarmBatVolt; + + return 1; +} /// /// /// @@ -114,12 +155,12 @@ int EpdBaseClr::Epd2::GetStatus() int rv = 1; StatusRV = epd->ReadStatus(); if (StatusRV != 1) GetStatusError = epd->Error; else GetStatusError= rv = 0; - AfterGetStatus(); + AfterGetStatus(epd); return rv; } - -int EpdBaseClr::Epd2::AfterGetStatus() +int EpdBaseClr::Epd2::AfterGetStatus(EpdBase::Epd2U *epd) { + isMK3 = false; Issued = epd->EPDIssued; WearerID = gcnew String((char*)epd->WearerID); WearerName = gcnew String((char*)epd->WearerName); @@ -135,26 +176,70 @@ int EpdBaseClr::Epd2::AfterGetStatus() SoftVersion = epd->SoftVersion; FunctionFlags = epd->FunctionFlags; CountsClock = epd->EpdClock; - DecodeStatus(); + DecodeStatus(epd); return 0; } - -int EpdBaseClr::Epd2::GetDoses() +int EpdBaseClr::Epd2::AfterGetStatus(Epd3Base::Epd3U* epd) { + Issued = epd->EPDIssued; + WearerID = gcnew String((char*)epd->WearerID); + WearerName = gcnew String((char*)epd->WearerName); + isOn = (epd->DetectorsOn != 0); + epdType = (int)epd->EpdType; + isBG = (epd->EpdType == EpdTypes::Mk2BetaGamma || epd->EpdType == EpdTypes::Mk3BetaGamma); //MK2 BG=0 or MK3 BG=4 3=MK2 Neuruon 7=MK3 neutron + isMK3 = epd->isMK3; + alarmStatus = (int)epd->AlarmStatus; + otherAlarms = (int)epd->OtherAlarms; + errorStatus = (int)epd->ErrorStatus; + operatingStatus = (int)epd->OperatingStatus; + EpdID = epd->EpdID; + HardVersion = epd->HardVersion; + SoftVersion = epd->SoftVersion; + FunctionFlags = epd->FunctionFlags; + CountsClock = epd->EpdClock; + DecodeStatus( epd); + return 0; +} +int EpdBaseClr::Epd2::AfterGetStatus() +{ + int rv = 0; + if (isMK3) rv=AfterGetStatus(epd3); + else rv=AfterGetStatus(epd); + return rv; +} + +/// +/// +/// +/// 0 OK +int EpdBaseClr::Epd2::GetDoses() +{ + int rv = 0; + if (isMK3) + rv = GetDoses(epd3); + else + rv = GetDoses(epd); + return rv; +} +int EpdBaseClr::Epd2::GetDoses(EpdBase::Epd2U* epd) +{ + int rv = 1; Hp10 = Hp07 = 0.0; ReadDosesRV = epd->ReadDoses(); - + if (ReadDosesRV == 1) { + rv = 0; GetDosesError = 0; Hp10 = (double)epd->Hp10Dose / 64.0; Hp07 = (double)epd->Hp07Dose / 64.0; Hp07Peak = (double)epd->Hp07Peak / 64.0; Hp10Peak = (double)epd->Hp10Peak / 64.0; - Hp07Total = epd->Hp07Total / 64.0; + Hp07Total = epd->Hp07Total / 64.0; Hp10Total = epd->Hp10Total / 64.0; } else { + rv = 1; GetDosesError = epd->Error; } @@ -162,7 +247,7 @@ int EpdBaseClr::Epd2::GetDoses() double x = (epd->EpdClock - epd->Hp10Time) * -1.0; Hp10PeakTime = System::DateTime::Now.AddSeconds(x); } - else + else Hp10PeakTime = System::Nullable();; if (epd->Hp07Time > 0) { double x = (epd->EpdClock - epd->Hp07Time) * -1.0; @@ -182,36 +267,114 @@ int EpdBaseClr::Epd2::GetDoses() BC = epd->SG; FB = epd->FB; HG = epd->HG; - - return ReadDosesRV; + return rv; } - -int EpdBaseClr::Epd2::SetDeIssued() +/// +/// +/// +/// +/// 0 OK +int EpdBaseClr::Epd2::GetDoses(Epd3Base::Epd3U* epd) { - return epd->DeIssue(); -} + int rv = 1; + Hp10 = Hp07 = 0.0; + int ReadDosesRV = epd->ReadDoses(); -int EpdBaseClr::Epd2::PrepareForIssue() -{ - PrepareForIssueError = 0; - int rv= epd->PrepareForIssue(); - if (rv != 1) PrepareForIssueError = epd->Error; + if (ReadDosesRV == 0) { + rv = 0; + GetDosesError = 0; + Hp10 = (double)epd->Hp10Dose; + Hp07 = (double)epd->Hp07Dose; + Hp07Peak = (double)epd->Hp07Peak; + Hp10Peak = (double)epd->Hp10Peak; + + Hp07Total = epd->Hp07Total; + Hp10Total = epd->Hp10Total; + } + else { + rv = 1; + GetDosesError = epd->Error; + } + + if (epd->Hp10Time > 0) { + //seconds since 2000 ? + //double x = (epd->EpdClock - epd->Hp10Time) * -1.0; + Hp10PeakTime = Jan2000->AddSeconds(epd->Hp10Time); + } + else + Hp10PeakTime = System::Nullable();; + if (epd->Hp07Time > 0) { + //double x = (epd->EpdClock - epd->Hp07Time) * -1.0; + Hp07PeakTime = Jan2000->AddSeconds(epd->Hp07Time); + } + else + Hp07PeakTime = System::Nullable(); + + QualityData = epd->QualityData; + K1 = epd->K1; + K2 = epd->K2; + K3 = epd->K3; + K4 = epd->K4; + K5 = epd->K5; + K6 = epd->K6; + SG = epd->SG; + BC = epd->SG; + FB = epd->FB; + HG = epd->HG; return rv; } +/// +/// +/// +/// 0 OK +int EpdBaseClr::Epd2::SetDeIssued() +{ + int rv = 0; + if (isMK3) rv = epd3->DeIssue(); + else rv= epd->DeIssue(); + return rv; +} +int EpdBaseClr::Epd2::PrepareForIssue() +{ + int rv = 0; + PrepareForIssueError = 0; + if (isMK3) rv= epd3->PrepareForIssue(); + else rv= epd->PrepareForIssue(); + if (rv != 0) PrepareForIssueError = epd->Error; + return rv; +} +/// +/// +/// +/// 0 OK int EpdBaseClr::Epd2::SetIssued() { - SetIssuedError = 0; - epd->Hp07THDose = (DWORD)(Hp07THDose*64.0); - epd->Hp10THDose1 = (DWORD)(Hp10THDose1*64.0); - epd->Hp10THDose2 = (DWORD)(Hp10THDose2*64.0); + int rv = 0; + if (isMK3) rv=SetIssued(epd3); + else rv=SetIssued(epd); + return rv; +} - epd->Hp10Rate1On = (DWORD)(Hp10Rate1On); - epd->Hp10Rate2On = (DWORD)(Hp10Rate2On); - epd->Hp07RateOn = (DWORD)(Hp07RateOn); - epd->Hp10Rate1Off = (DWORD)(Hp10Rate1Off); - epd->Hp10Rate2Off = (DWORD)(Hp10Rate2Off); - epd->Hp07RateOff = (DWORD)(Hp07RateOff); +/// +/// +/// +/// +/// 0 success +int EpdBaseClr::Epd2::SetIssued(Epd3Base::Epd3U* epd) +{ + int rv = 0; + SetIssuedError = 0; + epd->Hp07THDose = Hp07THDose; + epd->Hp10THDose1 = Hp10THDose1; + epd->Hp10THDose2 = Hp10THDose2; + + epd->Hp10Rate1On = Hp10Rate1On; + epd->Hp10Rate2On = Hp10Rate2On; + epd->Hp07RateOn = Hp07RateOn; + epd->Hp10Rate1Off = Hp10Rate1Off; + epd->Hp10Rate2Off = Hp10Rate2Off; + epd->Hp07RateOff = Hp07RateOff; memset(epd->WearerID, ' ', WearerIDLength); epd->WearerID[WearerIDLength] = 0; char* str1 = (char*)(void *)Runtime::InteropServices::Marshal::StringToHGlobalAnsi(WearerID); @@ -227,12 +390,51 @@ int EpdBaseClr::Epd2::SetIssued() _memccpy(epd->WearerName, str2, l, WearerNameLength); Runtime::InteropServices::Marshal::FreeHGlobal((IntPtr)str2); - int rv = epd->Issue(); - if (rv != 1) SetIssuedError = epd->Error; + rv = epd->Issue(); + if (rv != 0) SetIssuedError = epd->Error; return rv; } +int EpdBaseClr::Epd2::SetIssued(EpdBase::Epd2U* epd) +{ + int rv = 0; + SetIssuedError = 0; + epd->Hp07THDose = (DWORD)(Hp07THDose * 64.0); + epd->Hp10THDose1 = (DWORD)(Hp10THDose1 * 64.0); + epd->Hp10THDose2 = (DWORD)(Hp10THDose2 * 64.0); + epd->Hp10Rate1On = (DWORD)(Hp10Rate1On); + epd->Hp10Rate2On = (DWORD)(Hp10Rate2On); + epd->Hp07RateOn = (DWORD)(Hp07RateOn); + epd->Hp10Rate1Off = (DWORD)(Hp10Rate1Off); + epd->Hp10Rate2Off = (DWORD)(Hp10Rate2Off); + epd->Hp07RateOff = (DWORD)(Hp07RateOff); + + memset(epd->WearerID, ' ', WearerIDLength); epd->WearerID[WearerIDLength] = 0; + char* str1 = (char*)(void*)Runtime::InteropServices::Marshal::StringToHGlobalAnsi(WearerID); + int l = strlen(str1); + if (l > WearerIDLength) l = WearerIDLength; + _memccpy(epd->WearerID + WearerIDLength - l, str1, l, WearerIDLength); + Runtime::InteropServices::Marshal::FreeHGlobal((IntPtr)str1); + + memset(epd->WearerName, 0, WearerNameLength + 1); + char* str2 = (char*)(void*)Runtime::InteropServices::Marshal::StringToHGlobalAnsi(WearerName); + l = strlen(str2); + if (l > WearerNameLength) l = WearerNameLength; + _memccpy(epd->WearerName, str2, l, WearerNameLength); + Runtime::InteropServices::Marshal::FreeHGlobal((IntPtr)str2); + + rv = epd->Issue(); + if (rv != 0) SetIssuedError = epd->Error; + return rv; +} int EpdBaseClr::Epd2::WriteCalibration() +{ + int rv = 0; + if (isMK3) rv = WriteCalibration(epd3); + else rv = WriteCalibration(epd); + return rv; +} +int EpdBaseClr::Epd2::WriteCalibration(EpdBase::Epd2U* epd) { epd->K1 = K1; epd->K2 = K2; @@ -253,10 +455,48 @@ int EpdBaseClr::Epd2::WriteCalibration() } +int EpdBaseClr::Epd2::WriteCalibration(Epd3Base::Epd3U* epd) +{ + epd->K1 = K1; + epd->K2 = K2; + + epd->K3 = K3; + epd->K4 = K4; + + epd->K5 = K5; + epd->K6 = K6; + + //epd->K1 = 903; + //epd->K2 = 613; + //epd->K5 = 13100; + //epd->K6 = 1310; + + int rv = epd->WriteCal(); + return rv; + +} +/// +/// +/// +/// 0=success int EpdBaseClr::Epd2::ReadTresholds() +{ + int rv = 0; + if (isMK3) + rv = ReadTresholds(epd3); + else + rv = ReadTresholds(epd); + return rv; +} +/// +/// +/// +/// +/// 0 = Success +int EpdBaseClr::Epd2::ReadTresholds(EpdBase::Epd2U* epd) { ReadTresholdsError = 0; - int rv= epd->ReadTresHolds(); + int rv = epd->ReadTresHolds(); if (rv != 0) ReadTresholdsError = epd->Error; Hp10THDose1 = (double)epd->Hp10THDose1 / 64.0; @@ -266,6 +506,46 @@ int EpdBaseClr::Epd2::ReadTresholds() Hp10Total = (double)epd->Hp10Total / 64.0; Hp07Total = (double)epd->Hp07Total / 64.0; + Hp10Rate1On = (double)epd->Hp10Rate1On; + Hp10Rate2On = (double)epd->Hp10Rate2On; + Hp07RateOn = (double)epd->Hp07RateOn; + Hp10Rate1Off = (double)epd->Hp10Rate1Off; + Hp10Rate2Off = (double)epd->Hp10Rate2Off; + Hp07RateOff = (double)epd->Hp07RateOff; + + K1 = epd->K1; + K2 = epd->K2; + K3 = epd->K3; + K4 = epd->K4; + K5 = epd->K5; + K6 = epd->K6; + SG = epd->SG; + BC = epd->BC; + FB = epd->FB; + HG = epd->HG; + + return rv; +} +/// +/// +/// +/// +/// 0 Success +int EpdBaseClr::Epd2::ReadTresholds(Epd3Base::Epd3U* epd) +{ + int rv = 0; + ReadTresholdsError = 0; + rv= epd->ReadAlarmTresholds(); + rv = epd->ReadSensitivitiesAndTresholds(); + if (rv != 0) ReadTresholdsError = epd->Error; + + Hp10THDose1 = (double)epd->Hp10THDose1 ; + Hp10THDose2 = (double)epd->Hp10THDose2 ; + Hp07THDose = (double)epd->Hp07THDose ; + + Hp10Total = (double)epd->Hp10Total ; + Hp07Total = (double)epd->Hp07Total ; + Hp10Rate1On = (double)epd->Hp10Rate1On; Hp10Rate2On = (double)epd->Hp10Rate2On ; Hp07RateOn = (double)epd->Hp07RateOn ; @@ -286,8 +566,14 @@ int EpdBaseClr::Epd2::ReadTresholds() return rv; } - -int EpdBaseClr::Epd2::ReadExtraStatus() +int EpdBaseClr::Epd2::ReadExtraStatus() +{ + int rv = 0; + if (isMK3) rv = ReadExtraStatus(epd3); + else rv = ReadExtraStatus(epd); + return rv; +} +int EpdBaseClr::Epd2::ReadExtraStatus(EpdBase::Epd2U* epd) { int rv = epd->EPDReadExtraStatus(); BatADC = epd->byBatADC; @@ -302,7 +588,40 @@ int EpdBaseClr::Epd2::ReadExtraStatus() return rv; } +int EpdBaseClr::Epd2::ReadExtraStatus(Epd3Base::Epd3U* epd) +{ + int rv = epd->EPDReadExtraStatus(); + BatADC = 0; //epd->byBatADC; + SupplyADC = 0; // epd->bySupplyADC; + D1 = epd->D1 - epd->BaseD1; + D2 = epd->D2 - epd->BaseD2; + D3 = epd->D3 - epd->BaseD3; + D4 = epd->D4 - epd->BaseD4; + CountsClock = epd->CountsClock; + CountsClockBase = epd->BaseCountsClock; + + return rv; +} +int EpdBaseClr::Epd2::SwitchCon() +{ + int rv = 0; + if (isMK3) { + if (epd3->epdComsHandle == INVALID_HANDLE_VALUE) { + epd->EndCom(); rv=epd3->StartCom(); + } + } + else { + if (epd->CommsInitialized == 0) { + epd3->EndCom(); + rv = epd->StartCom(); + rv = epd->Open(EpdID); + rv = epd->ReadStatus(); + if (rv == 1) rv = 0; else rv = 1; + } + } + return rv; +} void EpdBaseClr::Epd2::InitData() { ConnectError = 0; @@ -324,7 +643,6 @@ void EpdBaseClr::Epd2::InitData() FunctionFlags = 0; CountsClock = 0; } - /// /// connect to Epd and read status /// @@ -333,42 +651,44 @@ int EpdBaseClr::Epd2::ConnectAndStatus() { int rv = 1; InitData(); - rv = epd->ConnectAndStatus(tokenSourceTimeout); + epd->EndCom(); + rv = epd3->ConnectAndStatus(tokenSourceTimeout); if (rv==0) { - DeviceCount = epd->DeviceCount; - EpdID = epd->DeviceIDs[0]; rv = 0; - AfterGetStatus(); + DeviceCount = epd3->DeviceCount; + EpdID = epd->EpdID; + rv = 0; + AfterGetStatus(epd3); + epd->EpdID = epd3->EpdID; + rv = SwitchCon(); } - else ConnectError = epd->Error; + else + ConnectError = epd->Error; return rv; } - void EpdBaseClr::Epd2::WaitEpd() { int rv = 0; //start System::Threading::CancellationToken^ token = tokenSource->Token; rv = ConnectAndStatus(); - if (token->IsCancellationRequested && rv != 2) { + /*if (token->IsCancellationRequested && rv != 2) { rv = 2; - } + }*/ if (rv == 0) { if (_EpdRead != nullptr) _EpdRead(this, gcnew EpdEventArgs(EpdID, Issued, isBG, isMK3)); } else if (rv == 2 && _EpdTO != nullptr) { - _EpdTO(this, gcnew EpdTOEventArgs(epd->ConnectTries, epd->ConnectTimerFired)); + _EpdTO(this, gcnew EpdTOEventArgs(epd3->ConnectTries, epd3->ConnectTimerFired)); } else if (rv > 0 && _EpdError != nullptr) { _EpdError(this, gcnew EpdErrorEventArgs(rv)); } return; } - System::Threading::Tasks::Task^ EpdBaseClr::Epd2::Wait(int timeout, int Retries) { if (waitTask == nullptr) { tokenSourceTimeout = timeout; - epd->maxDiscoverTime = timeout; tokenSource = gcnew System::Threading::CancellationTokenSource(tokenSourceTimeout + 500); readRetries = Retries; waitTask = System::Threading::Tasks::Task::Run(gcnew Action(this, &Epd2::WaitEpd)); // System::Threading::Tasks::Task::Factory->cre(gcnew Action(this, &CCard::WaitBadge), tokenSource->Token); @@ -382,8 +702,8 @@ void EpdBaseClr::Epd2::WaitEnd() { if (waitTask != nullptr) { - if (epd->hWaitTimer!= nullptr) - SetEvent(epd->hWaitTimer); + if (epd3->hWaitTimer!= nullptr) + SetEvent(epd3->hWaitTimer); waitTask->Wait(750); if (waitTask->Status == System::Threading::Tasks::TaskStatus::Running) { tokenSource->Cancel(); diff --git a/EpdBaseClr/EpdBaseClr.h b/EpdBaseClr/EpdBaseClr.h index 186fe37..84886a6 100644 --- a/EpdBaseClr/EpdBaseClr.h +++ b/EpdBaseClr/EpdBaseClr.h @@ -1,6 +1,12 @@ #pragma once +#pragma unmanaged #include "..\EpdBase\EpdBase.h" #pragma comment(lib,"dll2/Reader2.lib") +#undef EPDDLL_API +#pragma unmanaged +#include "..\EpdBase3\Epd3Base.h" +#pragma comment(lib,"dll2/Reader3.lib") +#pragma managed using namespace System; namespace EpdBaseClr { @@ -67,6 +73,9 @@ namespace EpdBaseClr { public ref class Epd2 { + private: + DateTime^ Jan2000; + public: delegate void dEpdRead(Epd2^ Sender, EpdEventArgs^ e); delegate void dEpdTO(Epd2^ Sender, EpdTOEventArgs^ e); @@ -116,6 +125,7 @@ namespace EpdBaseClr { public: EpdBase::Epd2U *epd; + Epd3Base::Epd3U* epd3; //sEpdBase^ b; DateTime^ RealTime; String^ WearerName; @@ -235,16 +245,30 @@ namespace EpdBaseClr { int Connect(bool reinit, int EPDTimeout); int Close(); + int DecodeStatus(Epd3Base::Epd3U* epd); + int DecodeStatus(EpdBase::Epd2U* epd); int GetStatus(); int GetDoses(); + int GetDoses(EpdBase::Epd2U* epd); + int GetDoses(Epd3Base::Epd3U* epd); int SetDeIssued(); int SetIssued(); + int SetIssued(Epd3Base::Epd3U* epd); - int PrepareForIssue(); + int SetIssued(EpdBase::Epd2U* epd); + + + int PrepareForIssue(); int WriteCalibration(); + int WriteCalibration(EpdBase::Epd2U* epd); + int WriteCalibration(Epd3Base::Epd3U* epd); int ReadTresholds(); + int ReadTresholds(EpdBase::Epd2U* epd); + int ReadTresholds(Epd3Base::Epd3U* epd); int ReadExtraStatus(); + int ReadExtraStatus(EpdBase::Epd2U* epd); + int ReadExtraStatus(Epd3Base::Epd3U* epd); int ConnectAndStatus(); System::Threading::CancellationTokenSource^ tokenSource; @@ -255,12 +279,12 @@ namespace EpdBaseClr { void WaitEnd(); private: - void InitData(); + int AfterGetStatus(EpdBase::Epd2U* epd); + int AfterGetStatus(Epd3Base::Epd3U* epd); int AfterGetStatus(); - int DecodeStatus(); + int SwitchCon(); + void InitData(); void WaitEpd(); - - }; } diff --git a/EpdBaseClr/EpdBaseClr.vcxproj b/EpdBaseClr/EpdBaseClr.vcxproj index df73f76..ccab6fb 100644 --- a/EpdBaseClr/EpdBaseClr.vcxproj +++ b/EpdBaseClr/EpdBaseClr.vcxproj @@ -94,7 +94,7 @@ WIN32;_DEBUG;%(PreprocessorDefinitions) - + $(ProjectDir)..\EpdBase\dll2\Reader2.lib;%(AdditionalDependencies) RequireAdministrator false @@ -160,6 +160,9 @@ + + {e6bb4f4e-4774-4fe3-b341-7f4c24dc61e7} + {3114a047-7562-42fe-94de-2418ef19ad9a} diff --git a/EpdBaseClr/Reader3.dll b/EpdBaseClr/Reader3.dll new file mode 100644 index 0000000..0d215ff Binary files /dev/null and b/EpdBaseClr/Reader3.dll differ diff --git a/EpdBaseClr/dll2/Reader3.dll b/EpdBaseClr/dll2/Reader3.dll new file mode 100644 index 0000000..0d215ff Binary files /dev/null and b/EpdBaseClr/dll2/Reader3.dll differ diff --git a/EpdBaseClr/dll2/reader3.lib b/EpdBaseClr/dll2/reader3.lib new file mode 100644 index 0000000..43915aa Binary files /dev/null and b/EpdBaseClr/dll2/reader3.lib differ diff --git a/MK3/MK3Base.cpp b/MK3/MK3Base.cpp index ab11f88..72ce892 100644 --- a/MK3/MK3Base.cpp +++ b/MK3/MK3Base.cpp @@ -396,6 +396,7 @@ WORD MK3::Epd2U::ReadStatus() return r; } + void MK3::Epd2U::decodeSensitivities(int count) { K1 = K2 = K3 = K4 = K4 = K6 = 0.0F; @@ -412,8 +413,6 @@ void MK3::Epd2U::decodeSensitivities(int count) { } } } - - void MK3::Epd2U::decodetotDoses(int count) { //doses @@ -489,7 +488,6 @@ void MK3::Epd2U::decodeBaseCounters(int count) } } - void MK3::Epd2U::decodeTreshold(Mk3AlarmThresholds_t* th) { float* pThDose = nullptr, * pThRate = nullptr, * pTHDoseWarning = nullptr, * pTHRateWarning = nullptr; @@ -578,7 +576,6 @@ void MK3::Epd2U::decodedTresholds(int numdTresholds) } } } - WORD MK3::Epd2U::ReadSensitivitiesAndTresholds() { int32_t r = 0; @@ -639,7 +636,6 @@ WORD MK3::Epd2U::ReadSensitivitiesAndTresholds() } return 0; } - WORD MK3::Epd2U::ReadDoses() { int32_t r = 1; @@ -890,7 +886,7 @@ WORD MK3::Epd2U::WriteAlarmTresholds() { WORD MK3::Epd2U::DeIssue() { int32_t r = 1; - if (!EPDIssued) return 0; +// if (!EPDIssued) return 0; ClearDoseRV = ClearTotalDoseRV = ClearPeakRatesRV = DeIssueEpdRV = 0; if (port == 0) return 1; @@ -902,8 +898,7 @@ WORD MK3::Epd2U::DeIssue() r = Commit(epdComsHandle); r = WaitForSingleObject(Ev1, 10000); // no time-out interval r = EndDeissueEPD(epdComsHandle, token); - if (r != 0) - goto error; + //if (r != 0) goto error; ResetEvent(Ev1); token = BeginEpdOnOff(epdComsHandle,0, completion); @@ -1023,7 +1018,6 @@ WORD MK3::Epd2U::Issue() error: return r; } - WORD MK3::Epd2U::EPDReadExtraStatus() { if (port == 0) return 1; @@ -1047,7 +1041,6 @@ WORD MK3::Epd2U::EPDReadExtraStatus() //if (CommitRV == 1) CommitRV = Commit(); return CommitRV; } - WORD MK3::Epd2U::WriteCal() { uint32_t r = 0; diff --git a/TestEPD3Dll/Program.cs b/TestEPD3Dll/Program.cs index f3a3eea..30811c3 100644 --- a/TestEPD3Dll/Program.cs +++ b/TestEPD3Dll/Program.cs @@ -25,6 +25,7 @@ namespace TestEPD3Dll x.ReadAlarmTresholds(); rv = x.GetDoses(); x.SetDeIssued(); + //x.WriteCalibration(); x.Hp07THDose = 1; x.Hp10THDose1 = 2; diff --git a/eDosStation.sln b/eDosStation.sln index ba4ff0c..12ab6b8 100644 --- a/eDosStation.sln +++ b/eDosStation.sln @@ -27,6 +27,8 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MK3", "MK3\MK3.vcxproj", "{ EndProject Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TestEPD3Dll", "TestEPD3Dll\TestEPD3Dll.csproj", "{37EE9D5D-1204-4B3F-879D-AAF5A9181085}" EndProject +Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Epd3Base", "EpdBase3\EpdBase3.vcxproj", "{E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -229,6 +231,20 @@ Global {37EE9D5D-1204-4B3F-879D-AAF5A9181085}.Release|x64.Build.0 = Release|Any CPU {37EE9D5D-1204-4B3F-879D-AAF5A9181085}.Release|x86.ActiveCfg = Release|Any CPU {37EE9D5D-1204-4B3F-879D-AAF5A9181085}.Release|x86.Build.0 = Release|Any CPU + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Debug|Any CPU.ActiveCfg = Debug|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Debug|ARM.ActiveCfg = Debug|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Debug|ARM64.ActiveCfg = Debug|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Debug|x64.ActiveCfg = Debug|x64 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Debug|x64.Build.0 = Debug|x64 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Debug|x86.ActiveCfg = Debug|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Debug|x86.Build.0 = Debug|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Release|Any CPU.ActiveCfg = Release|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Release|ARM.ActiveCfg = Release|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Release|ARM64.ActiveCfg = Release|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Release|x64.ActiveCfg = Release|x64 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Release|x64.Build.0 = Release|x64 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Release|x86.ActiveCfg = Release|Win32 + {E6BB4F4E-4774-4FE3-B341-7F4C24DC61E7}.Release|x86.Build.0 = Release|Win32 EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/eDosStation/EntryBadge.xaml.cs b/eDosStation/EntryBadge.xaml.cs index 2d041a3..b32e733 100644 --- a/eDosStation/EntryBadge.xaml.cs +++ b/eDosStation/EntryBadge.xaml.cs @@ -162,7 +162,7 @@ namespace eDosStation return false; } rva = ep.ReadTresholds(); - if (rva != 1) + if (rva != 0) { MessageBox.Show($"ReadTresholds error {ep.ReadTresholdsError}"); } @@ -241,7 +241,7 @@ namespace eDosStation StationVisitID = (int?)dataInterface.VisitInitCommand.Parameters["EPDVisitID"].Value; co.Close(); int rv = ep.PrepareForIssue(); - if (rv != 1) + if (rv != 0) { MessageBox.Show($"PrepareForIssue error {ep.PrepareForIssueError}"); } @@ -254,18 +254,18 @@ namespace eDosStation simulData.WearerName = ep.WearerName; #endif - ep.Hp07RateOn = CurTaskRow.HP07RateON; - ep.Hp07RateOff = CurTaskRow.HP07RateOFF; - ep.Hp10Rate1On = CurTaskRow.HP10Rate1ON; - ep.Hp10Rate1Off = CurTaskRow.HP10Rate1ON; - ep.Hp10Rate2On = CurTaskRow.HP10Rate2ON; - ep.Hp10Rate2Off = CurTaskRow.HP10Rate2ON; - ep.Hp10THDose1 = CurTaskRow.Hp10Dose1; - ep.Hp10THDose2 = CurTaskRow.Hp10Dose2; - ep.Hp07THDose = CurTaskRow.Hp07Dose; - int? kx = null; - if (!CurTaskRow.IsFNGain_ANGainValueNull()) kx = (int)CurTaskRow.FNGain_ANGainValue; - if (kx != null && (ep.K3 != kx || ep.K4 != kx)) + ep.Hp07RateOn = CurTaskRow.HP07RateON; + ep.Hp07RateOff = CurTaskRow.HP07RateOFF; + ep.Hp10Rate1On = CurTaskRow.HP10Rate1ON; + ep.Hp10Rate1Off = CurTaskRow.HP10Rate1ON; + ep.Hp10Rate2On = CurTaskRow.HP10Rate2ON; + ep.Hp10Rate2Off = CurTaskRow.HP10Rate2ON; + ep.Hp10THDose1 = CurTaskRow.Hp10Dose1; + ep.Hp10THDose2 = CurTaskRow.Hp10Dose2; + ep.Hp07THDose = CurTaskRow.Hp07Dose; + int? kx = null; + if (!CurTaskRow.IsFNGain_ANGainValueNull()) kx = (int)CurTaskRow.FNGain_ANGainValue; + if (kx != null && (ep.K3 != kx || ep.K4 != kx)) { ep.K3 = ep.K4 = kx.Value; if (!ep.isBG) @@ -298,9 +298,9 @@ namespace eDosStation #endif rv = ep.SetIssued(); - if (rv != 1) + if (rv != 0) { - MessageBox.Show($"SetIssued error {ep.SetIssuedError}"); + MessageBox.Show($"SetIssued error {rv}"); } dispatcherTimer.Start(); //restart timer panelDone.Visibility = Visibility.Visible; diff --git a/eDosStation/EpdExit.xaml.cs b/eDosStation/EpdExit.xaml.cs index 0d0c952..fb997ff 100644 --- a/eDosStation/EpdExit.xaml.cs +++ b/eDosStation/EpdExit.xaml.cs @@ -119,7 +119,7 @@ namespace eDosStation ok.IsSelected = true; } int rv = ep.ReadExtraStatus(); //D1 BaseD1 ... - if (rv != 1) + if (rv != 0) { MessageBox.Show($"ReadExtraStatus {rv}"); } @@ -127,10 +127,10 @@ namespace eDosStation Wearer.Text = $"{ep.WearerName}"; EpdVisit.Text = $"{ep.WearerID}"; rv = ep.GetDoses(); - if (rv != 1) + if (rv != 0) { rv = ep.GetDoses(); //try again - if (rv != 1) + if (rv != 0) MessageBox.Show($"GetDoses {rv} er:{ep.GetDosesError}"); } @@ -140,7 +140,7 @@ namespace eDosStation { bool isBG = ep.isBG; rv = ep.SetDeIssued(); //includes close - if (rv != 1) + if (rv != 0) { MessageBox.Show($"DeIssueerror {rv}"); } diff --git a/eDosStation/Reader3.dll b/eDosStation/Reader3.dll new file mode 100644 index 0000000..0d215ff Binary files /dev/null and b/eDosStation/Reader3.dll differ diff --git a/eDosStation/ShowEPDDose.xaml b/eDosStation/ShowEPDDose.xaml index 6a7437b..6ac1fee 100644 --- a/eDosStation/ShowEPDDose.xaml +++ b/eDosStation/ShowEPDDose.xaml @@ -25,6 +25,7 @@ + @@ -33,26 +34,33 @@ - - + + - - - - + + - - + + + + + + + - - - + + - - + + + + + + + @@ -63,8 +71,8 @@ - - + + @@ -79,12 +87,12 @@ - + - + diff --git a/eDosStation/ShowEPDDose.xaml.cs b/eDosStation/ShowEPDDose.xaml.cs index 999e14e..697adf5 100644 --- a/eDosStation/ShowEPDDose.xaml.cs +++ b/eDosStation/ShowEPDDose.xaml.cs @@ -1,16 +1,6 @@ using System; -using System.Collections.Generic; -using System.Linq; using System.Text; -using System.Threading.Tasks; using System.Windows; -using System.Windows.Controls; -using System.Windows.Data; -using System.Windows.Documents; -using System.Windows.Input; -using System.Windows.Media; -using System.Windows.Media.Imaging; -using System.Windows.Shapes; using System.Windows.Threading; namespace eDosStation @@ -91,6 +81,11 @@ namespace eDosStation } else hasAlarm.Text = "no"; + epdid.Text = ep.EpdID.ToString(); + var stype = new StringBuilder(); + if (ep.isMK3) stype.Append("MK3 "); else stype.Append("MK2 "); + if (ep.isBG) stype.Append(" BG"); else stype.Append(" NG"); + epdtype.Text = stype.ToString(); Decoder.AlarmToTextBox(sAlarm, ep); @@ -101,7 +96,7 @@ namespace eDosStation HpDose07.Text = $"{ep.Hp07:0.00} µSv"; HpDose10.Text = $"{ep.Hp10:0.00} µSv"; - ep.ReadTresholds(); + int rv = ep.ReadTresholds(); //0=success HP10AlarmDose1l.Text = "Alarm HP10(1)"; HP10AlarmDose2l.Text = "Alarm HP10(2)"; HP07AlarmDosel.Text = "Alarm HP07"; diff --git a/eDosStation/eDosStation.csproj b/eDosStation/eDosStation.csproj index 01954d3..1a0df6f 100644 --- a/eDosStation/eDosStation.csproj +++ b/eDosStation/eDosStation.csproj @@ -282,6 +282,9 @@ + + Always + diff --git a/eDosStation/reader3.lib b/eDosStation/reader3.lib new file mode 100644 index 0000000..43915aa Binary files /dev/null and b/eDosStation/reader3.lib differ