This code is available for download


#pragma once

// sample NxCoreTableHelper.h file


struct nxST_PERMID //(2) - Permission IDs
{
    enum
    {
         NxNALL   	= 0,
         OFULL_01 	= 1,
         ONBBO_1  	= 2,
         CMEQTE   	= 3,
         CBOTQTE  	= 4,
         CBOTQDP  	= 5,
         NASDQTE  	= 6,
         NASDIMQ  	= 7,
         NASDLV2  	= 8,
         NASDTRD  	= 9,
         OPRATRD  	= 10,
         CMETRD   	= 11,
         CBOTTRD  	= 12,
         NYSEQTE  	= 13,
         AMEXQTE  	= 14,
         NYSEIMQ  	= 15,
         AMEXIMQ  	= 16,
         NYSETRD  	= 17,
         AMEXTRD  	= 18,
         DOWALL   	= 19,
         ONBBO_02  	= 20,
         ONBBO_03  	= 21,
         ONBBO_04	= 22,
         OFULL_02	= 23,
         TSETRD   	= 24,
         OFULL_03	= 25,
         NYMEXALL 	= 26,
         NYBTALL  	= 27,
         COMEXALL 	= 28,
         OFULL_04	= 29,
         AMEXIDX  	= 30,
         NYSEIDX  	= 31,
         NASDIDX  	= 32,
         NQMFALL  	= 33,
         OFULL_05  	= 34,
         NQBCALL  	= 35,
         OFULL_06	= 36,
         OFULL_07	= 37,
         OFULL_08	= 38,
         RUSLIDX  	= 39,
         OFULL_09	= 40,
         OFULL_10  	= 41,
         CBOEIDX  	= 42,
         OFULL_11  	= 43,
         CMEIDX 	= 44,
         OFULL_12	= 45,
         OFULL_13	= 46,
         OFULL_14	= 47,
         OFULL_15  	= 48,
         BARKALL  	= 49,
         OFULL_16  	= 50,
         PINKALL  	= 51,
         OFULL_17 	= 52,
         OFULL_18 	= 53,
         OFULL_19 	= 54,
         NYSEBONDS	= 55,
         OFULL_20 	= 56,
         CBOEFUT  	= 57,
         OFULL_21 	= 58,
         OFULL_22 	= 59,
         OFULL_23 	= 60,
         OFULL_24 	= 61,
         OFULL_25 	= 62,
         OFULL_26 	= 63,
         OFULL_27 	= 64,
         OFULL_28 	= 65,
         OFULL_29 	= 66,
         OFULL_30 	= 67,
         OFULL_31 	= 68,
         OFULL_32 	= 69,
         OFULL_33 	= 70,
         OFULL_34 	= 71,
         OFULL_35 	= 72,
         OFULL_36 	= 73,
         OFULL_37 	= 74,
         OFULL_38 	= 75,
         OFULL_39 	= 76,
         OFULL_40 	= 77,
         OFULL_41 	= 78,
         OFULL_42 	= 79,
         OFULL_43 	= 80,
         OFULL_44 	= 81,
         OFULL_45 	= 82,
         OFULL_46 	= 83,
         OFULL_47 	= 84,
         OFULL_48 	= 85,
         NYMEXQTE 	= 86,
         COMEXQTE 	= 87,
         CMEQDP  	= 88,
         CMEFL  	= 89,
         NYSECORP  	= 90,
         AMEXCORP  	= 91,
         CBOTFL  	= 92,
         COMEXFL	= 93,
         NYMEXFL  	= 94,
         NQTVNASD  	= 95,
         NQTVNYSE  	= 96,
         NQTVAMEX  	= 97
    };
};


struct nxST_EXCHANGE //(3) - Exchange Codes
{
    enum
    {
         NQEX = 1,
         NQAD = 2,
         NYSE = 3,
         AMEX = 4,
         CBOE = 5,
         ISEX = 6,
         PACF = 7,
         CINC = 8,
         PHIL = 9,
         OPRA = 10,
         BOST = 11,
         NQNM = 12,
         NQSC = 13,
         NQBB = 14,
         NQPK = 15,
         NQIX = 16,
         CHIC = 17,
         TSE  = 18,
         CDNX = 19,
         CME  = 20,
         NYBT = 21,
         MRCY = 22,
         COMX = 23,
         CBOT = 24,
         NYMX = 25,
         KCBT = 26,
         MGEX = 27,
         NYBO = 28,
         NQBS = 29,
         DOWJ = 30,
         GEMI = 31,
         SIMX = 32,
         FTSE = 33,
         EURX = 34,
         IMPL = 35,
         DTN  = 36,
         LMT  = 37,
         LME  = 38,
         IPEX = 39,
         NQMF = 40,
         FCEC = 41,
         C2   = 42,
         MIAX = 43,
         FNYM = 44,
         BARK = 45,
         EMLD = 46,
         NQBX = 47,
         HOTS = 48,
         EUUS = 49,
         EUEU = 50,
         ENCM = 51,
         ENID = 52,
         ENIR = 53,
         CFE  = 54,
         PBOT = 55,
         FCME = 56,
         NQNX = 57,
         CTRF = 58,
         NTRF = 59,
         BATS = 60,
         FCBT = 61,
         PINK = 62,
         BATY = 63,
         EDGE = 64,
         EDGX = 65,
         RUSL = 66,
         CMEX = 67,
         IEX  = 68,
         PERL = 69,
         LSE  = 70,
         GIF  = 71,
         TSIX = 72,
         MEMX = 73,
         LTSE = 75
    };
};


struct nxST_TRADECONDITION //(4) - Trade Conditions
{
    enum
    {
         Regular             	                                    = 0,
         FormT               	                                    = 1,
         OutOfSeq            	                                    = 2,
         AvgPrc              	                                    = 3,
         AvgPrc_Nasdaq       	                                    = 4,
         OpenReportLate      	                                    = 5,
         OpenReportOutOfSeq  	                                    = 6,
         OpenReportInSeq     	                                    = 7,
         PriorReferencePrice 	                                    = 8,
         NextDaySale         	                                    = 9,
         Bunched             	                                    = 10,
         CashSale            	                                    = 11,
         Seller              	                                    = 12,
         SoldLast            	                                    = 13,
         Rule127             	                                    = 14,
         BunchedSold         	                                    = 15,
         NonBoardLot         	                                    = 16,
         POSIT               	                                    = 17,
         AutoExecution       	                                    = 18,
         Halt                	                                    = 19,
         Delayed             	                                    = 20,
         Reopen              	                                    = 21,
         Acquisition         	                                    = 22,
         CashMarket          	                                    = 23,
         NextDayMarket       	                                    = 24,
         BurstBasket         	                                    = 25,
         OpenDetail          	                                    = 26,
         IntraDetail         	                                    = 27,
         BasketOnClose       	                                    = 28,
         Rule155             	                                    = 29,
         Distribution        	                                    = 30,
         Split               	                                    = 31,
         RegularSettle       	                                    = 32,
         CustomBasketCross   	                                    = 33,
         AdjTerms            	                                    = 34,
         Spread              	                                    = 35,
         Straddle            	                                    = 36,
         BuyWrite            	                                    = 37,
         Combo               	                                    = 38,
         STPD                	                                    = 39,
         CANC                	                                    = 40,
         CANCLAST            	                                    = 41,
         CANCOPEN            	                                    = 42,
         CANCONLY            	                                    = 43,
         CANCSTPD            	                                    = 44,
         MatchCross          	                                    = 45,
         FastMarket          	                                    = 46,
         Nominal             	                                    = 47,
         Cabinet             	                                    = 48,
         BlankPrice          	                                    = 49,
         NotSpecified        	                                    = 50,
         MCOfficialClose     	                                    = 51,
         SpecialTerms        	                                    = 52,
         ContingentOrder     	                                    = 53,
         InternalCross       	                                    = 54,
         StoppedRegular      	                                    = 55,
         StoppedSoldLast     	                                    = 56,
         StoppedOutOfSeq     	                                    = 57,
         Basis               	                                    = 58,
         VWAP                	                                    = 59,
         SpecialSession      	                                    = 60,
         NanexAdmin          	                                    = 61,
         OpenReport          	                                    = 62,
         MarketOnClose       	                                    = 63,
         SettlePrice         	                                    = 64,
         OutOfSeqPreMkt      	                                    = 65,
         MCOfficialOpen      	                                    = 66,
         FuturesSpread       	                                    = 67,
         OpenRange           	                                    = 68,
         CloseRange          	                                    = 69,
         NominalCabinet      	                                    = 70,
         ChangingTrans       	                                    = 71,
         ChangingTransCab    	                                    = 72,
         NominalUpdate       	                                    = 73,
         PitSettlement       	                                    = 74,
         BlockTrade          	                                    = 75,
         ExgForPhysical      	                                    = 76,
         VolumeAdjustment    	                                    = 77,
         VolatilityTrade     	                                    = 78,
         YellowFlag          	                                    = 79,
         FloorPrice          	                                    = 80,
         OfficialPrice       	                                    = 81,
         UnofficialPrice     	                                    = 82,
         MidBidAskPrice      	                                    = 83,
         EndSessionHigh      	                                    = 84,
         EndSessionLow       	                                    = 85,
         Backwardation       	                                    = 86,
         Contango            	                                    = 87,
         Holiday             	                                    = 88,
         PreOpening          	                                    = 89,
         PostFull            	                                    = 90,
         PostRestricted      	                                    = 91,
         ClosingAuction      	                                    = 92,
         Batch               	                                    = 93,
         Trading             	                                    = 94,
         IntermarketSweep    	                                    = 95,
         Derivative          	                                    = 96,
         Reopening           	                                    = 97,
         Closing             	                                    = 98,
         CAPElection         	                                    = 99,
         SpotSettlement      	                                    = 100,
         BasisHigh           	                                    = 101,
         BasisLow            	                                    = 102,
         Yield               	                                    = 103,
         PriceVariation      	                                    = 104,
         StockOption         	                                    = 105,
         StoppedIM           	                                    = 106,
         Benchmark           	                                    = 107,
         TradeThruExempt     	                                    = 108,
         Implied             	                                    = 109,
         OTC                 	                                    = 110,
         MktSupervision                                             = 111,
         ContingentUTP                                              = 114,
         OddLot                                                     = 115,
         CorrectedCsLast     	                                    = 117,
         OPRAExtHours                                               = 118,	
         QualifiedContingent 	                                    = 124,
         SingleLegAuctionNonISO	                                    = 125,
         SingleLegAuctionISO                                        = 126,
         SingleLegCrossNonISO                                       = 127,
         SingleLegCrossISO                                          = 128,
         SingleLegFloorTrade                                        = 129,
         MultiLegAutoelectronicTrade                                = 130,
         MultiLegAuction                                            = 131,
         MultiLegCross                                              = 132,
         MultiLegFloorTrade                                         = 133,
         MultiLegAutoElecTradeAgainstSingleLeg                      = 134,
         StockOptionsAuction                                        = 135,
         MultiLegAuctionAgainstSingleLeg                            = 136,
         MultiLegFloorTradeAgainstSingleLeg                         = 137,
         StockOptionsAutoElecTrade                                  = 138,
         StockOptionsCross                                          = 139,
         StockOptionsFloorTrade                                     = 140,
         StockOptionsAutoElecTradeAgainstSingleLeg                  = 141,
         StockOptionsAuctionAgainstSingleLeg                        = 142,
         StockOptionsFloorTradeAgainstSingleLeg                     = 143,
         MultiLegFloorTradeOfProprietaryProducts                    = 144,
         BidAgressor                                                = 145,
         AskAgressor                                                = 146,
         MultilateralCompressionTradeofProprietaryDataProducts      = 147,
         ExtendedHoursTrade                                         = 148
    };
};


struct nxST_QUOTECONDITION //(5) - Quote Conditions
{
    enum
    {
         Regular            = 0,
         BidAskAutoExec     = 1,
         Rotation           = 2,
         SpecialistAsk      = 3,
         SpecialistBid      = 4,
         Locked             = 5,
         FastMarket         = 6,
         SpecialistBidAsk   = 7,
         OneSide            = 8,
         OpeningQuote       = 9,
         ClosingQuote       = 10,
         MarketMakerClosed  = 11,
         DepthOnAsk         = 12,
         DepthOnBid         = 13,
         DepthOnBidAsk      = 14,
         Tier3              = 15,
         Crossed            = 16,
         Halted             = 17,
         OperationalHalt    = 18,
         News               = 19,
         NewsPending        = 20,
         NonFirm            = 21,
         DueToRelated       = 22,
         Resume             = 23,
         NoMarketMakers     = 24,
         OrderImbalance     = 25,
         OrderInflux        = 26,
         Indicated          = 27,
         PreOpen            = 28,
         InViewOfCommon     = 29,
         RelatedNewsPending = 30,
         RelatedNewsOut     = 31,
         AdditionalInfo     = 32,
         RelatedAddlInfo    = 33,
         NoOpenResume       = 34,
         Deleted            = 35,
         RegulatoryHalt     = 36,
         SECSuspension      = 37,
         NonComliance       = 38,
         FilingsNotCurrent  = 39,
         CATSHalted         = 40,
         CATS               = 41,
         ExDivOrSplit       = 42,
         Unassigned         = 43,
         InsideOpen         = 44,
         InsideClosed       = 45,
         OfferWanted        = 46,
         BidWanted          = 47,
         Cash               = 48,
         Inactive           = 49,
         NationalBBO        = 50,
         Nominal            = 51,
         Cabinet            = 52,
         NominalCabinet     = 53,
         BlankPrice         = 54,
         SlowBidAsk         = 55,
         SlowList           = 56,
         SlowBid            = 57,
         SlowAsk            = 58,
         BidOfferWatned     = 59,
         Subpenny           = 60,
         NonBBO             = 61,
         SpecialOpen	    = 62,		 
         Benchmark          = 63,		 
         Implied            = 64,		 
         ExchangeBest       = 65,		 
         MktWideHalt1       = 66,		 
         MktWideHalt2       = 67,		 
         MktWideHalt3	    = 68,		 
         OnDemandAuction    = 69,		 
         NonFirmBid         = 70,		 
         NonFirmAsk         = 71,		 
         RetailBid          = 72,		 
         RetailAsk          = 73,		 
         RetailQte          = 74		 		 
    };
};


struct nxST_CATEGORY //(6) - NxCore Categories
{
    enum
    {
         NanexCategories_1          = 0,
         OptionContract             = 1,
         OptionSeries               = 2,
         SymbolClassification       = 3,
         EquitySymbolInfo           = 4,
         FuturesSymbolInfo          = 5,
         BondSymbolInfo             = 6,
         IndexSymbolInfo            = 7,
         FundSymbolInfo             = 8,
         EquityFundamental          = 9,
         DTNEquityFundamental       = 10,
         MutualFundFundamental      = 11,
         MoneyMarketFundamental     = 12,
         FiftyTwoWeekHiLo           = 13,
         YTDHiLo                    = 14,
         ContractHiLo               = 15,
         OHLC                       = 16,
         NxRefreshOverride          = 17,
         NxUncorrectedOHLCV         = 18,
         TradeReportSummary         = 20,
         FormTReportSummary         = 21,
         OpeningTradeReports        = 22,
         MCClosingTradeReports      = 23,
         TradeCorrection            = 24,
         BarCorrection              = 25,
         NxFirstTrade               = 26,
         NxLastTrade                = 27,
         NxFirstQuote               = 28,
         NxLastQuote                = 29,
         SymbolHistory              = 30,
         SymbolAlias                = 31,
         ActivityRank               = 33,
         FinancialStatus            = 34,
         NxNMsg                     = 39,
         OptionMultipleStrikeCodes  = 40,
         OptionMultipleStrikePrices = 41,
         TradingSessionHours        = 42,
         CTA_ClosingReport          = 50,
         OTCBB_ClosingReport        = 51,
         OTC_ClosingReport          = 52,
         Nasdaq_ClosingReport       = 54,
         Nasdaq_InsideClosingReport = 55,
         CCDF_ClosingReport         = 56,
         Split                      = 60,
         ExDividend                 = 61,
         DividendYield              = 62,
         Halt                       = 63,
         PriceIndication            = 64,
         OrderImbalance             = 65,
         ShortSaleRestricted        = 66,
         OpenInterest               = 67,
         VolOI                      = 68,
         MMakerStatus               = 69,
         RootSymbolInfo             = 70,
         FundPricing                = 71,
         FuturesContract            = 80,
         OpenRange                  = 81,
         CloseRange                 = 82,
         OtherRange                 = 83,
         Settlement                 = 84,
         FutureOptContract          = 86,
         CMESecurityInformation     = 87,
         SpreadSecurityInformation  = 88 
    };
};


struct nxST_HALTSTATUS //(7) - Halt Codes
{
    enum
    {
         Resume         = 0,
         OpenDelay      = 1,
         Halted         = 2,
         NoOpenNoResume = 3
    };
};


struct nxST_HALTREASONTYPE //(8) - Halt Reasons
{
    enum
    {
         News                  	        = 1,
         NewsDisseminated      	        = 2,
         OrderImbalance        	        = 3,
         EquipmentChange       	        = 4,
         PendingAdditionalInfo 	        = 5,
         Suspended                      = 6,
         SEC                            = 7,
         NotSpecified                   = 8,
         LULDPause                      = 9,
         MarketWideHaltLevel1  	        = 10,
         MarketWideHaltLevel2  	        = 11,
         MarketWideHaltLevel3  	        = 12,
         MarketWideHaltResume  	        = 13,
         LULDStraddle	                = 14,
         ExtraordinaryMarketActivity 	= 15,
         ETF                            = 16,
         NonCompliance                  = 17,
         FilingsNotCurrent              = 18,
         Operations                     = 19,
         IPOPending                     = 20,
         CorporateAction                = 21,
         QuoteUnavailable               = 22,
         SingleStockPause               = 23,
         SingleStockPauseResume         = 24,
         OrderInflux                    = 25,
         Volatility                     = 26,
         SubPennyTrading                = 27,
         NewsResumeTime	                = 28,
         QualificationsResolved         = 29,
         FilingsResolved                = 39,
         IssuerNewsNotForthcoming       = 31,
         RequirementsMet                = 32,
         FilingsMet                     = 33,
         ConcludedOtherAuthority        = 34,
         NewIssueAvail                  = 35,
         IssueAvail                     = 36,
         IPO_ReleaseForQuotation        = 37,
         IPO_WindowExtension            = 38,
         MarketWideCircuitBreaker   	= 39,
         PostClose                      = 40,
         PreCross                       = 41,
         Cross                          = 42,
         SECRevocation                  = 43,
         ForeignMarketRegulatory        = 44,
         SecurityDeletion               = 45,
         ExtraordinaryEvents            = 46,
         InternalHalt                   = 47,
         WasFrozen                      = 48,
         WasDelayed                 	= 49,
         AsOfUpdate                     = 50,
         RelSec_NewsDissemination       = 51,
         RelSecurity_NewsPending        = 52,
         RelatedSecurity                = 53,
         InViewOfCommon                 = 54,
         ExchangeSpecific               = 55,
         NoOpenNoResume                 = 56,
         NotAvailForTrading             = 57,
         ComponentDerivative            = 58,
         PendingResume                  = 59,
         AuthorizedFrozen               = 60,
         InhibitedFrozen                = 61,
         AuthorizedDelay                = 62,
         InhibitedDelay                 = 63,
         RecoveryInProgress             = 64,
         PreOpenNoCancel                = 65,
         PreOpen                        = 66,
         Opening                        = 67,
         Scheduled                      = 68,
         Surveillance                   = 69,
         CloseFinal                     = 70,
         UnknownOrInvalid               = 71,
         PreOpenReserved                = 72,
         Activation                     = 73,
         Expiration                     = 74
    };
};


struct nxST_OPENINDICATIONTYPE //(9) - Open Indications
{
    enum
    {
         Clear      = 0,
         Normal     = 1,
         New        = 2,
         Correcting = 3,
         Cancel     = 4,
         Range      = 5
    };
};


struct nxST_ORDERIMBALANCETYPE //(10) - Order Imbalance
{
    enum
    {
         Clear           = 0,
         BuySide         = 1,
         SellSide        = 2,
         ClearClosing    = 3,
         BuySideClosing  = 4,
         SellSideClosing = 5,
         FastMarket      = 6
    };
};


struct nxST_TRADEREPORTREASON //(11) - Trade Report Reasons
{
    enum
    {
         InitialRefresh = 0,
         PostInsert     = 1,
         PostCancel     = 2,
         PostCorrection = 3,
         SyncRefresh    = 4,
         Final          = 5,
         CorrectedFinal = 6
    };
};


struct nxST_EXGCORRECTIONMAP //(12) - Exchange Correction Flags
{
    enum
    {
         Correction = 0x00000001,
         Cancel     = 0x00000002,
         Busted     = 0x00000004,
         EntryError = 0x00000008,
         CancelBid  = 0x00000010,
         CancelAsk  = 0x00000020
    };
};


struct nxST_SYMBOLCHANGETYPE //(13) - Symbol Change Types
{
    enum
    {
         Add    = 0,
         Delete = 1,
         Modify = 2
    };
};


struct nxST_OHLCFLAGS //(14) - OHLC Flags
{
    enum
    {
         CloseIsSettle  = 0x00000001,
         CloseInClsRng  = 0x00000002,
         CloseSetByBid  = 0x00000004,
         CloseSetByAsk  = 0x00000008,
         HighBeforeLow  = 0x00000010,
         HighInserted   = 0x00000020,
         LowInserted    = 0x00000040,
         OpenInserted   = 0x00000080,
         HighSetByBid   = 0x00000100,
         LowSetByAsk    = 0x00000200,
         HighEqLow      = 0x00000400,
         LowAboveHigh   = 0x00000800,
         VolEstimated   = 0x00001000,
         OpenInOpnRng   = 0x00002000,
         OpenSetByBid   = 0x00004000,
         OpenSetByAsk   = 0x00008000,
         OpenEqLast     = 0x00010000,
         OpenEqHigh     = 0x00020000,
         OpenEqLow      = 0x00040000,
         OpenOutsideHL  = 0x00080000,
         Corrections    = 0x00100000,
         CloseEqHigh    = 0x00200000,
         CloseEqLow     = 0x00400000,
         CloseOutsideHL = 0x00800000,
         PrClIsSettle   = 0x01000000,
         PrClInClsRng   = 0x02000000,
         PrClSetByBid   = 0x04000000,
         PrClSetByAsk   = 0x08000000,
         VolumeX100     = 0x10000000
    };
};


struct nxST_EXDIVIDENDATTRIB //(15) - Ex Dividend Attribute Flags
{
    enum
    {
         Canadian              = 0x00000001,
         Special               = 0x00000002,
         Extra                 = 0x00000004,
         ExtraOrdinary         = 0x00000008,
         Increase              = 0x00000010,
         Initial               = 0x00000020,
         SaleOfRights          = 0x00000040,
         Approximate           = 0x00000080,
         OrdinaryIncome        = 0x00000100,
         ExRights              = 0x00000200,
         PercentDistribution   = 0x00000400,
         ToBeAnnounced         = 0x00000800,
         Final                 = 0x00001000,
         Decrease              = 0x00002000,
         PaymentInStock        = 0x00004000,
         SemiAnnual            = 0x00008000,
         Annual                = 0x00010000,
         PaymentInKind         = 0x00020000,
         ShortTermCapitalGains = 0x00040000,
         CapitalGains          = 0x00080000,
         Equivalence           = 0x00100000,
         GrossAmount           = 0x00200000,
         LiquidityDistribution = 0x00400000,
         PaymentInCashOrStock  = 0x00800000,
         CorrectedAmount       = 0x01000000,
         Monthly               = 0x02000000,
         Multiple              = 0x04000000,
         Estimating            = 0x08000000,
         ReturnOfCapital       = 0x10000000
    };
};


struct nxST_OPRAEXCHANGELIST //(16) - OPRA Exchange Flags
{
    enum
    {
         COMP  = 0x00000001,
         CBOE  = 0x00000002,
         ISEX  = 0x00000004,
         AMEX  = 0x00000008,
         PACF  = 0x00000010,
         PHIL  = 0x00000020,
         BOX   = 0x00000040,
         NQEX2 = 0x00000080,
         BATS  = 0x00000100,
         CBO2  = 0x00000200,
         NQBX  = 0x00000400,
         MIAX  = 0x00000800,
         GEMI  = 0x00001000,
         EDGX  = 0x00002000,
         MRCY  = 0x00004000,
         PERL  = 0x00008000,
         EMLD  = 0x00010000
    };
};


struct nxST_NASDBIDTICK //(17) - Nasdaq Bid Tick
{
    enum
    {
         Up           = 1,
         Down         = 2,
         NotAvailable = 3
    };
};


struct nxST_MARKETMAKERTYPE //(18) - Market Maker Types
{
    enum
    {
         Regular = 1,
         Primary = 2,
         Passive = 3
    };
};


struct nxST_MMQUOTETYPE //(19) - Market Maker Quote Types
{
    enum
    {
         Regular         = 1,
         Passive         = 2,
         SyndicateBid    = 3,
         PreSyndicateBid = 4,
         PenaltyBid      = 5,
         DeletePosition  = 6
    };
};


struct nxST_REFRESHTYPE //(20) - Refresh Quote Types
{
    enum
    {
         NotRefresh    = 0,
         ExgSourced    = 1,
         Mismatch      = 2,
         Synchronizing = 3
    };
};


struct nxST_EXPIRATIONCYCLE //(21) - Option Expiration Cycles
{
    enum
    {
         Jan = 1,
         Feb = 2,
         Mar = 3,
         Wk1 = 4,
         Wk2 = 5,
         Wk3 = 6,
         Wk4 = 7,
         Wk5 = 8,
         Qtr = 9
    };
};


struct nxST_VOLUMETYPE //(22) - Volume Update Types
{
    enum
    {
         Incremental     = 0,
         NonIncremental  = 1,
         TotalVolume     = 2,
         TotalVolumeX100 = 3
    };
};


struct nxST_QTEMATCHTYPE //(23) - Quote Match Types
{
    enum
    {
         NoMatch  = 0,
         AtBid    = 1,
         AtAsk    = 2,
         Inside   = 3,
         BelowBid = 4,
         AboveAsk = 5
    };
};


struct nxST_QTEMATCHFLAGS //(24) - Quote Match Flags
{
    enum
    {
         OlderMatch = 0x00000001,
         Crossed    = 0x00000002
    };
};


struct nxST_SIGHIGHLOWTYPE //(25) - Significant High Low Types
{
    enum
    {
         Even    = 0,
         NewLow  = 1,
         Low     = 2,
         High    = 3,
         NewHigh = 4
    };
};


struct nxST_BBOCHANGEFLAGS //(26) - BBO Change Flags
{
    enum
    {
         BidExg   = 0x00000001,
         BidPrice = 0x00000002,
         BidSize  = 0x00000004,
         AskExg   = 0x00000010,
         AskPrice = 0x00000020,
         AskSize  = 0x00000040
    };
};


struct nxST_TRADECONDFLAGS //(27) - Trade Condition Flags
{
    enum
    {
         NoLast = 0x00000001,
         NoHigh = 0x00000002,
         NoLow  = 0x00000004
    };
};


struct nxST_PRICEFLAGS //(28) - Trade Price Flags
{
    enum
    {
         SetLast      = 0x00000001,
         SetHigh      = 0x00000002,
         SetLow       = 0x00000004,
         SetOpen      = 0x00000008,
         InsertRecord = 0x00000010,
         CancelRecord = 0x00000020,
         Settlement   = 0x00000040
    };
};


struct nxST_SETTLEFLAGMAP //(29) - Settlement Flags
{
    enum
    {
         OneSession  	= 0x00000001,,
         AllSessions 	= 0x00000002,,
         Corrected   	= 0x00000004,,
         SettleOnly  	= 0x00000008,
         TradingTick	= 0x00000010,
         ClearingTick   = 0x00000020,
         Final          = 0x00000040,
         Preliminary    = 0x00000080,
         Actual         = 0x00000100,
         Theoretical    = 0x00000200,
         Intraday       = 0x00000400	 
    };
};


struct nxST_SYMBOLFNCLSTATUSMAP //(30) - Financial Status Flags
{
    enum
    {
         RestoredGood = 0x00000001,
         Bankrupt     = 0x00000002,
         Deficient    = 0x00000004,
         Delinquent   = 0x00000008,
         Suspended    = 0x00000010
    };
};


struct nxST_EQUITYCLASSIFICATIONS //(31) - Equity Classification Flags
{
    enum
    {
         ETF            = 0x00000001,
         NQGlobalSelect = 0x00000002,
         HasOptions     = 0x00000010,
         HasSSFutures   = 0x00000020,
         Dividend       = 0x00000100,
         Split          = 0x00000200,
         SymHist        = 0x00000400,
         NewSymbol      = 0x00000800,
         ClosedEndFund  = 0x00001000,
         ADR            = 0x00002000
    };
};


struct nxST_SYMBOLTYPES //(32) - Symbol Types
{
    enum
    {
         Bond                 = 1,
         Currency             = 2,
         Equity               = 4,
         Futures              = 5,
         Index                = 8,
         MutualFund           = 12,
         Option               = 14,
         FuturesOption        = 15,
         FuturesRoot          = 17,
         SingleStockFutures   = 18,
         Spread               = 25
    };
};


struct NxST_UNDERLYINGPRODUCTCODE //(35) - Underlying Product Code
{
    enum
    {
         Commodity            = 2,
         Currency             = 4,
         Equity               = 5,
         Other                = 12,
         InterestRate         = 14,
         FXCash               = 15,
         Energy               = 16,
         Metals               = 17
    };
};


struct NxST_MATCHALGORITHM //(36) - Matching Algorithms
{
    enum
    {
         FIFO                 = 0,
         Configurable         = 1,
         ProRata              = 2,
         Allocation           = 3,
         FIFOwLMM             = 4,
         Thresh               = 5,
         FIFOwTOP             = 6,
         THRESHwLMM           = 7,
         Eurodollar           = 8
    };
};


struct NxST_ELIGIBILITYMAP //(37) - Eligibility Map
{
    enum
    {
         ElectronicMatch         = 0x00000001,
         OrderCross              = 0x00000002,
         BlockTrade              = 0x00000004,
         EFP                     = 0x00000008,
         EBF                     = 0x00000010,
         EFS                     = 0x00000020,
         EFR                     = 0x00000040,
         OTC                     = 0x00000080,
         iLinkMassQuoting        = 0x00000100,
         NegativeStrike          = 0x00000200,
         NegativePrice           = 0x00000400,
         IsFractional            = 0x00000800,
         VolatilityQuotedOption  = 0x00001000,
         RFQCross                = 0x00002000,
         ZeroPrice               = 0x00004000,
         DecayingProduct         = 0x00008000,
         VariableQuantityProduct = 0x00010000,
         GTOrders                = 0x00040000,
         ImpliedMatching         = 0x00080000
    };
};