#include <VmeModule.h>
Inheritance diagram for CVmeModule:
Public Types | |
enum | Space { a16d16 = 0, a24d16 = 1, a24d32 = 2, a32d32 = 3, geo = 4 } |
Public Member Functions | |
CVmeModule (Space space, UInt_t base, UInt_t length, int nCrate=0) | |
CVmeModule (const CVmeModule &aCVmeModule) | |
virtual | ~CVmeModule () |
CVmeModule & | operator= (const CVmeModule &aCVmeModule) |
int | operator== (const CVmeModule &aCVmeModule) |
UChar_t | peekb (UInt_t offset=0) |
UShort_t | peekw (UInt_t offset=0) |
ULong_t | peekl (UInt_t offset=0) |
void | pokeb (UChar_t byte, UInt_t nOffset) |
void | pokew (UShort_t word, UInt_t nOffset) |
void | pokel (ULong_t lword, UInt_t nOffset) |
UInt_t | readl (void *pBuffer, UInt_t nOffset, size_t longs) |
UInt_t | readw (void *pBuffer, UInt_t nOffset, size_t words) |
UInt_t | readb (void *pBuffer, UInt_t nOffset, size_t bytes) |
Protected Member Functions | |
void | CopyToMe (const CVmeModule &rModule) |
Definition at line 306 of file VmeModule.h.
enum CVmeModule::Space |
static const CVmeModule::CVmeModule | ( | Space | space, | |
UInt_t | base, | |||
UInt_t | length, | |||
int | nCrate = 0 | |||
) |
Definition at line 358 of file VmeModule.cpp.
CVmeModule::CVmeModule | ( | const CVmeModule & | aCVmeModule | ) |
virtual CVmeModule::~CVmeModule | ( | ) | [inline, virtual] |
Definition at line 338 of file VmeModule.h.
CVmeModule & CVmeModule::operator= | ( | const CVmeModule & | aCVmeModule | ) |
Definition at line 429 of file VmeModule.cpp.
References CopyToMe().
Referenced by CNimout::operator=(), and CCaenIO::operator=().
int CVmeModule::operator== | ( | const CVmeModule & | aCVmeModule | ) |
Definition at line 449 of file VmeModule.cpp.
UChar_t CVmeModule::peekb | ( | UInt_t | offset = 0 |
) |
Definition at line 475 of file VmeModule.cpp.
UShort_t CVmeModule::peekw | ( | UInt_t | offset = 0 |
) |
Definition at line 510 of file VmeModule.cpp.
Referenced by CNimout::AndRegister(), CCAENV1x90::BoardProperties(), CAENcard::Busy(), CAENcard_767::cardType(), CADC2530::cardType(), CAENcard::channelOff(), CAENcard::channelOn(), CADC2530::checkCard(), CNimout::ClearBit(), CNimout::ClearCBit(), CNimout::ClearTBit(), CCAENV977::controlRegister(), CAENcard_767::dataPresent(), CAENcard::dataPresent(), CCAENV1x90::EventCount(), CCAENV1x90::EventFIFOCount(), CCAENV977::firmwareLevel(), CAENcard::gBusy(), CAENcard::gdataPresent(), CCAENV1x90::GetAlmostFullLevel(), CAENcard::getCrate(), CADC2530::getCSR(), CADC2530::getCTR(), CCAENV1x90::GetECLOutputDefinition(), CADC2530::getEventCounter(), CAENcard::getFirmware(), CADC2530::getFullnessFlags(), CCAENV1x90::GetGeographicalID(), CADC2530::getInterruptMask(), CADC2530::getInterruptVector(), CADC2530::getListAddress(), CADC2530::getLLD(), CAENcard_767::getSr2(), CADC2530::getSSTR(), CADC2530::getULD(), CCAENV977::inputMask(), CCAENV977::inputRead(), CCAENV977::inputSet(), CCAENV977::interruptMask(), CCAENV1x90::isEventFIFOFull(), CCAENV1x90::isEventFIFOReady(), CADC2530::manufacturerId(), CAENcard::MapCard(), CAENcard::MEBEmpty(), CAENcard::MEBFull(), CAENcard_767::mfgId(), CNimout::ModuleReady(), CCAENV977::multihitRead(), CCAENV977::multiHitReadAndClear(), CAENcard_767::opcodeWait(), CNimout::OrRegister(), CCAENV977::outputMask(), CCAENV977::outputSet(), CCAENV1x90::ReadCR(), CCaenIO::ReadInput(), CCaenIO::ReadInputs(), CCAENV1x90::ReadMicro(), CAENcard_767::readOpcode(), CCAENV1x90::ReadPromLong(), CNimout::ReadRegister(), CCAENV977::serialNumber(), CNimout::SetBit(), CAENcard::setCrate(), CADC2530::setMemoryOffset(), CNimout::SetStrobeLength(), CNimout::SetTBit(), CAENcard::setThreshold(), CCAENV977::singleHitRead(), CCAENV977::singleHitReadAndClear(), CAENcard_767::slotInit(), CCAENV1x90::SR(), CNimout::TBitSet(), CCAENV977::testControlRegister(), CCAENV1x90::ValidBoard(), and CCAENV1x90::WaitMicroWrite().
ULong_t CVmeModule::peekl | ( | UInt_t | offset = 0 |
) |
Definition at line 548 of file VmeModule.cpp.
Referenced by CVMEScalerLRS1151::Clear(), CModule32::peek(), CAENcard_767::readEvent(), CCAENV1x90::ReadEventFIFO(), CCAENV1x90::ReadPacket(), CCAENV1x90::ReadValid(), and CCAENV1x90::TriggerCount().
void CVmeModule::pokeb | ( | UChar_t | byte, | |
UInt_t | nOffset | |||
) |
Definition at line 585 of file VmeModule.cpp.
void CVmeModule::pokew | ( | UShort_t | word, | |
UInt_t | nOffset | |||
) |
Definition at line 616 of file VmeModule.cpp.
Referenced by CNimout::AndRegister(), CAENcard::Bitclear1(), CAENcard::Bitclear2(), CAENcard::Bitset1(), CAENcard::Bitset2(), CAENcard::channelOff(), CAENcard::channelOn(), CCAENV1x90::Clear(), CNimout::ClearAll(), CCaenIO::ClearAll(), CNimout::ClearBit(), CNimout::ClearCBit(), CAENcard_767::clearData(), CCaenIO::ClearECL(), CADC2530::clearEventCounter(), CADC2530::clearFullnessFlags(), CCaenIO::ClearLevel(), CADC2530::clearListAddress(), CNimout::ClearTBit(), CCAENV977::controlRegister(), CCAENV1x90::DefineECLOutput(), CCAENV1x90::EventReset(), CVMEScalerLRS1151::Initialize(), CCAENV977::inputMask(), CCAENV977::inputSet(), CCAENV977::interruptMask(), CAENcard::MapCard(), CNimout::OrRegister(), CCAENV977::outputClear(), CCAENV977::outputMask(), CCAENV977::outputSet(), CCaenIO::PulseOutput(), CCAENV977::Reset(), CCAENV1x90::Reset(), CAENcard_767::reset(), CADC2530::resetCSRbits(), CADC2530::resetCTRbits(), CAENcard::resetEventCounter(), CCAENV1x90::SetAlmostFullLevel(), CNimout::SetBit(), CAENcard::SetCBLTChainMembership(), CAENcard::setCrate(), CADC2530::setCSR(), CADC2530::setCSRbits(), CADC2530::setCTR(), CADC2530::setCTRbits(), CCaenIO::SetECL(), CAENcard::setFastClearWindow(), CCAENV1x90::SetGeographicalID(), CADC2530::setInterruptMask(), CADC2530::setInterruptVector(), CCaenIO::SetLevel(), CADC2530::setLLD(), CADC2530::setMemoryOffset(), CAENcard::setPedestalCurrent(), CAENcard::setRange(), CADC2530::setSSTR(), CNimout::SetStrobeLength(), CNimout::SetTBit(), CAENcard::setThreshold(), CADC2530::setULD(), CAENcard_767::slotInit(), CCAENV977::testControlRegister(), CCAENV1x90::Trigger(), CCAENV1x90::WriteCR(), CCAENV1x90::WriteMicro(), CAENcard_767::writeOpcode(), and CAENcard_767::~CAENcard_767().
void CVmeModule::pokel | ( | ULong_t | lword, | |
UInt_t | nOffset | |||
) |
Definition at line 649 of file VmeModule.cpp.
Referenced by CADC2530::clearHistogramMemory(), CADC2530::clearMemory(), and CModule32::poke().
UInt_t CVmeModule::readl | ( | void * | pBuffer, | |
UInt_t | nOffset, | |||
size_t | longs | |||
) |
Read a block of longwords from the VME. At present, we assume that for mapped interfaces, transfers are faster if done under programmed control. In future releases we may need to think about a threshold above which we ask the driver to do the transfers for us. The real motiviation for this function are the devices that do not have mapping... for them it's almost certain, that letting the driver do the block transfer is better than us doing it since the driver overhead will be amortized over the transfer count.
pBuffer | - The target of the transfer. This buffer must be at least longs*sizeof(long) large. | |
nOffset | - The longword offset into the region represented by this class. | |
longs | - The number of longwords to transfer. |
number | of longs transferred if everything worked or some device dependent result. |
Definition at line 708 of file VmeModule.cpp.
Referenced by CAENcard::ReadBufferBlock().
UInt_t CVmeModule::readw | ( | void * | pBuffer, | |
UInt_t | nOffset, | |||
size_t | words | |||
) |
Read a block of words from the VME. At present, we assume that for mapped interfaces, transfers are faster if done under programmed control. In future releases we may need to think about a threshold above which we ask the driver to do the transfers for us. The real motiviation for this function are the devices that do not have mapping... for them it's almost certain, that letting the driver do the block transfer is better than us doing it since the driver overhead will be amortized over the transfer count.
pBuffer | - The target of the transfer. This buffer must be at least longs*sizeof(UShort_t) large. | |
nOffset | - The word offset into the region represented by this class. | |
words | - The number of words to transfer. |
number | of words transferred if everything worked or some device dependent result. |
Definition at line 755 of file VmeModule.cpp.
UInt_t CVmeModule::readb | ( | void * | pBuffer, | |
UInt_t | nOffset, | |||
size_t | bytes | |||
) |
Read a block of bytes from the VME. At present, we assume that for mapped interfaces, transfers are faster if done under programmed control. In future releases we may need to think about a threshold above which we ask the driver to do the transfers for us. The real motiviation for this function are the devices that do not have mapping... for them it's almost certain, that letting the driver do the block transfer is better than us doing it since the driver overhead will be amortized over the transfer count.
pBuffer | - The target of the transfer. This buffer must be at least longs bytes large. | |
nOffset | - The byte offset into the region represented by this class. | |
bytes | - The number of bytes to transfer. |
number | of bytes transferred if everything worked or some device dependent result. |
Definition at line 799 of file VmeModule.cpp.
void CVmeModule::CopyToMe | ( | const CVmeModule & | rModule | ) | [protected] |
Utility function to copy an object to me.
Definition at line 671 of file VmeModule.cpp.
Referenced by CVmeModule(), and operator=().