AFHBA404
AFHBA404 connects ACQ2106 to PCI-Express
DefaultSystemInterface.cpp
Go to the documentation of this file.
1 
10 #include "AcqSys.h"
11 #include <string.h>
12 
13 
14 
15 #define PWM_MAGIC 0xbe8bb8fa // makes for a good display
16 
18 
19 public:
21  SystemInterface(hba)
22  {}
23  static int DUP1;
24 
25  virtual void ringDoorbell(int sample){
26  G::verbose && printf("%s(%d)\n", PFN, sample);
27 
28  short xx = IN.AI16[DUP1];
29  for (int ii = 0; ii < AO16_count(); ++ii){
30  OUT.AO16[ii] = xx;
31  }
32  unsigned tl = tlatch();
33  for (int ii = 0; ii < DO32_count(); ++ii){
34  OUT.DO32[ii] = tl;
35  }
36  for (int ii = 0; ii < PW32_count(); ++ii){
37  for (int cc = 0; cc < PW32LEN; ++cc){
38  OUT.PW32[ii][cc] = PWM_MAGIC;
39  }
40  }
41  }
42 };
43 
45 
47 {
48  if (G::verbose) printf("%s::%s\n", __FILE__, PFN);
49 
50  const char* key = getenv("SINGLE_THREAD_CONTROL");
51  if (key){
52  if (sscanf(key, "control_dup1=%d", &DummySingleThreadControlSystemInterface::DUP1) == 1 ||
53  strcmp(key, "control_dup1") == 0){
55  }
56  }
57 
58  return * new SystemInterface(hba);
59 }
60 
HBA
Models a Host Bus Adapter like AFHBA404.
Definition: AcqSys.h:123
DummySingleThreadControlSystemInterface
Definition: DefaultSystemInterface.cpp:17
AcqSys.h
acqproc global class interface definition.
SystemInterface::Outputs::AO16
short * AO16
Definition: AcqSys.h:178
DummySingleThreadControlSystemInterface::ringDoorbell
virtual void ringDoorbell(int sample)
Definition: DefaultSystemInterface.cpp:25
SystemInterface::AO16_count
unsigned AO16_count() const
Definition: AcqSys.h:210
SystemInterface::PW32_count
unsigned PW32_count() const
Definition: AcqSys.h:216
SystemInterface::Outputs::DO32
unsigned * DO32
Definition: AcqSys.h:179
PFN
#define PFN
Definition: AcqSys.h:232
PW32LEN
#define PW32LEN
Definition: AcqSys.h:42
SystemInterface::SystemInterface
SystemInterface(const HBA &_hba)
Definition: AcqSys.cpp:401
SystemInterface::IN
struct SystemInterface::Inputs IN
SystemInterface::Outputs::PW32
PW32V * PW32
32 demand values packed into shorts
Definition: AcqSys.h:180
SystemInterface::OUT
struct SystemInterface::Outputs OUT
SystemInterface::Inputs::AI16
short * AI16
Definition: AcqSys.h:170
SystemInterface
Models interface with external PCS.
Definition: AcqSys.h:161
G::verbose
int verbose
Definition: acqproc.cpp:34
SystemInterface::DO32_count
unsigned DO32_count() const
Definition: AcqSys.h:213
PWM_MAGIC
#define PWM_MAGIC
Definition: DefaultSystemInterface.cpp:15
SystemInterface::tlatch
unsigned tlatch()
Definition: AcqSys.h:195
DummySingleThreadControlSystemInterface::DummySingleThreadControlSystemInterface
DummySingleThreadControlSystemInterface(const HBA &hba)
Definition: DefaultSystemInterface.cpp:20
SystemInterface::factory
static SystemInterface & factory(const HBA &)
Definition: BroadcastSystemInterface.cpp:71
getenv
int getenv(const char *key, int def, int(*cvt)(const char *key))
Definition: acqproc.cpp:23
DummySingleThreadControlSystemInterface::DUP1
static int DUP1
Definition: DefaultSystemInterface.cpp:23