fdhwlib  2.0.25
FE4configuration Class Reference

#include <fe4configuration.h>

Inheritance diagram for FE4configuration:
FEbaseConfiguration

List of all members.

Public Member Functions

Protected Member Functions

Private Attributes


Detailed Description

The class allows the general configuration of the FD electronic.

The tasks to do are

  • management of the active columns. This is of importance, if not all of the columns are present.
  • initialization
  • start / stop feature via the inhibit signal.

If the inhibit is enabled the system will stop at the next second strobe.

Changes:

  • The command releaseInhibit will perform a restart after software and pagefull inhibit. ak 7.2.01
  • Do not use the command to access the inhibit source any more - not really necessary! ak 7.2.01
  • No modification of the inhibit source in the commands setInhibit and releaseInhibit.
  • Implementation added for the current monitor, ak 19.2.01
Todo:
Read the parameter for init from the configuration file!

Definition at line 54 of file fe4configuration.h.


Constructor & Destructor Documentation

FE4configuration::FE4configuration ( hw4::SubrackAuger subrack)

Member Function Documentation

unsigned long FE4configuration::checkColumnList ( ) [virtual]

Check all columns for a device being present.

The result is stored and can be used by the getColumnList command.

Returns:
A list of bit values for each column: 1 existent 0 empty

Implements FEbaseConfiguration.

void FE4configuration::checkStatus ( const char *  where) [protected]

Internal method to poll all the (error) status bits - preliminary.

unsigned long FE4configuration::getColumnList ( ) [virtual]

The configuration is check once at the start of the system.

The results are stored and can be read with this command.

Returns:
A list of bit values for each column: 1 existent 0 empty

Implements FEbaseConfiguration.

int FE4configuration::getInhibitSource ( ) [virtual]

Do not use this command!

The command is implemented (to be on the safe side); shall it be removed? -tb-

If the inhibit signal occurs the system will stop. This signals is triggered if all pages are marked as written and there are no free pages left. Beside this normal mode of operation the inhibit signal can be initiated also by the external trigger or a software signal. Use this method to define the allowed sources.

Returns:
  • bit 0 software inhibit,
  • bit 1 pages full,
  • bit 2 global,
  • bit 3 front panel

see: sltcontrolreg.h, class SltControlReg, enum SltControlReg:InhibitSources

Reimplemented from FEbaseConfiguration.

void FE4configuration::init ( ) [virtual]

Initializes the FD electronic.

Detailed list of configuration done:

  • Inhibit source = SLT_INHIBIT_INT (internal + software inhibit)
  • Trigger source = SLT_TRIGGER_SW (software trigger)
  • NxPg source = SLT_NXPG_INT (internal source)
  • Testpuls source = SLT_TESTPULS_NO (disabled)
  • Load the appropriate sensor configuration
  • Configure the Flt FPGAs (Release reset, set to run mode)

Not changed (by now):

  • Set the IR masks,
  • Second strobe = 0 (second strobe from GPS clock) Enable NxPg
  • Load the alarm thresholds for the sensors
  • Set the time of the GPS clock (seconds)
  • Load the gain for the analog board and send the initialization sequence to the ADCs
  • Load the parameters of the hit rate control
  • Clear all pages

The system is not started through this command, it will still be inhibited afterwards. To start the system use the command releaseInhibit.

Implements FEbaseConfiguration.

bool FE4configuration::isInhibited ( ) [virtual]
Returns:
false system is running, true system is stopped.

Implements FEbaseConfiguration.

bool FE4configuration::isPresent ( int  col) [virtual]

Implements FEbaseConfiguration.

bool FE4configuration::isVeto ( ) [virtual]

Is veto signal active?

Reimplemented from FEbaseConfiguration.

void FE4configuration::releaseInhibit ( ) [virtual]

Release the inhibit.

The command will continue operation after an inhibit due to a software command (setInhibit) or all pages filled with data.

Implements FEbaseConfiguration.

void FE4configuration::setInhibit ( ) [virtual]

Set a software inhibit.

Implements FEbaseConfiguration.

void FE4configuration::setInhibitSource ( int  source) [virtual]

Do not use this command!

The command is implemented (to be on the safe side); shall it be removed? -tb-

Choose the inhibit source as described above.

Reimplemented from FEbaseConfiguration.


Member Data Documentation

std::string FE4configuration::name [private]

Definition at line 56 of file fe4configuration.h.

Definition at line 164 of file fe4configuration.h.


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