LBTO Common Software Presentation

Download Report

Transcript LBTO Common Software Presentation

LBTO Common Software
August 15, 2006
Chris Biddick
1 cjb
Introduction


Common software elements:
• CommandReturn
• CommandSequencer
• Core
• DataDictionary (*)
• EventHandler (*)
• NetworkConfig
• ReflectiveMemory (*)
• RPC
• SetValue (*)
• TelemetryClient
Reference document: 481s501
(*) data dictionary
2 cjb
CommandReturn

Standard return object for client
commands
• Indicates success or failure
• May contain
• Strings
• Other CommandReturn objects
• Event descriptions
• Serialized object (XML) is returned
3 cjb
CommandSequencer

Commands from client to subsystem
Layer above lower level RPC
Supports

Subsystem reference 481s008


4 cjb
• Status of command
• Block on command
• Results of command
Core

ArgumentList
• Used to pass arguments from client to
subsystem
5 cjb

BitArray

Configuration
• Supports arrays of packed bits and bit fields
• Reads parameters from LBT.conf
Core (cont)
6 cjb

Conversions

LoadMonitor

Shm

Socket
• Provides unit conversions
• Used when starting subsystems
• Supports access to shared memory segments
• Socket support
Core (cont)

Signal

Synchronization (IMutex, MsgQueue,
PMutex, Semaphore)
• Simple signal handling
• Provides mutexes, semaphores and condition
synchronization

7 cjb
SysLog
• syslog support
Core (cont)
8 cjb

System

SystemClock

Thread

XML support
• Gets IP addresses and PIDs
• Get time, MJD, calendar time; do delays
• Support for POSIX threads in TCS context
• Xerces based XML parsing
DataDictionary

Supports reflective memory and events
• Writing (ddsconfig) and reading binary
definition files
9 cjb
EventHandler



10 cjb
Event class
Logs events to local flat file
Interfaces with the LSS
NetworkConfig

Handles starting/stopping TCS networks
and subsystems
• netconfig
• networkserver
11 cjb
ReflectiveMemory

12 cjb
Reflective memory network support
• gshmconfig
• gshmserver
RPC

Underlying layer for all TCS
communications
• rpcconfig
• rpcserver
• RPC class
13 cjb
SetValue

Reads and writes from/to reflective
memory
• Gtype class
• SetValueInterface class

Provides reflective memory write
protection
• Only owning subsystem may write its memory

14 cjb
Metadata retrieval
TelemetryClient

Hook for subsystems to interface to the
TEL subsystem
• startStream
15 cjb