/* VSS $Header: /Viper/VPCmdIF/VPCmdIF/VPcmdDefsi.h 45    6/01/20 3:54p Suzanne $
*/
#pragma once

#ifndef _WORKING
#include "ViperInterface.h" //only need this for struct g4p_cmdlib_context
#else
#include "ViperInterface-working.h" 
#endif
#include <stdint.h>


//#define VPCMDIF_VERSION_STR "170808 v0.0.1"
//#define VPCMDIF_VERSION_STR "170922 v0.0.2"
//#define VPCMDIF_VERSION_STR "180207 v0.0.3"
//#define VPCMDIF_VERSION_STR "180508 v0.0.4"
//#define VPCMDIF_VERSION_STR "180509a v0.0.5"
//#define VPCMDIF_VERSION_STR "180525a v0.0.6"
//#define VPCMDIF_VERSION_STR "180719a v0.0.7"
//#define VPCMDIF_VERSION_STR "180831a v0.0.8"
//#define VPCMDIF_VERSION_STR "180906a v0.0.9"
//#define VPCMDIF_VERSION_STR "180907a v0.0.10"
//#define VPCMDIF_VERSION_STR "180911a v0.0.11"
//#define VPCMDIF_VERSION_STR "181003a v0.0.12"
//#define VPCMDIF_VERSION_STR "181017a v0.0.13"
//#define VPCMDIF_VERSION_STR "190308a v0.0.14"
//#define VPCMDIF_VERSION_STR "190325a v0.0.15"
//#define VPCMDIF_VERSION_STR "190409a v0.0.16"
//#define VPCMDIF_VERSION_STR "190410a v0.0.17"
//#define VPCMDIF_VERSION_STR "190411a v0.0.18"
//#define VPCMDIF_VERSION_STR "190417a v0.0.19"
//#define VPCMDIF_VERSION_STR "190503a v0.0.20"
//#define VPCMDIF_VERSION_STR "190628a v0.0.21"
//#define VPCMDIF_VERSION_STR "190702a v0.0.22"
//#define VPCMDIF_VERSION_STR "190723a v0.0.23"
//#define VPCMDIF_VERSION_STR "190903a v0.0.24"
//#define VPCMDIF_VERSION_STR "190913a v0.0.25"
//#define VPCMDIF_VERSION_STR "190918a v0.0.26"
//#define VPCMDIF_VERSION_STR "190920a v0.0.27"
//#define VPCMDIF_VERSION_STR "190925a v0.0.28"
//#define VPCMDIF_VERSION_STR "190926a v0.0.29"
//#define VPCMDIF_VERSION_STR "190926b v0.0.30"
//#define VPCMDIF_VERSION_STR "190927a v0.0.31"
//#define VPCMDIF_VERSION_STR "191016a v0.0.32"
//#define VPCMDIF_VERSION_STR "191112a v0.0.33"
//#define VPCMDIF_VERSION_STR "191112b v0.0.34"
//#define VPCMDIF_VERSION_STR "191210a v0.0.35"
//#define VPCMDIF_VERSION_STR "191220b v0.0.36"
//#define VPCMDIF_VERSION_STR "200311a v0.0.37"
//#define VPCMDIF_VERSION_STR "200318a v0.0.38"
//#define VPCMDIF_VERSION_STR "200320a v0.0.39"
//#define VPCMDIF_VERSION_STR "200401a v0.0.40"
//#define VPCMDIF_VERSION_STR "200413a v0.0.41"
//#define VPCMDIF_VERSION_STR "200423a v0.0.42"
//#define VPCMDIF_VERSION_STR "200507a v0.0.43"
//#define VPCMDIF_VERSION_STR "200519a v0.0.44"
//#define VPCMDIF_VERSION_STR "200709a v0.0.45"
//#define VPCMDIF_VERSION_STR "201007a v0.0.46"
//#define VPCMDIF_VERSION_STR "201016a v0.0.46"
//#define VPCMDIF_VERSION_STR "201022a v0.0.46"
//#define VPCMDIF_VERSION_STR "201223a v0.0.46"
//#define VPCMDIF_VERSION_STR "210112a v0.0.47"
//#define VPCMDIF_VERSION_STR "210113a v0.0.47"
//#define VPCMDIF_VERSION_STR "210204a v0.0.48"
//#define VPCMDIF_VERSION_STR "210207a v0.0.48"
//#define VPCMDIF_VERSION_STR "210208a v0.0.48"
//#define VPCMDIF_VERSION_STR "210301a v0.0.49"
//#define VPCMDIF_VERSION_STR "210309a v0.0.50"
//#define VPCMDIF_VERSION_STR "210330a v0.0.52"
#define VPCMDIF_VERSION_STR "210511a v0.0.53"

// v0.0.53 05_10a CMD_SNS_FTTHOME removed, last 3 cmds reordered
// v0.0.53 05_10a CMD_SELFCAL implementation
// v0.0.53 04_20a sns_whoami_rpt only serialnum
// v0.0.52 03_30a CMD_DISABLE_CAL added
// v0.0.51 03_10a New INSTAMAP_CONFIG for CMD_ENABLE_INSTAMAP
// v0.0.50 03_09a Add UNICODE versions of functions with character string outputs
// v0.0.49 03_01a Distribution version
// v0.0.48 02_08a CMD_COLLECT_INSTAMAP name change, CMD_ENABLE_INSTAMAP added
// v0.0.48 02_07a CMD_COLLECT_MAPDATA added
// allows pno frames with crc errors into pnostream, tagging the error in hpinfo.bfreserved1 pno field.  For troubleshooting only.
// v0.0.48 02_04a hidden funcs vpdev_pnofrmerr_allow & vpdev_pnousb_buffer-enables usb buffering
// v0.0.47 01_13a CMD_SNS_FTTHOME command added with eFTTHomeMethod arg2
// v0.0.46 10_16a Release build optimization no frame ptr, bigger capture buffer & finfo que for 960hz
// v0.0.46 Added Pno Callback option, fixed VPlibUSB transfer timeout: no more dropped frames!
// v0.0.45 CSV export, CVPSeuPno::SFUnits added.
// v0.0.44 Clean up
// v0.0.43 BIT_STRUCT
// v0.0.42 Remove E_CUSTOM from eViperFilterPresets; Fix USB MCB read LIBUSB_TRANSFER_TIMED_OUT handling.  Pass data up if nonzero bytes transferred.  Fix trace levels so verbose and codetrace produce output in usbIO and libusb
// v0.0.41 Add FILTER_LVL_E_LIGHT thru E_CUSTOM to eViperFilterPresets
// v0.0.40 Add FILTER_LVL_ENHANCED to eViperFilterPresets
// v0.0.39 Add serial cfg parameter to vpctx_connectser
// v0.0.38 Auto Hem added to HEMISPHERE_CONFIG and Startup Hem added to SOURCE_CFG
// v0.0.37 tracelev deminished by 1 for VPusbIO & VPserIO modules when set from VPcmdIF.  CMD_SOURCE_WHOAMI added
// v0.0.36 CMD_SNS_VIRTUAL implemented, CMD_PREDFILT made sensor-based.
// v0.0.35 fix srccfg handling in CBlockCfg
// v0.0.34 CMD_SNS_ORIGIN implemented
// v0.0.33 CMD_STATION_MAP re-implemented and updated
// v0.0.32 CMD_SRC_SEL implemented
// v0.0.31 document host timestamp better, fix VPPFCfg::Fill()
// v0.0.30 CMD_DUAL_OUTPUT implemented
// v0.0.29 PF_CONFIG changes, eBaud & SERIAL_CONFIG changes mods to CVPpno to check for accel mode.
// v0.0.28 Increment struct changed, BLOCK_CFG structs removed
// v0.0.27 VPif PNO_MODE_A reports accel[0]-[3]
// v0.0.26 PNO_MODE_A implemented in VPcmdIF pno functions and VPif P&O parsing
// v0.0.25 Implement distortion and aux output display CVPSeuPno
// v0.0.24 New ViperInterface
// v0.0.23 Fix USB tranfer of packets = to USB endpoint packet size: must send add'l null packet to flush. Known anomaly libusb-1.0
// v0.0.22 Set frameinfo timestamp to uint64_t std::chrono::steady_clock::now().time_since_epoch().count()
// v0.0.21 Remove obsolete error codes from VPcmdErr.h. Added static lib builds.
// v0.0.20 Fixed release-build high update rate performance issue.
// v0.0.19 Built for pre-release distribution
// v0.0.18 Added vpcmd_sns_blockcfg
// v0.0.17 Stylus mode moved back into SEU block and command category
// v0.0.16 Method(s) added to CVPSeuPno to get sensor data out of frame
// v0.0.15 Reset Origin argument added to vpcmd_sens_boresight, vpdev_tsenable() added
// v0.0.14 Framecount set in cont pno fixed, CSrcCfg, ERR_NOT_IMPL, better pno extraction & report fcns vpif
// v0.0.13 Serial COM port connection fixed. 
// v0.0.12 FTT command support added
// v0.0.11 SrcRot cmd takes source id argument
// v0.0.10 Src index moved to top ot SRC_ROT payload, CSrcRotCfg updated, Frame Rate design changed from divisor to enum
// v0.0.09 Src index added to SRC_ROT payload, CSrcRotCfg updated
// v0.0.08 Build/proj layout mods for auto build-install
// v0.0.07 CONOUT trace window error fixed; generic command functions added
// v0.0.06 FIFO retrieval of data block fixed, trace level adjusted
// v0.0.05 x64 builds added
// v0.0.04 Cfg classes completed and refined. Report/print helpers for PNO added/improved.
// v0.0.03 CHemisphereCfg
// v0.0.02 Boresight
// v0.0.01 initial 
// v0.0.06 --





