You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Introduction

LATC as a system doesn't provide an interface for manipulating the LATC xml as a system.  Also, due to some features of the LATC compiler (LATC_parser), there are subtleties in attempting to simply "chain" different sets of XML together to create a correct description of the detector

 

Interface

The <foo> package contains a simple interface to an in-memory model of the LATC register space.  A top level object, LATC_LAT, is provided which constitutes the top level interface to the LATC register hierarchy. This package contains several base classes: LATCComponent, LATCComponentDict, LATCRegister. The top level object is instantiated with a simple:

lat = LATC_LAT()

LATCComponent

The base class of all LATC component objects (such as LATC_LAT, LATC_TEM, LATC_AFE). LATCComponent objects have sets of LATCComponents and sets of LATCRegisters. These sets may be empty. All LATCComponent objects define the following methods:

 

name() Returns the component's name (a string)
components() Returns a dict of LATCComponent objects that are under this component (may be empty). Example: lat.components().keys() returns ['AEM', 'TEM', 'GEM'
nComponents() Returns the length of the components() dict
registers() Returns a dict of LATCRegister objects

 

 

LATCComponentDict

 

LATCRegister

 

  • No labels