Cat
Public Types | Public Member Functions | Private Attributes | List of all members
IOdata Class Reference

#include <inc/IOdata.h>

Inheritance diagram for IOdata:
Object Attrib

Public Types

enum  Mode { Rd, Wr, RdWr }
 
enum  WordSize { Byte, Word, DWord }
 
enum  Bus {
  USB, SPECS, I2C, PARALLEL,
  JTAG
}
 
typedef unsigned long U32
 
typedef unsigned short U16
 
typedef unsigned char U8
 
- Public Types inherited from Attrib
enum  Attribut {
  UNDEFINED, PASSIVE, ACTIVE, INTERFACE,
  IO, IODATA, ELEMENT, HARDWARE,
  PROCESSUS, SOFTWARE
}
 

Public Member Functions

 IOdata ()
 Standard constructor. More...
 
virtual ~IOdata ()
 Destructor. More...
 
StatusCode setAddress (U32 address)
 
U32 address ()
 
StatusCode setHeader (U32 header)
 
U32 header ()
 
StatusCode setSubAddress (U32 subAddress)
 
U32 subAddress ()
 
StatusCode setOutputSelect (U32 outputSelect)
 
U32 outputSelect ()
 
StatusCode setMode (IOdata::Mode mode)
 
IOdata::Mode mode ()
 
StatusCode setWordSize (IOdata::WordSize wordSize)
 
IOdata::WordSize wordSize ()
 
StatusCode setBus (IOdata::Bus bus)
 
IOdata::Bus bus ()
 
StatusCode setLength (U32 length)
 
U32 block ()
 
StatusCode setBlock (U32 block)
 
U32 length ()
 
void defDataU8 (unsigned long size)
 
void defDataU16 (unsigned long size)
 
void defDataU32 (unsigned long size)
 
void clearDataU8 ()
 
void clearDataU16 ()
 
void clearDataU32 ()
 
U8dataU8 ()
 
U16dataU16 ()
 
U32dataU32 ()
 
unsigned long int dataU8 (unsigned long int i)
 
unsigned long int dataU16 (unsigned long int i)
 
unsigned long int dataU32 (unsigned long int i)
 
void setDataU8 (U8 *data, U32 length)
 
void setDataU16 (U16 *data, U32 length)
 
void setDataU32 (U32 *data, U32 length)
 
StatusCode setU8 (unsigned long int, U8)
 
StatusCode setU16 (unsigned long int, U16)
 
StatusCode setU32 (unsigned long int, U32)
 
void dump (unsigned int printout=0)
 
- Public Member Functions inherited from Object
 Object ()
 Standard constructor. More...
 
virtual ~Object ()
 Destructor. More...
 
std::string name () const
 
std::string type ()
 
unsigned char id ()
 
std::string title ()
 
void msgSvc (int level, std::string msg, std::string name)
 
void msg (std::string mymsg)
 
void verbose (std::string mymsg)
 
void debug (std::string mymsg)
 
void info (std::string mymsg)
 
void warning (std::string mymsg)
 
void error (std::string mymsg)
 
void fatal (std::string mymsg)
 
void msg (std::string mymsg, std::string name)
 
void verbose (std::string mymsg, std::string name)
 
void debug (std::string mymsg, std::string name)
 
void info (std::string mymsg, std::string name)
 
void warning (std::string mymsg, std::string name)
 
void error (std::string mymsg, std::string name)
 
void fatal (std::string mymsg, std::string name)
 
void setName (std::string name)
 
void setType (std::string type)
 
void setId (unsigned char id)
 
void setTitle (std::string title)
 
void setDllName (std::string dllName)
 
std::string dllName ()
 
- Public Member Functions inherited from Attrib
 Attrib ()
 Standard constructor. More...
 
virtual ~Attrib ()
 Destructor. More...
 
bool is (int attribut)
 
void add (int attribut)
 
void remove (int attribut)
 
std::string attributs ()
 

Private Attributes

unsigned long m_address
 
unsigned long m_header
 
unsigned long m_subAddress
 
unsigned long m_outputSelect
 
IOdata::Mode m_mode
 
IOdata::WordSize m_wordSize
 
IOdata::Bus m_bus
 
unsigned long m_length
 
unsigned long m_block
 
U8m_dataU8
 
U16m_dataU16
 
U32m_dataU32
 

Additional Inherited Members

- Protected Attributes inherited from Attrib
std::string m_attribString [10]
 

Detailed Description

Author
IOdata
Date
2006-10-23

Definition at line 17 of file IOdata.h.

Member Typedef Documentation

◆ U16

typedef unsigned short IOdata::U16

Definition at line 20 of file IOdata.h.

◆ U32

typedef unsigned long IOdata::U32

Definition at line 19 of file IOdata.h.

◆ U8

typedef unsigned char IOdata::U8

Definition at line 21 of file IOdata.h.

Member Enumeration Documentation

◆ Bus

Enumerator
USB 
SPECS 
I2C 
PARALLEL 
JTAG 

Definition at line 35 of file IOdata.h.

35  {
36  USB,
37  SPECS,
38  I2C,
39  PARALLEL,
40  JTAG
41  };

◆ Mode

Enumerator
Rd 
Wr 
RdWr 

Definition at line 23 of file IOdata.h.

23  {
24  Rd,
25  Wr,
26  RdWr
27  };

◆ WordSize

Enumerator
Byte 
Word 
DWord 

Definition at line 29 of file IOdata.h.

29  {
30  Byte,
31  Word,
32  DWord
33  };

Constructor & Destructor Documentation

◆ IOdata()

IOdata::IOdata ( )

Standard constructor.

Definition at line 17 of file IOdata.cpp.

References Attrib::add(), Byte, Attrib::IODATA, m_address, m_block, m_dataU16, m_dataU32, m_dataU8, m_header, m_length, m_subAddress, m_wordSize, Object::setName(), and Object::setType().

17  {
18  setName("IO");
19  setType("IOdata");
21  m_dataU8=0;
22  m_dataU16=0;
23  m_dataU32=0;
24  m_address=0;
25  m_header=0;
26  m_subAddress=0;
27  m_length =0;
28  m_block =1;
30 }
unsigned long m_subAddress
Definition: IOdata.h:273
void add(int attribut)
Definition: Attrib.h:67
unsigned long m_header
Definition: IOdata.h:272
void setName(std::string name)
Definition: Object.h:51
unsigned long m_length
Definition: IOdata.h:278
U8 * m_dataU8
Definition: IOdata.h:280
void setType(std::string type)
Definition: Object.h:52
U32 * m_dataU32
Definition: IOdata.h:282
unsigned long m_block
Definition: IOdata.h:279
unsigned long m_address
Definition: IOdata.h:271
U16 * m_dataU16
Definition: IOdata.h:281
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

◆ ~IOdata()

IOdata::~IOdata ( )
virtual

Destructor.

Definition at line 34 of file IOdata.cpp.

References clearDataU16(), clearDataU32(), and clearDataU8().

34  {
35  clearDataU8();
36  clearDataU16();
37  clearDataU32();
38 }
void clearDataU32()
Definition: IOdata.h:209
void clearDataU16()
Definition: IOdata.h:205
void clearDataU8()
Definition: IOdata.h:200

Member Function Documentation

◆ address()

U32 IOdata::address ( )
inline

◆ block()

U32 IOdata::block ( )
inline

Get IOdata length

Definition at line 162 of file IOdata.h.

References m_block.

Referenced by BOOST_PYTHON_MODULE(), and setBlock().

162  {
163  return m_block;
164  }
unsigned long m_block
Definition: IOdata.h:279

◆ bus()

IOdata::Bus IOdata::bus ( )
inline

Get IOdata bus

Definition at line 147 of file IOdata.h.

References m_bus.

Referenced by BOOST_PYTHON_MODULE(), and setBus().

147  {
148  return m_bus;
149  }
IOdata::Bus m_bus
Definition: IOdata.h:277

◆ clearDataU16()

void IOdata::clearDataU16 ( )
inline

Definition at line 205 of file IOdata.h.

References m_dataU16.

Referenced by defDataU16(), and ~IOdata().

205  {
206  if (0!=m_dataU16) delete [] m_dataU16;
207  m_dataU16=0;
208  }
U16 * m_dataU16
Definition: IOdata.h:281

◆ clearDataU32()

void IOdata::clearDataU32 ( )
inline

Definition at line 209 of file IOdata.h.

References m_dataU32.

Referenced by defDataU32(), and ~IOdata().

209  {
210  if (0!=m_dataU32) delete [] m_dataU32;
211  m_dataU32=0;
212  }
U32 * m_dataU32
Definition: IOdata.h:282

◆ clearDataU8()

void IOdata::clearDataU8 ( )
inline

Definition at line 200 of file IOdata.h.

References m_dataU8.

Referenced by defDataU8(), and ~IOdata().

200  {
201  if (0!=m_dataU8) delete [] m_dataU8;
202  m_dataU8=0;
203  }
U8 * m_dataU8
Definition: IOdata.h:280

◆ dataU16() [1/2]

U16* IOdata::dataU16 ( )
inline

◆ dataU16() [2/2]

unsigned long int IOdata::dataU16 ( unsigned long int  i)
inline

Definition at line 231 of file IOdata.h.

References m_dataU16.

231  {
232  return m_dataU16[i];
233  }
U16 * m_dataU16
Definition: IOdata.h:281

◆ dataU32() [1/2]

U32* IOdata::dataU32 ( )
inline

◆ dataU32() [2/2]

unsigned long int IOdata::dataU32 ( unsigned long int  i)
inline

Definition at line 235 of file IOdata.h.

References m_dataU32.

235  {
236  return m_dataU32[i];
237  }
U32 * m_dataU32
Definition: IOdata.h:282

◆ dataU8() [1/2]

U8* IOdata::dataU8 ( )
inline

Definition at line 214 of file IOdata.h.

References m_dataU8.

Referenced by BOOST_PYTHON_MODULE(), UsbSpiBus::clockDivider(), LSDelayChipV1::configRegBulkRead(), LSDelayChipV1::configRegBulkWrite(), UsbSpiBus::ctrlWd(), Acquisition::decodeFormat(), A3PE::dumpFromAX(), A3PE::dumpPattern(), A3PE::dumpStorage(), A3PE::dumpToAX(), A3PE::dumpTrigger(), StorageFifo::execute(), StorageFifoAcquisition::execute(), TestUSB::execute(), SeqPGA::extTrig(), Register::getBit(), FePGA::i2cAdd(), SeqPGA::i2cAdd(), FePGA::i2cData(), SeqPGA::i2cData(), FePGA::i2cGBTSCA(), SeqPGA::i2cGBTSCA(), FePGA::i2cRead(), SeqPGA::i2cRead(), FePGA::i2cWrite(), SeqPGA::i2cWrite(), A3PE_BitFlip::initialize(), SeqPGA::ledEnable(), A3PE::loadFromAX(), A3PE::loadPattern(), A3PE::loadStorage(), A3PE::loadToAX(), A3PE::loadTrigger(), RAM::raz(), UsbI2cBus::read(), Phaser::read(), ICPhaser::read(), UsbSpiBus::read(), UsbFTInterface::read(), UsbFTMLInterface::read(), ICPhaser::reset(), Register::setBit(), UsbSpiBus::setClockDivider(), SeqPGA::setExtTrig(), FePGA::setI2cGBTSCA(), SeqPGA::setI2cGBTSCA(), SeqPGA::setLedEnable(), SeqPGA::setSpiEnable(), SeqPGA::setSpiGBTSCA(), FePGA::setSpiGBTSCA(), SeqPGA::spiAdd(), SeqPGA::spiEnable(), SeqPGA::spiGBTSCA(), FePGA::spiGBTSCA(), FePGA::spiRead(), ICECALv3::spiRead(), SeqPGA::spiRead(), ICECALv3::spiWrite(), ICPhaser::status(), UsbI2cBus::write(), Phaser::write(), ICPhaser::write(), UsbSpiBus::write(), UsbFTMLInterface::write(), and UsbFTInterface::write().

214  {
215  return m_dataU8;
216  }
U8 * m_dataU8
Definition: IOdata.h:280

◆ dataU8() [2/2]

unsigned long int IOdata::dataU8 ( unsigned long int  i)
inline

Definition at line 227 of file IOdata.h.

References m_dataU8.

227  {
228  return m_dataU8[i];
229  }
U8 * m_dataU8
Definition: IOdata.h:280

◆ defDataU16()

void IOdata::defDataU16 ( unsigned long  size)
inline

Definition at line 186 of file IOdata.h.

References clearDataU16(), m_dataU16, m_length, m_wordSize, cat::size, and Word.

Referenced by A3PE::A3PE(), and BOOST_PYTHON_MODULE().

186  {
187  m_length=size;
188  clearDataU16();
189  m_dataU16=new U16[size];
191  }
def size
Definition: cat.py:38
unsigned long m_length
Definition: IOdata.h:278
void clearDataU16()
Definition: IOdata.h:205
unsigned short U16
Definition: ICECALv3.h:54
U16 * m_dataU16
Definition: IOdata.h:281
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

◆ defDataU32()

void IOdata::defDataU32 ( unsigned long  size)
inline

Definition at line 193 of file IOdata.h.

References clearDataU32(), DWord, m_dataU32, m_length, m_wordSize, and cat::size.

Referenced by A3PE::A3PE(), and BOOST_PYTHON_MODULE().

193  {
194  m_length=size;
195  clearDataU32();
196  m_dataU32=new U32[size];
198  }
def size
Definition: cat.py:38
unsigned long m_length
Definition: IOdata.h:278
void clearDataU32()
Definition: IOdata.h:209
U32 * m_dataU32
Definition: IOdata.h:282
unsigned long U32
Definition: ICECALv3.h:53
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

◆ defDataU8()

void IOdata::defDataU8 ( unsigned long  size)
inline

◆ dump()

void IOdata::dump ( unsigned int  printout = 0)

Definition at line 94 of file IOdata.cpp.

References btos(), Byte, DWord, Object::info(), itob(), itos(), m_address, m_dataU16, m_dataU32, m_dataU8, m_length, m_subAddress, m_wordSize, Object::name(), Object::type(), and Word.

Referenced by BOOST_PYTHON_MODULE(), IOobject::dump(), UsbSpiBus::read(), setDataU32(), ICPhaser::status(), ICPhaser::write(), and UsbSpiBus::write().

94  {
95  if (printout==0||printout>m_length) printout=m_length;
96  info("IO: "+name()+" ["+type()+"]","IOdata::dump");
97  info(" Address:"+itos(m_address)+
98  " SubAddress:"+itos(m_subAddress),
99  "IOdata::dump");
100  if (IOdata::Byte==m_wordSize&&0!=m_dataU8){
101  info(" Wordsize: Byte Length: "+itos(m_length),"IOdata::dump");
102  for (int i=0; i<printout; ++i){
103  info(itos(i)+": "+btos(itob(m_dataU8[i],8))+" -> "+
104  itos(m_dataU8[i]),"IOdata::dump");
105  }
106  }
108  info(" Wordsize: Word Length: "+itos(m_length),"IOdata::dump");
109  for (int i=0; i<printout; ++i){
110  info(itos(i)+": "+btos(itob(m_dataU16[i],16))+" -> "+
111  itos(m_dataU16[i]),"IOdata::dump");
112  }
113  }
115  info(" Wordsize: DWord Length: "+itos(m_length),"IOdata::dump");
116  for (int i=0; i<printout; ++i){
117  info(itos(i)+": "+btos(itob(m_dataU32[i],32))+" -> "+
118  itos(m_dataU32[i]),"IOdata::dump");
119  }
120  }
121 }
void info(std::string mymsg)
Definition: Object.h:38
std::string itos(int)
Definition: Tools.cpp:46
unsigned long m_subAddress
Definition: IOdata.h:273
unsigned long m_length
Definition: IOdata.h:278
std::string btos(std::vector< bool >)
Definition: Tools.cpp:67
U8 * m_dataU8
Definition: IOdata.h:280
std::vector< bool > itob(int, int)
Definition: Tools.cpp:77
U32 * m_dataU32
Definition: IOdata.h:282
std::string name() const
Definition: Object.h:28
std::string type()
Definition: Object.h:29
unsigned long m_address
Definition: IOdata.h:271
U16 * m_dataU16
Definition: IOdata.h:281
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

◆ header()

U32 IOdata::header ( )
inline

Get IOdata header

Definition at line 74 of file IOdata.h.

References m_header.

Referenced by BOOST_PYTHON_MODULE(), and setHeader().

74  {
75  return m_header;
76  }
unsigned long m_header
Definition: IOdata.h:272

◆ length()

U32 IOdata::length ( )
inline

◆ mode()

IOdata::Mode IOdata::mode ( )
inline

Get IOdata mode

Definition at line 119 of file IOdata.h.

References m_mode.

Referenced by BOOST_PYTHON_MODULE(), and setMode().

119  {
120  return m_mode;
121  }
IOdata::Mode m_mode
Definition: IOdata.h:275

◆ outputSelect()

U32 IOdata::outputSelect ( )
inline

Get IOdata output select

Definition at line 104 of file IOdata.h.

References m_outputSelect.

Referenced by BOOST_PYTHON_MODULE(), and setOutputSelect().

104  {
105  return m_outputSelect;
106  }
unsigned long m_outputSelect
Definition: IOdata.h:274

◆ setAddress()

StatusCode IOdata::setAddress ( U32  address)
inline

◆ setBlock()

StatusCode IOdata::setBlock ( U32  block)
inline

Define IOdata block

Definition at line 168 of file IOdata.h.

References block(), m_block, and StatusCode::SUCCESS.

Referenced by BOOST_PYTHON_MODULE().

168  {
169  m_block=block;
170  return StatusCode::SUCCESS;
171  }
U32 block()
Definition: IOdata.h:162
unsigned long m_block
Definition: IOdata.h:279

◆ setBus()

StatusCode IOdata::setBus ( IOdata::Bus  bus)
inline

Define IOdata bus

Definition at line 140 of file IOdata.h.

References bus(), m_bus, and StatusCode::SUCCESS.

Referenced by BOOST_PYTHON_MODULE().

140  {
141  m_bus=bus;
142  return StatusCode::SUCCESS;
143  }
IOdata::Bus m_bus
Definition: IOdata.h:277
IOdata::Bus bus()
Definition: IOdata.h:147

◆ setDataU16()

void IOdata::setDataU16 ( U16 data,
U32  length 
)
inline

Definition at line 246 of file IOdata.h.

References shell::data(), length(), m_dataU16, m_length, m_wordSize, and Word.

246  {
247 // clearDataU16();
248  m_dataU16=data;
251  }
unsigned long m_length
Definition: IOdata.h:278
def data(object, stream=None)
Definition: shell.py:150
U32 length()
Definition: IOdata.h:175
U16 * m_dataU16
Definition: IOdata.h:281
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

◆ setDataU32()

void IOdata::setDataU32 ( U32 data,
U32  length 
)
inline

Definition at line 253 of file IOdata.h.

References shell::data(), dump(), DWord, length(), m_dataU32, m_length, m_wordSize, setU16(), setU32(), and setU8().

253  {
254 // clearDataU32();
255  m_dataU32=data;
258  }
unsigned long m_length
Definition: IOdata.h:278
def data(object, stream=None)
Definition: shell.py:150
U32 * m_dataU32
Definition: IOdata.h:282
U32 length()
Definition: IOdata.h:175
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

◆ setDataU8()

void IOdata::setDataU8 ( U8 data,
U32  length 
)
inline

Definition at line 239 of file IOdata.h.

References Byte, shell::data(), length(), m_dataU8, m_length, and m_wordSize.

Referenced by UsbI2cBus::read(), and UsbI2cBus::write().

239  {
240 // clearDataU8();
241  m_dataU8=data;
244  }
unsigned long m_length
Definition: IOdata.h:278
U8 * m_dataU8
Definition: IOdata.h:280
def data(object, stream=None)
Definition: shell.py:150
U32 length()
Definition: IOdata.h:175
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

◆ setHeader()

StatusCode IOdata::setHeader ( U32  header)
inline

Define IOdata header

Definition at line 66 of file IOdata.h.

References header(), m_header, and StatusCode::SUCCESS.

Referenced by BOOST_PYTHON_MODULE().

66  {
68  return StatusCode::SUCCESS;
69  }
U32 header()
Definition: IOdata.h:74
unsigned long m_header
Definition: IOdata.h:272

◆ setLength()

StatusCode IOdata::setLength ( U32  length)
inline

Define IOdata length

Definition at line 154 of file IOdata.h.

References length(), m_length, and StatusCode::SUCCESS.

Referenced by BOOST_PYTHON_MODULE().

154  {
156  return StatusCode::SUCCESS;
157  }
unsigned long m_length
Definition: IOdata.h:278
U32 length()
Definition: IOdata.h:175

◆ setMode()

StatusCode IOdata::setMode ( IOdata::Mode  mode)
inline

Define IOdata mode

Definition at line 111 of file IOdata.h.

References m_mode, mode(), and StatusCode::SUCCESS.

Referenced by BOOST_PYTHON_MODULE().

111  {
112  m_mode=mode;
113  return StatusCode::SUCCESS;
114  }
IOdata::Mode mode()
Definition: IOdata.h:119
IOdata::Mode m_mode
Definition: IOdata.h:275

◆ setOutputSelect()

StatusCode IOdata::setOutputSelect ( U32  outputSelect)
inline

Define IOdata output select

Definition at line 96 of file IOdata.h.

References m_outputSelect, outputSelect(), and StatusCode::SUCCESS.

Referenced by BOOST_PYTHON_MODULE().

96  {
98  return StatusCode::SUCCESS;
99  }
U32 outputSelect()
Definition: IOdata.h:104
unsigned long m_outputSelect
Definition: IOdata.h:274

◆ setSubAddress()

StatusCode IOdata::setSubAddress ( U32  subAddress)
inline

Define IOdata subaddress

Definition at line 81 of file IOdata.h.

References m_subAddress, subAddress(), and StatusCode::SUCCESS.

Referenced by BOOST_PYTHON_MODULE(), ICECALv3::ICECALv3(), and ICPhaser::ICPhaser().

81  {
83  return StatusCode::SUCCESS;
84  }
unsigned long m_subAddress
Definition: IOdata.h:273
U32 subAddress()
Definition: IOdata.h:89

◆ setU16()

StatusCode IOdata::setU16 ( unsigned long int  position,
U16  value 
)

Definition at line 60 of file IOdata.cpp.

References StatusCode::FAILURE, itos(), m_dataU16, m_length, StatusCode::SUCCESS, and Object::warning().

Referenced by BOOST_PYTHON_MODULE(), A3PE::enableStorage(), A3PE::reset(), A3PE::setAddFromAXRam(), A3PE::setAddToAXRam(), Register::setBit(), setDataU32(), A3PE::setFifoDepth(), A3PE::setFifoLatency(), A3PE::setLengthAX(), and A3PE::setPipeline().

60  {
61  if (position>m_length-1){
62  warning("You cannot write at position "+itos(position)+".",
63  "IOdata::setU16");
64  return StatusCode::FAILURE;
65  }
66  if (0==m_dataU16){
67  warning("Data buffer not allocated. Data not stored.","IOdata::setU16");
68  return StatusCode::FAILURE;
69  }
70  m_dataU16[position]=value;
71  return StatusCode::SUCCESS;
72 }
std::string itos(int)
Definition: Tools.cpp:46
unsigned long m_length
Definition: IOdata.h:278
void warning(std::string mymsg)
Definition: Object.h:39
U16 * m_dataU16
Definition: IOdata.h:281

◆ setU32()

StatusCode IOdata::setU32 ( unsigned long int  position,
U32  value 
)

Definition at line 77 of file IOdata.cpp.

References StatusCode::FAILURE, itos(), m_dataU32, m_length, StatusCode::SUCCESS, and Object::warning().

Referenced by BOOST_PYTHON_MODULE(), Register::setBit(), A3PE::setClockDivision(), setDataU32(), A3PE::setLatencyAX(), A3PE::setNTrigger(), A3PE::setTriggerDelay(), and A3PE::setTriggerRate().

77  {
78  if (position>m_length-1){
79  warning("You cannot write at position "+itos(position)+".",
80  "IOdata::setU32");
81  return StatusCode::FAILURE;
82  }
83  if (0==m_dataU32){
84  warning("Data buffer not allocated. Data not stored.","IOdata::setU32");
85  return StatusCode::FAILURE;
86  }
87  m_dataU32[position]=value;
88  return StatusCode::SUCCESS;
89 }
std::string itos(int)
Definition: Tools.cpp:46
unsigned long m_length
Definition: IOdata.h:278
U32 * m_dataU32
Definition: IOdata.h:282
void warning(std::string mymsg)
Definition: Object.h:39

◆ setU8()

StatusCode IOdata::setU8 ( unsigned long int  position,
U8  value 
)

Definition at line 43 of file IOdata.cpp.

References StatusCode::FAILURE, itos(), m_dataU8, m_length, StatusCode::SUCCESS, and Object::warning().

Referenced by BOOST_PYTHON_MODULE(), TestUSB::execute(), FePGA::i2cRead(), SeqPGA::i2cRead(), FePGA::i2cWrite(), SeqPGA::i2cWrite(), FePGA::reset(), SeqPGA::reset(), SeqPGA::resetSpi(), FePGA::resetUsb(), Register::setBit(), setDataU32(), SeqPGA::setExtTrig(), FePGA::setI2cAdd(), SeqPGA::setI2cAdd(), FePGA::setI2cGBTSCA(), SeqPGA::setI2cGBTSCA(), SeqPGA::setLedEnable(), FePGA::setSpiAdd(), SeqPGA::setSpiAdd(), SeqPGA::setSpiEnable(), SeqPGA::setSpiGBTSCA(), FePGA::setSpiGBTSCA(), FePGA::spiRead(), SeqPGA::spiRead(), FePGA::spiWrite(), and SeqPGA::spiWrite().

43  {
44  if (position>m_length-1){
45  warning("You cannot write at position "+itos(position)+".",
46  "IOdata::setU8");
47  return StatusCode::FAILURE;
48  }
49  if (0==m_dataU8){
50  warning("Data buffer not allocated. Data not stored.","IOdata::setU8");
51  return StatusCode::FAILURE;
52  }
53  m_dataU8[position]=value;
54  return StatusCode::SUCCESS;
55 }
std::string itos(int)
Definition: Tools.cpp:46
unsigned long m_length
Definition: IOdata.h:278
U8 * m_dataU8
Definition: IOdata.h:280
void warning(std::string mymsg)
Definition: Object.h:39

◆ setWordSize()

StatusCode IOdata::setWordSize ( IOdata::WordSize  wordSize)
inline

Define IOdata word size

Definition at line 126 of file IOdata.h.

References m_wordSize, StatusCode::SUCCESS, and wordSize().

Referenced by BOOST_PYTHON_MODULE(), ICECALv3::ICECALv3(), ICPhaser::ICPhaser(), FePGA::MakeRegister(), SeqPGA::SeqPGA(), UsbI2cBus::UsbI2cBus(), and UsbSpiBus::UsbSpiBus().

126  {
128  return StatusCode::SUCCESS;
129  }
IOdata::WordSize wordSize()
Definition: IOdata.h:133
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

◆ subAddress()

U32 IOdata::subAddress ( )
inline

Get IOdata subaddress

Definition at line 89 of file IOdata.h.

References m_subAddress.

Referenced by BOOST_PYTHON_MODULE(), ICPhaser::read(), setSubAddress(), ICPhaser::status(), and ICPhaser::write().

89  {
90  return m_subAddress;
91  }
unsigned long m_subAddress
Definition: IOdata.h:273

◆ wordSize()

IOdata::WordSize IOdata::wordSize ( )
inline

Get IOdata word size

Definition at line 133 of file IOdata.h.

References m_wordSize.

Referenced by BOOST_PYTHON_MODULE(), UsbFTInterface::read(), UsbFTMLInterface::read(), setWordSize(), UsbFTInterface::write(), and UsbFTMLInterface::write().

133  {
134  return m_wordSize;
135  }
IOdata::WordSize m_wordSize
Definition: IOdata.h:276

Member Data Documentation

◆ m_address

unsigned long IOdata::m_address
private

Definition at line 271 of file IOdata.h.

Referenced by address(), dump(), IOdata(), and setAddress().

◆ m_block

unsigned long IOdata::m_block
private

Definition at line 279 of file IOdata.h.

Referenced by block(), IOdata(), and setBlock().

◆ m_bus

IOdata::Bus IOdata::m_bus
private

Definition at line 277 of file IOdata.h.

Referenced by bus(), and setBus().

◆ m_dataU16

U16* IOdata::m_dataU16
private

Definition at line 281 of file IOdata.h.

Referenced by clearDataU16(), dataU16(), defDataU16(), dump(), IOdata(), setDataU16(), and setU16().

◆ m_dataU32

U32* IOdata::m_dataU32
private

Definition at line 282 of file IOdata.h.

Referenced by clearDataU32(), dataU32(), defDataU32(), dump(), IOdata(), setDataU32(), and setU32().

◆ m_dataU8

U8* IOdata::m_dataU8
private

Definition at line 280 of file IOdata.h.

Referenced by clearDataU8(), dataU8(), defDataU8(), dump(), IOdata(), setDataU8(), and setU8().

◆ m_header

unsigned long IOdata::m_header
private

Definition at line 272 of file IOdata.h.

Referenced by header(), IOdata(), and setHeader().

◆ m_length

unsigned long IOdata::m_length
private

◆ m_mode

IOdata::Mode IOdata::m_mode
private

Definition at line 275 of file IOdata.h.

Referenced by mode(), and setMode().

◆ m_outputSelect

unsigned long IOdata::m_outputSelect
private

Definition at line 274 of file IOdata.h.

Referenced by outputSelect(), and setOutputSelect().

◆ m_subAddress

unsigned long IOdata::m_subAddress
private

Definition at line 273 of file IOdata.h.

Referenced by dump(), IOdata(), setSubAddress(), and subAddress().

◆ m_wordSize

IOdata::WordSize IOdata::m_wordSize
private

The documentation for this class was generated from the following files: