// SAL_VERSION=4.2.0 XML_VERSION=6.0.0
module Dome {
struct apertureShutter_1b19361e {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	positionActual; // @Metadata=(Units="unitless",Description="Measured position of the aperture shutter (percent open).")
	  float	positionCommanded; // @Metadata=(Units="unitless",Description="Commanded position of the aperture shutter (percent open).")
	  float	driveTorqueActual[4]; // @Metadata=(Units="J",Description="Measured torque for each aperture shutter drive.")
	  float	driveTorqueCommanded[4]; // @Metadata=(Units="J",Description="Commanded torque for each aperture shutter drive.")
	  float	driveCurrentActual[4]; // @Metadata=(Units="A",Description="Measured current drawn by each aperture shutter drive.")
	  float	driveTemperature[4]; // @Metadata=(Units="deg_C",Description="Measured temperature of each aperture shutter drive/motors.")
	  float	resolverHeadRaw[4]; // @Metadata=(Units="unitless",Description="Raw value of each aperture shutter drive resolver.")
	  float	resolverHeadCalibrated[4]; // @Metadata=(Units="deg",Description="Calibrated value of each aperture shutter drive resolver.")
	  float	powerDraw; // @Metadata=(Units="W",Description="Total power drawn by all shutter drives.")
	  double	timestamp; // @Metadata=(Units="second",Description="Time at which the data was determined (TAI unix seconds).")
	};
#pragma keylist apertureShutter_1b19361e 
struct azimuth_587ad9a4 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	positionActual; // @Metadata=(Units="deg",Description="Measured azimuth axis position.")
	  float	positionCommanded; // @Metadata=(Units="deg",Description="Commanded azimuth azimuth position.")
	  float	velocityActual; // @Metadata=(Units="deg/second",Description="Measured azimuth axis velocity.")
	  float	velocityCommanded; // @Metadata=(Units="deg/second",Description="Commanded azimuth axis velocity.")
	  float	driveTorqueActual[5]; // @Metadata=(Units="J",Description="Measured torque for each azimuth drive.")
	  float	driveTorqueCommanded[5]; // @Metadata=(Units="J",Description="Commanded torque for each azimuth drive.")
	  float	driveCurrentActual[5]; // @Metadata=(Units="A",Description="Measured current drawn by each azimuth drive.")
	  float	driveTemperature[5]; // @Metadata=(Units="deg_C",Description="Measured temperature of each azimuth drive.")
	  float	encoderHeadRaw[5]; // @Metadata=(Units="unitless",Description="Raw readout of each azimuth encoder head.")
	  float	encoderHeadCalibrated[5]; // @Metadata=(Units="deg",Description="Calibrated readout of each azimuth encoder head.")
	  float	resolverRaw[5]; // @Metadata=(Units="unitless",Description="Raw readout of each azimuth drive resolver.")
	  float	resolverCalibrated[5]; // @Metadata=(Units="deg",Description="Calibrated readout of each azimuth drive resolver.")
	  double	timestamp; // @Metadata=(Units="second",Description="Time at which the data was determined (TAI unix seconds).")
	};
#pragma keylist azimuth_587ad9a4 
struct command_abort_041ab40d {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_abort_041ab40d 
struct command_closeLouvers_945e0cbc {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_closeLouvers_945e0cbc 
struct command_closeShutter_9d76dd15 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_closeShutter_9d76dd15 
struct command_crawlAz_8cefaae4 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	velocity; // @Metadata=(Units="deg/second",Description="The velocity. Positive is the direction of increasing azimuth.")
	};
#pragma keylist command_crawlAz_8cefaae4 
struct command_crawlEl_faf5bee0 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	velocity; // @Metadata=(Units="deg/second",Description="The velocity. Positive is the direction of increasing azimuth.")
	};
#pragma keylist command_crawlEl_faf5bee0 
struct command_disable_4f9115a0 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_disable_4f9115a0 
struct command_enable_4c28184f {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_enable_4c28184f 
struct command_enterControl_23528015 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_enterControl_23528015 
struct command_exitControl_35b6f7ff {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_exitControl_35b6f7ff 
struct command_moveAz_0dfb3424 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	position; // @Metadata=(Units="deg",Description="The position.")
	  double	velocity; // @Metadata=(Units="deg/second",Description="The velocity. Positive is the direction of increasing azimuth.")
	};
#pragma keylist command_moveAz_0dfb3424 
struct command_moveEl_45cb9c80 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	position; // @Metadata=(Units="deg",Description="The position.")
	};
#pragma keylist command_moveEl_45cb9c80 
struct command_openShutter_706e07fc {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_openShutter_706e07fc 
struct command_park_078fc5d9 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_park_078fc5d9 
struct command_setAuthList_f2f1c6ee {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string	authorizedUsers; // @Metadata=(Units="unitless",Description="Comma seperated list of authorized users currently allowed to command this CSC.")
	  string	nonAuthorizedCSCs; // @Metadata=(Units="unitless",Description="Comma seperated list of CSC's not currently allowed to command this CSC.")
	};
#pragma keylist command_setAuthList_f2f1c6ee 
struct command_setLogLevel_5042bf36 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	level; // @Metadata=(Units="unitless",Description="Logging level; as a Python logging level: error=40; warning=30; info=20; debug=10.")
	};
#pragma keylist command_setLogLevel_5042bf36 
struct command_setLouvers_96675139 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	position[34]; // @Metadata=(Units="unitless",Description="Desired percent open of each louver: 0 is fully closed; 100 is fully open; -1 is don't move.")
	};
#pragma keylist command_setLouvers_96675139 
struct command_setTemperature_5445a1bf {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  double	temperature; // @Metadata=(Units="deg_C",Description="Desired temperature.")
	};
#pragma keylist command_setTemperature_5445a1bf 
struct command_setValue_299cdfee {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string<256>	parametersAndValues; // @Metadata=(Units="unitless",Description="List of parameters and their values as a Json string")
	};
#pragma keylist command_setValue_299cdfee 
struct command_standby_59455e32 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	value; // @Metadata=(Units="unitless",Description="Not used")
	};
#pragma keylist command_standby_59455e32 
struct command_start_3da87cd1 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string<256>	settingsToApply; // @Metadata=(Units="unitless",Description="Name of the selected settings set")
	};
#pragma keylist command_start_3da87cd1 
struct command_stop_95aa9582 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_stop_95aa9582 
struct command_stopAz_6202998b {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_stopAz_6202998b 
struct command_stopEl_55577bee {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_stopEl_55577bee 
struct command_stopLouvers_447aea76 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_stopLouvers_447aea76 
struct command_stopShutter_2ac752f8 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	};
#pragma keylist command_stopShutter_2ac752f8 
struct interlocks_deaaa443 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	data[16]; // @Metadata=(Units="unitless",Description="Safety monitoring.")
	  double	timestamp; // @Metadata=(Units="second",Description="Time at which the data was determined (TAI unix seconds).")
	};
#pragma keylist interlocks_deaaa443 
struct lightWindScreen_0373a9a1 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	positionActual; // @Metadata=(Units="deg",Description="Measured position of the light/wind screen.")
	  float	positionCommanded; // @Metadata=(Units="deg",Description="Commanded position of the light/wind screen.")
	  float	velocityActual; // @Metadata=(Units="deg/second",Description="Measured velocity of the light/wind screen.")
	  float	velocityCommanded; // @Metadata=(Units="deg/second",Description="Commanded velocity of the light/wind screen.")
	  float	driveTorqueActual[2]; // @Metadata=(Units="J",Description="Measured torque of each light/wind screen drive.")
	  float	driveTorqueCommanded[2]; // @Metadata=(Units="J",Description="Commanded torque of each light/screen drive.")
	  float	driveCurrentActual[2]; // @Metadata=(Units="A",Description="Measured current drawn by each light/wind screen drive.")
	  float	driveTemperature[2]; // @Metadata=(Units="deg_C",Description="Temperature of each light/wind screen drive.")
	  float	encoderHeadRaw[2]; // @Metadata=(Units="unitless",Description="Raw value of each light/wind screen encoder.")
	  float	encoderHeadCalibrated[2]; // @Metadata=(Units="deg",Description="Calibrated value of each light/wind screen encoder.")
	  float	resolverRaw[2]; // @Metadata=(Units="unitless",Description="Raw value of each light/wind screen resolver.")
	  float	resolverCalibrated[2]; // @Metadata=(Units="deg",Description="Calibrated value of each light/wind screen resolver.")
	  float	powerDraw; // @Metadata=(Units="W",Description="Total power drawn by all light/wind screen drives.")
	  double	timestamp; // @Metadata=(Units="second",Description="Time at which the data was determined (TAI unix seconds).")
	};
#pragma keylist lightWindScreen_0373a9a1 
struct logevent_appliedSettingsMatchStart_716851ce {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	appliedSettingsMatchStartIsTrue; // @Metadata=(Units="unitless",Description="True when the configuration matches the start conditions")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_appliedSettingsMatchStart_716851ce 
struct logevent_authList_194a7cd3 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string	authorizedUsers; // @Metadata=(Units="unitless",Description="Comma seperated list of authorized users currently allowed to command this CSC.")
	  string	nonAuthorizedCSCs; // @Metadata=(Units="unitless",Description="Comma seperated list of CSC's not currently allowed to command this CSC.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_authList_194a7cd3 
struct logevent_azEnabled_d228a8e9 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	state; // @Metadata=(Units="unitless",Description="Enabled state; an EnabledState enum.")
	  string	faultCode; // @Metadata=(Units="unitless",Description="The fault code; ignore if not in Fault state.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_azEnabled_d228a8e9 
	 const long Dome_shared_EnabledState_Disabled=1;
	 const long Dome_shared_EnabledState_Enabled=2;
	 const long Dome_shared_EnabledState_Fault=3;
	 const long Dome_shared_MotionState_Stopped=1;
	 const long Dome_shared_MotionState_Stopping=2;
	 const long Dome_shared_MotionState_Moving=3;
	 const long Dome_shared_MotionState_Crawling=4;
	 const long Dome_shared_Louver_A1=0;
	 const long Dome_shared_Louver_B1=1;
	 const long Dome_shared_Louver_A2=2;
	 const long Dome_shared_Louver_B2=3;
	 const long Dome_shared_Louver_B3=4;
	 const long Dome_shared_Louver_N1=5;
	 const long Dome_shared_Louver_M1=6;
	 const long Dome_shared_Louver_N2=7;
	 const long Dome_shared_Louver_M2=8;
	 const long Dome_shared_Louver_M3=9;
	 const long Dome_shared_Louver_C1=10;
	 const long Dome_shared_Louver_C2=11;
	 const long Dome_shared_Louver_C3=12;
	 const long Dome_shared_Louver_L1=13;
	 const long Dome_shared_Louver_L2=14;
	 const long Dome_shared_Louver_L3=15;
	 const long Dome_shared_Louver_E1=16;
	 const long Dome_shared_Louver_D2=17;
	 const long Dome_shared_Louver_E2=18;
	 const long Dome_shared_Louver_D3=19;
	 const long Dome_shared_Louver_E3=20;
	 const long Dome_shared_Louver_I1=21;
	 const long Dome_shared_Louver_H1=22;
	 const long Dome_shared_Louver_I2=23;
	 const long Dome_shared_Louver_H2=24;
	 const long Dome_shared_Louver_I3=25;
	 const long Dome_shared_Louver_H3=26;
	 const long Dome_shared_Louver_F1=27;
	 const long Dome_shared_Louver_G1=28;
	 const long Dome_shared_Louver_F2=29;
	 const long Dome_shared_Louver_G2=30;
	 const long Dome_shared_Louver_F3=31;
	 const long Dome_shared_Louver_G3=32;
	 const long Dome_shared_Louver_D1=33;
struct logevent_azMotion_8be5c5c9 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	state; // @Metadata=(Units="unitless",Description="The motion state; a MotionState enum.")
	  boolean	inPosition; // @Metadata=(Units="unitless",Description="Is the axis in position?")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_azMotion_8be5c5c9 
struct logevent_azTarget_f1f2af88 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	position; // @Metadata=(Units="deg",Description="Target position; nan for the crawlAz command.")
	  float	velocity; // @Metadata=(Units="deg/second",Description="Target velocity.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_azTarget_f1f2af88 
struct logevent_brakesEngaged_7b1080b8 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	brakes; // @Metadata=(Units="unitless",Description="Bitmask of brakes that are engaged.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_brakesEngaged_7b1080b8 
struct logevent_elEnabled_c11f2834 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	state; // @Metadata=(Units="unitless",Description="Enabled state; an EnabledState enum.")
	  string	faultCode; // @Metadata=(Units="unitless",Description="The fault code; ignore if not in Fault state.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_elEnabled_c11f2834 
struct logevent_elMotion_7bfc29c0 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	state; // @Metadata=(Units="unitless",Description="The motion state; a MotionState enum.")
	  boolean	inPosition; // @Metadata=(Units="unitless",Description="Is the axis in position?")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_elMotion_7bfc29c0 
struct logevent_elTarget_01979e87 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	position; // @Metadata=(Units="deg",Description="Target position; nan for the crawlEl command.")
	  float	velocity; // @Metadata=(Units="deg/second",Description="Target velocity; 0 for the moveEl command.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_elTarget_01979e87 
struct logevent_errorCode_cd09007e {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	errorCode; // @Metadata=(Units="unitless",Description="A numeric error code")
	  string	errorReport; // @Metadata=(Units="unitless",Description="An string providing detailed information about the error")
	  string	traceback; // @Metadata=(Units="unitless",Description="An optional stack trace of the error condition")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_errorCode_cd09007e 
struct logevent_heartbeat_b8ffbd65 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  boolean	heartbeat; // @Metadata=(Units="unitless",Description="Beats the drum.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_heartbeat_b8ffbd65 
struct logevent_interlocks_aec59348 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	interlocks; // @Metadata=(Units="unitless",Description="Bitmask of safety interlocks that are latched.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_interlocks_aec59348 
struct logevent_lockingPinsEngaged_efa16a6b {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	engaged; // @Metadata=(Units="unitless",Description="Bitmask of locking pins that have been engaged.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_lockingPinsEngaged_efa16a6b 
struct logevent_logLevel_899480ba {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	level; // @Metadata=(Units="unitless",Description="Current logging level; a Python logging level: error=40; warning=30; info=20; debug=10.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_logLevel_899480ba 
struct logevent_logMessage_e928513a {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string	name; // @Metadata=(Units="unitless",Description="Log name.")
	  long	level; // @Metadata=(Units="unitless",Description="Message level; a Python logging level: error=40; warning=30; info=20; debug=10.")
	  string	message; // @Metadata=(Units="unitless",Description="Log message.")
	  string	traceback; // @Metadata=(Units="unitless",Description="Exception traceback; "" if not an exception.")
	  string	filePath; // @Metadata=(Units="unitless",Description="Path to source file.")
	  string	functionName; // @Metadata=(Units="unitless",Description="Function or method name.")
	  long	lineNumber; // @Metadata=(Units="unitless",Description="Line number in the file specified by filePath.")
	  long	process; // @Metadata=(Units="unitless",Description="Process ID.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_logMessage_e928513a 
struct logevent_settingVersions_103e148b {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string	recommendedSettingsVersion; // @Metadata=(Units="unitless",Description="List of comma seperated recomended versions of settings sets")
	  string	recommendedSettingsLabels; // @Metadata=(Units="unitless",Description="List of comma seperated names of settings sets")
	  string	settingsUrl; // @Metadata=(Units="unitless",Description="The URL where the settings sets definitions can be found")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_settingVersions_103e148b 
struct logevent_settingsApplied_80675fb5 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string<256>	settingsVersion; // @Metadata=(Units="unitless",Description="The SHA or name corresponding to the published configuration")
	  string	otherSettingsEvents; // @Metadata=(Units="unitless",Description="A comma delimited list of other specific CSC configuration events. This may be blank if no other CSC specific events are necessary")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_settingsApplied_80675fb5 
struct logevent_simulationMode_5040471b {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	mode; // @Metadata=(Units="unitless",Description="Current simulation mode; 0 for normal operation (no simulation); other supported values are specific to each CSC.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_simulationMode_5040471b 
struct logevent_softwareVersions_01218191 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  string<16>	salVersion; // @Metadata=(Units="unitless",Description="This is the current version of SAL generation")
	  string<16>	xmlVersion; // @Metadata=(Units="unitless",Description="This is the current version of CSC XML")
	  string<16>	openSpliceVersion; // @Metadata=(Units="unitless",Description="This is the current version of OpenSplice")
	  string<16>	cscVersion; // @Metadata=(Units="unitless",Description="This is the top-level version of the CSC")
	  string	subsystemVersions; // @Metadata=(Units="unitless",Description="A comma delimited list of key=value pairs relating subsystem name (key) to its version number (value). This may be left blank if there are no subsystems within a CSC")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_softwareVersions_01218191 
struct logevent_summaryState_0b7922fd {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  long	summaryState; // @Metadata=(Units="unitless",Description="High level state machine state identifier")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_summaryState_0b7922fd 
struct louvers_28bb9693 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	positionActual[34]; // @Metadata=(Units="unitless",Description="Measured position of each louver (percent open).")
	  float	positionCommanded[34]; // @Metadata=(Units="unitless",Description="Commanded position of each louver (percent open).")
	  float	driveTorqueActual[68]; // @Metadata=(Units="J",Description="Actual torque for each louver drive.")
	  float	driveTorqueCommanded[68]; // @Metadata=(Units="J",Description="Commanded torque for each louver drive.")
	  float	driveCurrentActual[68]; // @Metadata=(Units="A",Description="Actual current drawn by each louver drive.")
	  float	driveTemperature[68]; // @Metadata=(Units="deg_C",Description="Measured temperature of each louver drive.")
	  float	encoderHeadRaw[68]; // @Metadata=(Units="unitless",Description="Raw value of each louver drive encoder.")
	  float	encoderHeadCalibrated[68]; // @Metadata=(Units="deg",Description="Calibrated value of each louver drive encoder.")
	  float	powerDraw; // @Metadata=(Units="W",Description="Total power drawn by all louver drives.")
	  double	timestamp; // @Metadata=(Units="second",Description="Time at which the data was determined (TAI unix seconds).")
	};
#pragma keylist louvers_28bb9693 
struct thermal_faeb3355 {  // @Metadata=(Description="")
	  string<8>	private_revCode; //private // @Metadata=(Units="unitless",Description="Revision code of topic")
	  double	private_sndStamp; //private // @Metadata=(Units="second",Description="TAI at sender")
	  double	private_rcvStamp; //private // @Metadata=(Units="second",Description="TAI at receiver")
	  long		private_seqNum; //private // @Metadata=(Units="unitless",Description="Sequence number")
	  string        private_identity; //private // @Metadata=(Units="unitless",Description="Identity of originator")
	  long		private_origin; //private // @Metadata=(Units="unitless",Description="PID code of sender")
	  long		private_host; //private // @Metadata=(Units="unitless",Description="IP of sender")
	  float	temperature[16]; // @Metadata=(Units="deg_C",Description="Measured temperature of each heat source.")
	  double	timestamp; // @Metadata=(Units="second",Description="Time at which the data was determined (TAI unix seconds).")
	};
#pragma keylist thermal_faeb3355 
struct ackcmd_7cb40322 {  // @Metadata=(Description="")
      string<8>	private_revCode;
      double		private_sndStamp;
      double		private_rcvStamp;
      string		private_identity;
      long		private_origin;
      long 		private_host;
      long		private_seqNum;
      long 		ack;
      long 		error;
      string<256>	result;
      long		host;
      string            identity;
      long		origin;
      long		cmdtype;
      double		timeout;
	};
#pragma keylist ackcmd_7cb40322 
};

