Generic hardware access library
HAL::VME64xMappedWindow Class Reference

Representation of a mapped Address space window for a VME module. More...

#include <VME64xMappedWindow.hh>

List of all members.

Public Member Functions

 VME64xMappedWindow (uint32_t slotId, uint32_t functionId, uint32_t mappedWindowId, VMEConfigurationSpaceHandler *vmeConfigurationSpaceHandler) throw ( NoSuchItemException, IllegalOperationException, BusAdapterException, UnsupportedException, IllegalValueException )
 VME64xMappedWindow (uint32_t slotId_, uint32_t baseAddress, uint32_t addressRank)
 The constructor for standard VME modules.
virtual ~VME64xMappedWindow ()
uint32_t getDataAccessWidth () const
uint32_t getAddressRank () const
uint32_t getAM () const
uint32_t getMappedWindowId () const
uint32_t getFunctionId () const
uint32_t getSlotId () const
uint32_t getBaseaddress () const
const std::list< uint32_t > & getSortedAMCAPList () const
bool isConfigured () const
bool isImplemented () const
bool hasAnotherWindow () const
bool canA32 () const
bool canA24 () const
bool canA16 () const
void setADER (uint32_t baseAddress, uint32_t AM) throw ( NoSuchItemException, IllegalOperationException, BusAdapterException )
 Set the ADER register with a baseAddress and a AM.

Private Member Functions

void configFromHardware () throw ( NoSuchItemException, IllegalOperationException, UnsupportedException, BusAdapterException )
 Read out the contents of a configured Mapped Window from the Hardware and store the contents in the internal data.
void setAddressCapability (uint32_t AM)

Private Attributes

uint32_t slotId_
uint32_t functionId_
uint32_t mappedWindowId_
VMEConfigurationSpaceHandlervmeConfigurationSpaceHandlerRef_
std::list< uint32_t > AMCAP_
uint32_t AM_
uint32_t baseaddress_
uint32_t ADEM_
uint32_t addressRank_
uint32_t DAWPR_
uint32_t dataAccessWidth_
uint32_t ADER_
bool implemented_
bool configured_
bool canA16_
bool canA24_
bool canA32_

Detailed Description

Representation of a mapped Address space window for a VME module.

The software implements in the following way the concept of the VME function and the Mapped Window: A function has one or more mapped windows. All mapped windows of a function refer to the same baseaddress and are distinguished by the AM and the access width. In the AddressTable items are specified by the Mapped window ID (0..7) or the Address Space. The AM and the baseaddress the window are defined during the configuration. Therefore the Module Designer can force a specific AM to be used by offering only that AM in the AMCAP for a given function.

See also:
Author:
Christoph Schwick
Revision:
1.2
Date:
2009/01/14 18:10:06

Definition at line 43 of file VME64xMappedWindow.hh.


Constructor & Destructor Documentation

HAL::VME64xMappedWindow::VME64xMappedWindow ( uint32_t  slotId,
uint32_t  functionId,
uint32_t  mappedWindowId,
HAL::VMEConfigurationSpaceHandler vmeConfigurationSpaceHandler 
) throw ( NoSuchItemException, IllegalOperationException, BusAdapterException, UnsupportedException, IllegalValueException )

Definition at line 5 of file VME64xMappedWindow.cc.

HAL::VME64xMappedWindow::VME64xMappedWindow ( uint32_t  slotId_,
uint32_t  baseAddress,
uint32_t  addressRank 
)

The constructor for standard VME modules.

These modules have exaclty one mapped window. The mapping is defined by some hardwired setting on the board and cannot be configured dynamically.

Definition at line 142 of file VME64xMappedWindow.cc.

Definition at line 164 of file VME64xMappedWindow.cc.


Member Function Documentation

Definition at line 210 of file VME64xMappedWindow.cc.

Definition at line 206 of file VME64xMappedWindow.cc.

Definition at line 202 of file VME64xMappedWindow.cc.

Read out the contents of a configured Mapped Window from the Hardware and store the contents in the internal data.

Definition at line 234 of file VME64xMappedWindow.cc.

Definition at line 182 of file VME64xMappedWindow.cc.

uint32_t HAL::VME64xMappedWindow::getAM ( ) const

Definition at line 198 of file VME64xMappedWindow.cc.

Definition at line 214 of file VME64xMappedWindow.cc.

Definition at line 178 of file VME64xMappedWindow.cc.

Definition at line 190 of file VME64xMappedWindow.cc.

Definition at line 186 of file VME64xMappedWindow.cc.

Definition at line 194 of file VME64xMappedWindow.cc.

const std::list< uint32_t > & HAL::VME64xMappedWindow::getSortedAMCAPList ( ) const

Definition at line 230 of file VME64xMappedWindow.cc.

Definition at line 226 of file VME64xMappedWindow.cc.

Definition at line 218 of file VME64xMappedWindow.cc.

Definition at line 222 of file VME64xMappedWindow.cc.

void HAL::VME64xMappedWindow::setAddressCapability ( uint32_t  AM) [private]

Definition at line 167 of file VME64xMappedWindow.cc.

void HAL::VME64xMappedWindow::setADER ( uint32_t  baseAddress,
uint32_t  AM 
) throw ( NoSuchItemException, IllegalOperationException, BusAdapterException )

Set the ADER register with a baseAddress and a AM.

In case this window is for a standard VME module without configuration space, an IllegalOperationException is thrown.

Definition at line 263 of file VME64xMappedWindow.cc.


Member Data Documentation

Definition at line 121 of file VME64xMappedWindow.hh.

uint32_t HAL::VME64xMappedWindow::ADEM_ [private]

Definition at line 120 of file VME64xMappedWindow.hh.

uint32_t HAL::VME64xMappedWindow::ADER_ [private]

Definition at line 126 of file VME64xMappedWindow.hh.

uint32_t HAL::VME64xMappedWindow::AM_ [private]

Definition at line 117 of file VME64xMappedWindow.hh.

std::list<uint32_t> HAL::VME64xMappedWindow::AMCAP_ [private]

Definition at line 116 of file VME64xMappedWindow.hh.

Definition at line 118 of file VME64xMappedWindow.hh.

Definition at line 131 of file VME64xMappedWindow.hh.

Definition at line 132 of file VME64xMappedWindow.hh.

Definition at line 133 of file VME64xMappedWindow.hh.

Definition at line 129 of file VME64xMappedWindow.hh.

Definition at line 124 of file VME64xMappedWindow.hh.

uint32_t HAL::VME64xMappedWindow::DAWPR_ [private]

Definition at line 123 of file VME64xMappedWindow.hh.

Definition at line 112 of file VME64xMappedWindow.hh.

Definition at line 128 of file VME64xMappedWindow.hh.

Definition at line 113 of file VME64xMappedWindow.hh.

Definition at line 111 of file VME64xMappedWindow.hh.


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