Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Related Pages

SctApiServer Class Reference

The SctApi ILU implementation/wrapper. More...

#include <SctApiServer.h>

Collaboration diagram for SctApiServer:

Collaboration graph
[legend]

Public Types

typedef std::vector< Sct_SctApi::CrateIPC_var > CrateIPC_vars
typedef std::vector< Sct::UCIDCrateDescriptors
typedef std::list< SharedScanServer > Scans

Public Member Functions

 SctApiServer (const CrateDescriptors &apis, const char *interfaceName)
virtual Sct_SctApi::CrateIPC_ptr getCrate (const Sct::Corba::UCID &ucid)
virtual Sct_SctApi::CrateIPC_ptr getCrateLegacy (CORBA::ULong partition, CORBA::ULong crate)
virtual Sct::Corba::UCIDs * getCrateUCIDs ()
virtual void initialiseAll (CORBA::ULong runNumber)
virtual void shutdownAll ()
virtual void status ()
virtual void setRunNumber (CORBA::ULong newRun)
virtual void setScanNumber (CORBA::ULong newScan)
virtual CORBA::ULong getRunNumber ()
virtual CORBA::ULong getScanNumber ()
virtual void unsetDebugOption (const char *opt)
virtual void setDebugOption (const char *opt)
virtual Sct_SctApi::DebugOptionList * listEnabledDebugOptions ()
virtual Sct_SctApi::DebugOptionList * listDebugOptions ()
virtual void standardRegisterDumpURID (const Sct::Corba::URID &urid)
virtual void standardRegisterDumpAll ()
virtual sctConf::ModuleList * getModuleList ()
virtual CORBA::Boolean isRODPresent (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual void awaitResponse (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual Sct_SctApi::DataBlock * getResponse (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual void configureBOC (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual Sct_SctApi::BOCMonitorSequence * getBOCMonitorArray (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual void flashLED (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::UShort slaveNumber, CORBA::ULong period, CORBA::ULong flashes)
virtual void echo (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, const Sct_SctApi::DataBlock &data)
virtual void createDebugPrimList ()
virtual void addDebugPrimList (CORBA::Long index, CORBA::Long id, CORBA::Long version, const Sct_SctApi::DataBlock &body)
virtual void sendDebugPrimList (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual void sendDebugSlavePrimList (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::ULong slave, CORBA::Boolean await, CORBA::Boolean response)
virtual void loadConfiguration (const char *filename)
virtual void storeModuleConfigurations ()
virtual void storeBOCConfigurations ()
virtual void configureAllModules ()
virtual sctConf::ABCDModule retrieveModule (CORBA::ULong mid)
virtual CORBA::ULong findModuleSerial (const char *sn)
virtual char * convertToString (CORBA::ULong mid)
virtual CORBA::ULong findModule (CORBA::UShort mur, CORBA::UShort number)
virtual CORBA::ULong findModuleRod (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::ULong channel)
virtual CORBA::ULong findBarrelModule (CORBA::ULong barrel, CORBA::ULong row, CORBA::Short number)
virtual void convertToBarrelModule (CORBA::ULong mid, CORBA::ULong &barrel, CORBA::ULong &row, CORBA::Short &number)
virtual CORBA::ULong findEndcapModule (CORBA::Long disk, CORBA::Long ring, CORBA::Long number)
virtual void convertToEndcapModule (CORBA::ULong mid, CORBA::Long &disk, CORBA::ULong &ring, CORBA::ULong &number)
virtual void getABCDModules (Sct_SctApi::BankType bank)
virtual void getABCDModule (CORBA::ULong mid, Sct_SctApi::BankType bank)
virtual void setABCDModule (CORBA::ULong mid, const Sct_SctApi::BankList &banks)
virtual void setABCDModules (const Sct_SctApi::BankList &bank)
virtual void copyABCDModule (CORBA::ULong mid, Sct_SctApi::BankType source, const Sct_SctApi::BankList &to)
virtual void copyABCDModules (Sct_SctApi::BankType source, const Sct_SctApi::BankList &to)
virtual void sendABCDModule (CORBA::ULong mid, Sct_SctApi::BankType bank, CORBA::ULong type)
virtual void sendABCDModules (Sct_SctApi::BankType bank)
virtual void modifyABCDMask (CORBA::ULong mid, const Sct_SctApi::DataBlock &mask)
virtual void modifyABCDTrims (CORBA::ULong mid, const Sct_SctApi::CharBlock &trims)
virtual void modifyABCDRC (CORBA::ULong mid, CORBA::ULong chip, CORBA::UShort index, CORBA::Double p0, CORBA::Double p1, CORBA::Double p2)
virtual void modifyABCDVar (CORBA::ULong typ, CORBA::Double var)
virtual void modifyABCDModuleVar (CORBA::ULong mid, CORBA::ULong typ, CORBA::Double var)
virtual void modifyABCDChipVar (CORBA::ULong mid, CORBA::ULong chip, CORBA::ULong typ, CORBA::Double var)
virtual void modifyABCDVarROD (CORBA::ULong typ, CORBA::Double var, const Sct_SctApi::BankList &banks)
virtual void modifyABCDModuleVarROD (CORBA::ULong mid, CORBA::ULong typ, CORBA::Double var, const Sct_SctApi::BankList &banks)
virtual void modifyBOCParam (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::ULong channel, CORBA::ULong type, CORBA::ULong val)
virtual void lasersOff ()
virtual void timSetFrequency (CORBA::ULong partition, CORBA::ULong crate, CORBA::Double trigFreq, CORBA::Double rstFreq)
virtual void freeTriggers (CORBA::ULong partition, CORBA::ULong crate)
virtual void stopTriggers (CORBA::ULong partition, CORBA::ULong crate)
virtual void timL1A (CORBA::ULong partition, CORBA::ULong crate)
virtual void timCalL1A (CORBA::ULong partition, CORBA::ULong crate, CORBA::Short delay)
virtual CORBA::Short timReadRegister (CORBA::ULong partition, CORBA::ULong crate, CORBA::Short value)
virtual void timWriteRegister (CORBA::ULong partition, CORBA::ULong crate, CORBA::Short reg, CORBA::Short value)
virtual void sendTimTrigger (CORBA::ULong partition, CORBA::ULong crate, Sct_SctApi::Trigger_ptr trig)
virtual void sendTrigger (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, Sct_SctApi::Trigger_ptr trig)
virtual void doScan (Sct_SctApi::Scan_ptr thisScan)
virtual void doRawScan (Sct_SctApi::Scan_ptr thisScan, CORBA::Long delay, CORBA::Long width, CORBA::Boolean configure, CORBA::Boolean clockByTwo)
virtual CORBA::Boolean hasFinishedScanning ()
virtual void abortScan ()
virtual Sct_SctApi::BOCChannelList * currentBOCSetup (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual sctConf::BOCGlobalConfig currentBOCRegisters (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual void printABCDModule (CORBA::ULong mid)
virtual void printABCDRodModule (CORBA::ULong mid, Sct_SctApi::BankType bank)
virtual void decodeEvent (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::Short sl, CORBA::Short index, CORBA::Boolean extFlag, CORBA::Boolean errorType)
virtual void rawData (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::Long delay, CORBA::Long units, CORBA::Boolean setMask)
virtual void rawDataWithTrigger (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::Long delay, CORBA::Long units, CORBA::Boolean setMask, Sct_SctApi::Trigger_ptr trig)
virtual void sendL1A (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual Sct_SctApi::CharBlock * probe (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual Sct_SctApi::CharBlock * probeHarness (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::ULong harness)
virtual Sct_SctApi::CharBlock * probeWithTrigger (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, Sct_SctApi::Trigger_ptr trig)
virtual Sct_SctApi::CharBlock * probeHarnessWithTrigger (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, Sct_SctApi::Trigger_ptr trig, CORBA::ULong harness)
virtual Sct_SctApi::CharMatrix * probeScanHarnessWithTrigger (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, Sct_SctApi::Scan_ptr trig, CORBA::ULong harness)
virtual CORBA::Boolean checkAllModulesProbe (const char *chars)
virtual Sct_SctApi::AutoResultList * autoConfigureScan ()
virtual CORBA::ULong getRodSlot (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual void testLinkOutSelect (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod, CORBA::ULong link)
virtual CORBA::ULong testLinkOutRetrieve (CORBA::ULong partition, CORBA::ULong crate, CORBA::ULong rod)
virtual Sct_SctApi::Scan_ptr createScan ()
virtual Sct_SctApi::Scan_ptr getDefaultScan ()
virtual Sct_SctApi::Trigger_ptr createTrigger ()
virtual Sct_SctApi::ScanList * knownScans ()
virtual void shutdown ()

Data Fields

Scans scans
ScanServer * defaultScan
TriggerServer * defaultTrigger

Static Public Attributes

SctApiServersingleton

Protected Types

typedef Sct::CrateStore::Worker Worker
typedef Sct::CrateStore::Workers Workers

Protected Member Functions

Sct_SctApi::CrateIPC_var worker ()
 Note that this "worker()" method is a stop-gap work-around only needed during the *transition* to multicrate. For the moment, it returns an "arbitrary" worker, out of all of the registered CrateController workers. It is only for hanger-on methods that do not yet know about multi crate and expect SctApiServer to only know about one worker. Eventually, every method of this class will have to avoid calling worker() and must instead distribute its work across the appropriate workers in "workers()" ... you were warned.

Workers & workers ()

Protected Attributes

MRSStream mrsStream

Private Types

typedef boost::shared_ptr<
ScanServer > 
SharedScanServer

Private Attributes

boost::shared_ptr< Sct::ScanStatusManager > m_assm
Sct::CrateStore m_crateStore
unsigned long m_localRunNumber
unsigned long m_localScanNumber

Detailed Description

The SctApi ILU implementation/wrapper.

Definition at line 45 of file SctApiServer.h.


Member Function Documentation

Sct_SctApi::CrateIPC_var SctApiServer::worker  )  [protected]
 

Note that this "worker()" method is a stop-gap work-around only needed during the *transition* to multicrate. For the moment, it returns an "arbitrary" worker, out of all of the registered CrateController workers. It is only for hanger-on methods that do not yet know about multi crate and expect SctApiServer to only know about one worker. Eventually, every method of this class will have to avoid calling worker() and must instead distribute its work across the appropriate workers in "workers()" ... you were warned.


The documentation for this class was generated from the following file:
Generated on Fri Sep 16 18:02:09 2005 for SCT DAQ/DCS Software - C++ by doxygen 1.3.5