library AIOWDM;

uses
  System.SysUtils, System.Classes,
  CoreExports;

{$R *.res}

exports
{$IFDEF EXPORT_BENCH}
  GetBench,
{$ENDIF}
  VBStartIRQCallback,

  CSA_RelOutPortMB , CSA_RelOutPortMB  name '_CSA_RelOutPortMB' , VBCSA_RelOutPortMB ,
  CSA_RelOutPortMB4, CSA_RelOutPortMB4 name '_CSA_RelOutPortMB4', VBCSA_RelOutPortMB4,
  CSA_RelOutPortMB3, CSA_RelOutPortMB3 name '_CSA_RelOutPortMB3', VBCSA_RelOutPortMB3,
  CSA_RelOutPortMB2, CSA_RelOutPortMB2 name '_CSA_RelOutPortMB2', VBCSA_RelOutPortMB2,

  SetCOSScheme, SetCOSScheme name '_SetCOSScheme', VBSetCOSScheme,

  INSB   , INSB    name '_INSB'   , VBINSB   ,
  INSW   , INSW    name '_INSW'   , VBINSW   ,
  INSL   , INSL    name '_INSL'   , VBINSL   ,

  RelINSB, RelINSB name '_RelINSB', VBRelINSB,
  RelINSW, RelINSW name '_RelINSW', VBRelINSW,
  RelINSL, RelINSL name '_RelINSL', VBRelINSL,

  QueryBARBase,        QueryBARBase        name '_QueryBARBase',        VBQueryBARBase,
  //Variable ordinals down to this point
  ForgetIRP,           ForgetIRP           name '_ForgetIRP',           VBForgetIRP,
  PollForIRQ,          PollForIRQ          name '_PollForIRQ',          VBPollForIRQ,

  RelOutPortL name 'RelOutPortDWord', RelOutPortL name '_RelOutPortDWord',        VBRelOutPortL  name 'VBRelOutPortDWord',
  RelInPortL  name 'RelInPortDWord' , RelInPortL  name '_RelInPortDWord',         VBRelInPortL   name 'VBRelInPortDWord',
  RelOutPortL                       , RelOutPortL name '_RelOutPortL',            VBRelOutPortL,
  RelInPortL                        , RelInPortL  name '_RelInPortL',             VBRelInPortL,
  RelOutPort                        , RelOutPort  name '_RelOutPort',             VBRelOutPort,
  RelInPort                         , RelInPort   name '_RelInPort',              VBRelInPort,
  RelOutPortB                       , RelOutPortB name '_RelOutPortB',            VBRelOutPortB,
  RelInPortB                        , RelInPortB  name '_RelInPortB',             VBRelInPortB,

  OutPortL    name 'OutPortDWord'   , OutPortL    name '_OutPortDWord',           VBOutPortL     name 'VBOutPortDWord',
  InPortL     name 'InPortDWord'    , InPortL     name '_InPortDWord',            VBInPortL      name 'VBInPortDWord',
  OutPortL                          , OutPortL    name '_OutPortL',               VBOutPortL,
  InPortL                           , InPortL     name '_InPortL',                VBInPortL,
  OutPort                           , OutPort     name '_OutPort',                VBOutPort,
  InPort                            , InPort      name '_InPort',                 VBInPort,
  OutPortB                          , OutPortB    name '_OutPortB',               VBOutPortB,
  InPortB                           , InPortB     name '_InPortB',                VBInPortB,

  // Added by J2H 2021-01-19
  InBAR8                            , InBAR8      name '_InBAR8',
  InBAR16                           , InBAR16     name '_InBAR16',
  InBAR32                           , InBAR32     name '_InBAR32',
  OutBAR8                           , OutBAR8     name '_OutBAR8',
  OutBAR16                          , OutBAR16    name '_OutBAR16',
  OutBAR32                          , OutBAR32    name '_OutBAR32',

  DAC_GetNumDacs                    , DAC_GetNumDacs name '_DAC_GetNumDacs',
  DAC_GetMaxCounts                  , DAC_GetMaxCounts name '_DAC_GetMaxCounts',
  DAC_Output                        , DAC_Output  name '_DAC_Output',
  DAC_Outputs                       , DAC_Outputs name '_DAC_Outputs',
  DAC_SetRange                      , DAC_SetRange name '_DAC_SetRange',
  DAC_SetRanges                     , DAC_SetRanges name '_DAC_SetRanges',
  DAC_GetRange                      , DAC_GetRange name '_DAC_GetRange',
  DAC_GetRanges                     , DAC_GetRanges name '_DAC_GetRanges',
  DAC_OutputCount                   , DAC_OutputCount name '_DAC_OutputCount',
  DAC_OutputCounts                  , DAC_OutputCounts name '_DAC_OutputCounts',
  DAC_ValueFromCounts               , DAC_ValueFromCounts name '_DAC_ValueFromCounts',
  DAC_ReloadCalibrationData         , DAC_ReloadCalibrationData name '_DAC_ReloadCalibrationData',
  DAC_EnableCalibration             , DAC_EnableCalibration name '_DAC_EnableCalibration',
  DAC_GetCalibrationData            , DAC_GetCalibrationData name '_DAC_GetCalibrationData',
  DAC_WriteCalibrationData          , DAC_WriteCalibrationData name '_DAC_WriteCalibrationData',
  DAC_ConfigureSimultaneousMode     , DAC_ConfigureSimultaneousMode name '_DAC_ConfigureSimultaneousMode',
  DAC_ConfigureVoltageRestrictMode  , DAC_ConfigureVoltageRestrictMode name '_DAC_ConfigureVoltageRestrictMode',

  DIF_ConfigurePulseClock           , DIF_ConfigurePulseClock name '_DIF_ConfigurePulseClock',
  DIF_Measure                       , DIF_Measure name '_DIF_Measure',
  DIF_Generate                      , DIF_Generate name '_DIF_Generate',
  DIF_ConfigureGeneration           , DIF_ConfigureGeneration name '_DIF_ConfigureGeneration',
  DIF_ConfigureCounting             , DIF_ConfigureCounting name '_DIF_ConfigureCounting',
  DIF_Count                         , DIF_Count name '_DIF_Count',
  DIF_CountOverflowIRQEnable        , DIF_CountOverflowIRQEnable name '_DIF_CountOverflowIRQEnable',
  DIF_IRQEdgeEnable                 , DIF_IRQEdgeEnable name '_DIF_IRQEdgeEnable',

  EmergencyReboot,     EmergencyReboot     name '_EmergencyReboot',     VBEmergencyReboot,
  WDGStop,             WDGStop             name '_WDGStop',             VBWDGStop,
  WDGStart,            WDGStart            name '_WDGStart',            VBWDGStart,
  WDGReadStatus,       WDGReadStatus       name '_WDGReadStatus',       VBWDGReadStatus,
  WDGReadTemp,         WDGReadTemp         name '_WDGReadTemp',         VBWDGReadTemp,
  WDGPet,              WDGPet              name '_WDGPet',              VBWDGPet,
  WDGSetResetDuration, WDGSetResetDuration name '_WDGSetResetDuration', VBWDGSetResetDuration,
  WDGSetTimeout,       WDGSetTimeout       name '_WDGSetTimeout',       VBWDGSetTimeout,
  WDGHandleIRQ,        WDGHandleIRQ        name '_WDGHandleIRQ',        VBWDGHandleIRQ,
  WDGInit,             WDGInit             name '_WDGInit',             VBWDGInit,
  COSWaitForIRQ,       COSWaitForIRQ       name '_COSWaitForIRQ',       VBCOSWaitForIRQ,
  CloseCard,           CloseCard           name '_CloseCard',           VBCloseCard,
  AbortRequest,        AbortRequest        name '_AbortRequest',        VBAbortRequest,
  WaitForIRQ,          WaitForIRQ          name '_WaitForIRQ',          VBWaitForIRQ,
  QueryCardInfo,       QueryCardInfo       name '_QueryCardInfo',       VBQueryCardInfo,
  GetNumCards,         GetNumCards         name '_GetNumCards',         VBGetNumCards
  ;

begin
  InitDLL;
end.
