// SAL_VERSION=5.0.1 XML_VERSION=6.2.1
module ATDome {
struct command_abort_fc4d6f0b {  // @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<128>	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_fc4d6f0b 
struct command_closeShutter_ee0d78d9 {  // @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<128>	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_ee0d78d9 
struct command_disable_dd74186f {  // @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<128>	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_dd74186f 
struct command_enable_efe7b476 {  // @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<128>	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_efe7b476 
struct command_enterControl_28d5a47b {  // @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<128>	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_28d5a47b 
struct command_exitControl_f0b55ff8 {  // @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<128>	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_f0b55ff8 
struct command_homeAzimuth_8d439ced {  // @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<128>	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_homeAzimuth_8d439ced 
struct command_moveAzimuth_3557e3d1 {  // @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<128>	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	azimuth; // @Metadata=(Units="deg",Description="Desired azimuth; must be in the range 0 to 360. The dome will take the shortest route to the specified position.")
	};
#pragma keylist command_moveAzimuth_3557e3d1 
struct command_moveShutterDropoutDoor_6d99ada4 {  // @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<128>	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	open; // @Metadata=(Units="unitless",Description="Open the door if true; close it if false.")
	};
#pragma keylist command_moveShutterDropoutDoor_6d99ada4 
struct command_moveShutterMainDoor_20e3280a {  // @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<128>	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	open; // @Metadata=(Units="unitless",Description="Open the door if true; close it if false.")
	};
#pragma keylist command_moveShutterMainDoor_20e3280a 
struct command_openShutter_62f91232 {  // @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<128>	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_62f91232 
struct command_setAuthList_5dba5a9b {  // @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<128>	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_5dba5a9b 
struct command_setLogLevel_6c7e62a9 {  // @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<128>	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_6c7e62a9 
struct command_setValue_d11707ed {  // @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<128>	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_d11707ed 
struct command_standby_5fce6264 {  // @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<128>	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_5fce6264 
struct command_start_88b8d21d {  // @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<128>	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_88b8d21d 
struct command_stopMotion_351b2b0f {  // @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<128>	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_stopMotion_351b2b0f 
struct logevent_allAxesInPosition_50a28449 {  // @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<128>	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	inPosition; // @Metadata=(Units="unitless",Description="In position?")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_allAxesInPosition_50a28449 
struct logevent_appliedSettingsMatchStart_5d0885bd {  // @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<128>	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_5d0885bd 
struct logevent_authList_9851ae44 {  // @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<128>	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_9851ae44 
struct logevent_azimuthCommandedState_b3695095 {  // @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<128>	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	commandedState; // @Metadata=(Units="unitless",Description="Commanded state.")
	  float	azimuth; // @Metadata=(Units="deg",Description="Position commanded by the most recent moveAzimuth command; nan when the CSC starts up or when homing.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_azimuthCommandedState_b3695095 
	 const long ATDome_shared_AzimuthCommandedState_Unknown=1;
	 const long ATDome_shared_AzimuthCommandedState_GoToPosition=2;
	 const long ATDome_shared_AzimuthCommandedState_Home=3;
	 const long ATDome_shared_AzimuthCommandedState_Stop=4;
	 const long ATDome_shared_AzimuthState_NotInMotion=1;
	 const long ATDome_shared_AzimuthState_MovingCW=2;
	 const long ATDome_shared_AzimuthState_MovingCCW=3;
	 const long ATDome_shared_ShutterDoorCommandedState_Unknown=1;
	 const long ATDome_shared_ShutterDoorCommandedState_Closed=2;
	 const long ATDome_shared_ShutterDoorCommandedState_Opened=3;
	 const long ATDome_shared_ShutterDoorCommandedState_Stop=4;
	 const long ATDome_shared_ShutterDoorState_Closed=1;
	 const long ATDome_shared_ShutterDoorState_Opened=2;
	 const long ATDome_shared_ShutterDoorState_PartiallyOpened=3;
	 const long ATDome_shared_ShutterDoorState_Opening=4;
	 const long ATDome_shared_ShutterDoorState_Closing=5;
struct logevent_azimuthInPosition_f7b92c0b {  // @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<128>	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	inPosition; // @Metadata=(Units="unitless",Description="In position?")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_azimuthInPosition_f7b92c0b 
struct logevent_azimuthState_7dccb45c {  // @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<128>	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="Current state.")
	  boolean	homing; // @Metadata=(Units="unitless",Description="Is azimuth being homed?")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_azimuthState_7dccb45c 
struct logevent_doorEncoderExtremes_c610f950 {  // @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<128>	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 long	mainClosed; // @Metadata=(Units="unitless",Description="Encoder position for main door when fully closed.")
	  long long	mainOpened; // @Metadata=(Units="unitless",Description="Encoder position for main door when fully opened.")
	  long long	dropoutClosed; // @Metadata=(Units="unitless",Description="Encoder position for dropout door when fully closed.")
	  long long	dropoutOpened; // @Metadata=(Units="unitless",Description="Encoder position for dropout door when fully opened.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_doorEncoderExtremes_c610f950 
struct logevent_dropoutDoorCommandedState_9ea653c0 {  // @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<128>	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	commandedState; // @Metadata=(Units="unitless",Description="Commanded state.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_dropoutDoorCommandedState_9ea653c0 
struct logevent_dropoutDoorState_ae737856 {  // @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<128>	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="Current state.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_dropoutDoorState_ae737856 
struct logevent_emergencyStop_a3faa462 {  // @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<128>	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	active; // @Metadata=(Units="unitless",Description="Is the estop active (e.g. estop button pressed)?")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_emergencyStop_a3faa462 
struct logevent_errorCode_fdad5610 {  // @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<128>	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_fdad5610 
struct logevent_heartbeat_9816e66e {  // @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<128>	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_9816e66e 
struct logevent_lastAzimuthGoTo_d65c96a6 {  // @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<128>	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="Reported position.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_lastAzimuthGoTo_d65c96a6 
struct logevent_logLevel_dc13ef87 {  // @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<128>	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_dc13ef87 
struct logevent_logMessage_d79fd41c {  // @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<128>	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_d79fd41c 
struct logevent_mainDoorCommandedState_8f7fffd4 {  // @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<128>	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	commandedState; // @Metadata=(Units="unitless",Description="Commanded state.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_mainDoorCommandedState_8f7fffd4 
struct logevent_mainDoorState_7eca65d0 {  // @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<128>	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="Current state.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_mainDoorState_7eca65d0 
struct logevent_scbLink_354e1dfa {  // @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<128>	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	active; // @Metadata=(Units="unitless",Description="Communicating?")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_scbLink_354e1dfa 
struct logevent_settingVersions_a2bf2754 {  // @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<128>	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_a2bf2754 
struct logevent_settingsApplied_8862b5e3 {  // @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<128>	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_8862b5e3 
struct logevent_settingsAppliedDomeController_0e744c4c {  // @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<128>	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	rainSensorEnabled; // @Metadata=(Units="unitless",Description="Is the rain/snow sensor enabled?")
	  boolean	cloudSensorEnabled; // @Metadata=(Units="unitless",Description="Is the cloud sensor enabled?")
	  float	tolerance; // @Metadata=(Units="deg",Description="A request to move less than this amount in azimuth is ignored.")
	  float	homeAzimuth; // @Metadata=(Units="deg",Description="Azimuth position of the home switch.")
	  float	highSpeedDistance; // @Metadata=(Units="deg",Description="The minimum distance in azimuth that the dome must move to invoke high speed motion.")
	  float	watchdogTimer; // @Metadata=(Units="second",Description="The time interval between loss of communication between the shutter control box (SCB) and main control box (MCB) and the SCB closing the shutter.")
	  float	dropoutTimer; // @Metadata=(Units="second",Description="What is this? How does it differ from doorMoveTimeout?")
	  float	reversalDelay; // @Metadata=(Units="second",Description="The delay between reversing motor directions for the shutter doors; where 0 &lt; t &lt;= 6. For a 240 VAC system this parameter can be set to 0.")
	  boolean	autoShutdownEnabled; // @Metadata=(Units="unitless",Description="Is automatic closing of the shutter enabled? If enabled then the shutter will be closed if rain; snow or clouds are detected; or if the shutter control box (SCB) loses radio contact with the main control box (MCB).")
	  float	coast; // @Metadata=(Units="deg",Description="Azimuth coasting distance.")
	  long long	encoderCountsPer360; // @Metadata=(Units="unitless",Description="Number of azimuth encoder counts per full rotation.")
	  float	azimuthMoveTimeout; // @Metadata=(Units="second",Description="Timeout for azimuth moves.")
	  float	doorMoveTimeout; // @Metadata=(Units="second",Description="Timeout for opening or closing (what? either shutter door?).")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_settingsAppliedDomeController_0e744c4c 
struct logevent_settingsAppliedDomeTcp_bf31f345 {  // @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<128>	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	host; // @Metadata=(Units="unitless",Description="Host name of the ATDome TCP/IP controller.")
	  long	port; // @Metadata=(Units="unitless",Description="Port number of the ATDome TCP/IP controller.")
	  float	readTimeout; // @Metadata=(Units="second",Description="Read timeout before going into a fault state.")
	  float	connectionTimeout; // @Metadata=(Units="second",Description="Connection timeout before going into a fault state.")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_settingsAppliedDomeTcp_bf31f345 
struct logevent_shutterInPosition_3a5887d6 {  // @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<128>	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	inPosition; // @Metadata=(Units="unitless",Description="In position?")
	  long	priority; // @Metadata=(Units="unitless",Description="Priority code")
	};
#pragma keylist logevent_shutterInPosition_3a5887d6 
struct logevent_simulationMode_62f57f19 {  // @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<128>	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_62f57f19 
struct logevent_softwareVersions_6a2e50f0 {  // @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<128>	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>	salVersion; // @Metadata=(Units="unitless",Description="This is the current version of SAL generation")
	  string<256>	xmlVersion; // @Metadata=(Units="unitless",Description="This is the current version of CSC XML")
	  string<256>	openSpliceVersion; // @Metadata=(Units="unitless",Description="This is the current version of OpenSplice")
	  string<256>	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_6a2e50f0 
struct logevent_summaryState_17189a62 {  // @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<128>	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_17189a62 
struct position_f7e68243 {  // @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<128>	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	dropoutDoorOpeningPercentage; // @Metadata=(Units="unitless",Description="Current dropout shutter door opening percentage.")
	  float	mainDoorOpeningPercentage; // @Metadata=(Units="unitless",Description="Current main shutter door opening percentage.")
	  double	azimuthPosition; // @Metadata=(Units="deg",Description="Current azimuth position.")
	  long long	azimuthEncoderPosition; // @Metadata=(Units="unitless",Description="Current azimuth encoder reading.")
	};
#pragma keylist position_f7e68243 
struct ackcmd_ec56b694 {  // @Metadata=(Description="")
  string<8>	private_revCode; //private
  double	private_sndStamp;    //private
  double	private_rcvStamp;    //private
  long	private_seqNum;    //private
  string<128>	private_identity;    //private
  long	private_origin;    //private
  long	private_host;    //private
	  long	ack;
	  long	error;
	  string<256>	result;
	  long	host;
	  string	identity;
	  long	origin;
	  long	cmdtype;
	  double	timeout;
	};
#pragma keylist ackcmd_ec56b694 
};

