diff --git a/ARCHIVE/CreateMysqlTables_1.sql b/ARCHIVE/CreateMysqlTables_1.sql new file mode 100644 index 0000000000000000000000000000000000000000..e9d87bf45eaa8af2d545811809154e3ed0a1cbb3 --- /dev/null +++ b/ARCHIVE/CreateMysqlTables_1.sql @@ -0,0 +1,351 @@ +CREATE TABLE `ComponentType` ( + `ComponentTypeId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `IDL` VARCHAR (256) NOT NULL, + CONSTRAINT `ComponTAltKey` UNIQUE (`IDL`) +) ENGINE=INNODB; +CREATE TABLE `Configuration` ( + `ConfigurationId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ConfigurationName` VARCHAR (128) NOT NULL, + `FullName` VARCHAR (256) NOT NULL, + `Active` BOOLEAN NOT NULL, + `CreationTime` TIMESTAMP NOT NULL, + `Description` MEDIUMTEXT NOT NULL, + CONSTRAINT `ConfigAltKey` UNIQUE (`ConfigurationName`) +) ENGINE=INNODB; +CREATE TABLE `Schemas` ( + `SchemaId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `URN` VARCHAR (512) NOT NULL, + `ConfigurationId` INTEGER NOT NULL, + `Schema` MEDIUMTEXT NULL, + CONSTRAINT `SchemasConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `SchemasAltKey` UNIQUE (`URN`, `ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `NetworkDevice` ( + `NetworkDeviceId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `NetworkName` VARCHAR (256) NOT NULL, + `ConfigurationId` INTEGER NOT NULL, + `PhysicalLocation` VARCHAR (256) NULL, + `Name` VARCHAR (256) NULL, + CONSTRAINT `NetworkDeviceConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `NetworDAltKey` UNIQUE (`NetworkName`, `ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `Computer` ( + `NetworkDeviceId` INTEGER, + `ProcessorType` CHAR (3) NOT NULL, + `RealTime` BOOLEAN NOT NULL, + `Diskless` BOOLEAN NOT NULL, + CONSTRAINT `ChildComputerProcessorType` CHECK (`ProcessorType` IN ('uni', 'smp')), + CONSTRAINT `ComputerKey` PRIMARY KEY (`NetworkDeviceId`), + CONSTRAINT `ComputerNetworDFKey` FOREIGN KEY (`NetworkDeviceId`) REFERENCES `NetworkDevice` (`NetworkDeviceId`) +) ENGINE=INNODB; +CREATE TABLE `LoggingConfig` ( + `LoggingConfigId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `MinLogLevelDefault` TINYINT DEFAULT 2, + `MinLogLevelLocalDefault` TINYINT DEFAULT 2, + `CentralizedLogger` VARCHAR (16) DEFAULT 'Log', + `DispatchPacketSize` TINYINT DEFAULT 10, + `ImmediateDispatchLevel` TINYINT DEFAULT 10, + `FlushPeriodSeconds` TINYINT DEFAULT 10, + `MaxLogQueueSize` INTEGER DEFAULT 1000, + `MaxLogsPerSecond` INTEGER DEFAULT -1 +) ENGINE=INNODB; +CREATE TABLE `NamedLoggerConfig` ( + `NamedLoggerConfigId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `LoggingConfigId` INTEGER NOT NULL, + `Name` VARCHAR (64) NOT NULL, + `MinLogLevel` TINYINT DEFAULT 2, + `MinLogLevelLocal` TINYINT DEFAULT 2, + CONSTRAINT `NamedLoggerConfigLoggingConfig` FOREIGN KEY (`LoggingConfigId`) REFERENCES `LoggingConfig` (`LoggingConfigId`), + CONSTRAINT `NamedLCAltKey` UNIQUE (`LoggingConfigId`, `Name`) +) ENGINE=INNODB; +CREATE TABLE `Manager` ( + `ManagerId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ConfigurationId` INTEGER NOT NULL, + `LoggingConfigId` INTEGER NOT NULL, + `Startup` VARCHAR (256) NULL, + `ServiceComponents` VARCHAR (512) NULL, + `ServiceDaemons` VARCHAR (256) NULL, + `Timeout` INTEGER DEFAULT 50, + `ClientPingInterval` INTEGER DEFAULT 60, + `AdministratorPingInterval` INTEGER DEFAULT 45, + `ContainerPingInterval` INTEGER DEFAULT 30, + `ServerThreads` TINYINT DEFAULT 10, + CONSTRAINT `ManagerLoggingConfig` FOREIGN KEY (`LoggingConfigId`) REFERENCES `LoggingConfig` (`LoggingConfigId`), + CONSTRAINT `ManagerConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `ManagerAltKey` UNIQUE (`ConfigurationId`, `LoggingConfigId`, `Startup`, `ServiceComponents`, `Timeout`, `ClientPingInterval`, `AdministratorPingInterval`, `ContainerPingInterval`, `ServerThreads`) +) ENGINE=INNODB; +CREATE TABLE `Container` ( + `ContainerId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ContainerName` VARCHAR (256) NOT NULL, + `Path` VARCHAR (256) NOT NULL, + `ConfigurationId` INTEGER NOT NULL, + `LoggingConfigId` INTEGER NOT NULL, + `ImplLang` VARCHAR (6) NOT NULL, + `RealTime` BOOLEAN DEFAULT FALSE, + `RealTimeType` VARCHAR (4) DEFAULT 'NONE', + `KernelModuleLocation` MEDIUMTEXT NULL, + `KernelModule` MEDIUMTEXT NULL, + `ComputerId` INTEGER NULL, + `TypeModifiers` VARCHAR (64) NULL, + `StartOnDemand` BOOLEAN DEFAULT FALSE, + `KeepAliveTime` INTEGER DEFAULT -1, + `ServerThreads` INTEGER DEFAULT 5, + `ManagerRetry` INTEGER DEFAULT 10, + `CallTimeout` INTEGER DEFAULT 30, + `PingInterval` INTEGER NULL, + `Recovery` BOOLEAN DEFAULT TRUE, + `AutoloadSharedLibs` VARCHAR (1024) NULL, + CONSTRAINT `ContainerConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `ContainerLoggingConfig` FOREIGN KEY (`LoggingConfigId`) REFERENCES `LoggingConfig` (`LoggingConfigId`), + CONSTRAINT `ContainerComputer` FOREIGN KEY (`ComputerId`) REFERENCES `Computer` (`NetworkDeviceId`), + CONSTRAINT `ContainerRealTimeType` CHECK (`RealTimeType` IN ('NONE', 'ABM', 'CORR')), + CONSTRAINT `ContainerImplLang` CHECK (`ImplLang` IN ('java', 'cpp', 'py')), + CONSTRAINT `ContainerAltKey` UNIQUE (`ContainerName`, `Path`, `ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `ContainerStartupOption` ( + `ContStartOptId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ContainerId` INTEGER NOT NULL, + `OptionType` VARCHAR (16) NOT NULL, + `OptionName` VARCHAR (256) NOT NULL, + `OptionValue` VARCHAR (256) NOT NULL, + CONSTRAINT `ContStartOptContainer` FOREIGN KEY (`ContainerId`) REFERENCES `Container` (`ContainerId`), + CONSTRAINT `ContStartOptType` CHECK (`OptionType` IN ('ENV_VAR', 'EXEC_ARG', 'EXEC_ARG_LANG', 'CONT_ARG')) +) ENGINE=INNODB; +CREATE TABLE `Component` ( + `ComponentId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ComponentTypeId` INTEGER NOT NULL, + `ComponentName` VARCHAR (256) NOT NULL, + `ConfigurationId` INTEGER NOT NULL, + `ContainerId` INTEGER NULL, + `ImplLang` VARCHAR (6) NOT NULL, + `RealTime` BOOLEAN NOT NULL, + `Code` VARCHAR (256) NOT NULL, + `Path` VARCHAR (256) NOT NULL, + `IsAutostart` BOOLEAN NOT NULL, + `IsDefault` BOOLEAN NOT NULL, + `IsStandaloneDefined` BOOLEAN NULL, + `IsControl` BOOLEAN NOT NULL, + `KeepAliveTime` INTEGER NOT NULL, + `MinLogLevel` TINYINT NOT NULL, + `MinLogLevelLocal` TINYINT NOT NULL, + `XMLDoc` MEDIUMTEXT NULL, + `URN` VARCHAR (512) NULL, + `ActionThreadStackSize` INTEGER DEFAULT 1024, + `MonitoringThreadStackSize` INTEGER DEFAULT 2048, + CONSTRAINT `ComponentIDL` FOREIGN KEY (`ComponentTypeId`) REFERENCES `ComponentType` (`ComponentTypeId`), + CONSTRAINT `ComponentContainer` FOREIGN KEY (`ContainerId`) REFERENCES `Container` (`ContainerId`), + CONSTRAINT `ComponentConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `ComponentImplLang` CHECK (`ImplLang` IN ('java', 'cpp', 'py')), + CONSTRAINT `ComponentAltKey` UNIQUE (`Path`, `ComponentName`, `ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `BACIProperty` ( + `BACIPropertyId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ComponentId` INTEGER NOT NULL, + `PropertyName` VARCHAR (128) NOT NULL, + `description` MEDIUMTEXT NOT NULL, + `format` VARCHAR (16) NOT NULL, + `units` VARCHAR (24) NOT NULL, + `resolution` VARCHAR (10) NOT NULL, + `archive_priority` INTEGER NOT NULL, + `archive_min_int` DOUBLE NOT NULL, + `archive_max_int` DOUBLE NOT NULL, + `archive_mechanism` VARCHAR (24) NOT NULL, + `archive_suppress` BOOLEAN NOT NULL, + `default_timer_trig` DOUBLE NOT NULL, + `min_timer_trig` DOUBLE NOT NULL, + `initialize_devio` BOOLEAN NOT NULL, + `min_delta_trig` DOUBLE NULL, + `default_value` MEDIUMTEXT NOT NULL, + `graph_min` DOUBLE NULL, + `graph_max` DOUBLE NULL, + `min_step` DOUBLE NULL, + `archive_delta` DOUBLE NOT NULL, + `archive_delta_percent` DOUBLE NULL, + `alarm_high_on` DOUBLE NULL, + `alarm_low_on` DOUBLE NULL, + `alarm_high_off` DOUBLE NULL, + `alarm_low_off` DOUBLE NULL, + `alarm_timer_trig` DOUBLE NULL, + `min_value` DOUBLE NULL, + `max_value` DOUBLE NULL, + `bitDescription` MEDIUMTEXT NULL, + `whenSet` MEDIUMTEXT NULL, + `whenCleared` MEDIUMTEXT NULL, + `statesDescription` MEDIUMTEXT NULL, + `condition` MEDIUMTEXT NULL, + `alarm_on` MEDIUMTEXT NULL, + `alarm_off` MEDIUMTEXT NULL, + `alarm_fault_family` MEDIUMTEXT NULL, + `alarm_fault_member` MEDIUMTEXT NULL, + `alarm_level` INTEGER NULL, + `Data` MEDIUMTEXT NULL, + CONSTRAINT `BACIPropertyCompId` FOREIGN KEY (`ComponentId`) REFERENCES `Component` (`ComponentId`), + CONSTRAINT `BACIPropArchMech` CHECK (`archive_mechanism` IN ('notification_channel', 'monitor_collector')), + CONSTRAINT `BACIPropertyAltKey` UNIQUE (`PropertyName`, `ComponentId`) +) ENGINE=INNODB; +CREATE TABLE `Location` ( + `LocationId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `Building` VARCHAR (256) NULL, + `Floor` VARCHAR (128) NULL, + `Room` VARCHAR (256) NULL, + `Mnemonic` VARCHAR (256) NULL, + `LocationPosition` VARCHAR (256) NULL, + CONSTRAINT `LocationAltKey` UNIQUE (`Building`, `Floor`, `Room`, `Mnemonic`, `LocationPosition`) +) ENGINE=INNODB; +CREATE TABLE `Contact` ( + `ContactId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ContactName` VARCHAR (256) NOT NULL, + `Email` VARCHAR (256) NULL, + `Gsm` VARCHAR (256) NULL, + CONSTRAINT `ContactAltKey` UNIQUE (`ContactName`) +) ENGINE=INNODB; +CREATE TABLE `AlarmCategory` ( + `AlarmCategoryId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `AlarmCategoryName` VARCHAR (128) NOT NULL, + `Description` MEDIUMTEXT NOT NULL, + `Path` VARCHAR (256) NOT NULL, + `IsDefault` BOOLEAN NOT NULL, + `ConfigurationId` INTEGER NOT NULL, + CONSTRAINT `AlarmCategoryConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `AlarmCAltKey` UNIQUE (`AlarmCategoryName`, `ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `FaultFamily` ( + `FaultFamilyId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `FamilyName` VARCHAR (256) NOT NULL, + `AlarmSource` VARCHAR (256) DEFAULT 'ALARM_SYSTEM_SOURCES', + `HelpURL` VARCHAR (256) NULL, + `ContactId` INTEGER NOT NULL, + `ConfigurationId` INTEGER NOT NULL, + CONSTRAINT `FaultFamilyContact` FOREIGN KEY (`ContactId`) REFERENCES `Contact` (`ContactId`), + CONSTRAINT `FaultFamilyConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `FaultFamilyAltKey` UNIQUE (`FamilyName`, `ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `AlarmCategoryFamily` ( + `AlarmCategoryId` INTEGER NOT NULL, + `FaultFamilyId` INTEGER NOT NULL, + CONSTRAINT `ACFCategoryId` FOREIGN KEY (`AlarmCategoryId`) REFERENCES `AlarmCategory` (`AlarmCategoryId`), + CONSTRAINT `ACFFamilyId` FOREIGN KEY (`FaultFamilyId`) REFERENCES `FaultFamily` (`FaultFamilyId`), + CONSTRAINT `AlarmCFKey` PRIMARY KEY (`AlarmCategoryId`, `FaultFamilyId`) +) ENGINE=INNODB; +CREATE TABLE `FaultMember` ( + `FaultMemberId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `MemberName` VARCHAR (256) NOT NULL, + `FaultFamilyId` INTEGER NOT NULL, + `LocationId` INTEGER NULL, + CONSTRAINT `FaultMemFamilyRef` FOREIGN KEY (`FaultFamilyId`) REFERENCES `FaultFamily` (`FaultFamilyId`), + CONSTRAINT `FaultMemLocationRef` FOREIGN KEY (`LocationId`) REFERENCES `Location` (`LocationId`), + CONSTRAINT `FaultMemberAltKey` UNIQUE (`MemberName`, `FaultFamilyId`) +) ENGINE=INNODB; +CREATE TABLE `DefaultMember` ( + `DefaultMemberId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `FaultFamilyId` INTEGER NOT NULL, + `LocationID` INTEGER NULL, + CONSTRAINT `DefaultMemberFaultFamilyRef` FOREIGN KEY (`FaultFamilyId`) REFERENCES `FaultFamily` (`FaultFamilyId`), + CONSTRAINT `DefaultMemberLocationRef` FOREIGN KEY (`LocationID`) REFERENCES `Location` (`LocationId`), + CONSTRAINT `DefaulMAltKey` UNIQUE (`FaultFamilyId`) +) ENGINE=INNODB; +CREATE TABLE `FaultCode` ( + `FaultCodeId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `FaultFamilyId` INTEGER NOT NULL, + `CodeValue` INTEGER NOT NULL, + `Priority` INTEGER NOT NULL, + `Cause` VARCHAR (256) NULL, + `Action` MEDIUMTEXT NULL, + `Consequence` MEDIUMTEXT NULL, + `ProblemDescription` MEDIUMTEXT NOT NULL, + `IsInstant` BOOLEAN NOT NULL, + CONSTRAINT `CodeFaultFamilyRef` FOREIGN KEY (`FaultFamilyId`) REFERENCES `FaultFamily` (`FaultFamilyId`), + CONSTRAINT `PriorityValue` CHECK (`Priority` IN (0, 1, 2, 3)), + CONSTRAINT `FaultCodeAltKey` UNIQUE (`FaultFamilyId`, `CodeValue`) +) ENGINE=INNODB; +CREATE TABLE `AlarmDefinition` ( + `AlarmDefinitionId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ConfigurationId` INTEGER NOT NULL, + `FaultFamily` VARCHAR (256) NOT NULL, + `FaultMember` VARCHAR (256) NOT NULL, + `FaultCode` VARCHAR (256) NOT NULL, + CONSTRAINT `AlarmDefinitionConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `AlarmDAltKey` UNIQUE (`ConfigurationId`, `FaultFamily`, `FaultMember`, `FaultCode`) +) ENGINE=INNODB; +CREATE TABLE `ReductionLink` ( + `ReductionLinkId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ParentAlarmDefId` INTEGER NOT NULL, + `ChildAlarmDefId` INTEGER NOT NULL, + `Type` VARCHAR (12) NOT NULL, + `Action` VARCHAR (6) NOT NULL, + `ConfigurationId` INTEGER NOT NULL, + CONSTRAINT `RLParentRef` FOREIGN KEY (`ParentAlarmDefId`) REFERENCES `AlarmDefinition` (`AlarmDefinitionId`), + CONSTRAINT `RLChildRef` FOREIGN KEY (`ChildAlarmDefId`) REFERENCES `AlarmDefinition` (`AlarmDefinitionId`), + CONSTRAINT `ReductionLinkConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `ReductionLinkType` CHECK (`Type` IN ('MULTIPLICITY', 'NODE')), + CONSTRAINT `ReductionLinkAction` CHECK (`Action` IN ('CREATE', 'REMOVE')), + CONSTRAINT `ReductLAltKey` UNIQUE (`ParentAlarmDefId`, `ChildAlarmDefId`) +) ENGINE=INNODB; +CREATE TABLE `ReductionThreshold` ( + `AlarmDefinitionId` INTEGER NOT NULL, + `Value` INTEGER NOT NULL, + `ConfigurationId` INTEGER NOT NULL, + CONSTRAINT `RTAlarmRef` FOREIGN KEY (`AlarmDefinitionId`) REFERENCES `AlarmDefinition` (`AlarmDefinitionId`), + CONSTRAINT `RTConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `ReductTKey` PRIMARY KEY (`AlarmDefinitionId`) +) ENGINE=INNODB; +CREATE TABLE `EventChannel` ( + `EventChannelId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ConfigurationId` INTEGER NOT NULL, + `Name` VARCHAR (256) NOT NULL, + `Path` VARCHAR (256) NOT NULL, + `IntegrationLogs` BOOLEAN DEFAULT FALSE, + `MaxQueueLength` INTEGER DEFAULT 0, + `MaxConsumers` INTEGER DEFAULT 0, + `MaxSuppliers` INTEGER DEFAULT 0, + `RejectNewEvents` BOOLEAN DEFAULT TRUE, + `DiscardPolicy` VARCHAR (20) DEFAULT 'AnyOrder', + `EventReliability` VARCHAR (20) DEFAULT 'BestEffort', + `ConnectionReliability` VARCHAR (20) DEFAULT 'BestEffort', + `Priority` SMALLINT DEFAULT 0, + `Timeout` INTEGER DEFAULT 0, + `OrderPolicy` VARCHAR (20) DEFAULT 'AnyOrder', + `StartTimeSupported` BOOLEAN DEFAULT FALSE, + `StopTimeSupported` BOOLEAN DEFAULT FALSE, + `MaxEventsPerConsumer` INTEGER DEFAULT 0, + CONSTRAINT `EventChannelConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `EventChannelDiscardPolicy` CHECK (`DiscardPolicy` IN ('AnyOrder', 'FifoOrder', 'LifoOrder', 'PriorityOrder', 'DeadlineOrder')), + CONSTRAINT `EventChannelOrderPolicy` CHECK (`OrderPolicy` IN ('AnyOrder', 'FifoOrder', 'LifoOrder', 'PriorityOrder', 'DeadlineOrder')), + CONSTRAINT `EventChannelEventReliability` CHECK (`EventReliability` IN ('BestEffort', 'Persistent')), + CONSTRAINT `EventChannelConReliability` CHECK (`ConnectionReliability` IN ('BestEffort', 'Persistent')), + CONSTRAINT `EventChannelAltKey` UNIQUE (`Name`, `Path`, `ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `Event` ( + `EventId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `EventChannelId` INTEGER NOT NULL, + `Name` VARCHAR (256) NOT NULL, + `MaxProcessTime` DOUBLE DEFAULT '2.0', + CONSTRAINT `EventEventChannelRef` FOREIGN KEY (`EventChannelId`) REFERENCES `EventChannel` (`EventChannelId`), + CONSTRAINT `EventAltKey` UNIQUE (`EventChannelId`, `Name`) +) ENGINE=INNODB; +CREATE TABLE `NotificationServiceMapping` ( + `NotificationServiceMappingId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ConfigurationId` INTEGER NOT NULL, + `DefaultNotificationService` VARCHAR (256) NOT NULL, + CONSTRAINT `NotServMapConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `NotifiSMAltKey` UNIQUE (`ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `DomainsMapping` ( + `DomainsMappingId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `Name` VARCHAR (256) NOT NULL, + `NotificationService` VARCHAR (256) NOT NULL, + `NotificationServiceMappingId` INTEGER NOT NULL, + CONSTRAINT `DomainsNotServMapRef` FOREIGN KEY (`NotificationServiceMappingId`) REFERENCES `NotificationServiceMapping` (`NotificationServiceMappingId`), + CONSTRAINT `DomainMAltKey` UNIQUE (`NotificationServiceMappingId`, `Name`) +) ENGINE=INNODB; +CREATE TABLE `ChannelMapping` ( + `ChannelMappingId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `Name` VARCHAR (256) NOT NULL, + `NotificationService` VARCHAR (256) NOT NULL, + `NotificationServiceMappingId` INTEGER NOT NULL, + CONSTRAINT `ChannelNotServMapRef` FOREIGN KEY (`NotificationServiceMappingId`) REFERENCES `NotificationServiceMapping` (`NotificationServiceMappingId`), + CONSTRAINT `ChanneMAltKey` UNIQUE (`NotificationServiceMappingId`, `Name`) +) ENGINE=INNODB; + + + diff --git a/ARCHIVE/CreateMysqlTables_2.sql b/ARCHIVE/CreateMysqlTables_2.sql new file mode 100644 index 0000000000000000000000000000000000000000..e9849121d566540854d09f75e525529d4fd28fe8 --- /dev/null +++ b/ARCHIVE/CreateMysqlTables_2.sql @@ -0,0 +1,66 @@ +CREATE TABLE `TMCDBVersion` ( + `DBName` VARCHAR (32) NOT NULL, + `DBVersion` VARCHAR (32) NOT NULL, + `DBDate` VARCHAR (32) NOT NULL, + CONSTRAINT `TMCDBVersionKey` PRIMARY KEY (`DBName`) +) ENGINE=INNODB; +CREATE TABLE `AcsService` ( + `AcsServiceId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ConfigurationId` INTEGER NOT NULL, + `ServiceType` VARCHAR (12) NOT NULL, + `ServiceInstanceName` VARCHAR (256) NULL, + `ComputerId` INTEGER NOT NULL, + CONSTRAINT `AcsServiceConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `AcsServiceComputer` FOREIGN KEY (`ComputerId`) REFERENCES `Computer` (`NetworkDeviceId`), + CONSTRAINT `AcsServiceServiceType` CHECK (`ServiceType` IN ('NAMING', 'IFR', 'CDB', 'NOTIFICATION', 'LOGGING', 'MANAGER', 'ALARM', 'LOGPROXY')) +) ENGINE=INNODB; +CREATE TABLE `MasterComponent` ( + `MasterComponentId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `ComponentId` INTEGER NOT NULL, + `SubsystemName` VARCHAR (256) NOT NULL, + CONSTRAINT `MComponentId` FOREIGN KEY (`ComponentId`) REFERENCES `Component` (`ComponentId`), + CONSTRAINT `MasterCAltKey` UNIQUE (`ComponentId`) +) ENGINE=INNODB; +CREATE TABLE `NetworkDeviceSnmpConfig` ( + `NetworkDeviceId` INTEGER NOT NULL, + `SnmpXmlClob` MEDIUMTEXT NOT NULL, + `PropagateNA` BOOLEAN DEFAULT FALSE, + `AcsAlarm` VARCHAR (16) DEFAULT 'NEVER', + `SnmpCommunity` VARCHAR (256) NULL, + `Netgroup` VARCHAR (256) NULL, + CONSTRAINT `NetDevSnmpConfigNetDev` FOREIGN KEY (`NetworkDeviceId`) REFERENCES `NetworkDevice` (`NetworkDeviceId`), + CONSTRAINT `NetDevSnmpConfigAcsAlarm` CHECK (`AcsAlarm` IN ('NEVER', 'ALWAYS', 'ALLOWSUPPRESSION')), + CONSTRAINT `NetworDSCKey` PRIMARY KEY (`NetworkDeviceId`) +) ENGINE=INNODB; +CREATE TABLE `SnmpTrapSink` ( + `ConfigurationId` INTEGER NOT NULL, + `TrapSinkComputerId` INTEGER NOT NULL, + `TrapPort` INTEGER NOT NULL, + `TrapSourcesNetworkMask` VARCHAR (256) NOT NULL, + `SnmpTrapCommunity` VARCHAR (256) NULL, + CONSTRAINT `SnmpTrapSinkConfig` FOREIGN KEY (`ConfigurationId`) REFERENCES `Configuration` (`ConfigurationId`), + CONSTRAINT `SnmpTrapSinkComputer` FOREIGN KEY (`TrapSinkComputerId`) REFERENCES `Computer` (`NetworkDeviceId`), + CONSTRAINT `SnmpTrapSinkKey` PRIMARY KEY (`ConfigurationId`) +) ENGINE=INNODB; +CREATE TABLE `NetworkPowerstrip` ( + `NetworkDeviceId` INTEGER, + CONSTRAINT `NetworPKey` PRIMARY KEY (`NetworkDeviceId`), + CONSTRAINT `NetworPNetworDFKey` FOREIGN KEY (`NetworkDeviceId`) REFERENCES `NetworkDevice` (`NetworkDeviceId`) +) ENGINE=INNODB; +CREATE TABLE `PowerstripSocket` ( + `PowerstripSocketId` INTEGER PRIMARY KEY AUTO_INCREMENT, + `NetworkPowerstripId` INTEGER NOT NULL, + `SocketNumber` INTEGER NOT NULL, + `PoweredNetworkDeviceId` INTEGER NULL, + `SocketName` VARCHAR (256) NULL, + CONSTRAINT `PwrstripSockNetPowerstrip` FOREIGN KEY (`NetworkPowerstripId`) REFERENCES `NetworkPowerstrip` (`NetworkDeviceId`), + CONSTRAINT `PwrstripSockNetDevice` FOREIGN KEY (`PoweredNetworkDeviceId`) REFERENCES `NetworkDevice` (`NetworkDeviceId`), + CONSTRAINT `PowersSAltKey` UNIQUE (`NetworkPowerstripId`, `SocketNumber`) +) ENGINE=INNODB; + + + + +INSERT INTO TMCDBVersion VALUES ( 'TMCDB', '2.2.1', '2010-08-22T0000:00:00.0' ); + +COMMIT; diff --git a/ARCHIVE/Database/.classpath b/ARCHIVE/Database/.classpath new file mode 100755 index 0000000000000000000000000000000000000000..6c6adfc32528e64555dcb5b09b8d5ca133f4a952 --- /dev/null +++ b/ARCHIVE/Database/.classpath @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/Database/.project b/ARCHIVE/Database/.project new file mode 100755 index 0000000000000000000000000000000000000000..3eddd96994151940d72fb1949c020dd112d383de --- /dev/null +++ b/ARCHIVE/Database/.project @@ -0,0 +1,17 @@ + + + Archive_Database_Utils + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/ARCHIVE/Database/config/archiveConfig.properties.AOS b/ARCHIVE/Database/config/archiveConfig.properties.AOS new file mode 100755 index 0000000000000000000000000000000000000000..c9877f440fa4c754d4bea6bfd7622c52b2601285 --- /dev/null +++ b/ARCHIVE/Database/config/archiveConfig.properties.AOS @@ -0,0 +1,93 @@ +############## +# general section +archive.db.mode=operational +archive.db.tnsFileDirectory=${ACS.data}/config +archive.oracle.user=alma +archive.oracle.passwd=alma$dba +archive.db.connection=jdbc:oracle:thin:@ALMAHA + + +################## +# XMLstore section +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +archive.xmldb.name=db +archive.xmldb.cache=100 + + +############################################## +# TMCDB section +# maybe later... archive.tmcdb.connection=ALMA +#archive.tmcdb.connection=jdbc:oracle:thin:@//oramon.aiv.alma.cl:1521/ALMA.OSF.CL +#archive.tmcdb.connection=jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = oracl3-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl4-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl2-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (FAILOVER = on)) (CONNECT_DATA = (SERVICE_NAME = ALMALOGHA.OSF.CL) (failover_mode=(type=select)(method=basic)))) +# Optimized parameters for large network transfers +archive.tmcdb.connection=jdbc:oracle:thin:@(DESCRIPTION = (SDU=32767)(SEND_BUF_SIZE=500000)(RECV_BUF_SIZE=500000) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = oracl3-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl4-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl2-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (FAILOVER = on)) (CONNECT_DATA = (SERVICE_NAME = ALMALOGHA.OSF.CL) (failover_mode=(type=select)(method=basic)))) +#archive.tmcdb.user=tmc3 +archive.tmcdb.user=tmc +archive.tmcdb.passwd=tmc$dba +#archive.tmcdb.configuration=old +#archive.tmcdb.monitoring.only=False +archive.tmcdb.monitoring.enabled=False +archive.tmcdb.monitoring.broker_enable=True +#archive.tmcdb.monitoring.broker_url=failover://(tcp://broker1.osf.alma.cl:61616,tcp://offlinetools.osf.alma.cl:61616)?randomize=false +archive.tmcdb.monitoring.broker_url=failover://(tcp://activemq1.osf.alma.cl:61616,tcp://activemq2.osf.alma.cl:61616)?randomize=false +archive.tmcdb.monitoring.profiling=False +archive.tmcdb.monitoring.interval=20 + + +######################################### +# log section (not used in the test case) +archive.log.user=alma +archive.log.passwd=alma$dba +archive.log.connection=jdbc:oracle:thin:@ALMAXMLLOG +archive.log.dir=/mnt/gas02/data1/AcsLogs-8.1 +archive.log.ngasDir=/mnt/gas02/data1/NGASProxy +archive.log.level=4 +archive.log.maxNumberFiles=250 +archive.log.maxFileSize=134217728 +archive.log.ngasCommand=ngamsArchiveClient -servers ngasfe01:7777,ngasfe02:7777,ngasfe03:7777,ngasfe04:7777,ngasfe05:7777,ngasfe06:7777,ngasfe01:7778,ngasfe02:7778,ngasfe03:7778,ngasfe04:7778,ngasfe05:7778,ngasfe06:7778 -mimeType application/octet-stream -pollTime 0 -cleanUpTimeOut 0 -streams 12 -v 1 +archive.log.logsPerInterval=250 +archive.log.intervalSize=1000 +archive.log.peakToleranceInterval=2000 + + + + +################################################################## +# relational section, ie. the rest of subsystems accessing the DB +# directly, but not monitor, log or statearchive data. This is +# currently used only by the Shiftlog +archive.relational.connection=jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = oracl1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl2-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl3-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl4-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (FAILOVER = on)) (CONNECT_DATA = (SERVICE_NAME = ALMAHA.OSF.CL) (failover_mode=(type=select)(method=basic)))) +archive.relational.user=operlog +archive.relational.passwd=alma$dba + + +######### +# schemas +archive.bulkstore.schema=ASDMBinaryTable +archive.bulkreceiver.schema=sdmDataHeader + + +####### +# NGAS +archive.ngast.servers=ngasfe01:7777,ngasfe02:7777,ngasfe03:7777,ngasfe04:7777,ngasfe05:7777,ngasfe06:7777,ngasfe01:7778,ngasfe02:7778,ngasfe03:7778,ngasfe04:7778,ngasfe05:7778,ngasfe06:7778 +#archive.ngast.bufferDir=/archiverd +archive.ngast.bufferDir=/mnt/gas03/data2/archiverd +archive.ngast.interface=ngamsArchiveClient -mimeType "multialma/related" -pollTime 0 -cleanUpTimeOut 0 -streams 12 -v 1 + + +############## +# bulkreceiver +archive.bulkreceiver.debug=False +archive.bulkreceiver.DataBufferRetry=30 +archive.bulkreceiver.DataBufferMax=10485760 +archive.bulkreceiver.BufferThreadNumber=8 +archive.bulkreceiver.BufferThreadWaitSleep=2000 +archive.bulkreceiver.FetchThreadRetry=100 +archive.bulkreceiver.FetchThreadRetrySleep=400000 +archive.bulkreceiver.maxThroughput=0.0 +archive.bulkreceiver.BufferThreadTimeOut=1200000 + +############## +# LDAP +archive.userrepository.provider.url=ldap://ldapste01.osf.alma.cl:389/ + diff --git a/ARCHIVE/Database/config/archiveConfig.properties.OSF b/ARCHIVE/Database/config/archiveConfig.properties.OSF new file mode 100755 index 0000000000000000000000000000000000000000..a39f4cbe667a277e56c3c5fdc606ac24e519b19e --- /dev/null +++ b/ARCHIVE/Database/config/archiveConfig.properties.OSF @@ -0,0 +1,85 @@ + + +############## +# general section +archive.db.tnsFileDirectory=${ACS.data}/config +archive.db.mode=operational +archive.db.connection=jdbc:oracle:thin:@ALMA + +# XMLstore section +archive.oracle.user=alma +archive.oracle.passwd=alma$dba + + +############## +# TMCDB section + +# Service alias used by TMCDB, might be different from the one used by rest of Archive +archive.tmcdb.connection=jdbc:oracle:thin:@ALMA +archive.tmcdb.user=tmc +archive.tmcdb.passwd=tmc$dba +archive.tmcdb.configuration=something +archive.tmcdb.monitoring.only=False +archive.tmcdb.monitoring.enable=True + + +############## +# statearchive section +# in operational environment, this must not appear at all (Exception thrown). In test, they are allowed. +# I will now implement an addition, that will - in operational mode - expose the following properties, whose values will be derived from corresponding general database/XMLstore connection properties +#archive.statearchive.user --> archive.oracle.user +#archive.statearchive.passwd --> archive.oracle.passwd +#archive.statearchive.connection --> archive.db.connection + + +############### +# relational section, ie. the rest of subsystems accessing the DB +# directly, but not monitor, log or statearchive data. In the moment, this would be shiftlog. +# the user has probably be changed to the one shiftlog is using. +archive.relational.user=alma +archive.relational.passwd=alma$dba +archive.relational.connection=jdbc:oracle:thin:@ALMA + +############### +#schemas +archive.bulkstore.schema=ASDMBinaryTable +archive.bulkreceiver.schema=sdmDataHeader + +############### +#NGAS +archive.ngast.servers=arch01:7777 +archive.ngast.bufferDir=/archiverd +archive.ngast.interface=ngamsArchiveClient -mimeType "multialma/related" -pollTime 0 -cleanUpTimeOut 0 -streams 16 -v 1 + +############### +#bulkreceiver +archive.bulkreceiver.debug=False +archive.bulkreceiver.DataBufferRetry=30 +archive.bulkreceiver.DataBufferMax=10240000 +archive.bulkreceiver.BufferThreadNumber=8 +archive.bulkreceiver.BufferThreadWaitSleep=2000 +archive.bulkreceiver.FetchThreadRetry=100 +archive.bulkreceiver.FetchThreadRetrySleep=400000 +archive.bulkreceiver.BufferThreadTimeOut=1200000 + +# source catalogue +archive.sourcecat.db.user=sourcecatalogue +archive.sourcecat.db.passwd=srccat$dba + +######################################### +# log section (not used in the test case) +archive.log.user=alma +archive.log.passwd=alma$dba +archive.log.connection=jdbc:oracle:thin:@ALMA + +archive.log.dir=/mnt/gas01/data1/AcsLogs +archive.log.ngasDir=/mnt/gas01/data1/NGASProxy/NGAMS_ARCHIVE_CLIENT/queue +archive.log.level=4 +archive.log.maxNumberFiles=250 +archive.log.maxFileSize=134217728 +archive.log.ngasCommand=ngamsArchiveClient -host arch01 -port 7777 -mimeType application/octet-stream -pollTime 0 -cleanUpTimeOut 0 -streams 1 -v 1 +archive.log.logsPerInterval=250 +archive.log.intervalSize=1000 +archive.log.peakToleranceInterval=2000 + + diff --git a/ARCHIVE/Database/config/archiveConfig.properties.STE b/ARCHIVE/Database/config/archiveConfig.properties.STE new file mode 100755 index 0000000000000000000000000000000000000000..df299e6ec95695bba8ab83dada2ecb9482c7815a --- /dev/null +++ b/ARCHIVE/Database/config/archiveConfig.properties.STE @@ -0,0 +1,82 @@ +############## +# general section +archive.db.mode=operational +archive.db.tnsFileDirectory=${ACS.data}/config +archive.oracle.user=alma +archive.oracle.passwd=alma$dba +archive.db.connection=jdbc:oracle:thin:@ALMA + +################## +# XMLstore section +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +archive.xmldb.name=db +archive.xmldb.cache=100 + +############################################## +# TMCDB section +# maybe later... archive.tmcdb.connection=ALMA +archive.tmcdb.connection=jdbc:oracle:thin:@//arch01:1521/ALMA.ESO.ORG +archive.tmcdb.user=tmc +archive.tmcdb.passwd=tmc$dba +archive.tmcdb.configuration=something +archive.tmcdb.monitoring.only=False +archive.tmcdb.monitoring.enable=True + + + +################################################################## +# relational section, ie. the rest of subsystems accessing the DB +# directly, but not monitor, log or statearchive data. This is +# currently used only by the Shiftlog +archive.relational.connection=jdbc:oracle:thin:@//arch01:1521/ALMA.ESO.ORG +archive.relational.user=operlogtest +archive.relational.passwd=alma$dba + + +######### +# schemas +archive.bulkstore.schema=ASDMBinaryTable +archive.bulkreceiver.schema=sdmDataHeader + +####### +# NGAS +archive.ngast.servers=arch01:7777 +archive.ngast.bufferDir=/archiverd +archive.ngast.interface=ngamsArchiveClient -mimeType "multialma/related" -pollTime 0 -cleanUpTimeOut 0 -streams 16 -v 1 + + +############## +# bulkreceiver +archive.bulkreceiver.debug=False +archive.bulkreceiver.DataBufferRetry=30 +archive.bulkreceiver.BufferThreadNumber=8 +archive.bulkreceiver.BufferThreadWaitSleep=2000 +archive.bulkreceiver.FetchThreadRetry=100 +archive.bulkreceiver.FetchThreadRetrySleep=400000 +archive.bulkreceiver.DataBufferMax=1048576 +archive.bulkreceiver.maxThroughput=30 + + +# LDAP +archive.userrepository.provider.url=ldap://support:389/ + +# source catalogue +archive.sourcecat.db.user=sourcecatalogue +archive.sourcecat.db.passwd=srccat$dba + +######################################### +# log section (not used in the test case) +archive.log.user=alma +archive.log.passwd=alma$dba +archive.log.connection=jdbc:oracle:thin:@ALMA + +archive.log.ngasDir=/mnt/gas01/data1/NGASProxy/NGAMS_ARCHIVE_CLIENT/queue +archive.log.level=4 +archive.log.dir=/mnt/gas01/data1/AcsLogs +archive.log.maxNumberFiles=250 +archive.log.maxFileSize=134217728 +archive.log.ngasCommand=ngamsArchiveClient -host arch01 -port 7777 -mimeType application/octet-stream -pollTime 0 -cleanUpTimeOut 0 -streams 1 -v 1 +archive.log.logsPerInterval=250 +archive.log.intervalSize=1000 +archive.log.peakToleranceInterval=2000 + diff --git a/ARCHIVE/Database/config/archiveConfig.properties.TEST b/ARCHIVE/Database/config/archiveConfig.properties.TEST new file mode 100755 index 0000000000000000000000000000000000000000..30e6749e0d4042f8d56d188566f9ea2375c74e17 --- /dev/null +++ b/ARCHIVE/Database/config/archiveConfig.properties.TEST @@ -0,0 +1,76 @@ + + +############## +# general section +archive.db.mode=test +archive.db.connection=xmldb:exist://localhost:8180/exist/xmlrpc + + + +############## +# TMCDB section + +# Service alias used by TMCDB, might be different from the one used by rest of Archive +# connection: to be adapted +archive.tmcdb.connection=jdbc:mysql://localhost/testTMCDB +archive.tmcdb.user=astrisw +archive.tmcdb.passwd=Astrima13& +#archive.tmcdb.user=tmc +#archive.tmcdb.passwd=tmc$dba +#archive.tmcdb.configuration=BlobberTest +#archive.tmcdb.monitoring.only=True +#archive.tmcdb.monitoring.enable=False + +############## +# log section (not used in the test case) + + +############## +# statearchive section +# in operational environment, this must not appear at all (Exception thrown). In test, they are allowed. +archive.statearchive.user=almatest +archive.statearchive.passwd=somePassword +# connection: to be adapted +archive.statearchive.connection=jdbc:hsqldb:file:/opt/db/testdb;shutdown=true + + + +############### +# relational section, ie. the rest of subsystems accessing the DB +# directly, but not monitor, log or statearchive data. In the moment, this would be shiftlog.archive.relational.user=almatest +archive.relational.passwd=somePassword +# connection: to be adapted +archive.relational.connection=jdbc:hsqldb:hsql://localhost:8090 + + +############### +#schemas +archive.bulkstore.schema=ASDMBinaryTable +archive.bulkreceiver.schema=sdmDataHeader + +############### +#NGAS +archive.ngast.servers=arch01:7777 +archive.ngast.bufferDir=/archiverd +archive.ngast.interface=test:${ACS.data}/tmp + +############### +#bulkreceiver +archive.bulkreceiver.debug=True +archive.bulkreceiver.DataBufferRetry=30 +archive.bulkreceiver.DataBufferMax=10240000 +archive.bulkreceiver.BufferThreadNumber=8 +archive.bulkreceiver.BufferThreadWaitSleep=2000 +archive.bulkreceiver.FetchThreadRetry=100 +archive.bulkreceiver.FetchThreadRetrySleep=400000 + +# source catalogue +archive.sourcecat.db.user=sourcecatalogue +archive.sourcecat.db.passwd=srccat$dba + +archive.log.dir=${ACS.data}/xmllogs +archive.log.level=5 +#archive.log.ngasDir=/tmp +archive.log.maxNumberFiles=13 +archive.log.maxFileSize=500000 + diff --git a/ARCHIVE/Database/config/archiveConfig.properties.TFENG b/ARCHIVE/Database/config/archiveConfig.properties.TFENG new file mode 100755 index 0000000000000000000000000000000000000000..363ef35592289522d89307a7118f6a80486cd08e --- /dev/null +++ b/ARCHIVE/Database/config/archiveConfig.properties.TFENG @@ -0,0 +1,95 @@ +############## +# general section +archive.db.mode=operational +archive.db.tnsFileDirectory=${ACS.data}/config +archive.oracle.user=alma905 +archive.oracle.passwd=alma$dba +archive.db.connection=jdbc:oracle:thin:@//tb-s1-oracle1.osf.alma.cl:1521/ALMA.OSF.CL + +################## +# XMLstore section +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +archive.xmldb.name=db +archive.xmldb.cache=100 + +############################################## +# TMCDB section +# maybe later... archive.tmcdb.connection=ALMA +archive.tmcdb.connection=jdbc:oracle:thin:@//tb-s1-oracle1.osf.alma.cl:1521/ALMA.OSF.CL +archive.tmcdb.user=tmc81t +archive.tmcdb.passwd=tmc$dba +#archive.tmcdb.configuration=old +#archive.tmcdb.monitoring.only=False +archive.tmcdb.monitoring.enabled=False +archive.tmcdb.monitoring.broker_enable=True +#archive.tmcdb.monitoring.broker_url=failover://(tcp://broker1.osf.alma.cl:61616,tcp://offlinetools.osf.alma.cl:61616)?randomize=false +archive.tmcdb.monitoring.broker_url=failover://(tcp://activemq1.osf.alma.cl:61616,tcp://activemq2.osf.alma.cl:61616)?randomize=false +archive.tmcdb.monitoring.profiling=True +archive.tmcdb.monitoring.interval=20 + + + +######################################### +# log section (not used in the test case) +archive.log.user=alma904 +archive.log.passwd=alma$dba +archive.log.connection=jdbc:oracle:thin:@//tb-s1-oracle1.osf.alma.cl:1521/ALMA.OSF.CL + +archive.log.dir=/mnt/gas01/data1/AcsLogs-8.1 +archive.log.ngasDir=/mnt/gas01/data1/NGASProxy +archive.log.level=4 +archive.log.maxNumberFiles=250 +archive.log.maxFileSize=134217728 +archive.log.ngasCommand=ngamsArchiveClient -host tb-s1-ngasfe01 -port 7777 -mimeType application/octet-stream -pollTime 0 -cleanUpTimeOut 0 -streams 1 -v 1 +archive.log.logsPerInterval=250 +archive.log.intervalSize=1000 +archive.log.peakToleranceInterval=2000 + + + +################################################################## +# relational section, ie. the rest of subsystems accessing the DB +# directly, but not monitor, log or statearchive data. This is +# currently used only by the Shiftlog +archive.relational.connection=jdbc:oracle:thin:@//tb-s1-oracle1.osf.alma.cl:1521/ALMA.OSF.CL +archive.relational.user=alma905 +archive.relational.passwd=alma$dba + + +######### +# schemas +archive.bulkstore.schema=ASDMBinaryTable +archive.bulkreceiver.schema=sdmDataHeader + +####### +# NGAS +archive.ngast.servers=tb-s1-ngasfe01:7777 +archive.ngast.bufferDir=/mnt/gas01/data1/archiverd +archive.ngast.interface=ngamsArchiveClient -mimeType "multialma/related" -pollTime 0 -cleanUpTimeOut 0 -streams 12 -v 1 + + +############## +# bulkreceiver +archive.bulkreceiver.debug=False +archive.bulkreceiver.DataBufferRetry=30 +archive.bulkreceiver.DataBufferMax=1048576 +archive.bulkreceiver.BufferThreadNumber=8 +archive.bulkreceiver.BufferThreadWaitSleep=2000 +archive.bulkreceiver.FetchThreadRetry=100 +archive.bulkreceiver.FetchThreadRetrySleep=400000 +archive.bulkreceiver.BufferThreadTimeOut=1200000 + +# LDAP +archive.userrepository.provider.url=ldap://support:389/ + + +# SourceCatalog +cas.url=https://asa.alma.cl/cas +cas.nonSSl-url=https://asa.alma.cl/cas +sourcecat.url=http://sourcecat.osf.alma.cl:8080/sourcecatweb/ + +sourcecat.jdbc.driverClassName=oracle.jdbc.driver.OracleDriver +sourcecat.jdbc.url=jdbc:oracle:thin:@//tb-s1-oracle1.osf.alma.cl:1521/ALMA.OSF.CL +sourcecat.jdbc.username=sourcecat904 +sourcecat.jdbc.password=source$dba + diff --git a/ARCHIVE/Database/config/archiveConfig.properties.TFINT b/ARCHIVE/Database/config/archiveConfig.properties.TFINT new file mode 100755 index 0000000000000000000000000000000000000000..d73c83041559209a807eade00595e3dafc222fb4 --- /dev/null +++ b/ARCHIVE/Database/config/archiveConfig.properties.TFINT @@ -0,0 +1,93 @@ +############## +# general section +archive.db.mode=operational +archive.db.tnsFileDirectory=${ACS.data}/config +archive.oracle.user=alma +archive.oracle.passwd=alma$dba +archive.db.connection=jdbc:oracle:thin:@ALMAHA + + +################## +# XMLstore section +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +archive.xmldb.name=db +archive.xmldb.cache=100 + + +############################################## +# TMCDB section +# maybe later... archive.tmcdb.connection=ALMA +#archive.tmcdb.connection=jdbc:oracle:thin:@//oramon.aiv.alma.cl:1521/ALMA.OSF.CL +#archive.tmcdb.connection=jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = oracl3-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl4-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl2-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (FAILOVER = on)) (CONNECT_DATA = (SERVICE_NAME = ALMALOGHA.OSF.CL) (failover_mode=(type=select)(method=basic)))) +# Optimized parameters for large network transfers +archive.tmcdb.connection=jdbc:oracle:thin:@(DESCRIPTION = (SDU=32767)(SEND_BUF_SIZE=500000)(RECV_BUF_SIZE=500000) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = oracl3-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl4-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl2-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (FAILOVER = on)) (CONNECT_DATA = (SERVICE_NAME = ALMALOGHA.OSF.CL) (failover_mode=(type=select)(method=basic)))) +#archive.tmcdb.user=tmc3 +archive.tmcdb.user=tmc +archive.tmcdb.passwd=tmc$dba +archive.tmcdb.configuration=CURRENT.TFINT +#archive.tmcdb.configuration=old +#archive.tmcdb.monitoring.only=False +archive.tmcdb.monitoring.enabled=False +archive.tmcdb.monitoring.broker_enable=True +#archive.tmcdb.monitoring.broker_url=failover://(tcp://broker1.osf.alma.cl:61616,tcp://offlinetools.osf.alma.cl:61616)?randomize=false +archive.tmcdb.monitoring.broker_url=failover://(tcp://activemq1.osf.alma.cl:61616,tcp://activemq2.osf.alma.cl:61616)?randomize=false +archive.tmcdb.monitoring.profiling=False +archive.tmcdb.monitoring.interval=20 + + +######################################### +# log section (not used in the test case) +archive.log.user=alma +archive.log.passwd=alma$dba +archive.log.connection=jdbc:oracle:thin:@ALMAXMLLOG +archive.log.dir=/mnt/gas01/data1/AcsLogs-8.1 +archive.log.ngasDir=/mnt/gas01/data1/NGASProxy +archive.log.level=4 +archive.log.maxNumberFiles=250 +archive.log.maxFileSize=134217728 +archive.log.ngasCommand=ngamsArchiveClient -servers ngasfe01:7777,ngasfe02:7777,ngasfe03:7777,ngasfe04:7777,ngasfe05:7777,ngasfe06:7777,ngasfe01:7778,ngasfe02:7778,ngasfe03:7778,ngasfe04:7778,ngasfe05:7778,ngasfe06:7778 -mimeType application/octet-stream -pollTime 0 -cleanUpTimeOut 0 -streams 12 -v 1 +archive.log.logsPerInterval=250 +archive.log.intervalSize=1000 +archive.log.peakToleranceInterval=2000 + + + + +################################################################## +# relational section, ie. the rest of subsystems accessing the DB +# directly, but not monitor, log or statearchive data. This is +# currently used only by the Shiftlog +archive.relational.connection=jdbc:oracle:thin:@(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = oracl1-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl2-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl3-vip)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = oracl4-vip)(PORT = 1521)) (LOAD_BALANCE = yes) (FAILOVER = on)) (CONNECT_DATA = (SERVICE_NAME = ALMAHA.OSF.CL) (failover_mode=(type=select)(method=basic)))) +archive.relational.user=operlog +archive.relational.passwd=alma$dba + + +######### +# schemas +archive.bulkstore.schema=ASDMBinaryTable +archive.bulkreceiver.schema=sdmDataHeader + + +####### +# NGAS +archive.ngast.servers=ngasfe01:7777,ngasfe02:7777,ngasfe03:7777,ngasfe04:7777,ngasfe05:7777,ngasfe06:7777,ngasfe01:7778,ngasfe02:7778,ngasfe03:7778,ngasfe04:7778,ngasfe05:7778,ngasfe06:7778 +#archive.ngast.bufferDir=/archiverd +archive.ngast.bufferDir=/mnt/gas01/data1/archiverd +archive.ngast.interface=ngamsArchiveClient -mimeType "multialma/related" -pollTime 0 -cleanUpTimeOut 0 -streams 12 -v 1 + + +############## +# bulkreceiver +archive.bulkreceiver.debug=False +archive.bulkreceiver.DataBufferRetry=30 +archive.bulkreceiver.DataBufferMax=1048576 +archive.bulkreceiver.BufferThreadNumber=8 +archive.bulkreceiver.BufferThreadWaitSleep=2000 +archive.bulkreceiver.FetchThreadRetry=100 +archive.bulkreceiver.FetchThreadRetrySleep=400000 +archive.bulkreceiver.maxThroughput=70.0 +archive.bulkreceiver.BufferThreadTimeOut=1200000 + +############## +# LDAP +archive.userrepository.provider.url=ldap://ldapste01.osf.alma.cl:389/ diff --git a/ARCHIVE/Database/config/conf.xml b/ARCHIVE/Database/config/conf.xml new file mode 100755 index 0000000000000000000000000000000000000000..882c2f10d9cec491568c224bb7e8b4dee5c0b6f8 --- /dev/null +++ b/ARCHIVE/Database/config/conf.xml @@ -0,0 +1,159 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/Database/config/dbConfig.properties b/ARCHIVE/Database/config/dbConfig.properties new file mode 100755 index 0000000000000000000000000000000000000000..e65317860eb9e1256cc16f959120aa7fa7015452 --- /dev/null +++ b/ARCHIVE/Database/config/dbConfig.properties @@ -0,0 +1,33 @@ +archive.db.backend=xmldb +archive.db.mode=test + +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +archive.xmldb.location=xmldb:exist://localhost:8180/exist/xmlrpc +archive.xmldb.name=db +archive.xmldb.cache=100 + +archive.oracle.driver= +archive.oracle.location=ora01.hq.eso.org:1521 +archive.oracle.user=almatest +archive.oracle.passwd=*** + +archive.ngast.server=localhost +archive.ngast.port=7777 +archive.ngast.storeInNgast=False +archive.ngast.testDir=${ACS.data}/tmp +archive.bulkreceiver.schema=sdmDataHeader +archive.bulkstore.schema=ASDMBinaryTable + +#archive.db.backend=oracle +#archive.db.mode=operational +#archive.oracle.driver=oracle.jdbc.driver.OracleDriver +#archive.oracle.location=ora02.hq.eso.org:1521 +#archive.oracle.name=ALMA.ARC.EU +#archive.oracle.user=amanning +#archive.oracle.passwd=amanning +#archive.ngast.servers=ngas02:7779, ngas02:7780 +#archive.ngast.port=7777 +#archive.ngast.storeInNgast=True +#archive.ngast.testDir=${ACS.data}/tmp +#archive.bulkreceiver.schema=sdmDataHeader +#archive.bulkstore.schema=ASDMBinaryTable diff --git a/ARCHIVE/Database/config/dbConfigLightweight.properties b/ARCHIVE/Database/config/dbConfigLightweight.properties new file mode 100755 index 0000000000000000000000000000000000000000..7e6ceb2237b0e64e877e762c716c30bc11df92b6 --- /dev/null +++ b/ARCHIVE/Database/config/dbConfigLightweight.properties @@ -0,0 +1,9 @@ +archive.db.backend=xmldb +archive.db.mode=operation +archive.db.xmldb.cache=100 +archive.ngast.server=localhost +archive.ngast.port=7777 +archive.bulkreceiver.schema=sdmDataHeader +archive.bulkstore.schema=ASDMBinaryTable +archive.ngast.storeInNgast=False +archive.ngast.testDir=${ACS.data}/tmp \ No newline at end of file diff --git a/ARCHIVE/Database/config/dbConfigOperational.properties b/ARCHIVE/Database/config/dbConfigOperational.properties new file mode 100755 index 0000000000000000000000000000000000000000..18a4fe751b5e5042ca6e4ed4f114be68f4fff920 --- /dev/null +++ b/ARCHIVE/Database/config/dbConfigOperational.properties @@ -0,0 +1,15 @@ +archive.db.backend=oracle +archive.db.mode=operational + +archive.oracle.driver= +archive.oracle.location=almadev1.hq.eso.org:1521 +archive.oracle.name=alma1 +archive.oracle.user=alma +archive.oracle.passwd=*** + +archive.ngast.server=almadev1.hq.eso.org +archive.ngast.port=7777 +archive.ngast.storeInNgast=True +archive.ngast.testDir=${ACS.data}/tmp +archive.bulkreceiver.schema=sdmDataHeader +archive.bulkstore.schema=ASDMBinaryTable diff --git a/ARCHIVE/Database/config/exist.war b/ARCHIVE/Database/config/exist.war new file mode 100755 index 0000000000000000000000000000000000000000..59d0ef117c6334345daaecdfb7e55147f25a0db4 Binary files /dev/null and b/ARCHIVE/Database/config/exist.war differ diff --git a/ARCHIVE/Database/config/existConfig.properties b/ARCHIVE/Database/config/existConfig.properties new file mode 100755 index 0000000000000000000000000000000000000000..48a61683410b9e96e950e4e87c564a03119d6093 --- /dev/null +++ b/ARCHIVE/Database/config/existConfig.properties @@ -0,0 +1,10 @@ +archive.db.backend=xmldb +archive.db.mode=operational + +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +archive.xmldb.location=xmldb:exist://localhost:8180/exist/xmlrpc +archive.xmldb.name=db +archive.xmldb.cache=100 + +archive.bulkreceiver.schema=sdmDataHeader +archive.bulkstore.schema=ASDMBinaryTable \ No newline at end of file diff --git a/ARCHIVE/Database/config/existTestConfig.properties b/ARCHIVE/Database/config/existTestConfig.properties new file mode 100755 index 0000000000000000000000000000000000000000..63bb7519d31310c574104a776362190675b55fea --- /dev/null +++ b/ARCHIVE/Database/config/existTestConfig.properties @@ -0,0 +1,21 @@ +archive.db.backend=xmldb +archive.db.mode=test + +#archive.xmldb.driver=org.apache.xindice.client.xmldb.DatabaseImpl +#archive.xmldb.location=xmldb:xindice://localhost:8180 +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +archive.xmldb.location=xmldb:exist://localhost:8180/exist/xmlrpc +archive.xmldb.name=db +archive.xmldb.cache=100 + +archive.oracle.driver= +archive.oracle.location=almadev1.hq.eso.org:1521 +archive.oracle.user=almatest +archive.oracle.passwd=*** + +archive.ngast.server=localhost +archive.ngast.port=7777 +archive.ngast.storeInNgast=False +archive.ngast.testDir=${ACS.data}/tmp +archive.bulkreceiver.schema=sdmDataHeader +archive.bulkstore.schema=ASDMBinaryTable diff --git a/ARCHIVE/Database/config/log.xslt b/ARCHIVE/Database/config/log.xslt new file mode 100755 index 0000000000000000000000000000000000000000..60ef6fc203a9af6df02c2dacfa38062f33b5910f --- /dev/null +++ b/ARCHIVE/Database/config/log.xslt @@ -0,0 +1,98 @@ + + + + + + + + + + + +
+ +
+ + +
+ + + +

+ +
+ + + + + + + + + + + + + + + + +
+ + + + + + + + + toggle(' + + ');return false; + + code + +
+
+
+	                
+
+
+
+
\ No newline at end of file diff --git a/ARCHIVE/Database/config/oracleConfig.properties b/ARCHIVE/Database/config/oracleConfig.properties new file mode 100755 index 0000000000000000000000000000000000000000..3d2efc4854e5719a054e419e5460b0da322224e9 --- /dev/null +++ b/ARCHIVE/Database/config/oracleConfig.properties @@ -0,0 +1,22 @@ +archive.db.backend=oracle +archive.db.mode=test + +#for convenience, when temporarily switching to xmldb +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +archive.xmldb.location=xmldb:exist://localhost:8180/exist/xmlrpc +archive.xmldb.name=db +archive.xmldb.cache=100 + +archive.oracle.driver= +archive.oracle.location=almadev1.hq.eso.org:1521 +archive.oracle.name=alma1 +archive.oracle.user=almatest +archive.oracle.passwd=*** +archive.oracle.connectionString=URL_DATA_BASE=jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST= ora01-vip)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = ora02-vip)(PORT = 1521))(LOAD_BALANCE = yes)(FAILOVER = on))(CONNECT_DATA =(SERVICE_NAME = ALMA.ESO.ORG)(failover_mode=(type=select)(method=preconnect)))) + +archive.ngast.server=localhost +archive.ngast.port=7777 +archive.ngast.storeInNgast=False +archive.ngast.testDir=${ACS.data}/tmp +archive.bulkreceiver.schema=sdmDataHeader +archive.bulkstore.schema=ASDMBinaryTable diff --git a/ARCHIVE/Database/lib/archive_database.jar b/ARCHIVE/Database/lib/archive_database.jar new file mode 100644 index 0000000000000000000000000000000000000000..2351a962f6b5c17d314ac2e0954cedf347e9ff3d Binary files /dev/null and b/ARCHIVE/Database/lib/archive_database.jar differ diff --git a/ARCHIVE/Database/lib/axis.jar b/ARCHIVE/Database/lib/axis.jar new file mode 100755 index 0000000000000000000000000000000000000000..20b09a595b416312efe4927d1f634de982579aa7 Binary files /dev/null and b/ARCHIVE/Database/lib/axis.jar differ diff --git a/ARCHIVE/Database/lib/commons-discovery-0.2.jar b/ARCHIVE/Database/lib/commons-discovery-0.2.jar new file mode 100644 index 0000000000000000000000000000000000000000..b88554847b73259ac0bc1e1a1f11f0f80c8cef48 Binary files /dev/null and b/ARCHIVE/Database/lib/commons-discovery-0.2.jar differ diff --git a/ARCHIVE/Database/lib/jaxrpc.jar b/ARCHIVE/Database/lib/jaxrpc.jar new file mode 100755 index 0000000000000000000000000000000000000000..fe0b047cb69195b258efac7e83875730661c06cf Binary files /dev/null and b/ARCHIVE/Database/lib/jaxrpc.jar differ diff --git a/ARCHIVE/Database/lib/saaj.jar b/ARCHIVE/Database/lib/saaj.jar new file mode 100644 index 0000000000000000000000000000000000000000..b49502892f396f7d57ebb1ec534cd376581213f2 Binary files /dev/null and b/ARCHIVE/Database/lib/saaj.jar differ diff --git a/ARCHIVE/Database/lib/wsdl4j-1.5.1.jar b/ARCHIVE/Database/lib/wsdl4j-1.5.1.jar new file mode 100644 index 0000000000000000000000000000000000000000..c6254ee6966410a0d77e1a9868943f5df3b28a45 Binary files /dev/null and b/ARCHIVE/Database/lib/wsdl4j-1.5.1.jar differ diff --git a/ARCHIVE/Database/lib/xmldb.jar b/ARCHIVE/Database/lib/xmldb.jar new file mode 100644 index 0000000000000000000000000000000000000000..fbb3b8a8b2816c69bf7f06b7bee1c849d6b1e5b4 Binary files /dev/null and b/ARCHIVE/Database/lib/xmldb.jar differ diff --git a/ARCHIVE/Database/lib/xmlrpc-1.2.jar b/ARCHIVE/Database/lib/xmlrpc-1.2.jar new file mode 100755 index 0000000000000000000000000000000000000000..cf0a3cfb57ae5081e60c67861e64082d922258aa Binary files /dev/null and b/ARCHIVE/Database/lib/xmlrpc-1.2.jar differ diff --git a/ARCHIVE/Database/lib/xmlrpc-2.0.1.jar b/ARCHIVE/Database/lib/xmlrpc-2.0.1.jar new file mode 100755 index 0000000000000000000000000000000000000000..47b46375e3b7b1a3bd774527250dbf2b14bd8868 Binary files /dev/null and b/ARCHIVE/Database/lib/xmlrpc-2.0.1.jar differ diff --git a/ARCHIVE/Database/src/Makefile b/ARCHIVE/Database/src/Makefile new file mode 100755 index 0000000000000000000000000000000000000000..008e3b9618a4392e6daffa92fb6e8047f499c149 --- /dev/null +++ b/ARCHIVE/Database/src/Makefile @@ -0,0 +1,173 @@ +#******************************************************************************* +# ALMA - Atacama Large Millimeter Array +# Copyright (c) ESO - European Southern Observatory, 2011 +# (in the framework of the ALMA collaboration). +# All rights reserved. +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +#******************************************************************************* +#******************************************************************************* +# E.S.O. - ACS project +# +# "@(#) $Id$" +# +# Makefile of ........ +# +# who when what +# -------- -------- ---------------------------------------------- +# gchiozzi 2003-04-04 Changed destination directory (ans source) for template of archive db. +# hsommer 26/11/02 created +# + +#******************************************************************************* +# This Makefile follows VLT Standards (see Makefile(5) for more). +#******************************************************************************* +# REMARKS +# None +#------------------------------------------------------------------------ + + +DEBUG = on + +# +# Scripts (public and local) +# ---------------------------- +SCRIPTS = #archiveListXmldb \ + #archiveCleanXmldb \ + #archivePerformanceTest \ + #archiveMigrateXML \ + #archiveQuery \ + #asdmQuery \ + #archiveInsert \ + #archiveSanityCheck \ + #archiveCleanAll \ + #archiveCleanTest \ + #archiveListAll \ + #archiveListTest \ + #archiveTestUp \ + #archiveSchemaSort \ + #projectQuery \ + #archiveDatabaseStatus + +SCRIPTS_L = + +# +# IDL Files and flags +# +IDL_FILES = +IDL_TAO_FLAGS = +USER_IDL = + + +# +# Jarfiles and their directories +# +JARFILES = archive_database +archive_database_DIRS = alma +archive_database_EXTRAS = # -C ../config dbConfig.properties \ + # -C ../test/scripts AlmaTestDbCreateTables.sql + +INSTALL_FILES = ../lib/xmldb.jar \ + ../lib/xmlrpc-1.2.jar \ + ../lib/axis.jar \ + ../lib/jaxrpc.jar \ + ../lib/commons-discovery-0.2.jar \ + ../lib/saaj.jar \ + ../lib/wsdl4j-1.5.1.jar + +ACS_LIB = junit.jar \ + maci.jar \ + acsjlog.jar \ + jcont.jar \ + jdom.jar \ + endorsed/xercesImpl.jar \ + commons-logging.jar \ + antlr.jar \ + xalan.jar \ + systementities.jar \ + castor.jar \ + saxpath.jar \ + ArchiveIdentifierError.jar \ + acserr.jar \ + acserrj.jar + +#>>>>> END OF standard rules + + +# +# INCLUDE STANDARDS +# ----------------- +ifdef ACSROOT + MAKEDIR = $(shell if [ -f $(INTROOT)/include/acsMakefile ]; then \ + echo $(INTROOT)/include; \ + else \ + echo $(ACSROOT)/include; \ + fi;) + include $(MAKEDIR)/acsMakefile +else + MAKEDIR = $(shell if [ -f $(INTROOT)/include/acsMakefile ]; then \ + echo $(INTROOT)/include; \ + else \ + echo $(VLTROOT)/include; \ + fi;) + include $(MAKEDIR)/acsMakefile +endif + +DATABASELIBDIR = ../lib + +# +# TARGETS +# ------- +all: do_all + @echo " . . . 'all' done" + + +clean : clean_all + @echo " . . . clean done" + +clean_dist : clean_all clean_dist_all + @echo " . . . clean_dist done" + +man : do_man + @echo " . . . man page(s) done" + +install : install_all install_config + @echo " . . . installation done" + +install_config : + @echo "Installing archiveConfig.properties.* to $(ACSDATA)/config..." + @cp ../config/archiveConfig.properties.* $(ACSDATA)/config + @if [ -f $(ACSDATA)/config/archiveConfig.properties ]; then \ + rm $(ACSDATA)/config/archiveConfig.properties; \ + fi + + if [[ "$(LOCATION)" = "NRI" ]]; then \ + echo "LOCATION NRI, installing test archiveConfig.properties";\ + ln -s $(ACSDATA)/config/archiveConfig.properties.TEST $(ACSDATA)/config/archiveConfig.properties ;\ + elif [[ "$(LOCATION)" = "" ]]; then \ + echo "No LOCATION set, installing test archiveConfig.properties";\ + ln -s $(ACSDATA)/config/archiveConfig.properties.TEST $(ACSDATA)/config/archiveConfig.properties ;\ + else \ + echo "LOCATION STE or OSF, installing STE archiveConfig.properties";\ + ln -s $(ACSDATA)/config/archiveConfig.properties.STE $(ACSDATA)/config/archiveConfig.properties ;\ + fi;\ + +# @cp tnsnames.ora $(ACSDATA)/config + @echo "Done." + +db : db_all + @echo " . . . ../DB done" + +#___oOo___ diff --git a/ARCHIVE/Database/src/alma/.DS_Store b/ARCHIVE/Database/src/alma/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..c8cf8fb9af07dfcbcf49a0561ecf3703b7664d2a Binary files /dev/null and b/ARCHIVE/Database/src/alma/.DS_Store differ diff --git a/ARCHIVE/Database/src/alma/archive/database/.DS_Store b/ARCHIVE/Database/src/alma/archive/database/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..d77fef9e6d0f11a43641b04503709aa46dda68fd Binary files /dev/null and b/ARCHIVE/Database/src/alma/archive/database/.DS_Store differ diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/.DS_Store b/ARCHIVE/Database/src/alma/archive/database/helpers/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..9a09bdceb15df28d866d96eb871ce694bc2f9b55 Binary files /dev/null and b/ARCHIVE/Database/src/alma/archive/database/helpers/.DS_Store differ diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveConfiguration.java b/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveConfiguration.java new file mode 100755 index 0000000000000000000000000000000000000000..638f89ab270020cd82a9a5eaabb5bd26b1208788 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveConfiguration.java @@ -0,0 +1,566 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Jun 10, 2009 + * + */ +package alma.archive.database.helpers; + +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; +import java.util.Collections; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Properties; +import java.util.Vector; +import java.util.logging.Level; +import java.util.logging.Logger; + +import org.jdom.Element; +import org.jdom.output.Format; +import org.jdom.output.XMLOutputter; + +import alma.archive.exceptions.general.DatabaseException; + +/** + * + * A class holding all configuration parameters handed over by the config file. + * Parameters are set when InternalIFFactory is called for the first time, or + * when a new configuration is handed over by ArchiveAdministration. + * + * Other classes should use the method get or the public variable configParams + * to access the properties. Some of them are also stored in dedicated variables + * for convenience (eg. testMode). + * + * The parameters are taken from Java system properties. The only support + * default location is: + * + * The file archiveConfig.properties located in $ACSDATA/config + * + * any other location has to be explicitely specified on the command line. + * + * Command line properties overwrite properties from the properties file. + * + * Only properties with prefix archive. and obops. are considered, all + * others are ignored!!! + * + * + * The idea and some code are taken from ObsPreps PropertyHandler + * + * The properties used are the following (others may also be used): MANDATORY: - + * archive.db.mode + * + * Other properties can be added and used without changing the code. These + * properties must start with the prefix alma.archive., otherwise they won't be + * recognized. + * + * @author awicenec, hmeuss + * + */ +public final class ArchiveConfiguration extends DBConfiguration { + + /** + * default name of the config file + */ + public static String defaultConfigFileName = "archiveConfig.properties"; + + /* + * default values will be overwritten if a corresponding parameter is set in + * the config file. The default here configures a test mode archive using + * eXist and file system for storage, just to make sure that nothing bad + * happens to the operational archive with hard-coded parameters. + */ + + public boolean storeInNgas = false; + + /* NGAS buffer directory */ + public String ngasBufferDir; + + /* NGAS archive client parameters */ + public String ngasClientParams; +// +// /** +// * Actual location where the archiveConfig file was found. +// */ +// public String fileLocation; + + private Properties props = new Properties(); // loaded properties, so + + // that they can be deleted + // afterwards. + + /* constructs new ArchiveConfiguration from parameters in the config file. */ + protected ArchiveConfiguration(Logger logger) throws DatabaseException { + logger + .info("Constructing Archive configuration file as instance of ArchiveConfiguration."); + // for the time being we do the same as for a re-init + reinit(logger); + + // set oracle.net.tns_admin here, needed for JDBC to work with tnsnames.ora. + String tnsDir = get( + "archive.db.tnsFileDirectory"); + if ((null == tnsDir || tnsDir.equals("")) && !get("archive.db.connection").startsWith("xmldb")) { + String oraHome = System.getenv("ORACLE_HOME"); + if (oraHome != null && !oraHome.equals("")) { + tnsDir = oraHome + "/network/admin"; + } else { + throw new DatabaseException( + "archiveConfig.properties does not contain value for archive.db.tnsFileDirectory and $ORACLE_HOME not defined. Cannot read tnsnames.ora, aborting..."); + } + } + if (!get("archive.db.connection").startsWith("xmldb")) { + logger.info("Using this tnsnames.ora for DB connection: " + tnsDir+". Setting system property oracle.net.tns_admin accordingly."); + System.setProperty("oracle.net.tns_admin", tnsDir); + } + } + + /** + * re-reads information from config file + */ + public void reinit(Logger logger) throws DatabaseException { + // read config file and store properties in Java system properties + try { + readConfig(logger); + } catch (IOException e) { + logger.log(Level.WARNING, "Problems while reading " + + defaultConfigFileName, e); + // We don't let this fail yet because the required properties will + // be checked for in createConfig() + } + // fill variables of this with system properties + createConfig(logger); + logger.info(this.toString()); + } + + /** + * Reads configuration parameters from properties files and stores them as + * system properties. Only one file is examined: + * $ACS.data/config/archiveConfig.properties, + * + * @param logger + */ + private void readConfig(Logger logger) throws IOException { + InputStream propIn; + + props = new Properties(); + + // read archiveConfig.properties from Java property + fileLocation = System.getProperty("archive.configFile"); + if (fileLocation != null && !fileLocation.equals("")) { + logger.info("----------- Loading archive configuration from: " + + System.getProperty("archive.configFile")); + propIn = new FileInputStream(fileLocation); + props = readProps(propIn); + propIn.close(); + // store props + } else { + + // read archiveConfig.properties from ACS.data/config + String acsdata = System.getProperty("ACS.data"); + // System.out.println(acsdata); + if (acsdata != null) { + acsdata = acsdata + "/config/"; + try { + propIn = new FileInputStream(acsdata + + defaultConfigFileName); + fileLocation = acsdata + defaultConfigFileName; + logger.info("----------- Loading " + defaultConfigFileName + + " from " + acsdata); + props = readProps(propIn); + propIn.close(); + } catch (FileNotFoundException e) { + logger.severe("No properties file " + defaultConfigFileName + + " found in: " + acsdata + "! Bailing out..."); + throw new IOException( + "No archiveConfig.properties file found!"); + } + } else { + throw new IOException( + "$ACSDATA/ACS.data not defined, cannot read database configuration file."); + } + } + } + + /** + * Reads properties from an input stream. Property values are expanded (@see + * expand) + * + * @param propIn + * @return Properties defined in the input stream + */ + private Properties readProps(InputStream propIn) throws IOException { + Properties props = new Properties(); + props.load(propIn); + + // Expand all values + // ----------------------------- + Enumeration e = props.keys(); + while (e.hasMoreElements()) { + String key = (String) e.nextElement(); + String val = props.getProperty(key); + val = expand(val); + props.setProperty(key, val); + } + return props; + } + + /** + * Expands properties embedded in a string, if any, substituting the + * properties' value. Properties can be embedded with a syntax like that of + * Ant build files, so that
+ *    abc${user.home}xyz
+ * expands to
+ *    abc/home/johnny/xyz
+ * + * Multiple properties can be embedded in the same string. + *

+ * Note: If the embedded property has no value it is resolved to be the + * empty string. + *

+ * + * Note: Recursion (that is embedded vars within embedded vars) is not + * allowed. + * + * @author mschilli + */ + static String expand(String s) { + + // important: remove whitespace + s=s.trim(); + + // See if input string contains a valid $(prop) pattern + int markerPos = s.indexOf("${"); + if (markerPos == -1) // anything to do? + return s; // NO, return input value. + + int markerEnd = s.indexOf("}", markerPos); + if (markerEnd == -1) // anything to do? + return s; // NO, return input value. + + // Input string contains a valid $(prop) pattern + // Split it into 3 parts + String preVarName = s.substring(0, markerPos); + String embeddedVarName = s.substring(markerPos + 2, markerEnd); + String postVarName = s.substring(markerEnd + 1); + + // replace middle part, if possible + String embeddedVarValue = System.getProperty(embeddedVarName, ""); + + s = preVarName + embeddedVarValue + postVarName; + return expand(s); // on to the next expansion. + } + + /** + * Sets up a map for {@link #configParams} that describes the mapping + * defnied in archiveConfig.properties which start with "archive." or + * "obops.". + */ + private void createConfig(Logger logger) throws DatabaseException { + configParams = new HashMap(); + // Now all properties are stored in props + // They can be copied to configParams: + for (Enumeration e = props.keys(); e.hasMoreElements();) { + String key = (String) e.nextElement(); + if (key.startsWith("archive.") || key.startsWith("obops.")) { + configParams.put(key, (String) props.get(key)); + logger.finest("Stored config param: " + key + "=" + + configParams.get(key)); + } else { + logger.finest("Ignored system property: " + key + "=" + + configParams.get(key)); + } + } + + // set variables from properties, for convenience + + /* Now verify settings of properties */ + logger.info("Verifying properties in archiveConfig.properties."); + + // connectionString and simulate original dbBackend + String dbConnection = get("archive.db.connection"); + if (dbConnection == null) { + logger + .severe("Property archive.db.connection undefined! Check archiveConfig.properties."); + throw new DatabaseException( + "No Database backend specified (property archive.db.connection undefined)."); + } else { + if (dbConnection.startsWith("xmldb:")) { + dbBackend = "xmldb"; + configParams.put("archive.xmldb.location",dbConnection); + configParams.put("archive.xmldb.cache", "100"); + configParams.put("archive.xmldb.name", "db"); + configParams.put("archive.xmldb.driver","org.exist.xmldb.DatabaseImpl"); + } else { + // in case of oracle, the connection string contains the service + // alias + dbBackend = "oracle"; + } + } + + // dbBackend just left here to cover the case that the connectionString + // above is wrong + if (dbBackend == null) { + logger + .severe("db.backend undefined! Check archiveConfig.properties: " + + "archive.db.connection is not properly defined."); + throw new DatabaseException( + "Property archive.db.connection not properly defined."); + } + + if ("operational".equals(get("archive.db.mode"))) { + testMode = false; + /* + * if we run in operational mode then some additional checks are + * carried out + */ + if (dbBackend.equals("xmldb")) { + logger + .severe("When running in operational mode, Oracle must be used. Check archiveConfig file."); + throw new DatabaseException( + "Only Oracle DB can be used in operational mode"); + } + if (get("archive.oracle.user").equals("almatest")) { + /* In operational mode we must not use almatest user */ + logger + .severe("When running in operational mode, user almatest is not allowed. Check archiveConfig file."); + throw new DatabaseException( + "Permission denied: user almatest can not be used in operational mode"); + } + // In operational mode, the values of archive.statearchive.* must + // not + // be specified, otherwise ArchiveConfiguration will throw an error. + // Nonetheless, three properties will be displayed to the outside: + //archive.statearchive.user --> archive.oracle.user + //archive.statearchive.passwd --> archive.oracle.passwd + //archive.statearchive.connection --> archive.db.connection + if ((get("archive.statearchive.user")!=null && !"".equals(get("archive.statearchive.user"))) + || (get("archive.statearchive.passwd")!=null && !"".equals(get("archive.statearchive.passwd"))) + || (get("archive.statearchive.connection")!=null && !"".equals(get("archive.statearchive.connection")))) { + logger + .severe("When running in operational mode, specification of archive.statearchive.* is not allowed (they will be set internally). Check archiveConfig file."); + throw new DatabaseException( + "When running in operational mode, specification of archive.statearchive.* is not allowed (they will be set internally). Check archiveConfig file."); + } + // set archive.statearchive.* properties: + configParams.put("archive.statearchive.user", get("archive.oracle.user")); + configParams.put("archive.statearchive.passwd", get("archive.oracle.passwd")); + configParams.put("archive.statearchive.connection", get("archive.db.connection")); + } else { + testMode=true; + } + + /* + * The property archive.ngas.interface can either contain a directory + * name or a command line for the ngasArchiveClient including all + * required parameters. + */ + if (get("archive.ngast.interface") == null) { + /* In operational mode we must store files on NGAS! */ + logger + .severe("Property archive.ngast.interface undefined, but must be either ngamsArchiveClient cmd or test:...! Check archiveConfig.properties."); + throw new DatabaseException( + "No NGAS interface specified."); + } + + if (get("archive.ngast.interface").indexOf("ngamsArchiveClient") < 0) { + if (!get("archive.ngast.interface").startsWith("test:")) { + logger + .severe("Property archive.ngast.interface must specify ngamsArchiveClient cmd or test:...! Check archiveConfig.properties."); + throw new DatabaseException( + "No ngamsArchiveClient or test mode specified."); + } + configParams.put("archive.ngast.storeInNgast", "False"); + configParams.put("archive.ngast.testDir", get( + "archive.ngast.interface").substring(5, + get("archive.ngast.interface").length())); + } else { + // operational mode for NGAS!!! + + // operational mode now always means delayed + configParams.put("archive.ngast.storeInNgast", "Delayed"); + + // BulkStore stuff, everything is triggered by the availability of + // archive.ngast.servers + if (get("archive.ngast.servers") != null) { + if (get("archive.ngast.servers").indexOf(':')<1) { + throw new DatabaseException( + "The value of archive.ngast.servers must be a comma-separated list of server:port pairs. Please check archiveConfig.properties."); + } + ngasBufferDir = get("archive.ngast.bufferDir"); + if (ngasBufferDir == null) { + logger + .severe("NGAS archiving requested but archive.ngast.bufferDir undefined! Check archiveConfig.properties."); + throw new DatabaseException( + "No NGAS buffer directory specified in archive configuration."); + } + configParams.put("archive.ngast.testDir", ngasBufferDir + + "/NGAMS_ARCHIVE_CLIENT/queue"); // used by + // bulkreceiver + // we will later construct ngamsArchiveCommand from interface, + // servers and bufferDir + } else { + logger + .severe("Operational mode but archive.ngast.servers undefined! Check archiveConfig.properties."); + throw new DatabaseException( + "No NGAS servers specified in operational archive configuration."); + } + + // now we construct the value of archive.ngast.clientParams, which + // is used to start the archiveNgamsClient: + // first check whether host is specified. This must not be the case: + if (get("archive.ngast.interface").indexOf("-host") >= 0 + || get("archive.ngast.interface").indexOf("-rootDir") >= 0 + || get("archive.ngast.interface").indexOf("-port") >= 0 + || get("archive.ngast.interface").indexOf("-servers") >= 0) { + logger + .severe("host, port, rootDir or servers MUST not be specified in archive.ngast.interface property. Please check archiveConfig.properties."); + throw new DatabaseException( + "Inconsistency in archiveConfig.properties: host, port, rootDir or servers overspecified in archive.ngast.interface."); + } + configParams.put("archive.ngast.clientParams", + get("archive.ngast.interface") + " -servers " + + get("archive.ngast.servers") + " -rootDir " + + ngasBufferDir); + + if (get("archive.bulkreceiver.schema") == null) { + /* In operational mode the bulkreceiver has to be configured */ + logger + .severe("Operational mode but bulkreceiver.schema not configured! Check archiveConfig file."); + throw new DatabaseException( + "bulkreceiver.schema not configured for operational mode."); + } else { + // if (get("archive.bulkreceiver.DataBufferRetry") == null) { + // logger + // .severe("Operational mode but bulkreceiver.DataBufferRetry + // not configured! Check archiveConfig file."); + // throw new DatabaseException( + // "bulkreceiver.DataBufferRetry not configured for operational + // mode."); + // } + if (get("archive.bulkreceiver.DataBufferMax") == null) { + logger + .severe("Operational mode but bulkreceiver.DataBufferMax not configured! Check archiveConfig file."); + throw new DatabaseException( + "bulkreceiver.DataBufferMax not configured for operational mode."); + } + if (get("archive.bulkreceiver.BufferThreadNumber") == null) { + logger + .severe("Operational mode but bulkreceiver.BufferThreadNumber not configured! Check archiveConfig file."); + throw new DatabaseException( + "bulkreceiver.BufferThreadNumber not configured for operational mode."); + } + // if (get("archive.bulkreceiver.BufferThreadWaitSleep") == + // null) { + // logger + // .severe("Operational mode but + // bulkreceiver.BufferThreadWaitSleep not configured! Check + // archiveConfig file."); + // throw new DatabaseException( + // "bulkreceiver.BufferThreadWaitSleep not configured for + // operational mode."); + // } + if (get("archive.bulkreceiver.FetchThreadRetry") == null) { + logger + .severe("Operational mode but bulkreceiver.FetchThreadRetry not configured! Check archiveConfig file."); + throw new DatabaseException( + "bulkreceiver.FetchThreadRetry not configured for operational mode."); + } + if (get("archive.bulkreceiver.FetchThreadRetrySleep") == null) { + logger + .severe("Operational mode but bulkreceiver.FetchThreadRetrySleep not configured! Check archiveConfig file."); + throw new DatabaseException( + "bulkreceiver.FetchThreadRetrySleep not configured for operational mode."); + } + } + } + + // TODO check for other variables? Ie. archive.bulkstore...? + + if (dbBackend.equals("oracle") && testMode + && !get("archive.oracle.user").equals("almatest")) { + logger + .severe("When running in test mode, user must be almatest. Check archiveConfig file."); + throw new DatabaseException( + "Permission denied: only user almatest can run test mode"); + } + } + + /* + * returns string representation of the configuration, i.e. the parameter + * name/value pairs + */ + public String toString() { + // TODO put each property into a new line. + StringBuffer out = new StringBuffer("Archive configuration: \n"); + Vector mykeys = new Vector(configParams.keySet()); + Collections.sort(mykeys); + for (Iterator it = mykeys.iterator(); it + .hasNext();) { + String name = it.next(); + if (name.endsWith("passwd")) { + out.append(" - " + name + "= [HIDDEN]\n"); + } else { + out.append(" - " + name + "=" + configParams.get(name) + "\n"); + } + } + return out.toString(); + } + + /* + * ... + * + */ + public Element toElement() { + Element root = new Element("archiveconfiguration"); + Iterator iter = configParams.keySet().iterator(); + while (iter.hasNext()) { + Element config = new Element("config"); + String name = iter.next(); + config.setAttribute("name", name); + config.setAttribute("value", configParams.get(name)); + root.addContent(config); + } + return root; + } + + public String toXmlString() { + Element element = this.toElement(); + + XMLOutputter out = new XMLOutputter(Format.getPrettyFormat()); + // XMLOutputter out = new XMLOutputter(" ",true,"UTF-8"); + String xml = out.outputString(element); + return xml; + } + + /* returns value of parameter, if defined. Otherwise returns null */ + public String get(String paramName) { + return configParams.get(paramName); + } + + // Oracle case: returns a JDBC URL based on the service alias specified in property name + public String getConnectionURL(String propertyName) { + return "jdbc:oracle:thin:@"+get(propertyName); + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveConfigurationOld.java b/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveConfigurationOld.java new file mode 100755 index 0000000000000000000000000000000000000000..f3384a084c3fe4ac917267085867f1007eefe48f --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveConfigurationOld.java @@ -0,0 +1,389 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Jan 21, 2004 + * + */ +package alma.archive.database.helpers; + +import java.io.FileInputStream; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.io.InputStream; +import java.net.URL; +import java.util.Enumeration; +import java.util.HashMap; +import java.util.Iterator; +import java.util.Properties; +import java.util.logging.Level; +import java.util.logging.Logger; + +import org.jdom.Element; +import org.jdom.output.Format; +import org.jdom.output.XMLOutputter; + +import alma.archive.exceptions.general.DatabaseException; + +/** + * + * A class holding all configuration parameters handed over by the config file. Parameters are + * set when InternalIFFactory is called for the first time, or when a new configuration is handed over by ArchiveAdministration. + * + * Other classes should use the method get or the public variable configParams to access the properties. Some of them are also + * stored in dedicated variables for convenience (eg. testMode). + * + * The parameters are taken from Java system properties. These are taken from (in this order): + * 1) The file dbConfig.properties located in the classpath (a fallback is provided in archive_database.jar) + * 2) The file dbConfig.properties.jar located in $ACSDATA/config + * 2) The file dbConfig.properties located in the current working directory + * 3) Java command line properties passed with -DpropName=propValue + * + * Command line properties overwrite properties from the properties file in the current directory, which themselves + * overwrite properties taken from the properties file in $ACSDATA/config and the classpath, resp. + * + * Only properties with prefix archive. are considered, all others are ignored!!! + * + * + * The idea and some code are taken from ObsPreps PropertyHandler + * + * The properties used are the following (others may also be used): + * MANDATORY: + * - archive.db.backend + * OPTIONAL: + * - archive.db.testStart + * - archive.db.testEnd + * - archive.db.mode + * - archive.db.visibility + * BACKEND SPECIFIC (SEMI-OPTIONAL) + * - archive.db.oracleLocation + * - archive.db.xindiceLocation + * + * Other properties can be added and used without changing the code. These properties must + * start with the prefix alma.archive., otherwise they won't be recognized. + * + * This class is deprecated as of ARCHIVE-12_4-B, for ALMA 10.6. Please use ArchiveConfiguration instead (I need to simplify the + * codebase). + * + * @author hmeuss + * + */ +@Deprecated +public final class ArchiveConfigurationOld extends DBConfiguration { + + /** + * default name of the config file + */ + public static String defaultConfigFileName = "dbConfig.properties"; + + /* default values will be overwritten if a correspinding parameter is set in the config file */ + + private Properties props=new Properties(); // loaded properties, so that they can get deleted afterwards. + + /* constructs new DBConfiguration from parameters in the config file. */ + protected ArchiveConfigurationOld(Logger logger) throws DatabaseException { + logger.info("Constructing Archive configuration file as instance of ArchiveConfigurationOld (ie. deprecated implementation)."); + // for the time being we do the same as for a re-init + reinit(logger); + } + + /** + * re-reads information from config file + */ + public void reinit(Logger logger) throws DatabaseException { + // delete already loaded properties: + for (Enumeration propIt = props.keys(); propIt.hasMoreElements(); ) { + String key=(String) propIt.nextElement(); + if (key.startsWith("archive.")) { + System.clearProperty(key); + } + } + + // read config file and store properties in Java system properties + try { + readConfig(logger); + } catch (IOException e) { + logger.log(Level.WARNING, "Problems while reading " + defaultConfigFileName, e); + // We don't let this fail yet because the required properties will be checked for in createConfig() + } + // fill variables of this with system properties + createConfig(logger); + logger.info(this.toString()); + } + + /** + * Reads configuration parameters from properties files and stores them as system properties. Three files are examined: + * First dbConfig.properties in the current directory, then $ACS.data/config/dbConfig.properties, + * then dbConfig.properties in the classpath (a fallback properties file that is provided in archive_database.jar). + * + * As soon as the first properties file is found, the others are no longer read! This means, only properties from *one* file + * are taken. (With this new specification, the implementaion could be simplified, but will be kept due to time constraints. + * + * @param logger + */ + private void readConfig(Logger logger) throws IOException { + InputStream propIn; + + props = new Properties(); + + // read dbConfig.properties from current working directory + try { + propIn = new FileInputStream(defaultConfigFileName); + logger.info( + "----------- Loading " + + defaultConfigFileName + + " from current working directory: "+System.getProperty("user.dir")); + fileLocation=System.getProperty("user.dir")+"/"+defaultConfigFileName; + props = readProps(propIn); + propIn.close(); + // store props + storeProps(props, logger); + return; + } catch (FileNotFoundException e) { + logger.info( + "No properties file " + + defaultConfigFileName + + " in current working directory. Now looking in $ACSDATA (defined by Java property ACS.data)."); + } + + // read dbConfig.properties from ACS.data/config + String acsdata=System.getProperty("ACS.data"); + //System.out.println(acsdata); + if ( acsdata != null) { + acsdata=acsdata+"/config/"; + try { + propIn = new FileInputStream(acsdata+defaultConfigFileName); + fileLocation=acsdata+defaultConfigFileName; + logger.info( + "----------- Loading " + + defaultConfigFileName + + " from "+acsdata); + props = readProps(propIn); + propIn.close(); + // store props + storeProps(props, logger); + return; + } catch (FileNotFoundException e) { + logger.info( + "No properties file " + + defaultConfigFileName + +" " +acsdata+ ". Now looking in classpath."); + } + } + + // read dbConfig.properties from classpath + ClassLoader loader = DBConfiguration.class.getClassLoader(); + URL propsFile = loader.getResource(defaultConfigFileName); + if (propsFile == null) { + logger.warning( + "No file " + defaultConfigFileName + " found in classpath."); + } else { + logger.info("-------- Loading " + propsFile); + fileLocation=propsFile.toString(); + propIn = propsFile.openStream(); + props = readProps(propIn); + propIn.close(); + // store props + storeProps(props, logger); + } + } + + /** + * Stores the properties defined in props in the Java system properties. If + * a property is already defined it is not overwritten. + * @param props + */ + private void storeProps(Properties props, Logger logger) { + for (Enumeration e = props.keys(); e.hasMoreElements();) { + String key = (String) e.nextElement(); + if (System.getProperty(key) == null) { + // add property + System.setProperty(key, props.getProperty(key)); + logger.finest("Added property: " + key + " = " + props.getProperty(key)); + } else { + // property already defined, ignore + logger.finest("Property " + key + " already defined, ignoring."); + } + } + } + + /** + * Reads properties from an input stream. Property values are expanded (@see expand) + * @param propIn + * @return Properties defined in the input stream + */ + private Properties readProps(InputStream propIn) throws IOException { + Properties props = new Properties(); + props.load(propIn); + + // Expand all values + //----------------------------- + Enumeration e = props.keys(); + while (e.hasMoreElements()) { + String key = (String) e.nextElement(); + String val = props.getProperty(key); + val = expand(val); + if (key.equalsIgnoreCase("archive.ngast.clientParams") && !val.startsWith("ngamsArchiveClient")) { +// workaround for backward cpmpatibility + val="ngamsArchiveClient "+val; + } + props.setProperty(key, val); + } + return props; + } + + /** + * Expands properties embedded in a string, if any, substituting the + * properties' value. Properties can be embedded with a syntax like that of + * Ant build files, so that
+ *    abc${user.home}xyz
+ * expands to
+ *    abc/home/johnny/xyz
+ * + * Multiple properties can be embedded in the same string. + *

+ * Note: If the embedded property has no value it is resolved to be the + * empty string. + *

+ * + * Note: Recursion (that is embedded vars within embedded vars) is not + * allowed. + * + * @author mschilli + */ + static String expand(String s) { + + // See if input string contains a valid $(prop) pattern + int markerPos = s.indexOf("${"); + if (markerPos == -1) // anything to do? + return s; // NO, return input value. + + int markerEnd = s.indexOf("}", markerPos); + if (markerEnd == -1) // anything to do? + return s; // NO, return input value. + + // Input string contains a valid $(prop) pattern + // Split it into 3 parts + String preVarName = s.substring(0, markerPos); + String embeddedVarName = s.substring(markerPos + 2, markerEnd); + String postVarName = s.substring(markerEnd + 1); + + // replace middle part, if possible + String embeddedVarValue = System.getProperty(embeddedVarName, ""); + + s = preVarName + embeddedVarValue + postVarName; + return expand(s); // on to the next expansion. + } + + /** + * Sets up a map for {@link #configParams} that contains those system properties which start with "archive.". + * Some properties are redundantly stored in instance variables. + */ + private void createConfig(Logger logger) throws DatabaseException { + configParams = new HashMap(); + // Now all properties are stored as System properties + // They can be copied to configParams: + for (Enumeration e = System.getProperties().keys(); + e.hasMoreElements(); + ) { + String key = (String) e.nextElement(); + if (key.startsWith("archive.")) { + configParams.put(key, System.getProperty(key)); + } + } + + // set variables from properties, for convenience + + // dbBackend + dbBackend = get("archive.db.backend"); + if (dbBackend == null) { + logger.severe( + "Property archive.db.backend undefined! Check dbConfig.properties in classpath and working directory."); + throw new DatabaseException("No Database backend specified (property archive.db.backend undefined)."); + } + + // mode + if ("test".equals(get("archive.db.mode"))) { + testMode = true; + // might be overwritten in the next if clause + } + + if (dbBackend.equals("oracle") && testMode && get( + "archive.oracle.user").equals("alma")) { + logger.severe("When running in test mode, user must be almatest. Check dbConfig file."); + throw new DatabaseException("Permission denied: only user almatest can run in test mode"); + } + + + } + + /* returns string representation of the configuration, i.e. the parameter name/value pairs */ + public String toString() { + StringBuffer out = new StringBuffer("Database configuration: "); + for (Iterator it = configParams.keySet().iterator(); it.hasNext();) { + String name = it.next(); + out.append(name + "=" + configParams.get(name) + ", "); + } + return out.toString(); + } + + /* + * + * + * ... + * + */ + public Element toElement() + { + Element root = new Element("dbconfiguration"); + Iterator iter = configParams.keySet().iterator(); + while (iter.hasNext()) + { + Element config = new Element("config"); + String name = iter.next(); + config.setAttribute("name",name); + config.setAttribute("value", configParams.get(name)); + root.addContent(config); + } + return root; + } + + public String toXmlString() + { + Element element = this.toElement(); + + XMLOutputter out = new XMLOutputter(Format.getPrettyFormat()); + // XMLOutputter out = new XMLOutputter(" ",true,"UTF-8"); + String xml = out.outputString(element); + return xml; + } + + /* returns value of parameter, if defined. Otherwise returns null */ + public String get(String paramName) { + return configParams.get(paramName); + } + + // Oracle case: returns a JDBC URL based on the service alias specified in property name + // unused here + public String getConnectionURL(String propertyName) { + return ""; + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveHibernateWDALConfigurationPlugin.java b/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveHibernateWDALConfigurationPlugin.java new file mode 100755 index 0000000000000000000000000000000000000000..31f3aa0820f02a0d6d7ef0910792ecd4746783ef --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/ArchiveHibernateWDALConfigurationPlugin.java @@ -0,0 +1,116 @@ +/******************************************************************************* + * ALMA - Atacama Large Millimeter Array + * Copyright (c) ESO - European Southern Observatory, 2011 + * (in the framework of the ALMA collaboration). + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + *******************************************************************************/ +package alma.archive.database.helpers; +import java.util.logging.Level; +import java.util.logging.Logger; + +import alma.archive.exceptions.general.DatabaseException; + +import com.cosylab.cdb.jdal.hibernate.plugin.HibernateWDALConfigurationPlugin; +import com.cosylab.cdb.jdal.hibernate.DBUtil; + +/** + * Plugin implementation for HibernateDAL. + * It provides ARCHIVE configuration mechanism to HibernateDAL. + * To enable it set "cdb_rdb.plugins.configuration" JVM property when starting HibernateDAL. + * @author msekoranja + */ +public class ArchiveHibernateWDALConfigurationPlugin implements + HibernateWDALConfigurationPlugin { + + private DBConfiguration archiveConfig = null; + + /* (non-Javadoc) + * @see com.cosylab.cdb.jdal.hibernate.plugin.HibernateWDALConfigurationPlugin#initialize(java.util.logging.Logger) + */ + public void initialize(Logger logger) { + try { + archiveConfig = ArchiveConfiguration.instance(logger); + } catch (DatabaseException de) { + logger.log(Level.FINE, "Exception from ArchiveConfiguration ", de); + throw new RuntimeException("Failed to obtain ArchiveConfiguration instance.", de); + } + } + + /* (non-Javadoc) + * @see com.cosylab.cdb.jdal.hibernate.plugin.HibernateWDALConfigurationPlugin#getName() + */ + public String getName() { + return "ArchiveConfiguration plugin"; + } + + /* (non-Javadoc) + * @see com.cosylab.cdb.jdal.hibernate.plugin.HibernateWDALConfigurationPlugin#get(java.lang.String, java.lang.String) + */ + public String get(String name, String defaultValue) { + String retVal = archiveConfig.get(name); + if (retVal != null) + return retVal; + else + return defaultValue; + } + + /** + * The Alma Archive classes provide {@link DBConfiguration#dbBackend} + * which gets parsed out from the connection string given in property archive.db.connection + * (see {@link alma.archive.database.helpers.ArchiveConfiguration#createConfig}). + *

+ * However the Archive (XML etc parts of archive, other than TMCDB) only supports "xmldb" and "oracle". + * Therefore the TMCDB must use a different mechanism if it wants to support "hsqldb" or other databases as well. + * In this method we encapsulate these differences, and allow the TMCDB to fully support HSQLDB. + *

+ * Implementation: We parse archive.tmcdb.connection (see {@link #getURL()}) for "hsqldb" + * and for a match return the String constant {@link DBUtil#HSQLDB_BACKEND_NAME}. + * Otherwise we return {@link DBConfiguration#dbBackend}. + * + * @see com.cosylab.cdb.jdal.hibernate.plugin.HibernateWDALConfigurationPlugin#getBackend() + */ + public String getBackend() { + String dbConnection = getURL(); + if (dbConnection.indexOf("hsqldb") > 0) { + return DBUtil.HSQLDB_BACKEND_NAME; + } + else { + return archiveConfig.dbBackend; + } + } + + /* (non-Javadoc) + * @see com.cosylab.cdb.jdal.hibernate.plugin.HibernateWDALConfigurationPlugin#getURL() + */ + public String getURL() { + return archiveConfig.get("archive.tmcdb.connection"); + } + + /* (non-Javadoc) + * @see com.cosylab.cdb.jdal.hibernate.plugin.HibernateWDALConfigurationPlugin#getUserName() + */ + public String getUserName() { + return archiveConfig.get("archive.tmcdb.user"); + } + + /* (non-Javadoc) + * @see com.cosylab.cdb.jdal.hibernate.plugin.HibernateWDALConfigurationPlugin#getPassword() + */ + public String getPassword() { + return archiveConfig.get("archive.tmcdb.passwd"); + } +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/BuildString.java b/ARCHIVE/Database/src/alma/archive/database/helpers/BuildString.java new file mode 100755 index 0000000000000000000000000000000000000000..7e968fe11e66f8faeb13b7b4353c2ca5ee9e4d74 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/BuildString.java @@ -0,0 +1,48 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + */ +package alma.archive.database.helpers; + +public final class BuildString { + private BuildString() { + + } + + /** + * Helper function to concatenate strings using + * @java.lang.StringBuilder. + * + * @param first + * @param strings + * @return first plus all in strings as @java.lang.String + */ + public static String buildString(final String first, + final String... strings) { + final StringBuilder sbuilder = new StringBuilder(first); + if (strings != null) { + for (String s : strings) { + sbuilder.append(s); + } + } + return sbuilder.toString(); + } +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/Cache.java b/ARCHIVE/Database/src/alma/archive/database/helpers/Cache.java new file mode 100755 index 0000000000000000000000000000000000000000..15b9f4ecd99500ad9c336d6afa656ec4867939f9 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/Cache.java @@ -0,0 +1,78 @@ +/* + * Created on 08-Jul-2004 + * + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.archive.database.helpers; + +import java.util.HashMap; +import java.util.LinkedList; +import java.util.Map; + + +/** + * @author simon + */ +public class Cache +{ + private final Map map; + private final LinkedList queue; + private final int capacity; + /** + * + */ + public Cache(int capacity) + { + map = new HashMap(); + queue = new LinkedList(); + this.capacity = capacity; + } + + public void put(Object key, Object content) + { + if (!map.containsKey(key)) + { + if (map.size() >= capacity) + { + Object oldKey = queue.removeLast(); + map.remove(oldKey); + } + map.put(key,content); + queue.addLast(key); + } + } + + public boolean containsKey(Object key) + { + return map.containsKey(key); + } + + public Object get(Object key) + { + return map.get(key); + } + + public void remove(Object key) + { + queue.remove(key); + map.remove(key); + } +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/DBConfiguration.java b/ARCHIVE/Database/src/alma/archive/database/helpers/DBConfiguration.java new file mode 100755 index 0000000000000000000000000000000000000000..ab5f3b4c7ff982f07724592a2a4ac44b896bb293 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/DBConfiguration.java @@ -0,0 +1,154 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Jan 21, 2004 + * + */ +package alma.archive.database.helpers; + +import java.io.File; +import java.util.HashMap; +import java.util.logging.Logger; + +import org.jdom.Element; + +import alma.archive.exceptions.general.DatabaseException; + +/** + * + * A class holding all configuration parameters handed over by the config file. Parameters are + * set when InternalIFFactory is called for the first time, or when a new configuration is handed over by ArchiveAdministration. + * + * Other classes should use the method get or the public variable configParams to access the properties. Some of them are also + * stored in dedicated variables for convenience (eg. testMode). + * + * The parameters are taken from Java system properties. These are taken from (in this order): + * 1) The file dbConfig.properties located in the classpath (a fallback is provided in archive_database.jar) + * 2) The file dbConfig.properties.jar located in $ACSDATA/config + * 2) The file dbConfig.properties located in the current working directory + * 3) Java command line properties passed with -DpropName=propValue + * + * Command line properties overwrite properties from the properties file in the current directory, which themselves + * overwrite properties taken from the properties file in $ACSDATA/config and the classpath, resp. + * + * Only properties with prefix archive. are considered, all others are ignored!!! + * + * + * The idea and some code are taken from ObsPreps PropertyHandler + * + * The properties used are the following (others may also be used): + * MANDATORY: + * - archive.db.backend + * OPTIONAL: + * - archive.db.testStart + * - archive.db.testEnd + * - archive.db.mode + * - archive.db.visibility + * - archive.db.idStart + * BACKEND SPECIFIC (SEMI-OPTIONAL) + * - archive.db.oracleLocation + * - archive.db.xindiceLocation + * + * Other properties can be added and used without changing the code. These properties must + * start with the prefix alma.archive., otherwise they won't be recognized. + * + * @author hmeuss + * + */ +public abstract class DBConfiguration { + + private static DBConfiguration instance; + + /** + * default name of the config file + */ + public static String defaultConfigFileName = "archiveConfig.properties"; + + /* default values will be overwritten if a correspinding parameter is set in the config file */ + + /* database backend used, eg. "db2" or "xindice" */ + public String dbBackend; + /* running in test mode? */ + public boolean testMode = false; + /* all parameters from the config file in a HashMap. In addition, all + * Java properties are also stored here. */ + public HashMap configParams = new HashMap(); + /** + * Actual location where the dbConfig file was found. + */ + public String fileLocation; + + /** + * re-reads information from config file + */ + public abstract void reinit(Logger logger) throws DatabaseException; + + /** + * Singleton accessor + */ + public static synchronized DBConfiguration instance(Logger logger) + throws DatabaseException { + + // TODO: check whether we use the new ArchiveConfiguration implementation class, or the old ArchiveConfigurationOld class. + // This is determined by the existence of the archiveConfig file. + + if (instance == null) { + + // if archive.configFile is defined, we use the new class: + if (System.getProperty("archive.configFile")!=null&&!System.getProperty("archive.configFile").equals("")) { + instance = new ArchiveConfiguration(logger); + } else + + // then check, whether archiveConfig.properties exists in $ACSDATA: + if (System.getProperty("ACS.data")!=null&&new File(System.getProperty("ACS.data")+"/config/"+defaultConfigFileName).exists()) { + instance = new ArchiveConfiguration(logger); + } + + // else, we take the old one: + if (instance == null) { + instance = new ArchiveConfigurationOld(logger); + } + } + return instance; + } + + /* returns string representation of the configuration, i.e. the parameter name/value pairs */ + public abstract String toString(); + + /* + * + * + * ... + * + */ + public abstract Element toElement(); + + public abstract String toXmlString(); + + /* returns value of parameter, if defined. Otherwise returns null */ + public abstract String get(String paramName); + + + // Oracle case: returns a JDBC URL based on the service alias specified in property name + public abstract String getConnectionURL(String propertyName); + + +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/SQLCache.java b/ARCHIVE/Database/src/alma/archive/database/helpers/SQLCache.java new file mode 100755 index 0000000000000000000000000000000000000000..267bc28686a808d8561a89a7a43ede4b2a08e215 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/SQLCache.java @@ -0,0 +1,79 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + */ +package alma.archive.database.helpers; + +import static java.lang.Math.abs; + +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map; +import java.util.Random; + +/** + * Cache for SQL strings with one variable parameter (the key). + * + */ +public class SQLCache { + + private final Map cache; + + private final int maxSize; + + private final String sqlTemplate; + + private final Random rnd; + + /** + * The template must contain exactly one place holder (usually the table + * name) which will be replaced with the key when a call to + * {@link #get(String)} happens. + */ + public SQLCache(final String sqlTemplate, final int maxSize) { + cache = new HashMap(maxSize); + this.maxSize = maxSize; + this.sqlTemplate = sqlTemplate; + rnd = new Random(); + } + + public String get(final String key) { + String sql = null; + synchronized (cache) { + sql = cache.get(key); + if (sql == null) { + sql = String.format(sqlTemplate, key); + if (cache.size() >= maxSize) { + int index = abs(rnd.nextInt() % maxSize); + final Iterator iterator = + cache.keySet().iterator(); + while (index > 1) { + iterator.next(); + index--; + } + cache.remove(iterator.next()); + } + cache.put(key, sql); + } + } + return sql; + } +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/AbstractDbConfig.java b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/AbstractDbConfig.java new file mode 100755 index 0000000000000000000000000000000000000000..2bb1620ebd04bc0386c793862c70bca13137f489 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/AbstractDbConfig.java @@ -0,0 +1,188 @@ +/** + * Copyright European Southern Observatory 2010 + */ + +package alma.archive.database.helpers.wrappers; + +import java.util.logging.Logger; + +import alma.archive.database.helpers.ArchiveConfigurationOld; +import alma.archive.database.helpers.DBConfiguration; + +/** + * An abstract helper class for loading archiveConfig.properties + * + * @author rkurowsk, April 30, 2010 + * @version $Revision: 1.1 $ + */ + +// $Id: AbstractDbConfig.java,v 1.1 2010/05/03 09:17:47 rkurowsk Exp $ + +public abstract class AbstractDbConfig { + + public static final String HSQLDB_DRIVER = "org.hsqldb.jdbcDriver"; + public static final String ORACLE_DRIVER = "oracle.jdbc.driver.OracleDriver"; + public static final String MYSQL_DRIVER = "oracle.jdbc.driver.OracleDriver"; + + private static final String JDBC_HSQLDB = "jdbc:hsqldb"; + private static final String HSQLDB_DIALECT = "org.hibernate.dialect.HSQLDialect"; + + private static final String JDBC_ORACLE = "jdbc:oracle"; + private static final String ORACLE_DIALECT = "org.hibernate.dialect.Oracle10gDialect"; + + private static final String JDBC_MYSQL = "jdbc:mysql"; + private static final String MYSQL_DIALECT = "org.hibernate.dialect.MySQLDialect"; + + private Logger logger; + private DBConfiguration dbConfiguration; + + private String connectionUrl; + private String user; + private String password; + private String driver; + private String dialect; + + /** + * Constructor which attempts to load dbConfiguration and + * hence the archiveConfig.properties file. + * + * @param logger + * @throws DbConfigException + * @throws IllegalArgumentException + */ + public AbstractDbConfig(Logger logger ) throws DbConfigException { + + if( logger == null ) { + throw new IllegalArgumentException( "Null logger passed to AbstractDbConfig" ); + } + + this.logger = logger; + + try { + + dbConfiguration = DBConfiguration.instance( logger ); + + // ArchiveConfigurationOld means that archiveConfig.properties wasn't found + if(dbConfiguration instanceof ArchiveConfigurationOld){ + + String archiveConfigFileSysProp = System.getProperty("archive.configFile"); + String acsDataSysProp = System.getProperty("ACS.data"); + throw new DbConfigException("Could not find archiveConfig.properties. " + + "\nJava System property 'archive.configFile' = " + archiveConfigFileSysProp + + "\nJava System property 'ACS.data' = " + acsDataSysProp + + "\nEither point to archiveConfig.properties directly " + + "with the Java system property: 'archive.configFile' " + + "\nor define the Java system property 'ACS.data' and " + + "put archiveConfig.properties in ACS.data/config."); + } + + extractParams(); + + }catch( Exception e ) { + throw new DbConfigException( e.getMessage(), e ); + } + + } + + /** + * Extracts the required parameters from archiveConfig.properties using + * the DBConfiguration class. Implementations of this method should call: + * extractParam and configureConnectionUrl. + * + * @throws DbConfigException + */ + protected abstract void extractParams() throws DbConfigException; + + /** + * Exctracts the connection url and sets the driver & dialect + * + * @param connectionParamName + * @throws DbConfigException + */ + protected final void configureConnectionUrl(String connUrl) throws DbConfigException { + + setConnectionUrl(connUrl); + + // work out DB driver and dialect (only oracle, mysql and hsqldb are currently supported) + if (getConnectionUrl().contains(JDBC_ORACLE)) { + setDriver(ORACLE_DRIVER); + setDialect(ORACLE_DIALECT); + } else if (getConnectionUrl().contains(JDBC_HSQLDB)) { + setDriver(HSQLDB_DRIVER); + setDialect(HSQLDB_DIALECT); + } else if (getConnectionUrl().contains(JDBC_MYSQL)) { + setDriver(MYSQL_DRIVER); + setDialect(MYSQL_DIALECT); + }else{ + String msg = "Unsupported db url: " + connUrl; + logger.severe(msg); + throw new RuntimeException(msg); + } + } + + /** + * This method extracts the given parameter from the dbConfiguration. + * It throws a DbConfigException if the parmeter is null. + * + * @param paramName + * @return + * @throws DbConfigException + */ + protected final String extractParam(String paramName) throws DbConfigException { + + String paramValue = dbConfiguration.get(paramName); + if(paramValue == null){ + throw new DbConfigException( "Error in archiveConfig.properties: " + + paramName + " is not defined" ); + } + logger.finer( paramName + " = " + paramValue ); + + return paramValue; + + } + + public String getPassword() { + return password; + } + + public String getUsername() { + return user; + } + + public String getDialect() { + return dialect; + } + + public String getConnectionUrl() { + return connectionUrl; + } + + public String getDriver(){ + return driver; + } + + public Logger getLogger() { + return logger; + } + + protected void setConnectionUrl(String connectionUrl) { + this.connectionUrl = connectionUrl; + } + + protected void setUser(String user) { + this.user = user; + } + + protected void setPassword(String password) { + this.password = password; + } + + protected void setDriver(String driver) { + this.driver = driver; + } + + protected void setDialect(String dialect) { + this.dialect = dialect; + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/DbConfigException.java b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/DbConfigException.java new file mode 100755 index 0000000000000000000000000000000000000000..af5a0346e939612288c38b0866a58c819e671582 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/DbConfigException.java @@ -0,0 +1,34 @@ +/** + * Copyright European Southern Observatory 2009 + */ +package alma.archive.database.helpers.wrappers; + +/** + * + * Thrown when problems found in the archiveConfig.properties file + * + * @author rkurowsk, Aug 26, 2009 + * @version $Revision: 1.1 $ + */ + +// $Id: DbConfigException.java,v 1.1 2010/05/03 09:17:47 rkurowsk Exp $ +public class DbConfigException extends Exception { + + private static final long serialVersionUID = 1234L; + + public DbConfigException() { + super(); + } + + public DbConfigException( String message, Throwable cause ) { + super( message, cause ); + } + + public DbConfigException( String message ) { + super( message ); + } + + public DbConfigException( Throwable cause ) { + super( cause ); + } +} diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/RelationalDbConfig.java b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/RelationalDbConfig.java new file mode 100755 index 0000000000000000000000000000000000000000..b4981dca0320a32aedab535a1eb6be00ee4e2824 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/RelationalDbConfig.java @@ -0,0 +1,50 @@ +/** + * Copyright European Southern Observatory 2010 + */ + +package alma.archive.database.helpers.wrappers; + +import java.util.logging.Logger; + +/** + * A helper class for loading archiveConfig.properties + * + * @author rkurowsk, May 3, 2010 + * @version $Revision: 1.1 $ + */ + +// $Id: RelationalDbConfig.java,v 1.1 2010/05/03 09:17:47 rkurowsk Exp $ + +public class RelationalDbConfig extends AbstractDbConfig { + + + // Keywords in archiveConfig.properties + private static final String ARCHIVE_RELATIONAL_CONNECTION = "archive.relational.connection"; + private static final String ARCHIVE_RELATIONAL_USER = "archive.relational.user"; + private static final String ARCHIVE_RELATIONAL_PASSWORD = "archive.relational.passwd"; + + /** + * Constructor which attempts to load dbConfiguration and + * hence the archiveConfig.properties file. + * + * @param logger + * @throws DbConfigException + * @throws IllegalArgumentException + */ + public RelationalDbConfig(Logger logger ) throws DbConfigException { + super(logger); + } + + /** + * Extracts the connection, user & password params + * @throws DbConfigException + */ + @Override + protected void extractParams()throws DbConfigException { + + configureConnectionUrl(extractParam(ARCHIVE_RELATIONAL_CONNECTION)); + setUser(extractParam( ARCHIVE_RELATIONAL_USER)); + setPassword(extractParam(ARCHIVE_RELATIONAL_PASSWORD)); + } + +} \ No newline at end of file diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/StateArchiveDbConfig.java b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/StateArchiveDbConfig.java new file mode 100755 index 0000000000000000000000000000000000000000..ca4fc7eb3ff2902d0f1bac064fbfab63aaf1de87 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/StateArchiveDbConfig.java @@ -0,0 +1,49 @@ +/** + * Copyright European Southern Observatory 2009 + */ + +package alma.archive.database.helpers.wrappers; + +import java.util.logging.Logger; + +/** + * An interface to the archiveConfig.properties file. + * + * This class implements StateArchive-specific policies. + * + * @author rkurowsk, July 30, 2009 + * @version $Revision: 1.1 $ + */ + +// $Id: StateArchiveDbConfig.java,v 1.1 2010/05/03 09:17:47 rkurowsk Exp $ + +public class StateArchiveDbConfig extends AbstractDbConfig { + + private static final String STATE_ARCHIVE_CONNECTION = "archive.statearchive.connection"; + private static final String STATE_ARCHIVE_USER = "archive.statearchive.user"; + private static final String STATE_ARCHIVE_PASSWORD = "archive.statearchive.passwd"; + + /** + * Read DB configuration properties from a file. + * + * @param logger + * @throws DbConfigException + * @throws IllegalArgumentException + */ + public StateArchiveDbConfig(Logger logger ) + throws DbConfigException { + super( logger ); + } + + /** + * Extracts the connection, user & password params + * @throws DbConfigException + */ + @Override + protected void extractParams()throws DbConfigException { + + configureConnectionUrl(extractParam(STATE_ARCHIVE_CONNECTION)); + setUser(extractParam(STATE_ARCHIVE_USER)); + setPassword(extractParam(STATE_ARCHIVE_PASSWORD)); + } +} \ No newline at end of file diff --git a/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/TmcdbDbConfig.java b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/TmcdbDbConfig.java new file mode 100755 index 0000000000000000000000000000000000000000..dad09c61b9f44acb40b0dc9411a3f9794908f21c --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/database/helpers/wrappers/TmcdbDbConfig.java @@ -0,0 +1,50 @@ +/** + * + * Copyright European Southern Observatory 2008 + */ + +package alma.archive.database.helpers.wrappers; + +import java.util.logging.Logger; + +/** + * An interface to the archiveConfig.properties file. + * + * This class implements Tmcdb-specific policies. + * + * @author rkurowsk, May 3, 2010 + * @version $Revision: 1.1 $ + */ + +// $Id: TmcdbDbConfig.java,v 1.1 2010/05/03 09:17:47 rkurowsk Exp $ + +public class TmcdbDbConfig extends AbstractDbConfig { + + private static final String TMCDB_CONNECTION = "archive.tmcdb.connection"; + private static final String TMCDB_USER = "archive.tmcdb.user"; + private static final String TMCDB_PASSWORD = "archive.tmcdb.passwd"; + + /** + * Read DB configuration properties from a file. + * + * @param logger + * @throws DbConfigException + * @throws IllegalArgumentException + */ + public TmcdbDbConfig(Logger logger ) throws DbConfigException { + super( logger ); + } + + /** + * Extracts the connection, user & password params + * @throws DbConfigException + */ + @Override + protected void extractParams()throws DbConfigException { + + configureConnectionUrl(extractParam(TMCDB_CONNECTION)); + setUser(extractParam(TMCDB_USER)); + setPassword(extractParam(TMCDB_PASSWORD)); + } + +} \ No newline at end of file diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveAccessException.java b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveAccessException.java new file mode 100755 index 0000000000000000000000000000000000000000..c8205c9ed8269c31067bd5e584bf24bfbf163047 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveAccessException.java @@ -0,0 +1,88 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:36:09 $ +// $Log: ArchiveAccessException.java,v $ +// Revision 1.6 2003/12/01 12:36:09 sfarrow +// *** empty log message *** +// +// Revision 1.5 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.4 2003/11/26 13:26:43 hmeuss +// Migrated to ACS 3.0 +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions; +/** + * @author hmeuss + * + */ +public class ArchiveAccessException extends ArchiveException { + + /** + * + */ + public ArchiveAccessException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public ArchiveAccessException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public ArchiveAccessException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public ArchiveAccessException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveCursorException.java b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveCursorException.java new file mode 100755 index 0000000000000000000000000000000000000000..0085d9dd42ad2b8b26d519fbff33d52bdfd8fdc8 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveCursorException.java @@ -0,0 +1,82 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: ArchiveCursorException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions; +/** + * @author hmeuss + * + */ +public class ArchiveCursorException extends ArchiveException { + + /** + * + */ + public ArchiveCursorException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public ArchiveCursorException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public ArchiveCursorException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public ArchiveCursorException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveException.java b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveException.java new file mode 100755 index 0000000000000000000000000000000000000000..42bd37da4ac468c49403de55bf4daa4535ac1782 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveException.java @@ -0,0 +1,84 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 26, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: ArchiveException.java,v $ +// Revision 1.5 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/22 15:11:10 sfarrow +// ACS-3.0 +// +// Revision 1.2 2003/09/19 09:54:39 sfarrow +// Preliminary implementation of the Xindice internal interface +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions; + +/** + * @author hmeuss + * + */ +public class ArchiveException extends Exception +{ + public ArchiveException() + { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public ArchiveException(String message) + { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public ArchiveException(String message, Throwable cause) + { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public ArchiveException(Throwable cause) + { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveGeneralException.java b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveGeneralException.java new file mode 100755 index 0000000000000000000000000000000000000000..d0b29b54e58cfde5234a84532963d192e55c3a70 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveGeneralException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: ArchiveGeneralException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/22 15:11:10 sfarrow +// ACS-3.0 +// +// Revision 1.2 2003/09/19 09:54:39 sfarrow +// Preliminary implementation of the Xindice internal interface +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions; +/** + * @author hmeuss + * + */ +public class ArchiveGeneralException extends ArchiveException { + + /** + * + */ + public ArchiveGeneralException() + { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public ArchiveGeneralException(String message) + { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public ArchiveGeneralException(String message, Throwable cause) + { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public ArchiveGeneralException(Throwable cause) + { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveSyntaxException.java b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveSyntaxException.java new file mode 100755 index 0000000000000000000000000000000000000000..eb19223c68a4e173f4914c58692088de655c3a67 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveSyntaxException.java @@ -0,0 +1,82 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 26, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: ArchiveSyntaxException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions; +/** + * @author hmeuss + * + */ +public class ArchiveSyntaxException extends ArchiveException { + + /** + * + */ + public ArchiveSyntaxException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public ArchiveSyntaxException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public ArchiveSyntaxException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public ArchiveSyntaxException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveUserException.java b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveUserException.java new file mode 100755 index 0000000000000000000000000000000000000000..cb31ff5af527a9089c840acb6d40433611c9dead --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/ArchiveUserException.java @@ -0,0 +1,82 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: ArchiveUserException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions; +/** + * @author hmeuss + * + */ +public class ArchiveUserException extends ArchiveException { + + /** + * + */ + public ArchiveUserException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public ArchiveUserException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public ArchiveUserException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public ArchiveUserException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/ModuleCriticalException.java b/ARCHIVE/Database/src/alma/archive/exceptions/ModuleCriticalException.java new file mode 100755 index 0000000000000000000000000000000000000000..5124925b9879123781e863437f66accd31ee4e43 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/ModuleCriticalException.java @@ -0,0 +1,113 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Sep 16, 2004 + * + */ + + +// $Author: mbauhofe $ +// $Date: 2011/06/14 14:02:56 $ +// $Log: ModuleCriticalException.java,v $ +// Revision 1.6 2011/06/14 14:02:56 mbauhofe +// Replaced XML_HISTORY concept with UID_LOOKUP (view). +// Some clean up/core reorganization. +// +// Revision 1.5 2004/09/23 11:59:15 hmeuss +// Oracle DatabaseReader now creates a new connection object in every method call. +// +// Added ModuleCriticalException to more methods of the internal IF +// +// Revision 1.4 2004/09/22 13:30:13 hmeuss +// getMessage overridden +// +// Revision 1.3 2004/09/20 15:36:49 hmeuss +// Moved all IDLs to IDL module, master component implementation back SubsytemAdministration module +// +// Revision 1.2 2004/09/17 09:06:02 hmeuss +// *** empty log message *** +// +// Revision 1.1 2004/09/17 08:50:38 hmeuss +// Added ModuleCriticalException that will be propagated upwards through all classes +// + +package alma.archive.exceptions; + +/** + * + * A wrapper for exceptions thrown by Database module that + * are critical for the module. If any class of this module throws this exception, it must be + * catched by a Archive component implementation. In this case, + * the subsystem master component must be notified using the troubleCode and the troubleMessage, and + * then the exception is handled according to the cause of the ModuleCriticalException. The cause + * is always the exception originally thrown in the Database module. + * + * This class contains two parameters, the troubleCode and the troubleMessage. These are + * used to forward the problem to the subsystem master component. + * + * @author hmeuss + * + * Trouble codes: + * 1) No connection to the database cpuld be established. + * + */ +public class ModuleCriticalException extends Exception { + + private static final long serialVersionUID = -6476736271153168220L; + + final protected int m_troubleCode; + + final protected String m_troubleMessage; + + /** + * @param cause + */ + public ModuleCriticalException(Throwable cause, int troubleCode, String troubleMessage) { + super(cause); + m_troubleCode=troubleCode; + m_troubleMessage=troubleMessage; + } + + + + /** + * @return + */ + public int getTroubleCode() { + return m_troubleCode; + } + + /** + * @return + */ + public String getTroubleMessage() { + return m_troubleMessage; + } + + /** + * @see java.lang.Throwable#getMessage() + */ + public String getMessage() { + // we have to return the message of the cause: + return getCause().getMessage(); + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/access/EntityDirtyException.java b/ARCHIVE/Database/src/alma/archive/exceptions/access/EntityDirtyException.java new file mode 100755 index 0000000000000000000000000000000000000000..00ac5fec061bb4430b5d0ab86355c3cafa92b9d4 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/access/EntityDirtyException.java @@ -0,0 +1,88 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: EntityDirtyException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/29 09:02:04 hmeuss +// Java internal interface updated +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.access; + +import alma.archive.exceptions.ArchiveAccessException; + +/** + * @author hmeuss + * + */ +public class EntityDirtyException extends ArchiveAccessException { + + /** + * + */ + public EntityDirtyException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public EntityDirtyException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public EntityDirtyException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public EntityDirtyException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/access/PermissionDeniedException.java b/ARCHIVE/Database/src/alma/archive/exceptions/access/PermissionDeniedException.java new file mode 100755 index 0000000000000000000000000000000000000000..7e79b74bdfa53ad7c1d35ab93789f317e9171b4d --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/access/PermissionDeniedException.java @@ -0,0 +1,85 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: PermissionDeniedException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.access; + +import alma.archive.exceptions.ArchiveAccessException; + +/** + * @author hmeuss + * + */ +public class PermissionDeniedException extends ArchiveAccessException { + + /** + * + */ + public PermissionDeniedException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public PermissionDeniedException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public PermissionDeniedException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public PermissionDeniedException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/cursor/CursorClosedException.java b/ARCHIVE/Database/src/alma/archive/exceptions/cursor/CursorClosedException.java new file mode 100755 index 0000000000000000000000000000000000000000..c76b97edba0f56ac87c3eda983dc233c88dad897 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/cursor/CursorClosedException.java @@ -0,0 +1,85 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: CursorClosedException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.cursor; + +import alma.archive.exceptions.ArchiveCursorException; + +/** + * @author hmeuss + * + */ +public class CursorClosedException extends ArchiveCursorException { + + /** + * + */ + public CursorClosedException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public CursorClosedException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public CursorClosedException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public CursorClosedException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/ArchiveCommunicationException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/ArchiveCommunicationException.java new file mode 100755 index 0000000000000000000000000000000000000000..f33748d81d7f2c280b55a84ba80be45fb7c91e0a --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/ArchiveCommunicationException.java @@ -0,0 +1,79 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Sep 17, 2004 + * + */ + + +// $Author: hmeuss $ +// $Date: 2004/09/17 08:53:41 $ +// $Log: ArchiveCommunicationException.java,v $ +// Revision 1.1 2004/09/17 08:53:41 hmeuss +// *** empty log message *** +// + +package alma.archive.exceptions.general; + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * Thrown when a communication problem INSIDE the ARCHIVE modules occurs. + * + * @author hmeuss + * + */ +public class ArchiveCommunicationException extends ArchiveGeneralException { + + /** + * + */ + public ArchiveCommunicationException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public ArchiveCommunicationException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public ArchiveCommunicationException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public ArchiveCommunicationException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/DatabaseException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/DatabaseException.java new file mode 100755 index 0000000000000000000000000000000000000000..0ff33e7fff999a8ec5ee1c87be9d34a74b19845d --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/DatabaseException.java @@ -0,0 +1,90 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: DatabaseException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/22 15:11:10 sfarrow +// ACS-3.0 +// +// Revision 1.2 2003/09/19 09:54:39 sfarrow +// Preliminary implementation of the Xindice internal interface +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class DatabaseException extends ArchiveGeneralException { + + /** + * + */ + public DatabaseException() + { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public DatabaseException(String message) + { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public DatabaseException(String message, Throwable cause) + { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public DatabaseException(Throwable cause) + { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/DocumentDoesNotExistException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/DocumentDoesNotExistException.java new file mode 100755 index 0000000000000000000000000000000000000000..0138cb4e0bffed673c48ac6f558f3b758959b3d5 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/DocumentDoesNotExistException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: DocumentDoesNotExistException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class DocumentDoesNotExistException extends ArchiveGeneralException { + + /** + * + */ + public DocumentDoesNotExistException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public DocumentDoesNotExistException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public DocumentDoesNotExistException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public DocumentDoesNotExistException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityAlreadyDeletedException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityAlreadyDeletedException.java new file mode 100755 index 0000000000000000000000000000000000000000..f7731336efb2ce18c618acff9e71cabdb140fe1b --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityAlreadyDeletedException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: EntityAlreadyDeletedException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class EntityAlreadyDeletedException extends ArchiveGeneralException { + + /** + * + */ + public EntityAlreadyDeletedException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public EntityAlreadyDeletedException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public EntityAlreadyDeletedException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public EntityAlreadyDeletedException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityDoesNotExistException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityDoesNotExistException.java new file mode 100755 index 0000000000000000000000000000000000000000..ea0431697e8e4df43724937f2b5a844d1fe7db86 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityDoesNotExistException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 29, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: EntityDoesNotExistException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/29 09:02:04 hmeuss +// Java internal interface updated +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class EntityDoesNotExistException extends ArchiveGeneralException { + + /** + * + */ + public EntityDoesNotExistException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public EntityDoesNotExistException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public EntityDoesNotExistException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public EntityDoesNotExistException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityExistsException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityExistsException.java new file mode 100755 index 0000000000000000000000000000000000000000..69dcd4ffd03765b245ccdb3b98b6c4b1a49c40de --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityExistsException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 29, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: EntityExistsException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/29 09:02:04 hmeuss +// Java internal interface updated +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class EntityExistsException extends ArchiveGeneralException { + + /** + * + */ + public EntityExistsException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public EntityExistsException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public EntityExistsException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public EntityExistsException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityUndeletedException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityUndeletedException.java new file mode 100755 index 0000000000000000000000000000000000000000..1642ea655aff709ddbe4d8a514d318216336808a --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/EntityUndeletedException.java @@ -0,0 +1,87 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: EntityUndeletedException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class EntityUndeletedException extends ArchiveGeneralException { + + /** + * + */ + public EntityUndeletedException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public EntityUndeletedException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public EntityUndeletedException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public EntityUndeletedException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/HistoryInconsistencyException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/HistoryInconsistencyException.java new file mode 100755 index 0000000000000000000000000000000000000000..86ae09e36faf52c4058bdaea1e939c31d2f29e88 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/HistoryInconsistencyException.java @@ -0,0 +1,89 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: HistoryInconsistencyException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/29 09:02:04 hmeuss +// Java internal interface updated +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class HistoryInconsistencyException extends ArchiveGeneralException { + + /** + * + */ + public HistoryInconsistencyException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public HistoryInconsistencyException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public HistoryInconsistencyException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public HistoryInconsistencyException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/IllegalTimestampException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/IllegalTimestampException.java new file mode 100755 index 0000000000000000000000000000000000000000..7cf06b166df6c2747ffa01b6827495f06a8666c0 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/IllegalTimestampException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: IllegalTimestampException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class IllegalTimestampException extends ArchiveGeneralException { + + /** + * + */ + public IllegalTimestampException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public IllegalTimestampException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public IllegalTimestampException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public IllegalTimestampException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/NamespaceDefinedException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/NamespaceDefinedException.java new file mode 100755 index 0000000000000000000000000000000000000000..ebd65d565e37f93d6d6bb702b581d6b9f3477d41 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/NamespaceDefinedException.java @@ -0,0 +1,89 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: hmeuss $ +// $Date: 2004/05/28 09:20:45 $ +// $Log: NamespaceDefinedException.java,v $ +// Revision 1.1 2004/05/28 09:20:45 hmeuss +// Throws NamespaceDefinedException, when a namespace prefix is registered that already exists +// +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class NamespaceDefinedException extends ArchiveGeneralException { + + /** + * + */ + public NamespaceDefinedException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public NamespaceDefinedException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public NamespaceDefinedException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public NamespaceDefinedException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/NotImplementedException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/NotImplementedException.java new file mode 100755 index 0000000000000000000000000000000000000000..68cd12dc8361a9748d0b989c9475ecdf93696a7a --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/NotImplementedException.java @@ -0,0 +1,89 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 29, 2003 + * + */ + + +// $Author: hmeuss $ +// $Date: 2012/02/27 16:25:26 $ +// $Log: NotImplementedException.java,v $ +// Revision 1.1 2012/02/27 16:25:26 hmeuss +// added NotImplemented exception +// +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/29 09:02:04 hmeuss +// Java internal interface updated +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class NotImplementedException extends ArchiveGeneralException { + + /** + * + */ + public NotImplementedException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public NotImplementedException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public NotImplementedException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public NotImplementedException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/UndefinedNamespaceException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/UndefinedNamespaceException.java new file mode 100755 index 0000000000000000000000000000000000000000..9ef17d52f97ecb265e87dfba50c356f4393bd150 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/UndefinedNamespaceException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: UndefinedNamespaceException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class UndefinedNamespaceException extends ArchiveGeneralException { + + /** + * + */ + public UndefinedNamespaceException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public UndefinedNamespaceException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public UndefinedNamespaceException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public UndefinedNamespaceException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/UnknownSchemaException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/UnknownSchemaException.java new file mode 100755 index 0000000000000000000000000000000000000000..d8b410e56a6fac1628c5f3f3590c5d0deee5f3c0 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/UnknownSchemaException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: UnknownSchemaException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.general; + + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author hmeuss + * + */ +public class UnknownSchemaException extends ArchiveGeneralException { + + /** + * + */ + public UnknownSchemaException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public UnknownSchemaException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public UnknownSchemaException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public UnknownSchemaException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/general/VDocException.java b/ARCHIVE/Database/src/alma/archive/exceptions/general/VDocException.java new file mode 100755 index 0000000000000000000000000000000000000000..5740b0645121b40cbf5ac69ae1249c4891dc6fb8 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/general/VDocException.java @@ -0,0 +1,66 @@ +/* + * Created on 28-May-2004 + * + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.archive.exceptions.general; + +import alma.archive.exceptions.ArchiveGeneralException; + +/** + * @author simon + */ +public class VDocException extends ArchiveGeneralException +{ + /** + * + */ + public VDocException() + { + super(); + // TODO Auto-generated constructor stub + } + /** + * @param message + */ + public VDocException(String message) + { + super(message); + // TODO Auto-generated constructor stub + } + /** + * @param message + * @param cause + */ + public VDocException(String message, Throwable cause) + { + super(message, cause); + // TODO Auto-generated constructor stub + } + /** + * @param cause + */ + public VDocException(Throwable cause) + { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/identifier/GlobalRangeExceededException.java b/ARCHIVE/Database/src/alma/archive/exceptions/identifier/GlobalRangeExceededException.java new file mode 100755 index 0000000000000000000000000000000000000000..153c6fb3085f493397afe97121a7ff3f288ccae0 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/identifier/GlobalRangeExceededException.java @@ -0,0 +1,71 @@ +/* + * Created on 06-Apr-2005 + * + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.archive.exceptions.identifier; + +import alma.archive.exceptions.ArchiveException; + +/** + * @author simon + */ +public class GlobalRangeExceededException extends ArchiveException +{ + + /** + * + */ + public GlobalRangeExceededException() + { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public GlobalRangeExceededException(String message) + { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public GlobalRangeExceededException(String message, Throwable cause) + { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public GlobalRangeExceededException(Throwable cause) + { + super(cause); + // TODO Auto-generated constructor stub + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/identifier/LocalRangeExceededException.java b/ARCHIVE/Database/src/alma/archive/exceptions/identifier/LocalRangeExceededException.java new file mode 100755 index 0000000000000000000000000000000000000000..1ecbc6f1e51f3d7359343a911245fc9044deb21d --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/identifier/LocalRangeExceededException.java @@ -0,0 +1,71 @@ +/* + * Created on 06-Apr-2005 + * + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.archive.exceptions.identifier; + +import alma.archive.exceptions.ArchiveException; + +/** + * @author simon + */ +public class LocalRangeExceededException extends ArchiveException +{ + + /** + * + */ + public LocalRangeExceededException() + { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public LocalRangeExceededException(String message) + { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public LocalRangeExceededException(String message, Throwable cause) + { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public LocalRangeExceededException(Throwable cause) + { + super(cause); + // TODO Auto-generated constructor stub + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/identifier/RangeExceededException.java b/ARCHIVE/Database/src/alma/archive/exceptions/identifier/RangeExceededException.java new file mode 100755 index 0000000000000000000000000000000000000000..6b9103c1a02697abb08d53556dfd3495175314ef --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/identifier/RangeExceededException.java @@ -0,0 +1,71 @@ +/* + * Created on 18-Aug-2005 + * + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.archive.exceptions.identifier; + +import alma.archive.exceptions.ArchiveException; + +/** + * @author simon + */ +public class RangeExceededException extends ArchiveException +{ + + /** + * + */ + public RangeExceededException() + { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public RangeExceededException(String message) + { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public RangeExceededException(String message, Throwable cause) + { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public RangeExceededException(Throwable cause) + { + super(cause); + // TODO Auto-generated constructor stub + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/identifier/UIDSyntaxException.java b/ARCHIVE/Database/src/alma/archive/exceptions/identifier/UIDSyntaxException.java new file mode 100755 index 0000000000000000000000000000000000000000..9db256d3eddf15ece0427b25217e6dfcd609d773 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/identifier/UIDSyntaxException.java @@ -0,0 +1,71 @@ +/* + * Created on 06-Apr-2005 + * + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.archive.exceptions.identifier; + +import alma.archive.exceptions.ArchiveException; + +/** + * @author simon + */ +public class UIDSyntaxException extends ArchiveException +{ + + /** + * + */ + public UIDSyntaxException() + { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public UIDSyntaxException(String message) + { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public UIDSyntaxException(String message, Throwable cause) + { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public UIDSyntaxException(Throwable cause) + { + super(cause); + // TODO Auto-generated constructor stub + } + +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/syntax/IllegalHistoryNumberException.java b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/IllegalHistoryNumberException.java new file mode 100755 index 0000000000000000000000000000000000000000..95c9fefe021156046f62c8b76df5645c740e35e8 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/IllegalHistoryNumberException.java @@ -0,0 +1,89 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: IllegalHistoryNumberException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/29 09:02:04 hmeuss +// Java internal interface updated +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.syntax; + + +import alma.archive.exceptions.ArchiveSyntaxException; + +/** + * @author hmeuss + * + */ +public class IllegalHistoryNumberException extends ArchiveSyntaxException { + + /** + * + */ + public IllegalHistoryNumberException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public IllegalHistoryNumberException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public IllegalHistoryNumberException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public IllegalHistoryNumberException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedPermissionsException.java b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedPermissionsException.java new file mode 100755 index 0000000000000000000000000000000000000000..6c94831f82b719657bf9f8c3a24b5e85ea87d8ae --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedPermissionsException.java @@ -0,0 +1,85 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: MalformedPermissionsException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.syntax; + +import alma.archive.exceptions.ArchiveSyntaxException; + +/** + * @author hmeuss + * + */ +public class MalformedPermissionsException extends ArchiveSyntaxException { + + /** + * + */ + public MalformedPermissionsException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public MalformedPermissionsException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public MalformedPermissionsException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public MalformedPermissionsException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedQueryException.java b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedQueryException.java new file mode 100755 index 0000000000000000000000000000000000000000..32eb3b8c15920ebc18c884f0a0c7e389449d3553 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedQueryException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: MalformedQueryException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.syntax; + + +import alma.archive.exceptions.ArchiveSyntaxException; + +/** + * @author hmeuss + * + */ +public class MalformedQueryException extends ArchiveSyntaxException { + + /** + * + */ + public MalformedQueryException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public MalformedQueryException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public MalformedQueryException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public MalformedQueryException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedURIException.java b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedURIException.java new file mode 100755 index 0000000000000000000000000000000000000000..dedd4334e2ec174130ce00c32eacd81bd72c896f --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedURIException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: MalformedURIException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.syntax; + + +import alma.archive.exceptions.ArchiveSyntaxException; + +/** + * @author hmeuss + * + */ +public class MalformedURIException extends ArchiveSyntaxException { + + /** + * + */ + public MalformedURIException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public MalformedURIException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public MalformedURIException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public MalformedURIException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedXMLException.java b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedXMLException.java new file mode 100755 index 0000000000000000000000000000000000000000..8008330fe375149f641b91b49d9b3e3f5c82e9c3 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedXMLException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: MalformedXMLException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.syntax; + + +import alma.archive.exceptions.ArchiveSyntaxException; + +/** + * @author hmeuss + * + */ +public class MalformedXMLException extends ArchiveSyntaxException { + + /** + * + */ + public MalformedXMLException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public MalformedXMLException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public MalformedXMLException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public MalformedXMLException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedXPointerException.java b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedXPointerException.java new file mode 100755 index 0000000000000000000000000000000000000000..5e988cdb4f125b89509b29ccb1559d93fa18453c --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/MalformedXPointerException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: MalformedXPointerException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.syntax; + + +import alma.archive.exceptions.ArchiveSyntaxException; + +/** + * @author hmeuss + * + */ +public class MalformedXPointerException extends ArchiveSyntaxException { + + /** + * + */ + public MalformedXPointerException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public MalformedXPointerException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public MalformedXPointerException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public MalformedXPointerException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/syntax/UnderspecifiedQueryException.java b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/UnderspecifiedQueryException.java new file mode 100755 index 0000000000000000000000000000000000000000..7f9d1b16ca8cf242d047ccffbc1284d8daf5707e --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/UnderspecifiedQueryException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: UnderspecifiedQueryException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.syntax; + + +import alma.archive.exceptions.ArchiveSyntaxException; + +/** + * @author hmeuss + * + */ +public class UnderspecifiedQueryException extends ArchiveSyntaxException { + + /** + * + */ + public UnderspecifiedQueryException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public UnderspecifiedQueryException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public UnderspecifiedQueryException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public UnderspecifiedQueryException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/syntax/UnknownFlagException.java b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/UnknownFlagException.java new file mode 100755 index 0000000000000000000000000000000000000000..df2dd4d0539d61550abe2beeafa3b119e82246ac --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/syntax/UnknownFlagException.java @@ -0,0 +1,89 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: UnknownFlagException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:21 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/29 09:02:04 hmeuss +// Java internal interface updated +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.syntax; + + +import alma.archive.exceptions.ArchiveSyntaxException; + +/** + * @author hmeuss + * + */ +public class UnknownFlagException extends ArchiveSyntaxException { + + /** + * + */ + public UnknownFlagException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public UnknownFlagException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public UnknownFlagException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public UnknownFlagException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleAlreadyExistsException.java b/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleAlreadyExistsException.java new file mode 100755 index 0000000000000000000000000000000000000000..39680e5ba1575a7693e333e5f979d76e0a3a4ab1 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleAlreadyExistsException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: RoleAlreadyExistsException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.user; + + +import alma.archive.exceptions.ArchiveUserException; + +/** + * @author hmeuss + * + */ +public class RoleAlreadyExistsException extends ArchiveUserException { + + /** + * + */ + public RoleAlreadyExistsException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public RoleAlreadyExistsException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public RoleAlreadyExistsException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public RoleAlreadyExistsException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleDoesNotExistException.java b/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleDoesNotExistException.java new file mode 100755 index 0000000000000000000000000000000000000000..b6ff009760b5548004b69a1da3fc325bcba797de --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleDoesNotExistException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: RoleDoesNotExistException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.user; + + +import alma.archive.exceptions.ArchiveUserException; + +/** + * @author hmeuss + * + */ +public class RoleDoesNotExistException extends ArchiveUserException { + + /** + * + */ + public RoleDoesNotExistException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public RoleDoesNotExistException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public RoleDoesNotExistException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public RoleDoesNotExistException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleNotAssignedException.java b/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleNotAssignedException.java new file mode 100755 index 0000000000000000000000000000000000000000..c80261ed398908253c954d050383e06dba87a019 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/user/RoleNotAssignedException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: RoleNotAssignedException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.user; + + +import alma.archive.exceptions.ArchiveUserException; + +/** + * @author hmeuss + * + */ +public class RoleNotAssignedException extends ArchiveUserException { + + /** + * + */ + public RoleNotAssignedException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public RoleNotAssignedException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public RoleNotAssignedException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public RoleNotAssignedException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/user/UserAlreadyExistsException.java b/ARCHIVE/Database/src/alma/archive/exceptions/user/UserAlreadyExistsException.java new file mode 100755 index 0000000000000000000000000000000000000000..f0a681885749db812d0df2b9672b735b5912ddf5 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/user/UserAlreadyExistsException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: UserAlreadyExistsException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.user; + + +import alma.archive.exceptions.ArchiveUserException; + +/** + * @author hmeuss + * + */ +public class UserAlreadyExistsException extends ArchiveUserException { + + /** + * + */ + public UserAlreadyExistsException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public UserAlreadyExistsException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public UserAlreadyExistsException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public UserAlreadyExistsException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/Database/src/alma/archive/exceptions/user/UserDoesNotExistException.java b/ARCHIVE/Database/src/alma/archive/exceptions/user/UserDoesNotExistException.java new file mode 100755 index 0000000000000000000000000000000000000000..1889975c5dd8cdd941b1437e07e9bbe8ae4ceff6 --- /dev/null +++ b/ARCHIVE/Database/src/alma/archive/exceptions/user/UserDoesNotExistException.java @@ -0,0 +1,86 @@ +/* + * ALMA - Atacama Large Millimiter Array + * (c) European Southern Observatory, 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * All rights reserved + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * Created on Aug 28, 2003 + * + */ + + +// $Author: sfarrow $ +// $Date: 2003/12/01 12:20:04 $ +// $Log: UserDoesNotExistException.java,v $ +// Revision 1.4 2003/12/01 12:20:04 sfarrow +// Removed dependance on ACS +// +// Revision 1.3 2003/10/30 15:13:15 sfarrow +// moved all the exceptions across to use alma.* +// +// Revision 1.2 2003/10/20 08:46:20 hmeuss +// Added constructors from superclass, in order to create exceptions with messages. +// +// Revision 1.1 2003/08/28 15:41:19 hmeuss +// Some exceptions based AcsJexception +// + +package alma.archive.exceptions.user; + + +import alma.archive.exceptions.ArchiveUserException; + +/** + * @author hmeuss + * + */ +public class UserDoesNotExistException extends ArchiveUserException { + + /** + * + */ + public UserDoesNotExistException() { + super(); + // TODO Auto-generated constructor stub + } + + /** + * @param message + */ + public UserDoesNotExistException(String message) { + super(message); + // TODO Auto-generated constructor stub + } + + /** + * @param message + * @param cause + */ + public UserDoesNotExistException(String message, Throwable cause) { + super(message, cause); + // TODO Auto-generated constructor stub + } + + /** + * @param cause + */ + public UserDoesNotExistException(Throwable cause) { + super(cause); + // TODO Auto-generated constructor stub + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/.DS_Store b/ARCHIVE/SharedCode/TMCDB/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..3eeab96b7907063cde000fabbbf79aab613bf461 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/.DS_Store differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/.classpath b/ARCHIVE/SharedCode/TMCDB/Access/.classpath new file mode 100755 index 0000000000000000000000000000000000000000..9adf7f3f9d3922bb5d112ac92832b949351c9309 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/.classpath @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/.project b/ARCHIVE/SharedCode/TMCDB/Access/.project new file mode 100755 index 0000000000000000000000000000000000000000..b75c7d33055cf6e214162c92ebe8094f1d18d75e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/.project @@ -0,0 +1,17 @@ + + + Access + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/.settings/org.eclipse.core.resources.prefs b/ARCHIVE/SharedCode/TMCDB/Access/.settings/org.eclipse.core.resources.prefs new file mode 100755 index 0000000000000000000000000000000000000000..99f26c0203a7844de00dbfc56e6a35d8ed3c022c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/ARCHIVE/SharedCode/TMCDB/Access/build.xml b/ARCHIVE/SharedCode/TMCDB/Access/build.xml new file mode 100755 index 0000000000000000000000000000000000000000..4b6e616bd5a5cabfa786930a26a2557141e3c293 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/build.xml @@ -0,0 +1,171 @@ + + +Ant wrapper. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/config/Configuration.xml b/ARCHIVE/SharedCode/TMCDB/Access/config/Configuration.xml new file mode 100755 index 0000000000000000000000000000000000000000..15d6b54efa95e04cbdd0a843a59819ad7da74ec8 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/config/Configuration.xml @@ -0,0 +1,175 @@ + + + + + + + + + + + + + + + + + + + -173.0 + 244.76 + 4.95 + 0.69 + 0.73 + 0.38 + 8.45 + 30.33 + 0.0 + 0.94 + 0.0 + + + + + -105.36 + -700.95 + 0.17 + -0.46 + 10.29 + -25.95 + -1.42 + -1.31 + 3.60 + -2.46 + 2.51 + 0.27 + -0.06 + 0.0 + 28.9 + -837.14 + 6.76 + 5.93 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 0.0 + 0.0 + 0.0 + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBAccessIF.idl b/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBAccessIF.idl new file mode 100755 index 0000000000000000000000000000000000000000..837ba4543cab0a347f927275d2af20fbd9eaefac --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBAccessIF.idl @@ -0,0 +1,229 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: TMCDBAccessIF.idl,v 1.7 2011/08/09 15:48:17 rhiriart Exp $" + */ + +#ifndef TMCDBAccessIF_IDL +#define TMCDBAccessIF_IDL + +#include +#include +#include + +#pragma prefix "alma" + +module TMCDB { + + typedef sequence < TMCDB_IDL::PointingModelIDL > PointingModelSeq; + typedef sequence < TMCDB_IDL::StartupTelescopeIDL > StartupTelescopeSeq; + + /** + * Assembly configuration data. Includes the Assembly XML document and its + * Schema. + */ + struct AssemblyConfigXMLData { + string xmlDoc; + string schema; + }; + + /** + * Array reference location. Geocentric SI (meters) coordinates. + */ + struct ArrayReferenceLocation { + double x; + double y; + double z; + }; + + /// A structure to contain a pointing or focus model. + /// All values are in meters or radians + /// Allowed coefficient names depend on what sort of model. + struct ModelTerm { + string name; + double value; + }; + typedef sequence ModelTermSeq; + + /// A pointing model for an telescope. The overall pointing model for an + /// telescope has coefficients which are the sum of the base model and the + /// offsets for the band in use. Sequences can be zero length and bands or + /// coefficients which are not specified default to zero. The allowed + /// coefficients are: + /// "IA", "IE", "NPAE", "CA", "AN", "AW" + /// "HASA", "HACA", "HESE", "HECE", "HESA", + /// "HASA2", "HASA3", "HACA2", "HESA2", "HECA2", "HACA3", "HECA3", "HESA3" + struct TelescopePointingModel { + ModelTermSeq base; + }; + + /// The current pointing model for an telescope. No provision for offsets (cf. ALMA receiver bands) + /// is provided. + typedef sequence PointingModel; + + /// Structurally the focus and pointing model are the same. However they + /// will have different coefficient names. The allowed coefficients are: + /// "ALPHA", "BETA" (tip and tilt) + /// "XA", "XC", "XS", "XTA", "XT1", ... "XTn" (n is an integer) + /// "YA", "YC", "YS", "YTA", "YT1", ... "YTn" (n is an integer) + /// "ZA", "ZC", "ZS", "ZTA", "ZT1", ... "ZTn" (n is an integer) + struct TelescopeFocusModel { + ModelTermSeq base; + }; + + /// The current focus model for an telescope. Its the sum of the base + /// focus model and the offsets for the current band + typedef sequence FocusModel; + + typedef sequence TelescopeSeq; + + + interface Access : ACS::ACSComponent { + + string getConfigurationName() raises (TmcdbErrType::TmcdbErrorEx); + + /** + * The getStartupTelescopesInfo interface supplies the information needed + * to initialize all telescopes. Included are the name of the telescope, + * the pad on which it resides, the name of front end, the assembly + * locations in the front end, and the assembly locations in the + * telescope. + */ + StartupTelescopeSeq getStartupTelescopesInfo() + raises (TmcdbErrType::TmcdbErrorEx); + + /** + * The getStartupWeatherStationControllerInfo interface supplies the + * information needed to initialize the WeatherStation Controller, + * including WeatherStation devices list and its locations + */ + TMCDB_IDL::StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() + raises (TmcdbErrType::TmcdbErrorEx); + + /** + * The getTelescopeInfo interface supplies static information about the + * named telescope. If there is no such telescope, a TmcdbErrorEx is + * raised. + */ + TMCDB_IDL::TelescopeIDL getTelescopeInfo(in string telescopeName) + raises (TmcdbErrType::TmcdbSqlEx, + TmcdbErrType::TmcdbNoSuchRowEx, + TmcdbErrType::TmcdbDuplicateKeyEx); + + /** + * The getCurrentTelescopePadInfo interface returns the pad data + * structure for the pad on which the telescope currently resides. The + * SQL query is: select the pad for telescopeName where + * TelescopeToPad.EndTime is null and TelescopeToPad.Planned is �n�. + * If there is no such selection, an empty structure is returned. In + * this case the telescope is not currently on a pad, i.e. it is being + * transported or in the workshop. + */ + TMCDB_IDL::PadIDL getCurrentTelescopePadInfo(in string telescopeName) + raises (TmcdbErrType::TmcdbSqlEx, + TmcdbErrType::TmcdbNoSuchRowEx, + TmcdbErrType::TmcdbDuplicateKeyEx, + TmcdbErrType::TmcdbRowAlreadyExistsEx); + + /** + * Gets the HW assembly configuration data. + * + * serialNumber HW serial number, this is usually read directly from + * the device (AMSI card) at run time. + */ + AssemblyConfigXMLData getAssemblyConfigData(in string serialNumber) + raises (TmcdbErrType::TmcdbSqlEx, TmcdbErrType::TmcdbNoSuchRowEx); + + /** + * Sets up the startup telescopes information. This function provides a + * way to set up this structure from test cases. This is a temporary + * hack while a way to do this is implemented at the TMCDB layer. + */ + void setStartupTelescopesInfo(in StartupTelescopeSeq sai); + + /** + * Sets up the telescopes information. This function provides a way to + * set up this structure from test cases. This is a temporary hack + * while a way to do this is implemented at the TMCDB layer. + */ + void setTelescopeInfo(in string an, in TMCDB_IDL::TelescopeIDL ai); + + /** + * Sets up the telescope pads information. This function provides a way + * to set up this structure from test cases. This is a temporary hack + * while a way to do this is implemented at the TMCDB layer. + */ + void setTelescopePadInfo(in string an, in TMCDB_IDL::PadIDL api); + + TelescopePointingModel getCurrentTelescopePointingModel(in string telescopeName) + raises (TmcdbErrType::TmcdbErrorEx, + TmcdbErrType::TmcdbNoSuchRowEx); + + TelescopeFocusModel getCurrentTelescopeFocusModel(in string telescopeName) + raises (TmcdbErrType::TmcdbErrorEx, + TmcdbErrType::TmcdbNoSuchRowEx); + + string getTelescopeName() + raises (TmcdbErrType::TmcdbErrorEx, + TmcdbErrType::TmcdbNoSuchRowEx); + + /** + * Report that an telescope is about to become online. + * + * This function will add a record in the BaseElementOnline table, closing the previous + * record. Closing the record means updating the previous record setting a non-null + * EndTime. + * + * This function should be called before the assemblies that belong to the telescope call + * the function reportAssemblyOperational, as this function assumes that the proper record in + * the BaseElementOnline table has already been created. + * + * As this function needs to be called before the Assemblies become operational, the telescope + * is not actually online. It will become online only after all its subdevices are operational. + * This is the reason why we said that the telescope is "about to become" online in the first + * sentence. May be another function could be introduced to update the StartTime, although it + * is not clear that this is required at this point. + */ + void reportTelescopeOnline(in string telescopeName); + + /** + * Reports that an Assembly has been initialized. + * + * This will create a record in the BaseElementAssemblyList table. This table is kept + * for historical purposes, and to allow the system to query for the current assemblies present + * in the system without the need to activate and ask the Control Devices directly. + * + * This function should be called by Control Devices at the end of the hwOperational function. + * Control Devices shouldn't take any action in case there is an error inside this function. + * For this reason, no exception is thrown. This function has the semantic of a pure + * notification, and the Control Device should start regardless if the historical record is + * recorded or not. + */ + void reportAssemblyOperational(in string serialNumber, in string componentName); + + TelescopeSeq getTelescopes() raises (TmcdbErrType::TmcdbErrorEx, + TmcdbErrType::TmcdbNoSuchRowEx); + }; +}; + +#endif // TMCDBAccessIF_IDL diff --git a/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBComponent.idl b/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBComponent.idl new file mode 100755 index 0000000000000000000000000000000000000000..8ec03d90934a008c3605d5f4c6d07980b965829b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBComponent.idl @@ -0,0 +1,391 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: TMCDBComponent.idl 188744 2013-04-18 18:04:10Z rmarson $" + */ + +#ifndef TMCDBComponent_IDL +#define TMCDBComponent_IDL + +#include +#include +#include + +#pragma prefix "alma" + +module TMCDB { + + typedef sequence < TMCDB_IDL::PointingModelIDL > PointingModelSeq; + typedef sequence < TMCDB_IDL::StartupAntennaIDL > StartupAntennaSeq; + typedef sequence < double > MetrologyCoeffSeq; + + /** + * Assembly configuration data. Includes the Assembly XML document and its + * Schema. + */ + struct AssemblyConfigXMLData { + string xmlDoc; + string schema; + }; + + /** + * Array reference location. Geocentric SI (meters) coordinates. + */ + struct ArrayReferenceLocation { + double x; + double y; + double z; + }; + + /// An structure to contain a pointing or focus model. + /// All values are in meters or radians + /// Allowed coefficient names depend on what sort of model. + struct ModelTerm { + string name; + double value; + }; + typedef sequence ModelTermSeq; + + /// The offsets for each band in a focus or pointing model. The band must + /// be between 1 and 10 (inclusive). + struct BandOffsets { + ModelTermSeq terms; + short bandNumber; + }; + typedef sequence BandOffsetsSeq; + + /// A pointing model for an antenna. The overall pointing model for an + /// antenna has coefficients which are the sum of the base model and the + /// offsets for the band in use. Sequences can be zero length and bands or + /// coefficients which are not specified default to zero. The allowed + /// coefficients are: + /// "IA", "IE", "NPAE", "CA", "AN", "AW" + /// "HASA", "HACA", "HESE", "HECE", "HESA", + /// "HASA2", "HASA3", "HACA2", "HESA2", "HECA2", "HACA3", "HECA3", "HESA3" + struct BandPointingModel { + ModelTermSeq base; + BandOffsetsSeq offsets; + }; + + /// The current pointing model for an antenna. Its the sum of the base + /// pointing model and the offsets for the current band + typedef sequence PointingModel; + + /// Structurally the focus and pointing model are the same. However they + /// will have different coefficient names. The allowed coefficients are: + /// "ALPHA", "BETA" (tip and tilt) + /// "XA", "XC", "XS", "XTA", "XT1", ... "XTn" (n is an integer) + /// "YA", "YC", "YS", "YTA", "YT1", ... "YTn" (n is an integer) + /// "ZA", "ZC", "ZS", "ZTA", "ZT1", ... "ZTn" (n is an integer) + struct BandFocusModel { + ModelTermSeq base; + BandOffsetsSeq offsets; + }; + + /// The current focus model for an antenna. Its the sum of the base + /// focus model and the offsets for the current band + typedef sequence FocusModel; + + //struct FEDelay { + //ReceiverBandMod::ReceiverBand receiverBand; + //PolarizationTypeMod::PolarizationType polarization; + //NetSidebandMod::NetSideband sideband; + //double delay; + //}; + //typedef sequence FEDelaySeq; + + enum IFProcConnectionState { + USB_HIGH, + USB_LOW, + LSB_HIGH, + LSB_LOW + }; + + //struct IFDelay { + //BasebandNameMod::BasebandName baseband; + //PolarizationTypeMod::PolarizationType polarization; + //IFProcConnectionState ifSwitch; + //double delay; + //}; + //typedef sequence IFDelaySeq; + + //struct LODelay { + //BasebandNameMod::BasebandName baseband; + //double delay; + //}; + //typedef sequence LODelaySeq; + + //struct XPDelay { + //ReceiverBandMod::ReceiverBand receiverBand; + //NetSidebandMod::NetSideband sideband; + //BasebandNameMod::BasebandName baseband; + //double delay; + //}; + //typedef sequence XPDelaySeq; + + //struct AntennaDelays { + //double antennaDelay; + //double padDelay; + //FEDelaySeq feDelays; + //IFDelaySeq ifDelays; + //LODelaySeq loDelays; + //}; + + interface TMCDBComponent : ACS::ACSComponent { + + string getConfigurationName() raises (TmcdbErrType::TmcdbErrorEx); + + /** + * The getStartupAntennasInfo interface supplies the information needed + * to initialize all antennas. Included are the name of the antenna, + * the pad on which it resides, the name of front end, the assembly + * locations in the front end, and the assembly locations in the + * antenna. + */ + StartupAntennaSeq getStartupAntennasInfo() + raises (TmcdbErrType::TmcdbErrorEx); + + /** + * The getStartupWeatherStationControllerInfo interface supplies the + * information needed to initialize the WeatherStation Controller, + * including WeatherStation devices list and its locations + */ + TMCDB_IDL::StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() + raises (TmcdbErrType::TmcdbErrorEx); + + TMCDB_IDL::StartupAOSTimingIDL getStartupAOSTimingInfo() + raises (TmcdbErrType::TmcdbErrorEx); + + /** + * The getStartupCLOInfo interface supplies the information + * needed to initialize the Central LO. Included are SAS/LLC + * power supplies, LFRD, ML, and a sequence of photonic referneces. + */ + TMCDB_IDL::StartupCLOIDL getStartupCLOInfo() + raises (TmcdbErrType::TmcdbErrorEx); + + /** + * The getAntennaInfo interface supplies static information about the + * named antenna. If there is no such antenna, a TmcdbErrorEx is + * raised. + */ + TMCDB_IDL::AntennaIDL getAntennaInfo(in string antennaName) + raises (TmcdbErrType::TmcdbSqlEx, + TmcdbErrType::TmcdbNoSuchRowEx, + TmcdbErrType::TmcdbDuplicateKeyEx); + + /** + * The getCurrentAntennaPadInfo interface returns the pad data + * structure for the pad on which the antenna currently resides. The + * SQL query is: select the pad for antennaName where + * AntennaToPad.EndTime is null and AntennaToPad.Planned is �n�. + * If there is no such selection, an empty structure is returned. In + * this case the antenna is not currently on a pad, i.e. it is being + * transported or in the workshop. + */ + TMCDB_IDL::PadIDL getCurrentAntennaPadInfo(in string antennaName) + raises (TmcdbErrType::TmcdbSqlEx, + TmcdbErrType::TmcdbNoSuchRowEx, + TmcdbErrType::TmcdbDuplicateKeyEx, + TmcdbErrType::TmcdbRowAlreadyExistsEx); + + /** + * An antenna pointing model is a combination of information about the + * pointing model itself and the terms in the pointing model. The data + * structure defining the pointing model contains: + *
    + *
  • String antennaName; + *
  • String padName; + *
  • AntennaPointingModelIDL pointintModel; + *
  • AntennaPointingModelTermSEQ term; + *
+ * The getPointingModelInfo interface returns the current pointing + * model for the current combination of antenna and pad. If there is + * no current pointing model or if the antenna is not on a pad, an + * empty structure is returned. + */ + TMCDB_IDL::PointingModelIDL getPointingModelInfo(in string antennaName) + raises (TmcdbErrType::TmcdbNoSuchRowEx, + TmcdbErrType::TmcdbDuplicateKeyEx, + TmcdbErrType::TmcdbSqlEx, + TmcdbErrType::TmcdbRowAlreadyExistsEx); + + /** + * The getRecentPointingModelInfo interface return the most recent + * pointing model for the named antenna and its pad, regardless of + * whether the model is current or not. If the antenna is not + * currently on a pad, the most recent pointing model is returned. If + * there are no pointing models for this antenna, an empty structure is + * returned. + */ + TMCDB_IDL::PointingModelIDL getRecentPointingModelInfo(in string antennaName) + raises (TmcdbErrType::TmcdbSqlEx, + TmcdbErrType::TmcdbNoSuchRowEx, + TmcdbErrType::TmcdbDuplicateKeyEx, + TmcdbErrType::TmcdbDuplicateRowEx); + + /** + * The getPointingModelsInfo structure returns all pointing models for + * the antenna. If there are no pointing models for this antenna, an + * empty structure is returned. + */ + PointingModelSeq getPointingModelsInfo(in string antennaName) + raises (TmcdbErrType::TmcdbSqlEx, + TmcdbErrType::TmcdbNoSuchRowEx, + TmcdbErrType::TmcdbDuplicateKeyEx, + TmcdbErrType::TmcdbDuplicateRowEx); + + /** + * Gets the HW assembly configuration data. + * + * serialNumber HW serial number, this is usually read directly from + * the device (AMSI card) at run time. + */ + AssemblyConfigXMLData getAssemblyConfigData(in string serialNumber) + raises (TmcdbErrType::TmcdbSqlEx, TmcdbErrType::TmcdbNoSuchRowEx); + + /** + * Gets the configuration data from the component name. This function + * looks up in the AssemblyStartup table for the Assembly that is + * related with the given component, and retrieves the XML and Schema + * configuration data from the Assembly table. + * + * componentName Component name + */ + AssemblyConfigXMLData getComponentConfigData(in string componentName) + raises (TmcdbErrType::TmcdbSqlEx, TmcdbErrType::TmcdbNoSuchRowEx); + + /** + * *** 6.1.0 HACK *** + * This function is only defined in 6.1.0. In future versions, the + * metrology coefficients will be included in the Pad or AntennaToPad + * table. + */ + MetrologyCoeffSeq getMetrologyCoefficients(in string antennaName); + + /** + * Get the antenna and pad average delays. + * There are three pertinent delay coefficients in the signal path from + * an antenna to the correlator, for each baseband pair. The delay from + * the antenna to the pad, the delay from the pad to the correlator + * patch, and the delays internal to the correlator. One way to model + * these delays is to maintain the averages of the first two delays + * (antenna/pad and pad/corr. patch), and add to the correlator + * internal delays the difference of the two first delays with respect + * to their averages, for each baseband pair. In this way, the sum of + * the three delays: antenna-average + pad-average + + * corr-internal(baseband-pair) will be equal to the sum of delays + * specific for each baseband pair. + */ + void getCurrentAntennaDelays(in string antennaName, + out double antennaDelayAvgCoeff, + out double padDelayAvgCoeff); + + /** + * Get the array phase reference location. + * Delays are calculated relative to this position. + */ + ArrayReferenceLocation getArrayReferenceLocation(); + + /** + * Sets up the startup antennas information. This function provides a + * way to set up this structure from test cases. This is a temporary + * hack while a way to do this is implemented at the TMCDB layer. + */ + void setStartupAntennasInfo(in StartupAntennaSeq sai); + + /** + * Sets up the antennas information. This function provides a way to + * set up this structure from test cases. This is a temporary hack + * while a way to do this is implemented at the TMCDB layer. + */ + void setAntennaInfo(in string an, in TMCDB_IDL::AntennaIDL ai); + + /** + * Sets up the antenna pads information. This function provides a way + * to set up this structure from test cases. This is a temporary hack + * while a way to do this is implemented at the TMCDB layer. + */ + void setAntennaPadInfo(in string an, in TMCDB_IDL::PadIDL api); + + /** + * Sets up the pointing model data. This function provides a way to set + * up this structure from test cases. This is a temporary hack while a + * way to do this is implemented at the TMCDB layer. + */ + void setPointingModelData(in TMCDB_IDL::PointingModelIDL pm); + + /** + * Sets up the startup central lo configuration. This function provides + * a way to set up this structure from test cases. This is a temporary + * hack while a way to do this is implemented at the TMCDB layer. + */ + void setStartupCLOInfo(in TMCDB_IDL::StartupCLOIDL clo); + + /// Returns the latest pointing model for the specified antenna. The + /// antenna name must be one of the standard names like "dv01". This + /// check is case insensitive. If no data is found a zero length empty + /// model is returned. + /// \exception TmcdbErrType::TmcdbError + /// if there is any problem with the database + /// \exception TmcdbErrType::TmcdbNoSuchRowEx + /// if the antenna name is not one of the allowed values + PointingModel getCurrentAntennaPointingModel(in string antennaName) + raises (TmcdbErrType::TmcdbErrorEx, + TmcdbErrType::TmcdbNoSuchRowEx); + + /// Returns the latest focus model for the specified antenna. In all + /// other respects this is the same as the + /// getCurrentAntennaPointingModel function. + FocusModel getCurrentAntennaFocusModel(in string antennaName) + raises (TmcdbErrType::TmcdbErrorEx, + TmcdbErrType::TmcdbNoSuchRowEx); + + /// Returns the latest pointing model offsets for the specified + /// band. The band number must be one in the range of 1-10 + /// corresponding to the relevant ALMA receiver band or 0 for the + /// optical telescope. Set for12MAntenna to false if you need the + /// offsets for a 7M antenna. If no data is found a zero length empty + /// model is returned. + /// \exception TmcdbErrType::TmcdbError + /// if there is any problem with the database + /// \exception TmcdbErrType::TmcdbNoSuchRowEx + /// if the band number is not in in the range 0 to 10 + PointingModel getCurrentBandPointingModel(in short bandNumber, + in boolean for12MAntenna) + raises (TmcdbErrType::TmcdbErrorEx, + TmcdbErrType::TmcdbNoSuchRowEx); + + /// Returns the latest focus model for the specified antenna. In all + /// other respects, except the range of allowed band numbers, this is + /// the same as the getCurrentBandPointingModel function. + /// \exception TmcdbErrType::TmcdbNoSuchRowEx + /// if the band number is not in in the range 1 to 10 + FocusModel getCurrentBandFocusModel(in short bandNumber, + in boolean for12MAntenna) + raises (TmcdbErrType::TmcdbErrorEx, + TmcdbErrType::TmcdbNoSuchRowEx); + }; +}; + +#endif // TMCDBComponent_IDL diff --git a/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBDataStructures.idl b/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBDataStructures.idl new file mode 100755 index 0000000000000000000000000000000000000000..c88b0b0024aac8456e408311dd9d4d9c921ec328 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDBDataStructures.idl @@ -0,0 +1,151 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * $Id: TMCDBDataStructures.idl 188744 2013-04-18 18:04:10Z rmarson $ + */ + +#ifndef TMCDBDATASTRUCTURES_IDL +#define TMCDBDATASTRUCTURES_IDL + +#include + +#pragma prefix "astri" + +module TMCDB_IDL { + + /** + * The Telescope table represents the general properties of a CTA telescope. + * The x-y-z position is the position from the pad position to the point of + * rotation of the telescope. + * Included is the name of the software component that executes the telescope. + * + */ + struct TelescopeIDL { + long BaseElementId; + string TelescopeName; + string TelescopeType; + asdmIDLTypes::IDLLength DishDiameter; + asdmIDLTypes::IDLArrayTime CommissionDate; + asdmIDLTypes::IDLLength XPosition; + asdmIDLTypes::IDLLength YPosition; + asdmIDLTypes::IDLLength ZPosition; + long ComponentId; + }; + + /** + * The most important thing about pads is their location. + * Locations are in meters. + * + */ + struct PadIDL { + long BaseElementId; + string PadName; + asdmIDLTypes::IDLArrayTime CommissionDate; + asdmIDLTypes::IDLLength XPosition; + asdmIDLTypes::IDLLength YPosition; + asdmIDLTypes::IDLLength ZPosition; + }; + + /** + * The TelescopePointingModel table gives the measured parameters of the + * pointing model for the designated telescope that is associated with the + * designated pad. The terms of the pointing model are given in the + * TelescopePointingModelTerm table. + */ + struct TelescopePointingModelIDL { + long PointingModelId; + long TelescopeId; + long PadId; + asdmIDLTypes::IDLArrayTime StartTime; + asdmIDLTypes::IDLArrayTime StartValidTime; + asdmIDLTypes::IDLArrayTime EndValidTime; + string AsdmUID; + }; + + /** + * The TelescopePointingModelTerm table gives the terms of a given pointing + * model. + */ + struct TelescopePointingModelTermIDL { + long PointingModelId; + string CoeffName; + float CoeffValue; + float CoeffError; + }; + typedef sequence TelescopePointingModelTermSeq; + + /** + * The AsssemblyLocationIDL structure gives the data necessary to locate an + * assembly within the context of a collection of assemblies and can busses. + * Included are the type of assembly, its role name (in case there are more + * than one), its relative can address, channel number and base address. + */ + struct AssemblyLocationIDL { + string assemblyTypeName; + string assemblyRoleName; + long rca; + long channelNumber; + long baseAddress; + }; + typedef sequence AssemblyLocationSeq; + + /** + * The StartupTelescopeIDL structure supplies the information needed to + * initialize an telescope. Included are the name of the telescope, the pad on + * which it resides, the name of front end, the assembly locations in the + * front end, and the assembly locations in the telescope. + */ + struct StartupTelescopeIDL { + string telescopeName; + string padName; + string cameraName; + short uiDisplayOrder; + AssemblyLocationSeq cameraAssembly; + AssemblyLocationSeq telescopeAssembly; + }; + + /** + * The StartupWeatherStationControllerIDL structure supplies the information needed to + * initialize the Weather Station devices. It is a sequence of AssemblyLocation + */ + struct StartupWeatherStationControllerIDL { + AssemblyLocationSeq assemblies; + }; + + + /** + * The PointingModelIDL structure is a data structure that is used to supply + * information about an telescope pointing model. Included is the telescope name, + * the pad on which the telescope was located at the time of the measurement, + * the pointing model itself, including a link to the ASDM that made the + * measurement, and the terms of the pointing model. + */ + struct PointingModelIDL { + string telescopeName; + string padName; + TelescopePointingModelIDL pointingModel; + TelescopePointingModelTermSeq term; + }; +}; + +#endif /* TMCDBDATASTRUCTURES_IDL */ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDB_IDL.idl.notneeded b/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDB_IDL.idl.notneeded new file mode 100755 index 0000000000000000000000000000000000000000..860d3c28c430ff8e01caf4ffbbcfca927b55c305 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/idl/TMCDB_IDL.idl.notneeded @@ -0,0 +1,125 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File TMCDB_IDL.idl + */ + +#ifndef TMCDB_IDL_IDL +#define TMCDB_IDL_IDL + +#include + +#pragma prefix "alma" + +module TMCDB_IDL { + + /** + * IDL definition for AssemblyLocationIDL. + * + * The AsssemblyLocationIDL structure gives the data necessary to locate an assembly + * within the context of a collection of assemblies and can busses. Included + * are the type of assembly, its role name (in case there are more than one), + * its relative can address, channel number and base address. + */ + struct AssemblyLocationIDL { + string assemblyTypeName; + string assemblyRoleName; + long rca; + long channelNumber; + long baseAddress; + }; + + typedef sequence < AssemblyLocationIDL > AssemblyLocationSeq; + + /** + * IDL definition for StartupAntennaIDL + * + * The StartupAntennaIDL structure supplies the information needed to initialize + * an antenna. Included are the name of the antenna, the pad on which + * it resides, the name of front end, the assembly locations in the + * front end, and the assembly locations in the antenna. + */ + struct StartupAntennaIDL { + string antennaName; + string padName; + string frontEndName; + short uiDisplayOrder; + AssemblyLocationSeq frontEndAssembly; + AssemblyLocationSeq antennaAssembly; + }; + + /** + * IDL definition for StartupAOSTimingIDL + * + * The StartupAOSTimingIDL structure supplies the information needed to initialize + * the AOS Timming devices. It is a sequence of AssemblyLocation + * @SEE AssemblyLocationIDL + */ + struct StartupAOSTimingIDL { + AssemblyLocationSeq assemblies; + }; + + + /** A Photonic Reference Spec will normally contain 2 elements a + Continually Variable Reference and a Laser Synthesizer + */ + struct StartupPhotonicReferenceIDL { + string name; + AssemblyLocationSeq assemblies; + }; + + typedef sequence < StartupPhotonicReferenceIDL > StartupPhotonicReferenceSeq; + + /** + * IDL definition for StartupCLOIDL + * + * The StartupCLOIDL structure supplies the information needed to + * initialize the Central LO. It is a sequence of AssemblyLocations + * and a Sequence of PhotonicReferences + */ + struct StartupCLOIDL { + AssemblyLocationSeq assemblies; + StartupPhotonicReferenceSeq photonicReferences; + }; + + + typedef sequence < AntennaPointingModelTermIDL > AntennaPointingModelTermSeq; + /** + * IDL definition for PointingModelIDL + * + * The PointingModelIDL structure is a data structure that is used to supply + * information about an antenna pointing model. Included is the antenna name, + * the pad on which the antenna was located at the time of the measurement, + * the pointing model itself, including a link to the ASDM that made the + * measurement, and the terms of the pointing model. + */ + struct PointingModelIDL { + string antennaName; + string padName; + AntennaPointingModelIDL pointingModel; + AntennaPointingModelTermSeq term; + }; + +}; + +#endif /* TMCDB_IDL_IDL */ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/idl/TmcdbErrType.idl b/ARCHIVE/SharedCode/TMCDB/Access/idl/TmcdbErrType.idl new file mode 100755 index 0000000000000000000000000000000000000000..5ff45221c3e218d462391d05866c541f5c3a3c25 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/idl/TmcdbErrType.idl @@ -0,0 +1,99 @@ +#ifndef _TmcdbErrType_IDL_ +#define _TmcdbErrType_IDL_ + +/******************************************************************************* +* ALMA - Atacama Large Millimiter Array +* (c) European Southern Observatory, 2003 +* +*This library is free software; you can redistribute it and/or +*modify it under the terms of the GNU Lesser General Public +*License as published by the Free Software Foundation; either +*version 2.1 of the License, or (at your option) any later version. +* +*This library is distributed in the hope that it will be useful, +*but WITHOUT ANY WARRANTY; without even the implied warranty of +*MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +*Lesser General Public License for more details. +* +*You should have received a copy of the GNU Lesser General Public +*License along with this library; if not, write to the Free Software +*Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +* +* "@(#) $Id: AES2IDL.xslt,v 1.9 2007/05/23 08:55:56 nbarriga Exp $" +************* THIS FILE IS AUTOMATICALLY GENERATED !!!!!! +*/ + +#include + +#pragma prefix "alma" + +module ACSErr +{ + // type + const ACSErr::ACSErrType TmcdbErrType = 100000; +}; // module ACSErr + +module TmcdbErrType +{ + const ACSErr::ErrorCode TmcdbError = 0; + const ACSErr::ErrorCode TmcdbNoSuchRow = 1; + const ACSErr::ErrorCode TmcdbRowAlreadyExists = 2; + const ACSErr::ErrorCode TmcdbConnectionFailure = 3; + const ACSErr::ErrorCode TmcdbInitializationFailure = 4; + const ACSErr::ErrorCode TmcdbDuplicateKey = 5; + const ACSErr::ErrorCode TmcdbSql = 6; + const ACSErr::ErrorCode TmcdbKeyUpdate = 7; + const ACSErr::ErrorCode TmcdbDuplicateRow = 8; + const ACSErr::ErrorCode TmcdbInvalidDataType = 9; + + // excption for type: + exception TmcdbErrTypeEx { + ACSErr::ErrorTrace errorTrace; + }; + + // excptions for codes: + exception TmcdbErrorEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbNoSuchRowEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbRowAlreadyExistsEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbConnectionFailureEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbInitializationFailureEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbDuplicateKeyEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbSqlEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbKeyUpdateEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbDuplicateRowEx { + ACSErr::ErrorTrace errorTrace; + }; + + exception TmcdbInvalidDataTypeEx { + ACSErr::ErrorTrace errorTrace; + }; + + +}; // module TmcdbErrType + +#endif + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/idl/TmcdbErrType.xml b/ARCHIVE/SharedCode/TMCDB/Access/idl/TmcdbErrType.xml new file mode 100755 index 0000000000000000000000000000000000000000..67739c32e5041d87ba2964f718b0dd03442b987a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/idl/TmcdbErrType.xml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/TMCDBAccessTest.jar b/ARCHIVE/SharedCode/TMCDB/Access/lib/TMCDBAccessTest.jar new file mode 100755 index 0000000000000000000000000000000000000000..11bcda5358ee8adbdaf4dba646fb77cae5d1c9f2 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/lib/TMCDBAccessTest.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr/__init__.py b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr/__init__.py new file mode 100755 index 0000000000000000000000000000000000000000..fd3a96b9b75bc606f78068c490c4e5c735651a1e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr/__init__.py @@ -0,0 +1,101 @@ +# DO NOT EDIT THIS FILE! +# +# Python module ACSErr generated by omniidl + +import omniORB +omniORB.updateModule("ACSErr") + +# ** 1. Stub files contributing to this module +import TmcdbErrType_idl +import TmcdbGuiErrType_idl +import acserr_idl +import acserrHandlersErr_idl +import ErrorSystemErrType_idl +import ACSErrTypeOK_idl +import ACSErrTypeMonitor_idl +import ACSErrTypeAlarm_idl +import ACSErrTypeCommon_idl +import ACSErrTypePythonNative_idl +import ACSErrTypeCppNative_idl +import ACSErrTypeJavaNative_idl +import ACSErrTypeCORBA_idl +import ACSErrTypeDevIO_idl +import ACSErrTICS_idl +import ACSErrTicsTCorr_idl +import PatternAlarmCleared_idl +import PatternAlarmTriggered_idl +import acsQoSErrType_idl +import acsthreadErrType_idl +import cdbErrType_idl +import maciErrType_idl +import baciErrTypeProperty_idl +import baciErrTypeDevIO_idl +import acsncErrType_idl +import acsErrTypeAlarmSourceFactory_idl +import acsErrTypeContainerServices_idl +import acsErrTypeLifeCycle_idl +import JavaContainerError_idl +import acsErrTypeComponent_idl +import acsdaemonErrType_idl +import jmanagerErrType_idl +import taskErrType_idl +import ACSTimeError_idl +import acsexmplErrTest_idl +import ArchiveIdentifierError_idl +import JContExmplErrTypeTest_idl +import ErrorSystemExample_idl +import MonitorErr_idl +import DAOErrType_idl +import ACSBulkDataError_idl +import ACSBulkDataStatus_idl +import errTypeAlarmService_idl +import objexpErrType_idl +import ArchiveBulkReceiverErrType_idl +import ControlExceptions_idl +import CorrErr_idl +import CorrStateModelErr_idl +import CorrConfigModeErr_idl +import DataCaptureExceptions_idl +import TelCalErrType_idl +import SharedSimulatorErrors_idl +import ProjectRepositoryErrors_idl +import SciPipeExceptions_idl +import QlDisplayExceptions_idl +import ACACorrErr_idl +import SchedulingArrayExceptions_idl +import SchedulingMasterExceptions_idl +import SchedulingExceptions_idl +import ResourceExceptions_idl +import ControlCommonExceptions_idl +import ExecStateExceptions_idl +import ControlDeviceExceptions_idl +import EthernetDeviceExceptions_idl +import DelayServerExceptions_idl +import HolographyExceptions_idl +import LSCommonExceptions_idl +import MountError_idl +import FEMCExceptions_idl +import WCAExceptions_idl +import ColdCartExceptions_idl +import CryostatExceptions_idl +import LPRExceptions_idl +import FrontEndExceptions_idl +import LO2Exceptions_idl +import DTXExceptions_idl +import DRXExceptions_idl +import DTSRExceptions_idl +import ModeControllerExceptions_idl +import AntLOControllerExceptions_idl +import ObservingModeExceptions_idl +import TotalPowerProcessorErr_idl +import AmbSocketServerExceptions_idl +import ScriptExecutorExceptions_idl +import CCLExceptions_idl +import ArrayExceptions_idl +import ControlGUIErrType_idl +import ACS_BD_Errors_idl +import ACS_DDS_Errors_idl + +# ** 2. Sub-modules + +# ** 3. End diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr/__init__.pyc b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..5051bde1da41f97b03534f06adbb5e27d9a0eca7 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr/__init__.pyc differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr__POA/__init__.py b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr__POA/__init__.py new file mode 100755 index 0000000000000000000000000000000000000000..b9d73e3fc9884048fdee7847ba7d538ec60481dc --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr__POA/__init__.py @@ -0,0 +1,101 @@ +# DO NOT EDIT THIS FILE! +# +# Python module ACSErr__POA generated by omniidl + +import omniORB +omniORB.updateModule("ACSErr__POA") + +# ** 1. Stub files contributing to this module +import TmcdbErrType_idl +import TmcdbGuiErrType_idl +import acserr_idl +import acserrHandlersErr_idl +import ErrorSystemErrType_idl +import ACSErrTypeOK_idl +import ACSErrTypeMonitor_idl +import ACSErrTypeAlarm_idl +import ACSErrTypeCommon_idl +import ACSErrTypePythonNative_idl +import ACSErrTypeCppNative_idl +import ACSErrTypeJavaNative_idl +import ACSErrTypeCORBA_idl +import ACSErrTypeDevIO_idl +import ACSErrTICS_idl +import ACSErrTicsTCorr_idl +import PatternAlarmCleared_idl +import PatternAlarmTriggered_idl +import acsQoSErrType_idl +import acsthreadErrType_idl +import cdbErrType_idl +import maciErrType_idl +import baciErrTypeProperty_idl +import baciErrTypeDevIO_idl +import acsncErrType_idl +import acsErrTypeAlarmSourceFactory_idl +import acsErrTypeContainerServices_idl +import acsErrTypeLifeCycle_idl +import JavaContainerError_idl +import acsErrTypeComponent_idl +import acsdaemonErrType_idl +import jmanagerErrType_idl +import taskErrType_idl +import ACSTimeError_idl +import acsexmplErrTest_idl +import ArchiveIdentifierError_idl +import JContExmplErrTypeTest_idl +import ErrorSystemExample_idl +import MonitorErr_idl +import DAOErrType_idl +import ACSBulkDataError_idl +import ACSBulkDataStatus_idl +import errTypeAlarmService_idl +import objexpErrType_idl +import ArchiveBulkReceiverErrType_idl +import ControlExceptions_idl +import CorrErr_idl +import CorrStateModelErr_idl +import CorrConfigModeErr_idl +import DataCaptureExceptions_idl +import TelCalErrType_idl +import SharedSimulatorErrors_idl +import ProjectRepositoryErrors_idl +import SciPipeExceptions_idl +import QlDisplayExceptions_idl +import ACACorrErr_idl +import SchedulingArrayExceptions_idl +import SchedulingMasterExceptions_idl +import SchedulingExceptions_idl +import ResourceExceptions_idl +import ControlCommonExceptions_idl +import ExecStateExceptions_idl +import ControlDeviceExceptions_idl +import EthernetDeviceExceptions_idl +import DelayServerExceptions_idl +import HolographyExceptions_idl +import LSCommonExceptions_idl +import MountError_idl +import FEMCExceptions_idl +import WCAExceptions_idl +import ColdCartExceptions_idl +import CryostatExceptions_idl +import LPRExceptions_idl +import FrontEndExceptions_idl +import LO2Exceptions_idl +import DTXExceptions_idl +import DRXExceptions_idl +import DTSRExceptions_idl +import ModeControllerExceptions_idl +import AntLOControllerExceptions_idl +import ObservingModeExceptions_idl +import TotalPowerProcessorErr_idl +import AmbSocketServerExceptions_idl +import ScriptExecutorExceptions_idl +import CCLExceptions_idl +import ArrayExceptions_idl +import ControlGUIErrType_idl +import ACS_BD_Errors_idl +import ACS_DDS_Errors_idl + +# ** 2. Sub-modules + +# ** 3. End diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr__POA/__init__.pyc b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr__POA/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..ee6f0c877325811f41163b617bc04812b57db2d7 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/ACSErr__POA/__init__.pyc differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB/__init__.py b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB/__init__.py new file mode 100755 index 0000000000000000000000000000000000000000..60eb47718d8d819abf9e26329df69849bef7949c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB/__init__.py @@ -0,0 +1,17 @@ +# DO NOT EDIT THIS FILE! +# +# Python module TMCDB generated by omniidl + +import omniORB +omniORB.updateModule("TMCDB") + +# ** 1. Stub files contributing to this module +import TMCDBAccessIF_idl +import TMCDBComponent_idl +import TMCDBCOMMON_IDL_idl +import MonitorCollector_idl +import MCtestComponent_idl + +# ** 2. Sub-modules + +# ** 3. End diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB/__init__.pyc b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..29554a4398c00dc1d816b38703bb6e44ccf24667 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB/__init__.pyc differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL/__init__.py b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL/__init__.py new file mode 100755 index 0000000000000000000000000000000000000000..d1ef6128d8cedaa3e7db29b66f4a7d93b645ed1d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL/__init__.py @@ -0,0 +1,13 @@ +# DO NOT EDIT THIS FILE! +# +# Python module TMCDB_IDL generated by omniidl + +import omniORB +omniORB.updateModule("TMCDB_IDL") + +# ** 1. Stub files contributing to this module +import TMCDBDataStructures_idl + +# ** 2. Sub-modules + +# ** 3. End diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL/__init__.pyc b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..2251567a465a0060bd4f4d768ab2dd009275d613 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL/__init__.pyc differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL__POA/__init__.py b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL__POA/__init__.py new file mode 100755 index 0000000000000000000000000000000000000000..9912473dc82aa2286de25927a9d333cc2ff787cf --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL__POA/__init__.py @@ -0,0 +1,13 @@ +# DO NOT EDIT THIS FILE! +# +# Python module TMCDB_IDL__POA generated by omniidl + +import omniORB +omniORB.updateModule("TMCDB_IDL__POA") + +# ** 1. Stub files contributing to this module +import TMCDBDataStructures_idl + +# ** 2. Sub-modules + +# ** 3. End diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL__POA/__init__.pyc b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL__POA/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..581dacfc30b2b45d6376f40653f848aecf7df994 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB_IDL__POA/__init__.pyc differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB__POA/__init__.py b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB__POA/__init__.py new file mode 100755 index 0000000000000000000000000000000000000000..058489d85edf4d75cdc9af9da9e6e9437ed4cf0c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB__POA/__init__.py @@ -0,0 +1,17 @@ +# DO NOT EDIT THIS FILE! +# +# Python module TMCDB__POA generated by omniidl + +import omniORB +omniORB.updateModule("TMCDB__POA") + +# ** 1. Stub files contributing to this module +import TMCDBAccessIF_idl +import TMCDBComponent_idl +import TMCDBCOMMON_IDL_idl +import MonitorCollector_idl +import MCtestComponent_idl + +# ** 2. Sub-modules + +# ** 3. End diff --git a/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB__POA/__init__.pyc b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB__POA/__init__.pyc new file mode 100755 index 0000000000000000000000000000000000000000..05e488d58a8c2ef0cddd9b2daafcaf7965ab532c Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/lib/python/site-packages/TMCDB__POA/__init__.pyc differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/ACSErr/TmcdbErrType.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/ACSErr/TmcdbErrType.java new file mode 100755 index 0000000000000000000000000000000000000000..927983c0b797fb7bb6ec9e1314dd87a506be37b4 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/ACSErr/TmcdbErrType.java @@ -0,0 +1,12 @@ +package alma.ACSErr; +/** + * Generated from IDL const "TmcdbErrType". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbErrType +{ + int value = 100000; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailure.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailure.java new file mode 100755 index 0000000000000000000000000000000000000000..610846469784d779a13dac25566bfc9db390e6b3 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailure.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbConnectionFailure". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbConnectionFailure +{ + int value = 3; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureEx.java new file mode 100755 index 0000000000000000000000000000000000000000..ca337669a80353743334d3e32bfc90de5b4b7e94 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbConnectionFailureEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbConnectionFailureEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbConnectionFailureEx() + { + super(alma.TmcdbErrType.TmcdbConnectionFailureExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbConnectionFailureEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbConnectionFailureEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbConnectionFailureExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..eaf3216050d3f60a9d734ac4119f0069fed53cbb --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbConnectionFailureEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbConnectionFailureExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbConnectionFailureExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbConnectionFailureExHelper.id(),"TmcdbConnectionFailureEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbConnectionFailureEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbConnectionFailureEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbConnectionFailureEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbConnectionFailureEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbConnectionFailureEx result = new alma.TmcdbErrType.TmcdbConnectionFailureEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbConnectionFailureEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..229afe9172683b28669b2f6a7e3473000c2f4fa2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbConnectionFailureExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbConnectionFailureEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbConnectionFailureExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbConnectionFailureEx value; + + public TmcdbConnectionFailureExHolder () + { + } + public TmcdbConnectionFailureExHolder(final alma.TmcdbErrType.TmcdbConnectionFailureEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbConnectionFailureExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbConnectionFailureExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbConnectionFailureExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKey.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKey.java new file mode 100755 index 0000000000000000000000000000000000000000..27b21f839c620196f3f1276f5688245302d60ad0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKey.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbDuplicateKey". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbDuplicateKey +{ + int value = 5; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyEx.java new file mode 100755 index 0000000000000000000000000000000000000000..a8101887872987c1e974e2631a72a796fcc97b5c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbDuplicateKeyEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbDuplicateKeyEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbDuplicateKeyEx() + { + super(alma.TmcdbErrType.TmcdbDuplicateKeyExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbDuplicateKeyEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbDuplicateKeyEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbDuplicateKeyExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..8846872f6e1a62719a22adfc566ccdf10d4699a1 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbDuplicateKeyEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbDuplicateKeyExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbDuplicateKeyExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbDuplicateKeyExHelper.id(),"TmcdbDuplicateKeyEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbDuplicateKeyEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbDuplicateKeyEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbDuplicateKeyEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbDuplicateKeyEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbDuplicateKeyEx result = new alma.TmcdbErrType.TmcdbDuplicateKeyEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbDuplicateKeyEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..4b1927e1855065ff268d9420e0d0f2ac23de56ae --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateKeyExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbDuplicateKeyEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbDuplicateKeyExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbDuplicateKeyEx value; + + public TmcdbDuplicateKeyExHolder () + { + } + public TmcdbDuplicateKeyExHolder(final alma.TmcdbErrType.TmcdbDuplicateKeyEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbDuplicateKeyExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbDuplicateKeyExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbDuplicateKeyExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRow.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRow.java new file mode 100755 index 0000000000000000000000000000000000000000..2c08f8a3c0f24d5560bc512d60565764b9faabdc --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRow.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbDuplicateRow". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbDuplicateRow +{ + int value = 8; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowEx.java new file mode 100755 index 0000000000000000000000000000000000000000..42d6f4349803d5168e65d63e8c31ab918410175d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbDuplicateRowEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbDuplicateRowEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbDuplicateRowEx() + { + super(alma.TmcdbErrType.TmcdbDuplicateRowExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbDuplicateRowEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbDuplicateRowEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbDuplicateRowExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..30c20df9feeaeec20488b96e2155461d62c29144 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbDuplicateRowEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbDuplicateRowExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbDuplicateRowExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbDuplicateRowExHelper.id(),"TmcdbDuplicateRowEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbDuplicateRowEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbDuplicateRowEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbDuplicateRowEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbDuplicateRowEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbDuplicateRowEx result = new alma.TmcdbErrType.TmcdbDuplicateRowEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbDuplicateRowEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..67bf7010670a5e2e94187f71e7c52b891bfc241e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbDuplicateRowExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbDuplicateRowEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbDuplicateRowExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbDuplicateRowEx value; + + public TmcdbDuplicateRowExHolder () + { + } + public TmcdbDuplicateRowExHolder(final alma.TmcdbErrType.TmcdbDuplicateRowEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbDuplicateRowExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbDuplicateRowExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbDuplicateRowExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeEx.java new file mode 100755 index 0000000000000000000000000000000000000000..ff242c2483d0c679d9878f077e4a89f96ad1c723 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbErrTypeEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbErrTypeEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbErrTypeEx() + { + super(alma.TmcdbErrType.TmcdbErrTypeExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbErrTypeEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbErrTypeEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbErrTypeExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..5fa97af15f6665c441e33d5851e247ba7b8d1cb7 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbErrTypeEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbErrTypeExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbErrTypeExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbErrTypeExHelper.id(),"TmcdbErrTypeEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbErrTypeEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbErrTypeEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbErrTypeEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbErrTypeEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbErrTypeEx result = new alma.TmcdbErrType.TmcdbErrTypeEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbErrTypeEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..58eedbe8f85374ef7d24e16384e9aa7533256a24 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrTypeExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbErrTypeEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbErrTypeExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbErrTypeEx value; + + public TmcdbErrTypeExHolder () + { + } + public TmcdbErrTypeExHolder(final alma.TmcdbErrType.TmcdbErrTypeEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbErrTypeExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbErrTypeExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbErrTypeExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbError.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbError.java new file mode 100755 index 0000000000000000000000000000000000000000..271fd5265fc489ce3772e8f83ed71acb4ce151e1 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbError.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbError". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbError +{ + int value = 0; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorEx.java new file mode 100755 index 0000000000000000000000000000000000000000..da66d41536738147ae1a0daf7f2dab67b789061c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbErrorEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbErrorEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbErrorEx() + { + super(alma.TmcdbErrType.TmcdbErrorExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbErrorEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbErrorEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbErrorExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..d19ffd7912376ab0c15ad4b4169b6c40516ac008 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbErrorEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbErrorExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbErrorExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbErrorExHelper.id(),"TmcdbErrorEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbErrorEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbErrorEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbErrorEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbErrorEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbErrorEx result = new alma.TmcdbErrType.TmcdbErrorEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbErrorEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..7e7d53dc3ea7f8cdc1c3f61d19d3fd60e34cb001 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbErrorExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbErrorEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbErrorExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbErrorEx value; + + public TmcdbErrorExHolder () + { + } + public TmcdbErrorExHolder(final alma.TmcdbErrType.TmcdbErrorEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbErrorExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbErrorExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbErrorExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailure.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailure.java new file mode 100755 index 0000000000000000000000000000000000000000..3e734cae863367d707839c11e65873b575b477de --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailure.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbInitializationFailure". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbInitializationFailure +{ + int value = 4; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureEx.java new file mode 100755 index 0000000000000000000000000000000000000000..eeb0254c1bd0011eaf954b0edc2a749d01cdc068 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbInitializationFailureEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbInitializationFailureEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbInitializationFailureEx() + { + super(alma.TmcdbErrType.TmcdbInitializationFailureExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbInitializationFailureEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbInitializationFailureEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbInitializationFailureExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..cdcd474b378a43f5743290e8b234ebeed783f03a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbInitializationFailureEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbInitializationFailureExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbInitializationFailureExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbInitializationFailureExHelper.id(),"TmcdbInitializationFailureEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbInitializationFailureEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbInitializationFailureEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbInitializationFailureEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbInitializationFailureEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbInitializationFailureEx result = new alma.TmcdbErrType.TmcdbInitializationFailureEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbInitializationFailureEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..00277b29c9727e6de776334aff5f6d5721f6b480 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInitializationFailureExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbInitializationFailureEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbInitializationFailureExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbInitializationFailureEx value; + + public TmcdbInitializationFailureExHolder () + { + } + public TmcdbInitializationFailureExHolder(final alma.TmcdbErrType.TmcdbInitializationFailureEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbInitializationFailureExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbInitializationFailureExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbInitializationFailureExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataType.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataType.java new file mode 100755 index 0000000000000000000000000000000000000000..471cb6f6d4a64913311d35424c94f497ec5011c8 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataType.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbInvalidDataType". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbInvalidDataType +{ + int value = 9; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeEx.java new file mode 100755 index 0000000000000000000000000000000000000000..3315171b0554c4a3d5bf99e20e4fc1de1a1c6c94 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbInvalidDataTypeEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbInvalidDataTypeEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbInvalidDataTypeEx() + { + super(alma.TmcdbErrType.TmcdbInvalidDataTypeExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbInvalidDataTypeEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbInvalidDataTypeEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbInvalidDataTypeExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..4e5c79dc8e5cf270adeb2fe77fe6b6a59bef85ea --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbInvalidDataTypeEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbInvalidDataTypeExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbInvalidDataTypeExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbInvalidDataTypeExHelper.id(),"TmcdbInvalidDataTypeEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbInvalidDataTypeEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbInvalidDataTypeEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbInvalidDataTypeEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbInvalidDataTypeEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbInvalidDataTypeEx result = new alma.TmcdbErrType.TmcdbInvalidDataTypeEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbInvalidDataTypeEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..96daf4898908b68f619d1133afaa28ba96054ce9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbInvalidDataTypeExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbInvalidDataTypeEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbInvalidDataTypeExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbInvalidDataTypeEx value; + + public TmcdbInvalidDataTypeExHolder () + { + } + public TmcdbInvalidDataTypeExHolder(final alma.TmcdbErrType.TmcdbInvalidDataTypeEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbInvalidDataTypeExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbInvalidDataTypeExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbInvalidDataTypeExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdate.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdate.java new file mode 100755 index 0000000000000000000000000000000000000000..2cf91e49848578321d1f18bed3a1c7751bac53c0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdate.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbKeyUpdate". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbKeyUpdate +{ + int value = 7; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateEx.java new file mode 100755 index 0000000000000000000000000000000000000000..50c57475d970cbd50008c04a9dbabbdbddb0b873 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbKeyUpdateEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbKeyUpdateEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbKeyUpdateEx() + { + super(alma.TmcdbErrType.TmcdbKeyUpdateExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbKeyUpdateEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbKeyUpdateEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbKeyUpdateExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..89abc16c6a93a8422a2298b07187024849ac7fdb --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbKeyUpdateEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbKeyUpdateExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbKeyUpdateExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbKeyUpdateExHelper.id(),"TmcdbKeyUpdateEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbKeyUpdateEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbKeyUpdateEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbKeyUpdateEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbKeyUpdateEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbKeyUpdateEx result = new alma.TmcdbErrType.TmcdbKeyUpdateEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbKeyUpdateEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..1a5fb3b48b67afd7788bb968df6ffc88522d5e6f --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbKeyUpdateExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbKeyUpdateEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbKeyUpdateExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbKeyUpdateEx value; + + public TmcdbKeyUpdateExHolder () + { + } + public TmcdbKeyUpdateExHolder(final alma.TmcdbErrType.TmcdbKeyUpdateEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbKeyUpdateExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbKeyUpdateExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbKeyUpdateExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRow.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRow.java new file mode 100755 index 0000000000000000000000000000000000000000..5ea09d27152c1c147d181ba6824373daa5064138 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRow.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbNoSuchRow". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbNoSuchRow +{ + int value = 1; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowEx.java new file mode 100755 index 0000000000000000000000000000000000000000..517d230dc371516db5186d74996183054b8e8ad4 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbNoSuchRowEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbNoSuchRowEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbNoSuchRowEx() + { + super(alma.TmcdbErrType.TmcdbNoSuchRowExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbNoSuchRowEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbNoSuchRowEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbNoSuchRowExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..649b85777345305b2d3c40d48c9e7240a801da4d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbNoSuchRowEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbNoSuchRowExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbNoSuchRowExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbNoSuchRowExHelper.id(),"TmcdbNoSuchRowEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbNoSuchRowEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbNoSuchRowEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbNoSuchRowEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbNoSuchRowEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbNoSuchRowEx result = new alma.TmcdbErrType.TmcdbNoSuchRowEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbNoSuchRowEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..874ba147ac3cdd33ab854227e49809d1cf8768ca --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbNoSuchRowExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbNoSuchRowEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbNoSuchRowExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbNoSuchRowEx value; + + public TmcdbNoSuchRowExHolder () + { + } + public TmcdbNoSuchRowExHolder(final alma.TmcdbErrType.TmcdbNoSuchRowEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbNoSuchRowExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbNoSuchRowExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbNoSuchRowExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExists.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExists.java new file mode 100755 index 0000000000000000000000000000000000000000..9ad42d0c5e7ee0435a8debef50c72112e93aae1e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExists.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbRowAlreadyExists". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbRowAlreadyExists +{ + int value = 2; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsEx.java new file mode 100755 index 0000000000000000000000000000000000000000..52b735429f88e240d98268827a0e57553c5f9f3c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbRowAlreadyExistsEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbRowAlreadyExistsEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbRowAlreadyExistsEx() + { + super(alma.TmcdbErrType.TmcdbRowAlreadyExistsExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbRowAlreadyExistsEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbRowAlreadyExistsEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbRowAlreadyExistsExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..590812b5127a2f7953d8f714c8e67f92cdef774a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbRowAlreadyExistsEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbRowAlreadyExistsExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbRowAlreadyExistsExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbRowAlreadyExistsExHelper.id(),"TmcdbRowAlreadyExistsEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbRowAlreadyExistsEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbRowAlreadyExistsEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbRowAlreadyExistsEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbRowAlreadyExistsEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbRowAlreadyExistsEx result = new alma.TmcdbErrType.TmcdbRowAlreadyExistsEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbRowAlreadyExistsEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..d1035c3036d7cc457fd7ac49bfefa6aedb36a569 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbRowAlreadyExistsExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbRowAlreadyExistsEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbRowAlreadyExistsExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbRowAlreadyExistsEx value; + + public TmcdbRowAlreadyExistsExHolder () + { + } + public TmcdbRowAlreadyExistsExHolder(final alma.TmcdbErrType.TmcdbRowAlreadyExistsEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbRowAlreadyExistsExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbRowAlreadyExistsExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbRowAlreadyExistsExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSql.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSql.java new file mode 100755 index 0000000000000000000000000000000000000000..13f349009b5e985c0bc303a142a8e9f2da24c8d7 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSql.java @@ -0,0 +1,12 @@ +package alma.TmcdbErrType; +/** + * Generated from IDL const "TmcdbSql". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public interface TmcdbSql +{ + int value = 6; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlEx.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlEx.java new file mode 100755 index 0000000000000000000000000000000000000000..32dfcfc89a8a7904e1723063b2102d1e2384d86d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlEx.java @@ -0,0 +1,31 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbSqlEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbSqlEx + extends org.omg.CORBA.UserException +{ + /** Serial version UID. */ + private static final long serialVersionUID = 1L; + public TmcdbSqlEx() + { + super(alma.TmcdbErrType.TmcdbSqlExHelper.id()); + } + + public alma.ACSErr.ErrorTrace errorTrace; + public TmcdbSqlEx(java.lang.String _reason,alma.ACSErr.ErrorTrace errorTrace) + { + super(_reason); + this.errorTrace = errorTrace; + } + public TmcdbSqlEx(alma.ACSErr.ErrorTrace errorTrace) + { + super(alma.TmcdbErrType.TmcdbSqlExHelper.id()); + this.errorTrace = errorTrace; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlExHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlExHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..b64679346bf7188a894aeba1301ded1c1029b719 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlExHelper.java @@ -0,0 +1,73 @@ +package alma.TmcdbErrType; + + +/** + * Generated from IDL exception "TmcdbSqlEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public abstract class TmcdbSqlExHelper +{ + private volatile static org.omg.CORBA.TypeCode _type; + public static org.omg.CORBA.TypeCode type () + { + if (_type == null) + { + synchronized(TmcdbSqlExHelper.class) + { + if (_type == null) + { + _type = org.omg.CORBA.ORB.init().create_exception_tc(alma.TmcdbErrType.TmcdbSqlExHelper.id(),"TmcdbSqlEx",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("errorTrace", org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.ErrorTraceHelper.id(),"ErrorTrace",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("file", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("lineNum", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(3)), null),new org.omg.CORBA.StructMember("routine", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("host", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("process", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("thread", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("timeStamp", org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(24)), null),new org.omg.CORBA.StructMember("sourceObject", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("errorType", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ACSErrTypeHelper.id(), "ACSErrType",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionTypeHelper.id(), "CompletionType",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("errorCode", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorCodeHelper.id(), "ErrorCode",org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.CompletionCodeHelper.id(), "CompletionCode",org.omg.CORBA.ORB.init().get_primitive_tc(org.omg.CORBA.TCKind.from_int(5)))), null),new org.omg.CORBA.StructMember("severity", org.omg.CORBA.ORB.init().create_enum_tc(alma.ACSErr.SeverityHelper.id(),"Severity",new String[]{"Error","Critical","Alert","Emergency"}), null),new org.omg.CORBA.StructMember("shortDescription", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("data", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.NameValueSeqHelper.id(), "NameValueSeq",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_struct_tc(alma.ACSErr.NameValueHelper.id(),"NameValue",new org.omg.CORBA.StructMember[]{new org.omg.CORBA.StructMember("name", org.omg.CORBA.ORB.init().create_string_tc(0), null),new org.omg.CORBA.StructMember("value", org.omg.CORBA.ORB.init().create_string_tc(0), null)}))), null),new org.omg.CORBA.StructMember("previousError", org.omg.CORBA.ORB.init().create_alias_tc(alma.ACSErr.ErrorLinkedListHelper.id(), "ErrorLinkedList",org.omg.CORBA.ORB.init().create_sequence_tc(0, org.omg.CORBA.ORB.init().create_recursive_tc("IDL:alma/ACSErr/ErrorTrace:1.0"))), null)}), null)}); + } + } + } + return _type; + } + + public static void insert (final org.omg.CORBA.Any any, final alma.TmcdbErrType.TmcdbSqlEx s) + { + any.type(type()); + write( any.create_output_stream(),s); + } + + public static alma.TmcdbErrType.TmcdbSqlEx extract (final org.omg.CORBA.Any any) + { + org.omg.CORBA.portable.InputStream in = any.create_input_stream(); + try + { + return read (in); + } + finally + { + try + { + in.close(); + } + catch (java.io.IOException e) + { + throw new RuntimeException("Unexpected exception " + e.toString() ); + } + } + } + + public static String id() + { + return "IDL:alma/TmcdbErrType/TmcdbSqlEx:1.0"; + } + public static alma.TmcdbErrType.TmcdbSqlEx read (final org.omg.CORBA.portable.InputStream in) + { + String id = in.read_string(); + if (!id.equals(id())) throw new org.omg.CORBA.MARSHAL("wrong id: " + id); + alma.ACSErr.ErrorTrace x0; + x0=alma.ACSErr.ErrorTraceHelper.read(in); + final alma.TmcdbErrType.TmcdbSqlEx result = new alma.TmcdbErrType.TmcdbSqlEx(id, x0); + return result; + } + public static void write (final org.omg.CORBA.portable.OutputStream out, final alma.TmcdbErrType.TmcdbSqlEx s) + { + out.write_string(id()); + alma.ACSErr.ErrorTraceHelper.write(out,s.errorTrace); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlExHolder.java b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlExHolder.java new file mode 100755 index 0000000000000000000000000000000000000000..ed6ce587158044f1be5807578502dd7e98cf5f1a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/object/TmcdbErrType/src/alma/TmcdbErrType/TmcdbSqlExHolder.java @@ -0,0 +1,34 @@ +package alma.TmcdbErrType; + +/** + * Generated from IDL exception "TmcdbSqlEx". + * + * @author JacORB IDL compiler V 3.6.1 + * @version generated at Jun 26, 2017 5:54:34 PM + */ + +public final class TmcdbSqlExHolder + implements org.omg.CORBA.portable.Streamable +{ + public alma.TmcdbErrType.TmcdbSqlEx value; + + public TmcdbSqlExHolder () + { + } + public TmcdbSqlExHolder(final alma.TmcdbErrType.TmcdbSqlEx initial) + { + value = initial; + } + public org.omg.CORBA.TypeCode _type () + { + return alma.TmcdbErrType.TmcdbSqlExHelper.type (); + } + public void _read(final org.omg.CORBA.portable.InputStream _in) + { + value = alma.TmcdbErrType.TmcdbSqlExHelper.read(_in); + } + public void _write(final org.omg.CORBA.portable.OutputStream _out) + { + alma.TmcdbErrType.TmcdbSqlExHelper.write(_out, value); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/Makefile b/ARCHIVE/SharedCode/TMCDB/Access/src/Makefile new file mode 100755 index 0000000000000000000000000000000000000000..4497efac610b781d8a3af6a5e876dce9e6ce1ce9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/Makefile @@ -0,0 +1,247 @@ +#******************************************************************************* +# PPPPPPPP +# +# "@(#) $Id: Makefile,v 1.11 2011/08/09 15:48:17 rhiriart Exp $" +# +# Makefile of ........ +# +# who when what +# -------- -------- ---------------------------------------------- +# rhiriart 17/04/09 created +# + +#******************************************************************************* +# This Makefile follows VLT Standards (see Makefile(5) for more). +#******************************************************************************* +# REMARKS +# None +#------------------------------------------------------------------------ + +# +# user definable C-compilation flags +#USER_CFLAGS = + +# +# additional include and library search paths +#USER_INC = +#USER_LIB = + +USER_LIB = -lACE -lTAO -lTAO_AV -lTAO_DsLogAdmin -lTAO_CosNaming -lTAO_IORTable \ + -lTAO_PortableServer -lTAO_Svc_Utils -lTAO_CosTrading -lTAO_DynamicAny \ + -lTAO_IFR_Client -lTAO_CosNotification -lacsutil -lcdb -llogging \ + -lacscomponent -lbaci -lmaci -lmaciClient -lacserr -lxmlentity -lacsnc \ + -lacstime -lmaciErrType -larchive_xmlstore_if +# jagonzal: TMCDBAccessIFStubs TMCDBComponentStubs TMCDBDataStructuresStubs are only needed for TmcdbBasebandDelay +# -lTMCDBAccessIFStubs -lTMCDBComponentStubs -lTMCDBDataStructuresStubs + +# +# MODULE CODE DESCRIPTION: +# ------------------------ +# As a general rule: public file are "cleaned" and "installed" +# local (_L) are not "installed". + +# +# C programs (public and local) +# ----------------------------- +EXECUTABLES = +EXECUTABLES_L = + +# +# +xxxxx_OBJECTS = +xxxxx_LDFLAGS = +xxxxx_LIBS = + +# +# special compilation flags for single c sources +#yyyyy_CFLAGS = + +# +# Includes (.h) files (public only) +# --------------------------------- +INCLUDES = + +# +# Libraries (public and local) +# ---------------------------- +LIBRARIES = +LIBRARIES_L = + +# +# + +# +# Scripts (public and local) +# ---------------------------- +SCRIPTS = +SCRIPTS_L = + +# +# TCL scripts (public and local) +# ------------------------------ +TCL_SCRIPTS = +TCL_SCRIPTS_L = + +# +# Python stuff (public and local) +# ---------------------------- +PY_SCRIPTS = +PY_SCRIPTS_L = + +PY_MODULES = +PY_MODULES_L = + +PY_PACKAGES = +PY_PACKAGES_L = +pppppp_MODULES = + +# +# +tttttt_OBJECTS = +tttttt_TCLSH = +tttttt_LIBS = + +# +# TCL libraries (public and local) +# ------------------------------ +TCL_LIBRARIES = +TCL_LIBRARIES_L = + +# +# +tttlll_OBJECTS = + +# +# Configuration Database Files +# ---------------------------- +CDB_SCHEMAS = + +# +# IDL Files and flags +# +IDL_FILES = TMCDBAccessIF TMCDBDataStructures asdmIDLTypes +# jagonzal: This is not necessary since the Stubs will already be generated if the target is included in IDL_FILES +#TMCDBAccessIFStubs_LIBS = TMCDBComponentStubs TMCDBDataStructuresStubs TmcdbErrType acscomponentStubs almaEnumerations_IFStubs +TMCDBAccessIFStubs_LIBS = TMCDBDataStructuresStubs TmcdbErrType acscomponentStubs +TAO_IDLFLAGS = +USER_IDL = +# +# Jarfiles and their directories +# +JARFILES=TMCDBAccess +TMCDBAccess_DIRS=alma +TMCDBAccess_JLIBS=TMCDBAccessIF +jjj_EXTRAS= +# +ACSERRDEF = TmcdbErrType + +# java sources in Jarfile on/off +DEBUG=on +# +# ACS XmlIdl generation on/off +# +XML_IDL= +# +# Java Component Helper Classes generation on/off +# +COMPONENT_HELPERS= +# +# Java Entity Classes generation on/off +# +XSDBIND= +# +# Schema Config files for the above +# +XSDBIND_INCLUDE= +# man pages to be done +# +# Jarfiles and their directories +# +#JARFILES=TMCDBAccess +#TMCDBAccess_DIRS=alma +#TMCDBAccess_JLIBS=TMCDBComponent +#jjj_EXTRAS= +# +# java sources in Jarfile on/off +DEBUG=on +# +# ACS XmlIdl generation on/off +# +XML_IDL= +# +# Java Component Helper Classes generation on/off +# +COMPONENT_HELPERS= +# +# Java Entity Classes generation on/off +# +XSDBIND= +# +# Schema Config files for the above +# +XSDBIND_INCLUDE= +# man pages to be done +# -------------------- +MANSECTIONS = +MAN1 = +MAN3 = +MAN5 = +MAN7 = +MAN8 = + +# +# local man pages +# --------------- +MANl = + +# +# ASCII file to be converted into Framemaker-MIF +# -------------------- +ASCII_TO_MIF = + +# +# other files to be installed +#---------------------------- +INSTALL_FILES = + +# +# list of all possible C-sources (used to create automatic dependencies) +# ------------------------------ +CSOURCENAMES = \ + $(foreach exe, $(EXECUTABLES) $(EXECUTABLES_L), $($(exe)_OBJECTS)) \ + $(foreach rtos, $(RTAI_MODULES) , $($(rtos)_OBJECTS)) \ + $(foreach lib, $(LIBRARIES) $(LIBRARIES_L), $($(lib)_OBJECTS)) + +# +#>>>>> END OF standard rules + +# +# INCLUDE STANDARDS +# ----------------- + +MAKEDIRTMP := $(shell searchFile include/acsMakefile) +ifneq ($(MAKEDIRTMP),\#error\#) + MAKEDIR := $(MAKEDIRTMP)/include + include $(MAKEDIR)/acsMakefile +endif + +# +# TARGETS +# ------- +all: do_all + @echo " . . . 'all' done" + +clean : clean_all + @echo " . . . clean done" + +clean_dist : clean_all clean_dist_all + @echo " . . . clean_dist done" + +man : do_man + @echo " . . . man page(s) done" + +install : install_all + @echo " . . . installation done" + + +#___oOo___ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/AssemblyLocation.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/AssemblyLocation.java new file mode 100755 index 0000000000000000000000000000000000000000..00dc033bdd0f56ec9dcd737afa03bec11dee8693 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/AssemblyLocation.java @@ -0,0 +1,108 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File AssemblyLocation.java + */ +package alma.TMCDBComponentImpl; + +/** + * The AsssemblyLocation class gives the data necessary to locate an assembly + * within the context of a collection of assemblies and can busses. Included + * are the type of assembly, its role name (in case there are more than one), + * its relative can address, channel number and base address. + */ +public class AssemblyLocation { + static private final String newline = System.getProperty("line.separator"); + + private String assemblyTypeName; + private String assemblyRoleName; + private int rca; + private int channelNumber; + private int baseAddress; + + public AssemblyLocation () { + } + + public AssemblyLocation ( + String assemblyTypeName, + String assemblyRoleName, + int rca, + int channelNumber, + int baseAddress ) { + this.assemblyTypeName = assemblyTypeName; + this.assemblyRoleName = assemblyRoleName; + this.rca = rca; + this.channelNumber = channelNumber; + this.baseAddress = baseAddress; + } + + public String toString() { + String s = "AssemblyLocation:" + newline + + "\tassemblyRoleName: " + assemblyRoleName + newline + + "\trca: " + rca + newline + + "\tchannelNumber: " + channelNumber + newline + + "\tbaseAddress: " + baseAddress + newline; + return s; + } + + public String getAssemblyRoleName() { + return assemblyRoleName; + } + + public void setAssemblyRoleName(String assemblyRoleName) { + this.assemblyRoleName = assemblyRoleName; + } + + public String getAssemblyTypeName() { + return assemblyTypeName; + } + + public void setAssemblyTypeName(String assemblyTypeName) { + this.assemblyTypeName = assemblyTypeName; + } + + public int getBaseAddress() { + return baseAddress; + } + + public void setBaseAddress(int baseAddress) { + this.baseAddress = baseAddress; + } + + public int getChannelNumber() { + return channelNumber; + } + + public void setChannelNumber(int channelNumber) { + this.channelNumber = channelNumber; + } + + public int getRca() { + return rca; + } + + public void setRca(int rca) { + this.rca = rca; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/Pad.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/Pad.java new file mode 100755 index 0000000000000000000000000000000000000000..a1d8abbf7ba86e34b97ff603cdd11554e707ec30 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/Pad.java @@ -0,0 +1,491 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * ///////////////////////////////////////////////////////////////// + * // WARNING! DO NOT MODIFY THIS FILE! // + * // --------------------------------------------------------- // + * // | This is generated code! Do not modify this file. | // + * // | Any changes will be lost when the file is re-generated. | // + * // --------------------------------------------------------- // + * ///////////////////////////////////////////////////////////////// + * + * File Pad.java + */ +package alma.TMCDBComponentImpl; + +import astri.physquan.runtime.asdm.types.ArrayTime; + +import astri.physquan.runtime.asdm.types.Length; + +import astri.TMCDB_IDL.PadIDL; + +/** + + * The most important thing about pads is their location. Locations are in meters. + + * Key: BaseElementId + + * + */ +public class Pad implements java.io.Serializable { + static private final String newline = System.getProperty("line.separator"); + + private int BaseElementId; + + private String PadName; + + // private boolean nullPadName; + + private ArrayTime CommissionDate; + + private Length XPosition; + + private Length YPosition; + + private Length ZPosition; + + /** + * Default Constructor for Pad. Setter methods must be used to insert data. + */ + public Pad () { + + // nullPadName = true; + + } + + /** + * Create a Pad by specifiying all data values. + */ + public Pad ( + + int BaseElementId, + + String PadName, + + ArrayTime CommissionDate, + + Length XPosition, + + Length YPosition, + + Length ZPosition + + ) { + + setBaseElementId(BaseElementId); + + setPadName(PadName); + + setCommissionDate(CommissionDate); + + setXPosition(XPosition); + + setYPosition(YPosition); + + setZPosition(ZPosition); + + } + + /** + * Create a Pad by specifiying data values as an array of strings. + */ + public Pad (String[] data) { + if (data.length != 6) + throw new IllegalArgumentException("Wrong number of items in the data array! (" + data.length + " are specified; should be 6)"); + int i = 0; + + try { + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.BaseElementId = new Integer(Integer.parseInt(data[i])); + + } + + } catch (NumberFormatException err) { + throw new IllegalArgumentException("Invalid number format: (" + data[i] + ")."); + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + // nullPadName = true; + // this.PadName = null; + + } else { + + // nullPadName = false; + + this.PadName = data[i]; + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.CommissionDate = new ArrayTime(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.XPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.YPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.ZPosition = new Length(data[i]); + + } + + ++i; + + } + + /** + * Display the values of this object. + */ + public String toString() { + String s = "Pad:" + newline; + + s += "\tBaseElementId: " + BaseElementId + newline; + + // if (PadName == null) + // s += "\tPadName: null" + newline; + // else + + s += "\tPadName: " + PadName + newline; + + s += "\tCommissionDate: " + CommissionDate.toFITS() + newline; + + s += "\tXPosition: " + XPosition + newline; + + s += "\tYPosition: " + YPosition + newline; + + s += "\tZPosition: " + ZPosition + newline; + + return s; + } + + /** + * Create a string in the "unload" format. + */ + public String toString(String delimiter) { + String s = "Pad" + delimiter; + + s += BaseElementId + delimiter; + + // if (nullPadName) + // s += delimiter; + // else + + // s += PadName + delimiter; + + s += new String(CommissionDate.toFITS()) + delimiter; + + s += XPosition + delimiter; + + s += YPosition + delimiter; + + s += ZPosition + delimiter; + + return s; + } + + /** + * Return the number of columns in the table. + */ + public static int getNumberColumns() { + return 6; + } + + /** + * Create a string with the column names in the "unload" format. + */ + public static String getColumnNames(String delimiter) { + String s = "#Pad" + delimiter + + + "BaseElementId" + delimiter + + + "PadName" + delimiter + + + "CommissionDate" + delimiter + + + "XPosition" + delimiter + + + "YPosition" + delimiter + + + "ZPosition" + delimiter + + ; + return s; + } + + /** + * Create a string with the column names in the "unload" format. + */ + public String getTheColumnNames(String delimiter) { + return getColumnNames(delimiter); + } + + /** + * Compare this oblect with another object of the same type. + */ + public boolean equals(Object obj) { + if (obj == null) return false; + if (!(obj instanceof Pad)) return false; + Pad arg = (Pad) obj; + + if (this.BaseElementId != arg.BaseElementId) + return false; + + if (this.PadName == null) { // Two null strings are equal + if (arg.PadName == null) + return true; + else + return false; + } + if (!this.PadName.equals(arg.PadName)) + return false; + + if (this.CommissionDate.get() != arg.CommissionDate.get()) + return false; + + if (this.XPosition.get() != arg.XPosition.get()) + return false; + + if (this.YPosition.get() != arg.YPosition.get()) + return false; + + if (this.ZPosition.get() != arg.ZPosition.get()) + return false; + + return true; + } + + /** + * Convert this object to its IDL format. + */ + public PadIDL toIDL() { + PadIDL x = new PadIDL (); + + x.BaseElementId = this.BaseElementId; + + x.PadName = this.PadName; + + // x.nullPadName = this.nullPadName; + + x.CommissionDate = this.CommissionDate.toIDLArrayTime(); + + x.XPosition = this.XPosition.toIDLLength(); + + x.YPosition = this.YPosition.toIDLLength(); + + x.ZPosition = this.ZPosition.toIDLLength(); + + return x; + } + + /** + * Populate this object from an IDL format. + */ + public void fromIDL(PadIDL x) { + + this.BaseElementId = x.BaseElementId; + + this.PadName = x.PadName; + + // this.nullPadName = x.nullPadName; + + this.CommissionDate = new ArrayTime(x.CommissionDate); + + this.XPosition = new Length(x.XPosition); + + this.YPosition = new Length(x.YPosition); + + this.ZPosition = new Length(x.ZPosition); + + } + + /* + * If this is a database entry has a generated key, return the value + * of its generated id; otherwise, return 0. + */ + public int getId() { + + return 0; + + } + + ///////////////////////////////////////////////////////////// + // Getter and Setter Methods for Pad. + ///////////////////////////////////////////////////////////// + + /** + * Get the value for BaseElementId. + */ + public int getBaseElementId () { + return BaseElementId; + } + + /** + * Set BaseElementId to the specified value. + */ + public void setBaseElementId(int BaseElementId) { + + this.BaseElementId = BaseElementId; + + } + + /** + * Get the value for PadName. + */ + public String getPadName () { + return PadName; + } + + /** + * Set PadName to the specified value. + */ + public void setPadName(String PadName) { + + // nullPadName = false; + + this.PadName = PadName; + + } + + /* + * Is the PadName null? + */ + // public boolean isPadNameNull() { + // return nullPadName; + // } + + /* + * Set the null indicator for PadName + */ + // public void setPadNameNull() { + // nullPadName = true; + // } + + /** + * Get the value for CommissionDate. + */ + public ArrayTime getCommissionDate () { + return CommissionDate; + } + + /** + * Set CommissionDate to the specified value. + */ + public void setCommissionDate(ArrayTime CommissionDate) { + + this.CommissionDate = CommissionDate; + + } + + /** + * Get the value for XPosition. + */ + public Length getXPosition () { + return XPosition; + } + + /** + * Set XPosition to the specified value. + */ + public void setXPosition(Length XPosition) { + + this.XPosition = XPosition; + + } + + /** + * Get the value for YPosition. + */ + public Length getYPosition () { + return YPosition; + } + + /** + * Set YPosition to the specified value. + */ + public void setYPosition(Length YPosition) { + + this.YPosition = YPosition; + + } + + /** + * Get the value for ZPosition. + */ + public Length getZPosition () { + return ZPosition; + } + + /** + * Set ZPosition to the specified value. + */ + public void setZPosition(Length ZPosition) { + + this.ZPosition = ZPosition; + + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/StartupTelescope.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/StartupTelescope.java new file mode 100755 index 0000000000000000000000000000000000000000..3da4ce7a601c7a9781cc45aafa3464b3b6842556 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/StartupTelescope.java @@ -0,0 +1,137 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File StartupTelescope.java + */ +package alma.TMCDBComponentImpl; + +/** + * The StartupTelescope class supplies the information needed to initialize + * an antenna. Included are the name of the antenna, the pad on which + * it resides, the name of front end, the assembly locations in the + * front end, and the assembly locations in the antenna. + */ +public class StartupTelescope { + static private final String newline = System.getProperty("line.separator"); + + private String antennaName; + private short uiDisplayOrder; + private String padName; + private String frontEndName; + private AssemblyLocation[] frontEndAssembly; + private AssemblyLocation[] antennaAssembly; + + public StartupTelescope () { + } + + public StartupTelescope ( + String antennaName, + String padName, + String frontEndName, + AssemblyLocation[] frontEndAssembly, + AssemblyLocation[] antennaAssembly) { + this.antennaName = antennaName; + this.uiDisplayOrder = 1; + this.padName = padName; + this.frontEndName = frontEndName; + this.frontEndAssembly = frontEndAssembly; + this.antennaAssembly = antennaAssembly; + } + + public StartupTelescope ( + String antennaName, + short uiDisplayOrder, + String padName, + String frontEndName, + AssemblyLocation[] frontEndAssembly, + AssemblyLocation[] antennaAssembly) { + this.antennaName = antennaName; + this.uiDisplayOrder = uiDisplayOrder; + this.padName = padName; + this.frontEndName = frontEndName; + this.frontEndAssembly = frontEndAssembly; + this.antennaAssembly = antennaAssembly; + } + + public String toString() { + String s = "StartupTelescope:" + newline + + "\tantennaName: " + antennaName + newline + + "\tuiDisplayOrder: " + uiDisplayOrder + newline + + "\tpadName: " + padName + newline + + "\tfrontEndName: " + frontEndName + newline; + for (int i = 0; i < frontEndAssembly.length; ++i) + s += "\tfrontEndAssembly[" + i + "]: " + frontEndAssembly[i].toString() + newline; + for (int i = 0; i < antennaAssembly.length; ++i) + s += "\tantennaAssembly[" + i + "]: " + antennaAssembly[i].toString() + newline; + return s; + } + + public AssemblyLocation[] getTelescopeAssembly() { + return antennaAssembly; + } + + public void setTelescopeAssembly(AssemblyLocation[] antennaAssembly) { + this.antennaAssembly = antennaAssembly; + } + + public String getTelescopeName() { + return antennaName; + } + + public void setTelescopeName(String antennaName) { + this.antennaName = antennaName; + } + + public short getUiDisplayOrder() { + return uiDisplayOrder; + } + + public void setUiDisplayOrder(short uiDisplayOrder) { + this.uiDisplayOrder = uiDisplayOrder; + } + + public AssemblyLocation[] getFrontEndAssembly() { + return frontEndAssembly; + } + + public void setFrontEndAssembly(AssemblyLocation[] frontEndAssembly) { + this.frontEndAssembly = frontEndAssembly; + } + + public String getFrontEndName() { + return frontEndName; + } + + public void setFrontEndName(String frontEndName) { + this.frontEndName = frontEndName; + } + + public String getPadName() { + return padName; + } + + public void setPadName(String padName) { + this.padName = padName; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/TMCDBSimComponentImpl.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/TMCDBSimComponentImpl.java new file mode 100755 index 0000000000000000000000000000000000000000..9ea89eb3a5e37520db8eb35721005dd4abc5de4d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/TMCDBSimComponentImpl.java @@ -0,0 +1,1309 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File TMCDBSimComponentImpl.java + */ +package alma.TMCDBComponentImpl; + +import java.util.HashMap; +import java.util.Map; +import java.util.logging.Logger; + +import alma.ACS.ComponentStates; +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.AssemblyConfigXMLData; +import alma.TMCDB.AccessOperations; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.TelescopePointingModelIDL; +import astri.TMCDB_IDL.TelescopePointingModelTermIDL; +import astri.TMCDB_IDL.AssemblyLocationIDL; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.PointingModelIDL; +import astri.TMCDB_IDL.StartupWeatherStationControllerIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import alma.TmcdbErrType.TmcdbErrorEx; +import alma.TmcdbErrType.TmcdbNoSuchRowEx; +import alma.TmcdbErrType.TmcdbSqlEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbDuplicateKeyEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbErrTypeEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbErrorEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbInitializationFailureEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbSqlEx; +import alma.acs.component.ComponentLifecycle; +import alma.acs.component.ComponentLifecycleException; +import alma.acs.container.ContainerServices; +import alma.TMCDB.ModelTerm; +import alma.TMCDB.TelescopeFocusModel; +import alma.TMCDB.TelescopePointingModel; + +//Refactoring: +import java.util.ArrayList; +import java.util.List; + +import java.lang.Float; +import java.io.File; +import java.io.IOException; + +import org.omg.CORBA.DoubleHolder; + +//XML parsers +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.parsers.SAXParser; +import javax.xml.parsers.SAXParserFactory; + +import org.xml.sax.Attributes; +import org.xml.sax.SAXException; + +import org.xml.sax.helpers.DefaultHandler; + + +public class TMCDBSimComponentImpl implements AccessOperations, ComponentLifecycle { + + /** + * The name of this Controller. + */ + protected String instanceName; + + /** + * The ACS container services. + */ + protected ContainerServices container; + + /** + * The ACS Logger. + */ + protected Logger logger; + + /** Startup telescope information to be setup from test cases. */ + private StartupTelescopeIDL[] testStartupTelescopesInfo; + + /** Telescope information to be setup from test cases. */ + private Map testTelescopeInfo; + + /** Telescope pad information to be setup from test cases. */ + private Map testPadInfo; + + /** Pointing model information to be setup from test cases. */ + private PointingModelIDL testPointingModelInfo; + + // The telescope focus model, for each telescope + private Map telescopeFocusModel = null; + // The offsets in the focus model for each band + private Map bandFocusModel = null; + + // The telescope pointing model, for each telescope + private Map telescopePointingModel = null; + // The offsets in the pointing model for each band + private Map bandPointingModel = null; + + /** Configuration name */ + private String configurationName; + + /**Map TelescopeName with current PadName */ + Map telescopePad = new HashMap(); + + /** + * The TMCDBComponentImpl constructor. This constructor doesn't really do anything. + * The real work is done in the initialization functions. + */ + public TMCDBSimComponentImpl() { + super(); + } + + /** + * @param container The container to set. + */ + protected void setContainer(ContainerServices container) { + this.container = container; + } + + /** + * @param logger The logger to set. + */ + protected void setLogger(Logger logger) { + this.logger = logger; + } + + /** + * + * @param name The name of this resource. + */ + protected void setName(String name) { + this.instanceName = name; + } + + ////////////////////////////////////////////////////// + // Lifecycle Methods // + ////////////////////////////////////////////////////// + + public void aboutToAbort() { + cleanUp(); + } + + public void cleanUp() { + } + + public void execute() throws ComponentLifecycleException { + } + + public void initialize(ContainerServices cs) throws ComponentLifecycleException { + if (cs != null) { + setContainer(cs); + setName(container.getName()); + setLogger(container.getLogger()); + } + + testTelescopeInfo = new HashMap(); + testPadInfo = new HashMap(); + + // Set the configuration name. This is used by the observing modes to select + // which tuning solutions to use. + try { + String tmcdbConfName = System.getenv("TMCDB_CONFIGURATION_NAME"); + if (tmcdbConfName == null) { + logger.config("No TMCDB_CONFIGURATION_NAME env. variable has been defined. " + + "Using \"Test\"."); + tmcdbConfName = "Test"; + } else + logger.config("Using TMCDB Configuration Name \""+tmcdbConfName+"\"."); + setConfigurationName(tmcdbConfName); + } catch (AcsJTmcdbErrTypeEx ex) { + throw new ComponentLifecycleException(ex); + } + } + + public void setConfigurationName(String configName) + throws AcsJTmcdbInitializationFailureEx, + AcsJTmcdbNoSuchRowEx, AcsJTmcdbDuplicateKeyEx, AcsJTmcdbSqlEx { + + configurationName = configName; + } + + public String getConfigurationName() throws TmcdbErrorEx { + return configurationName; + } + + ///////////////////////////////////////////////////////////// + // Implementation of ACSComponent + ///////////////////////////////////////////////////////////// + + public ComponentStates componentState() { + return container.getComponentStateManager().getCurrentState(); + } + public String name() { + return container.getName(); + } + + ///////////////////////////////////////////////// + // TMCDB Internal Operations + ///////////////////////////////////////////////// + + /** + * Yet another temporary hack while we finally get the TMCDB fully + * implemented and working. + * This function, implemented in the TMCDB base class, is overriden + * in order to set the configuration that this component must provide. + */ + public static StartupTelescope createTelescopeStartUp(String telescopeName, String + padName, List deviceList, List feList){ + StartupTelescope ant = new StartupTelescope (); + ant.setTelescopeName(telescopeName); + ant.setPadName(padName); + if(telescopeName.substring(0, 2).equals("DV") || + telescopeName.substring(0, 2).equals("LA")){ + ant.setUiDisplayOrder((short) Integer.valueOf(telescopeName.substring(2, 4)).intValue() ); + } else if (telescopeName.substring(0, 2).equals("DA")){ + ant.setUiDisplayOrder((short) (Integer.valueOf(telescopeName.substring(2, 4)).intValue()-15)); + } else if (telescopeName.substring(0, 2).equals("PM")) { + ant.setUiDisplayOrder((short) (Integer.valueOf(telescopeName.substring(2, 4)).intValue()+62)); + } else {//CM case + ant.setUiDisplayOrder((short) (Integer.valueOf(telescopeName.substring(2, 4)).intValue()+50)); + } + + ant.setFrontEndName("none"); + + AssemblyLocation[] FeDeviceList = new AssemblyLocation[feList.size()]; + for (int i = 0; i < FeDeviceList.length; ++i) { + FeDeviceList[i] = new AssemblyLocation (); + FeDeviceList[i].setAssemblyRoleName(""); + FeDeviceList[i].setAssemblyTypeName("none"); + FeDeviceList[i].setBaseAddress(0); + FeDeviceList[i].setChannelNumber(0); + FeDeviceList[i].setRca(0); + } + //FeDeviceList[0].setAssemblyRoleName("ColdCart3"); + //FeDeviceList[1].setAssemblyRoleName("ColdCart6"); + //FeDeviceList[2].setAssemblyRoleName("ColdCart7"); + //FeDeviceList[3].setAssemblyRoleName("ColdCart9"); + //FeDeviceList[4].setAssemblyRoleName("Cryostat"); + //FeDeviceList[5].setAssemblyRoleName("IFSwitch"); + //FeDeviceList[6].setAssemblyRoleName("LPR"); + //FeDeviceList[7].setAssemblyRoleName("PowerDist3"); + //FeDeviceList[8].setAssemblyRoleName("PowerDist6"); + //FeDeviceList[9].setAssemblyRoleName("PowerDist7"); + //FeDeviceList[10].setAssemblyRoleName("PowerDist9"); + //FeDeviceList[11].setAssemblyRoleName("WCA3"); + //FeDeviceList[12].setAssemblyRoleName("WCA6"); + //FeDeviceList[13].setAssemblyRoleName("WCA7"); + //FeDeviceList[14].setAssemblyRoleName("WCA9"); + for (int i = 0; i < feList.size(); i++) + FeDeviceList[i].setAssemblyRoleName(feList.get(i)); + ant.setFrontEndAssembly(FeDeviceList); + + AssemblyLocation[] devices = new AssemblyLocation[deviceList.size()]; + for (int i = 0; i < devices.length; ++i) { + devices[i] = new AssemblyLocation (); + devices[i].setAssemblyRoleName(""); + devices[i].setAssemblyTypeName("none"); + devices[i].setBaseAddress(0); + devices[i].setChannelNumber(0); + devices[i].setRca(0); + } + + for (int i=0;i telescopeList = new ArrayList(); + + //Make sure we have the telescope pad map + readTelescopePadMap(); + + //Crean telescopes + TelescopeXMLParser antparser = new TelescopeXMLParser(telescopePad); + try { + antparser.parse(); + telescopeList = antparser.getTelescopeList(); + } catch (Exception e) { + e.printStackTrace(); + logger.severe("Error while parsing Telescopes file"); + } + + StartupTelescope[] ants = new StartupTelescope[telescopeList.size()]; + for(int i=0;i < telescopeList.size();i++) + ants[i] = telescopeList.get(i); + + return ants; + } + + /////////////////////////////// + // TMCDB External Operations // + /////////////////////////////// + + public StartupTelescopeIDL[] getStartupTelescopesInfo() { + + if (testStartupTelescopesInfo == null) { + StartupTelescope[] telescope = null; + + telescope = getStartUpTelescopesInfo(); + StartupTelescopeIDL[] list = new StartupTelescopeIDL [telescope.length]; + for (int i = 0; i < list.length; ++i) { + list[i] = new StartupTelescopeIDL(); + list[i].telescopeName = telescope[i].getTelescopeName(); + list[i].padName = telescope[i].getPadName(); +// list[i].frontEndName = telescope[i].getFrontEndName(); + list[i].uiDisplayOrder = telescope[i].getUiDisplayOrder(); +// AssemblyLocation[] loc = telescope[i].getFrontEndAssembly(); +// list[i].frontEndAssembly = new AssemblyLocationIDL [loc.length]; +// for (int j = 0; j < list[i].frontEndAssembly.length; ++j) { +// list[i].frontEndAssembly[j] = new AssemblyLocationIDL (); +// list[i].frontEndAssembly[j].assemblyTypeName = loc[j].getAssemblyTypeName(); +// list[i].frontEndAssembly[j].assemblyRoleName = loc[j].getAssemblyRoleName(); +// list[i].frontEndAssembly[j].rca = loc[j].getRca(); +// list[i].frontEndAssembly[j].channelNumber = loc[j].getChannelNumber(); +// list[i].frontEndAssembly[j].baseAddress = loc[j].getBaseAddress(); +// } + AssemblyLocation[] loc = telescope[i].getTelescopeAssembly(); + list[i].telescopeAssembly = new AssemblyLocationIDL [loc.length]; + for (int j = 0; j < list[i].telescopeAssembly.length; ++j) { + list[i].telescopeAssembly[j] = new AssemblyLocationIDL (); + list[i].telescopeAssembly[j].assemblyTypeName = loc[j].getAssemblyTypeName(); + list[i].telescopeAssembly[j].assemblyRoleName = loc[j].getAssemblyRoleName(); + list[i].telescopeAssembly[j].rca = loc[j].getRca(); + list[i].telescopeAssembly[j].channelNumber = loc[j].getChannelNumber(); + list[i].telescopeAssembly[j].baseAddress = loc[j].getBaseAddress(); + } + } + return list; + } else { + return testStartupTelescopesInfo; + } + } + + public StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() throws TmcdbErrorEx { + AssemblyLocationIDL[] assemblies = new AssemblyLocationIDL[0]; + WeatherStationControllerXMLParser parser = new WeatherStationControllerXMLParser(); + try { + parser.parse(); + assemblies = parser.getAssemblies(); + } catch (Exception e) { + e.printStackTrace(); + logger.severe("Error while parsing WeatherStationController file"); + } + + return new StartupWeatherStationControllerIDL(assemblies); + } + + public TelescopeIDL getTelescopeInfo(String telescopeName) throws TmcdbNoSuchRowEx { + Telescope telescope = new Telescope (); + if(telescopeName.substring(0, 2).equals("DV") || + telescopeName.substring(0, 2).equals("DA") || + telescopeName.substring(0, 2).equals("LA")) { + telescope.setTelescopeName(telescopeName); + telescope.setTelescopeType("twelveMeter"); + telescope.setCommissionDate(new astri.physquan.runtime.asdm.types.ArrayTime(2009,2,6,0,0,0.0)); + telescope.setDishDiameter(new astri.physquan.runtime.asdm.types.Length(12.0)); + telescope.setXPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setYPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setZPosition(new astri.physquan.runtime.asdm.types.Length(7.0)); + } else if (telescopeName.substring(0, 2).equals("PM")) { + telescope.setTelescopeName(telescopeName); + telescope.setTelescopeType("totalPower"); + telescope.setCommissionDate(new astri.physquan.runtime.asdm.types.ArrayTime(2006,10,1,0,0,0.0)); + telescope.setDishDiameter(new astri.physquan.runtime.asdm.types.Length(12.0)); + telescope.setXPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setYPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setZPosition(new astri.physquan.runtime.asdm.types.Length(7.5)); + } else if(telescopeName.substring(0, 2).equals("CM")) { + telescope.setTelescopeName(telescopeName); + telescope.setTelescopeType("sevenMeter"); + telescope.setCommissionDate(new astri.physquan.runtime.asdm.types.ArrayTime(2006,10,1,0,0,0.0)); + telescope.setDishDiameter(new astri.physquan.runtime.asdm.types.Length(12.0)); + telescope.setXPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setYPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setZPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + } + telescope.setComponentId(0); + //telescope.setBaseElementId(2); + //telescope.setComputerId(0); // TODO: Verify that removal is correct + //telescope.setConfigurationId(1); + telescope.setXOffset(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setYOffset(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setZOffset(new astri.physquan.runtime.asdm.types.Length(0.0)); + return telescope.toIDL(); + } + + public PadIDL getCurrentTelescopePadInfo(String telescopeName) throws TmcdbNoSuchRowEx { + String padName=null; + PadIDL pad = new PadIDL(); + PadXMLParser parser = new PadXMLParser(); + //make sure we have the telescope pad map + readTelescopePadMap(); + try{ + padName=telescopePad.get(telescopeName); + // System.out.println("padName="+ padName); + }catch (java.lang.NullPointerException exce1){ + logger.severe("Telescope "+telescopeName+ " doesn't exist"); + exce1.printStackTrace(); + } + if(padName == null) { + //No pad found, maybe we are in testing environment + pad = testPadInfo.get(telescopeName); + // System.out.println("padname not found, defaulting to testPadInfo"); + if (pad == null) { + AcsJTmcdbNoSuchRowEx ex = new AcsJTmcdbNoSuchRowEx("There is no such telescope as " + telescopeName); + throw ex.toTmcdbNoSuchRowEx(); + } else { + return pad; + } + } + try { + parser.parse(); + pad = parser.getPadIDL(padName); + } catch (Exception e) { + e.printStackTrace(); + logger.severe("Error while parsing Telescope Pad file"); + } + return pad; + } + + public PointingModelIDL getPMData(String telescopeName) throws AcsJTmcdbNoSuchRowEx { + PointingModelIDL x = new PointingModelIDL (); + x.telescopeName = telescopeName; + // x.padName = telescopePad.get(telescopeName); + try { + x.padName = getCurrentTelescopePadInfo(telescopeName).PadName; + } catch ( alma.TmcdbErrType.TmcdbNoSuchRowEx ex){ + throw new AcsJTmcdbNoSuchRowEx(ex); + } + x.pointingModel = new TelescopePointingModelIDL (); + x.pointingModel.TelescopeId = 1; + x.pointingModel.AsdmUID = "none"; + x.pointingModel.PadId = 1; + x.pointingModel.PointingModelId = 0; + astri.physquan.runtime.asdm.types.ArrayTime t = new astri.physquan.runtime.asdm.types.ArrayTime(2006,10,10,8,0,0.0); + x.pointingModel.StartTime = t.toIDLArrayTime(); + x.pointingModel.StartValidTime = t.toIDLArrayTime(); + x.pointingModel.EndValidTime = new astri.asdmIDLTypes.IDLArrayTime (0); + x.term = new TelescopePointingModelTermIDL [18]; + for (int i = 0; i < x.term.length; ++i) { + x.term[i] = new TelescopePointingModelTermIDL (); + x.term[i].PointingModelId = 0; + x.term[i].CoeffError = 0.0F; + x.term[i].CoeffValue = 0.0F; + } + x.term[0].CoeffName = "IA"; + x.term[1].CoeffName = "IE"; + x.term[2].CoeffName = "HASA"; + x.term[3].CoeffName = "HACA"; + x.term[4].CoeffName = "HESE"; + x.term[5].CoeffName = "HECE"; + x.term[6].CoeffName = "HESA"; + x.term[7].CoeffName = "HASA2"; + x.term[8].CoeffName = "HACA2"; + x.term[9].CoeffName = "HESA2"; + x.term[10].CoeffName = "HECA2"; + x.term[11].CoeffName = "HACA3"; + x.term[12].CoeffName = "HECA3"; + x.term[13].CoeffName = "HESA3"; + x.term[14].CoeffName = "NPAE"; + x.term[15].CoeffName = "CA"; + x.term[16].CoeffName = "AN"; + x.term[17].CoeffName = "AW"; + return x; + } + + public PointingModelIDL getPointingModelInfo(String telescopeName) throws TmcdbNoSuchRowEx { + if (testPointingModelInfo == null) { + try { + return getPMData(telescopeName); + } catch (AcsJTmcdbNoSuchRowEx e) { + throw e.toTmcdbNoSuchRowEx(); + } + } else { + return testPointingModelInfo; + } + } + + public PointingModelIDL getRecentPointingModelInfo(String telescopeName) throws TmcdbNoSuchRowEx { + if (testPointingModelInfo == null) { + try { + return getPMData(telescopeName); + } catch (AcsJTmcdbNoSuchRowEx e) { + throw e.toTmcdbNoSuchRowEx(); + } + } else { + return testPointingModelInfo; + } + } + + public PointingModelIDL[] getPointingModelsInfo(String telescopeName) throws TmcdbNoSuchRowEx { + PointingModelIDL[] x = new PointingModelIDL [1]; + try { + x[0] = getPMData(telescopeName); + return x; + }catch (AcsJTmcdbNoSuchRowEx e) { + AcsJTmcdbNoSuchRowEx ex = new AcsJTmcdbNoSuchRowEx("There is no such telescope as " + telescopeName); + throw ex.toTmcdbNoSuchRowEx(); + } + } + + /** + * Sets up the startup telescopes information. This function provides a way to + * set up this structure from test cases. + * This is a temporary hack while a way to do this is implemented at the + * TMCDB layer. + */ + public void setStartupTelescopesInfo(StartupTelescopeIDL[] sai) { + logger.info("Setting startup telescopes information of length " + sai.length); + testStartupTelescopesInfo = sai; + } + + /** + * Sets up the telescopes information. This function provides a way to + * set up this structure from test cases. + * This is a temporary hack while a way to do this is implemented at the + * TMCDB layer. + */ + public void setTelescopeInfo(String an, TelescopeIDL ai) { + testTelescopeInfo.put(an, ai); + } + + /** + * Sets up the telescope pads information. This function provides a way to + * set up this structure from test cases. + * This is a temporary hack while a way to do this is implemented at the + * TMCDB layer. + */ + public void setTelescopePadInfo(String an, PadIDL api) { + testPadInfo.put(an, api); + } + + /** + * Sets up the pointing model data. This function provides a way to + * set up this structure from test cases. + * This is a temporary hack while a way to do this is implemented at the + * TMCDB layer. + */ + public void setPointingModelData(PointingModelIDL pm) { + testPointingModelInfo = pm; + } + + public AssemblyConfigXMLData getAssemblyConfigData(String serialNumber) throws TmcdbSqlEx, TmcdbNoSuchRowEx { + AssemblyConfigXMLData data = new AssemblyConfigXMLData(); + data.xmlDoc = ""; + data.schema = ""; + return data; + } + + public AssemblyConfigXMLData getComponentConfigData(String componentName) throws TmcdbSqlEx, TmcdbNoSuchRowEx { + return null; + } + +// @Override +// public double[] getMetrologyCoefficients(String telescopeName) { +// double[] coeffs = new double[2]; +// coeffs[0] = 0.0; +// coeffs[1] = 0.0; +// PadXMLParser parser = new PadXMLParser(); +// //make sure we have the telescope pad map +// String padName; +// readTelescopePadMap(); +// try{ +// padName=telescopePad.get(telescopeName); +// System.out.println("padName="+ padName); +// }catch (java.lang.NullPointerException exce1){ +// exce1.printStackTrace(); +// logger.severe("Telescope "+telescopeName+ " doesn't exist"); +// return coeffs; +// } +// if (padName == null) { +// logger.severe("Metrology Coefficients not found, returning 0s"); +// return coeffs; +// } +// try { +// parser.parse(); +// coeffs = parser.getCoeffs(padName); +// } catch (Exception e) { +// e.printStackTrace(); +// logger.severe("Error while parsing pad file"); +// } +// +// return coeffs; +// } + +// @Override +// public ArrayReferenceLocation getArrayReferenceLocation() { +// ArrayReferenceLocation loc = null; +// ArrayReferenceXMLParser parser = new ArrayReferenceXMLParser(); +// try { +// parser.parse(); +// loc = parser.getReference(); +// } catch (Exception e) { +// e.printStackTrace(); +// logger.severe("Error while parsing Array Reference file"); +// } +// if(loc == null){ +// loc = new ArrayReferenceLocation(); +// loc.x = 2202175.078; +// loc.y = -5445230.603; +// loc.z = -2485310.452; +// } +// return loc; +// } + + //TODO: Change to ASTRI/mini-array or CTA-specific names + static public boolean isTelescopeNameValid(String telescopeName) { + if (telescopeName.length() != 4) { + return false; + } + final String prefix = telescopeName.substring(0, 2).toUpperCase(); + short number; + try { + number = new Integer(telescopeName.substring(2, 4)).shortValue(); + } catch (NumberFormatException ex) { + return false; + } + + if ((prefix.equals("DV") && number >= 1 && number <= 25) + || (prefix.equals("DA") && number >= 41 && number <= 65) + || (prefix.equals("PM") && number >= 1 && number <= 4) + || (prefix.equals("CM") && number >= 1 && number <= 12)) { + return true; + } + return false; + } + + public ModelTerm[] getCurrentTelescopeFocusModel(String telescopeName) + throws TmcdbErrorEx, TmcdbNoSuchRowEx { + if (!TMCDBSimComponentImpl.isTelescopeNameValid(telescopeName)) { + AcsJTmcdbNoSuchRowEx jex = new AcsJTmcdbNoSuchRowEx(); + jex.setProperty("Detail", "Telescope '" + telescopeName + + "' is not a recognized telescope name."); + jex.log(logger); + throw jex.toTmcdbNoSuchRowEx(); + } + + // Always reload the focus model from the TMCDB. + // TODO. Only load a new model if its has changed. To do this + // I need a function that tells me if the focus model has + // changed. + telescopeFocusModel = null; + bandFocusModel = null; + + if (telescopeFocusModel == null) { + FocusModelXMLParser parser = new FocusModelXMLParser(logger); + parser.TMCDBParse(); + telescopeFocusModel = parser.getTelescopeFocusModel(); + bandFocusModel = parser.getBandFocusModel(); + } + final String upCaseName = telescopeName.toUpperCase(); + if (telescopeFocusModel.containsKey(upCaseName)) { + return telescopeFocusModel.get(upCaseName); + } else { + return new ModelTerm[0]; + } + } + + public ModelTerm[] getCurrentBandFocusModel(short band, + boolean for12MTelescope) throws TmcdbErrorEx, TmcdbNoSuchRowEx { + // TODO. Work out how to support the 7m telescopes. + // Make sure its a valid band name + if (band < 1 || band > 10) { + AcsJTmcdbNoSuchRowEx jex = new AcsJTmcdbNoSuchRowEx(); + jex.setProperty("Detail", "Band numbers must be between 1 and 10." + + " Band " + band + " is not allowed."); + jex.log(logger); + throw jex.toTmcdbNoSuchRowEx(); + } + + // Always reload the focus model from the TMCDB. + // TODO. Only load a new model if its has changed. To do this + // I need a function that tells me if the focus model has + // changed. + telescopeFocusModel = null; + bandFocusModel = null; + + if (bandFocusModel == null) { + FocusModelXMLParser parser = new FocusModelXMLParser(logger); + parser.TMCDBParse(); + telescopeFocusModel = parser.getTelescopeFocusModel(); + bandFocusModel = parser.getBandFocusModel(); + } + final Integer bandNum = (int) band; + if (bandFocusModel.containsKey(bandNum)) { + return bandFocusModel.get(bandNum); + } else { + return new ModelTerm[0]; + } + } + + public TelescopePointingModel getCurrentTelescopePointingModel(String telescopeName) + throws TmcdbErrorEx, TmcdbNoSuchRowEx { + if (!TMCDBSimComponentImpl.isTelescopeNameValid(telescopeName)) { + AcsJTmcdbNoSuchRowEx jex = new AcsJTmcdbNoSuchRowEx(); + jex.setProperty("Detail", "Telescope '" + telescopeName + + "' is not a recognized telescope name."); + jex.log(logger); + throw jex.toTmcdbNoSuchRowEx(); + } + + // Always reload the pointing model from the TMCDB. + // TODO. Only load a new model if its has changed. To do this + // I need a function that tells me if the pointing model has + // changed. + telescopePointingModel = null; + bandPointingModel = null; + + if (telescopePointingModel == null) { + PointingModelXMLParser parser = new PointingModelXMLParser(logger); + parser.TMCDBParse(); + telescopePointingModel = parser.getTelescopePointingModel(); + bandPointingModel = parser.getBandPointingModel(); + } + final String upCaseName = telescopeName.toUpperCase(); + if (telescopePointingModel.containsKey(upCaseName)) { + return telescopePointingModel.get(upCaseName); + } else { + return new ModelTerm[0]; + } + } + + public ModelTerm[] getCurrentBandPointingModel(short band, + boolean for12MTelescope) throws TmcdbErrorEx, TmcdbNoSuchRowEx { + // TODO. Work out how to support the 7m telescopes. + // Make sure its a valid band name + if (band < 0 || band > 10) { + AcsJTmcdbNoSuchRowEx jex = new AcsJTmcdbNoSuchRowEx(); + jex.setProperty("Detail", "Band numbers must be between 0 and 10." + + " Band " + band + " is not allowed."); + jex.log(logger); + throw jex.toTmcdbNoSuchRowEx(); + } + + // Always reload the pointing model from the TMCDB. + // TODO. Only load a new model if its has changed. To do this + // I need a function that tells me if the pointing model has + // changed. + telescopePointingModel = null; + bandPointingModel = null; + + if (bandPointingModel == null) { + PointingModelXMLParser parser = new PointingModelXMLParser(logger); + parser.TMCDBParse(); + telescopePointingModel = parser.getTelescopePointingModel(); + bandPointingModel = parser.getBandPointingModel(); + } + final Integer bandNum = (int) band; + if (bandPointingModel.containsKey(bandNum)) { + return bandPointingModel.get(bandNum); + } else { + return new ModelTerm[0]; + } + } + + @Override + public String getTelescopeName() throws TmcdbErrorEx, TmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } + + @Override + public void reportTelescopeOnline(String telescopeName) { + // TODO Auto-generated method stub + + } + + @Override + public void reportAssemblyOperational(String serialNumber, String componentName) { + // TODO Auto-generated method stub + + } + + @Override + public TelescopeIDL[] getTelescopes() throws TmcdbErrorEx, TmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } +} + + +/////////////////////////////// +// XML parsing Operations // +/////////////////////////////// +abstract class GenereicXmlParser extends DefaultHandler { + + String filename; + public GenereicXmlParser(String infilename) { + filename = infilename; + } + + public void parse() throws SAXException, + ParserConfigurationException,IOException { + //get a factory + SAXParserFactory spf = SAXParserFactory.newInstance(); + String acsCdb = java.lang.System.getenv("ACS_CDB"); + String acsRoot = java.lang.System.getenv("ACSROOT"); + String scienceDir = "/groups/science/PadData/"; + String location = java.lang.System.getenv("LOCATION"); + //get a new instance of parser + SAXParser sp = spf.newSAXParser(); + + File file; + file = new File(scienceDir + filename+ "-"+location+".xml"); + if(!file.exists()) { + file = new File(scienceDir + filename+".xml"); + if(!file.exists()) { + file = new File(acsRoot + "/config/SIMTMCDB/"+filename+"-"+location+".xml"); + if(!file.exists()) { + file = new File(acsRoot + "/config/SIMTMCDB/"+filename+".xml"); + if (!file.exists()) { + if (acsCdb != null) { + String fn = acsCdb + "/SIMTMCDB/" + filename + ".xml"; + File f = new File(fn); + if(!f.exists()) { + throw new IOException("File " + fn + " not found"); + } + //parse the file and also register this class for call backs + sp.parse(f, this); + return; + } + + } + } + } + } + //parse the file and also register this class for call backs + System.out.print("Using: " +file.getPath()+ "/" + file.getName()+"\n"); + sp.parse(file, this); + } + //Event Handlers + public abstract void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException; + + public abstract void characters(char[] ch, int start, int length) + throws SAXException; + + public abstract void endElement(String uri, String localName, String qName) + throws SAXException; +} + + +class TelescopeXMLParser extends GenereicXmlParser { + + List telescopeList; + List deviceList; + List feList; + String telescopeName; + String tempVal; + Map telescopePad; + + public TelescopeXMLParser(Map map) { + super("StartupTelescope"); + telescopeList = new ArrayList(); + telescopePad = map; + } + + public List getTelescopeList() { + return telescopeList; + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + //reset + tempVal = ""; + if(qName.equalsIgnoreCase("Telescope")) { + deviceList = new ArrayList(); + feList = new ArrayList(); + telescopeName = attributes.getValue("name"); + } + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Telescope")) { + telescopeList.add(TMCDBSimComponentImpl.createTelescopeStartUp(telescopeName, + telescopePad.get(telescopeName), deviceList, feList)); + } else if(qName.equalsIgnoreCase("Assembly")) { + deviceList.add(tempVal); + } else if(qName.equalsIgnoreCase("FEAssembly")) { + feList.add(tempVal); + } + } +} + + +class TelescopePadMapXMLParser extends GenereicXmlParser { + Map telescopePad = new HashMap(); + String tempVal; + String telescopeName; + String padName; + + public TelescopePadMapXMLParser() { + super("TelescopePadMap"); + } + + public Map getMap() { + return telescopePad; + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + //reset + tempVal = ""; + if(qName.equalsIgnoreCase("Map")) { + telescopeName = attributes.getValue("telescope"); + padName = attributes.getValue("pad"); + } + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Map")) { + telescopePad.put(telescopeName, padName); + } + } +} + + +class PadXMLParser extends GenereicXmlParser { + + Map padList; + Map delayList; + Map coeffsList; + String padName; + String x; + String y; + String z; + String delay; + String an0; + String aw0; + + String tempVal; + + + public PadXMLParser() { + super("Pad"); + padList = new HashMap(); + delayList = new HashMap(); + coeffsList = new HashMap(); + } + + public PadIDL getPadIDL(String padName) { + return padList.get(padName).toIDL(); + } + + public double[] getCoeffs(String padName) { + return coeffsList.get(padName); + } + + public double getDelay(String padName) { + return delayList.get(padName).doubleValue(); + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + //reset + tempVal = ""; + if(qName.equalsIgnoreCase("Pad")) { + padName = attributes.getValue("name"); + x = attributes.getValue("x"); + y = attributes.getValue("y"); + z = attributes.getValue("z"); + + delay = attributes.getValue("delay"); + if (delay == null) + delay = new String("0"); + an0 = attributes.getValue("an0"); + if (an0 == null) + an0 = "0"; + aw0 = attributes.getValue("aw0"); + if (aw0 == null) + aw0 = "0"; + } + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Pad")) { + Pad pad = new Pad(); + pad.setPadName(padName); + pad.setCommissionDate(new astri.physquan.runtime.asdm.types.ArrayTime(2006,10,1,0,0,0.0)); + pad.setXPosition(new astri.physquan.runtime.asdm.types.Length(new Double(x).doubleValue())); + pad.setYPosition(new astri.physquan.runtime.asdm.types.Length(new Double(y).doubleValue())); + pad.setZPosition(new astri.physquan.runtime.asdm.types.Length(new Double(z).doubleValue())); + padList.put(padName, pad); + + delayList.put(padName, new Double(delay)); + double tcoeffs[] = new double[2]; + tcoeffs[0] = new Double(an0).doubleValue(); + tcoeffs[1] = new Double(aw0).doubleValue(); + coeffsList.put(padName, tcoeffs); + } + } +} + + +class AOSTimingXMLParser extends GenereicXmlParser { + + List assemblyList; + String tempVal; + + public AOSTimingXMLParser() { + super("AOSTiming"); + assemblyList = new ArrayList(); + } + + public AssemblyLocationIDL[] getAssemblies() { + return ( AssemblyLocationIDL[] )assemblyList.toArray( new AssemblyLocationIDL[ assemblyList.size() ] ); + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + tempVal = ""; + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Assembly")) { + AssemblyLocationIDL assembly = new AssemblyLocationIDL(); + assembly.assemblyRoleName = tempVal; + assembly.assemblyTypeName = "none"; + assembly.baseAddress = 0; + assembly.channelNumber = 0; + assembly.rca = 0; + assemblyList.add(assembly); + } + } +} + + + + +class WeatherStationControllerXMLParser extends GenereicXmlParser { + + List assemblyList; + String tempVal; + + public WeatherStationControllerXMLParser() { + super("WeatherStationController"); + assemblyList = new ArrayList(); + } + + public AssemblyLocationIDL[] getAssemblies() { + return ( AssemblyLocationIDL[] )assemblyList.toArray( new AssemblyLocationIDL[ assemblyList.size() ] ); + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + tempVal = ""; + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Assembly")) { + AssemblyLocationIDL assembly = new AssemblyLocationIDL(); + assembly.assemblyRoleName = tempVal; + assembly.assemblyTypeName = "none"; + assembly.baseAddress = 0; + assembly.channelNumber = 0; + assembly.rca = 0; + assemblyList.add(assembly); + } + } +} + + +class ArrayReferenceXMLParser extends GenereicXmlParser { + + String tempVal; + ArrayReferenceLocation loc; + String x; + String y; + String z; + + public ArrayReferenceXMLParser() { + super("ArrayReference"); + } + + public ArrayReferenceLocation getReference() { + return loc; + } + + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + tempVal = ""; + if(qName.equalsIgnoreCase("ArrayReference")) { + x = attributes.getValue("x"); + y = attributes.getValue("y"); + z = attributes.getValue("z"); + } + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("ArrayReference")) { + loc = new ArrayReferenceLocation(); + loc.x = new Float(x).floatValue(); + loc.y = new Float(y).floatValue(); + loc.z = new Float(z).floatValue(); + } + } +} + + +class ModelXMLParser extends GenereicXmlParser { + Logger logger; + // The current telescope or band we are parsing. only one of these + // should be non-nill at any one time. + String curTelescope; + Integer curBand; + // The accumulated terms in the telescope or band we are currently parsing + ArrayList curModel; + + // Once we have completed parsing an telescope or band the data is + // moved from the cur* member variables )above into either the + // antModel or bandModel maps (below). + Map antModel = new HashMap(); + Map bandModel = new HashMap(); + + // This string is just used in error messages + String filename; + + public ModelXMLParser(String filename, Logger logger) { + super(filename); + this.filename = filename + ".xml file"; + this.logger = logger; + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + try { + if (qName.equalsIgnoreCase("Telescope")) { + curTelescope = attributes.getValue("name"); + curModel = new ArrayList(); + } else if (qName.equalsIgnoreCase("BandOffset")) { + curBand = Integer.valueOf(attributes.getValue("name")); + curModel = new ArrayList(); +// } else if (qName.equalsIgnoreCase("BandOffset7m")) { +// curBand = Integer.valueOf(attributes.getValue("name")); +// curModel = new ArrayList(); + } else if (qName.equalsIgnoreCase("Term")) { + String termName = attributes.getValue("name"); + double termValue = Double.valueOf(attributes.getValue("value")).doubleValue(); + if (curModel == null) { + final String msg = filename + " is incorrectly structured."; + throw new SAXException(msg); + } + curModel.add(new ModelTerm(termName, termValue)); + } + } catch (NumberFormatException ex) { + final String msg = filename + " contains incorrect numbers."; + throw new SAXException(msg, ex); + } + } + + public void characters(char[] ch, int start, int length) + throws SAXException { + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if (qName.equalsIgnoreCase("Telescope")) { + if (curModel == null) { + String msg = filename + " is incorrectly structured.."; + throw new SAXException(msg); + } + antModel.put(curTelescope, curModel.toArray(new ModelTerm[0])); + } else if (qName.equalsIgnoreCase("BandOffset")) { + if (curModel == null) { + String msg = filename + " is incorrectly structured..."; + throw new SAXException(msg); + } + bandModel.put(curBand, curModel.toArray(new ModelTerm[0])); +// } else if (qName.equalsIgnoreCase("BandOffset7m")) { +// if (curModel == null) { +// String msg = filename + " is incorrectly structured..."; +// throw new SAXException(msg); +// } +// bandModel7m.put(curBand, curModel.toArray(new ModelTerm[0])); + } + } + + public void TMCDBParse() throws TmcdbErrorEx { + try { + super.parse(); + } catch (Exception ex) { + AcsJTmcdbErrorEx jex = new AcsJTmcdbErrorEx(ex); + jex.log(logger); + throw jex.toTmcdbErrorEx(); + } + } + + protected Map getTelescopeModel() { + return antModel; + } + + protected Map getBandModel() { + return bandModel; + } + +// protected Map getBandModel7m() { +// return bandModel7m; +// } +} + + +class FocusModelXMLParser extends ModelXMLParser { + public FocusModelXMLParser(Logger logger) { + super("FocusModel", logger); + } + + public Map getTelescopeFocusModel() { + return getTelescopeModel(); + } + + public Map getBandFocusModel() { + return getBandModel(); + } +} + + +class PointingModelXMLParser extends ModelXMLParser { + public PointingModelXMLParser(Logger logger) { + super("PointingModel", logger); + } + + public Map getTelescopePointingModel() { + return getTelescopeModel(); + } + + public Map getBandPointingModel() { + return getBandModel(); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/TMCDBSimComponentImplCreator.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/TMCDBSimComponentImplCreator.java new file mode 100755 index 0000000000000000000000000000000000000000..9bdf2d03e9b55d88d3aabc6a33f2b3a032bf3967 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/TMCDBSimComponentImplCreator.java @@ -0,0 +1,70 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File TMCDBSimComponentImplCreator.java + */ +package alma.TMCDBComponentImpl; + +import java.util.logging.Logger; + +import alma.acs.component.ComponentLifecycle; +import alma.acs.container.ComponentHelper; +import alma.TMCDB.TMCDBComponentOperations; +import alma.TMCDB.TMCDBComponentPOATie; +import alma.maciErrType.wrappers.AcsJComponentCreationEx; + +public class TMCDBSimComponentImplCreator extends ComponentHelper { + + /** + * Provide the interface necessary to create an ScriptExecutor component. + */ + public TMCDBSimComponentImplCreator(Logger containerLogger) { + super(containerLogger); + } + + /** + * @see alma.acs.container.ComponentHelper#_createComponentImpl() + */ + @Override + protected ComponentLifecycle _createComponentImpl() throws AcsJComponentCreationEx { + return new TMCDBSimComponentImpl(); + } + + /** + * @see alma.acs.container.ComponentHelper#_getPOATieClass() + */ + @Override + protected Class _getPOATieClass() { + return TMCDBComponentPOATie.class; + } + + /** + * @see alma.acs.container.ComponentHelper#_getOperationsInterface() + */ + @Override + protected Class _getOperationsInterface() { + return TMCDBComponentOperations.class; + } + + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/Telescope.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/Telescope.java new file mode 100755 index 0000000000000000000000000000000000000000..cf5c05d162ce324877fb823da22e7f99084aa33b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/TMCDBComponentImpl/Telescope.java @@ -0,0 +1,777 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * ///////////////////////////////////////////////////////////////// + * // WARNING! DO NOT MODIFY THIS FILE! // + * // --------------------------------------------------------- // + * // | This is generated code! Do not modify this file. | // + * // | Any changes will be lost when the file is re-generated. | // + * // --------------------------------------------------------- // + * ///////////////////////////////////////////////////////////////// + * + * File Telescope.java + */ +package alma.TMCDBComponentImpl; + +import astri.physquan.runtime.asdm.types.ArrayTime; + +import astri.physquan.runtime.asdm.types.Length; + +import astri.TMCDB_IDL.TelescopeIDL; + +/** + + * The Telescope table represents the general properties of an ALMA antenna. + + * The x-y-z position is the position from the pad position to the point of rotation of the antenna. The x-y-z offset is the offset, if any, from that position to the point from which the feeds offsets are measured. + + * Included is the name of the software component that executes the antenna. + + * Key: BaseElementId + + * + */ +public class Telescope implements java.io.Serializable { + static private final String newline = System.getProperty("line.separator"); + + private int BaseElementId; + + private String TelescopeName; + + // private boolean nullTelescopeName; + + private String TelescopeType; + + private Length DishDiameter; + + private ArrayTime CommissionDate; + + private Length XPosition; + + private Length YPosition; + + private Length ZPosition; + + private Length XOffset; + + private Length YOffset; + + private Length ZOffset; + + private int ComponentId; + + /** + * Default Constructor for Telescope. Setter methods must be used to insert data. + */ + public Telescope () { + + // nullTelescopeName = true; + + } + + /** + * Create a Telescope by specifiying all data values. + */ + public Telescope ( + + int BaseElementId, + + String TelescopeName, + + String TelescopeType, + + Length DishDiameter, + + ArrayTime CommissionDate, + + Length XPosition, + + Length YPosition, + + Length ZPosition, + + Length XOffset, + + Length YOffset, + + Length ZOffset, + + int ComponentId + + ) { + + setBaseElementId(BaseElementId); + + setTelescopeName(TelescopeName); + + setTelescopeType(TelescopeType); + + setDishDiameter(DishDiameter); + + setCommissionDate(CommissionDate); + + setXPosition(XPosition); + + setYPosition(YPosition); + + setZPosition(ZPosition); + + setXOffset(XOffset); + + setYOffset(YOffset); + + setZOffset(ZOffset); + + setComponentId(ComponentId); + + } + + /** + * Create a Telescope by specifiying data values as an array of strings. + */ + public Telescope (String[] data) { + if (data.length != 12) + throw new IllegalArgumentException("Wrong number of items in the data array! (" + data.length + " are specified; should be 12)"); + int i = 0; + + try { + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.BaseElementId = new Integer(Integer.parseInt(data[i])); + + } + + } catch (NumberFormatException err) { + throw new IllegalArgumentException("Invalid number format: (" + data[i] + ")."); + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + // nullTelescopeName = true; + // this.TelescopeName = null; + + } else { + + // nullTelescopeName = false; + + this.TelescopeName = data[i]; + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.TelescopeType = data[i]; + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.DishDiameter = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.CommissionDate = new ArrayTime(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.XPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.YPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.ZPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.XOffset = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.YOffset = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.ZOffset = new Length(data[i]); + + } + + ++i; + + try { + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.ComponentId = new Integer(Integer.parseInt(data[i])); + + } + + } catch (NumberFormatException err) { + throw new IllegalArgumentException("Invalid number format: (" + data[i] + ")."); + } + + ++i; + + } + + /** + * Display the values of this object. + */ + public String toString() { + String s = "Telescope:" + newline; + + s += "\tBaseElementId: " + BaseElementId + newline; + + // if (TelescopeName == null) + // s += "\tTelescopeName: null" + newline; + // else + + s += "\tTelescopeName: " + TelescopeName + newline; + + s += "\tTelescopeType: " + TelescopeType + newline; + + s += "\tDishDiameter: " + DishDiameter + newline; + + s += "\tCommissionDate: " + CommissionDate.toFITS() + newline; + + s += "\tXPosition: " + XPosition + newline; + + s += "\tYPosition: " + YPosition + newline; + + s += "\tZPosition: " + ZPosition + newline; + + s += "\tXOffset: " + XOffset + newline; + + s += "\tYOffset: " + YOffset + newline; + + s += "\tZOffset: " + ZOffset + newline; + + s += "\tComponentId: " + ComponentId + newline; + + return s; + } + + /** + * Create a string in the "unload" format. + */ + public String toString(String delimiter) { + String s = "Telescope" + delimiter; + + s += BaseElementId + delimiter; + + // if (nullTelescopeName) + // s += delimiter; + // else + + // s += TelescopeName + delimiter; + + s += TelescopeType + delimiter; + + s += DishDiameter + delimiter; + + s += new String(CommissionDate.toFITS()) + delimiter; + + s += XPosition + delimiter; + + s += YPosition + delimiter; + + s += ZPosition + delimiter; + + s += XOffset + delimiter; + + s += YOffset + delimiter; + + s += ZOffset + delimiter; + + s += ComponentId + delimiter; + + return s; + } + + /** + * Return the number of columns in the table. + */ + public static int getNumberColumns() { + return 12; + } + + /** + * Create a string with the column names in the "unload" format. + */ + public static String getColumnNames(String delimiter) { + String s = "#Telescope" + delimiter + + + "BaseElementId" + delimiter + + + "TelescopeName" + delimiter + + + "TelescopeType" + delimiter + + + "DishDiameter" + delimiter + + + "CommissionDate" + delimiter + + + "XPosition" + delimiter + + + "YPosition" + delimiter + + + "ZPosition" + delimiter + + + "XOffset" + delimiter + + + "YOffset" + delimiter + + + "ZOffset" + delimiter + + + "ComponentId" + delimiter + + ; + return s; + } + + /** + * Create a string with the column names in the "unload" format. + */ + public String getTheColumnNames(String delimiter) { + return getColumnNames(delimiter); + } + + /** + * Compare this oblect with another object of the same type. + */ + public boolean equals(Object obj) { + if (obj == null) return false; + if (!(obj instanceof Telescope)) return false; + Telescope arg = (Telescope) obj; + + if (this.BaseElementId != arg.BaseElementId) + return false; + + if (this.TelescopeName == null) { // Two null strings are equal + if (arg.TelescopeName == null) + return true; + else + return false; + } + if (!this.TelescopeName.equals(arg.TelescopeName)) + return false; + + if (this.TelescopeType == null) { // Two null strings are equal + if (arg.TelescopeType == null) + return true; + else + return false; + } + if (!this.TelescopeType.equals(arg.TelescopeType)) + return false; + + if (this.DishDiameter.get() != arg.DishDiameter.get()) + return false; + + if (this.CommissionDate.get() != arg.CommissionDate.get()) + return false; + + if (this.XPosition.get() != arg.XPosition.get()) + return false; + + if (this.YPosition.get() != arg.YPosition.get()) + return false; + + if (this.ZPosition.get() != arg.ZPosition.get()) + return false; + + if (this.XOffset.get() != arg.XOffset.get()) + return false; + + if (this.YOffset.get() != arg.YOffset.get()) + return false; + + if (this.ZOffset.get() != arg.ZOffset.get()) + return false; + + if (this.ComponentId != arg.ComponentId) + return false; + + return true; + } + + /** + * Convert this object to its IDL format. + */ + public TelescopeIDL toIDL() { + TelescopeIDL x = new TelescopeIDL (); + + x.BaseElementId = this.BaseElementId; + + x.TelescopeName = this.TelescopeName; + + // x.nullTelescopeName = this.nullTelescopeName; + + x.TelescopeType = this.TelescopeType; + + x.DishDiameter = this.DishDiameter.toIDLLength(); + + x.CommissionDate = this.CommissionDate.toIDLArrayTime(); + + x.XPosition = this.XPosition.toIDLLength(); + + x.YPosition = this.YPosition.toIDLLength(); + + x.ZPosition = this.ZPosition.toIDLLength(); + + x.ComponentId = this.ComponentId; + + return x; + } + + /** + * Populate this object from an IDL format. + */ + public void fromIDL(TelescopeIDL x) { + + this.BaseElementId = x.BaseElementId; + + this.TelescopeName = x.TelescopeName; + + // this.nullTelescopeName = x.nullTelescopeName; + + this.TelescopeType = x.TelescopeType; + + this.DishDiameter = new Length(x.DishDiameter); + + this.CommissionDate = new ArrayTime(x.CommissionDate); + + this.XPosition = new Length(x.XPosition); + + this.YPosition = new Length(x.YPosition); + + this.ZPosition = new Length(x.ZPosition); + + this.ComponentId = x.ComponentId; + + } + + /* + * If this is a database entry has a generated key, return the value + * of its generated id; otherwise, return 0. + */ + public int getId() { + + return 0; + + } + + ///////////////////////////////////////////////////////////// + // Getter and Setter Methods for Telescope. + ///////////////////////////////////////////////////////////// + + /** + * Get the value for BaseElementId. + */ + public int getBaseElementId () { + return BaseElementId; + } + + /** + * Set BaseElementId to the specified value. + */ + public void setBaseElementId(int BaseElementId) { + + this.BaseElementId = BaseElementId; + + } + + /** + * Get the value for TelescopeName. + */ + public String getTelescopeName () { + return TelescopeName; + } + + /** + * Set TelescopeName to the specified value. + */ + public void setTelescopeName(String TelescopeName) { + + // nullTelescopeName = false; + + this.TelescopeName = TelescopeName; + + } + + /* + * Is the TelescopeName null? + */ + // public boolean isTelescopeNameNull() { + // return nullTelescopeName; + // } + + /* + * Set the null indicator for TelescopeName + */ + // public void setTelescopeNameNull() { + // nullTelescopeName = true; + // } + + /** + * Get the value for TelescopeType. + */ + public String getTelescopeType () { + return TelescopeType; + } + + /** + * Set TelescopeType to the specified value. + */ + public void setTelescopeType(String TelescopeType) { + + this.TelescopeType = TelescopeType; + + } + + /** + * Get the value for DishDiameter. + */ + public Length getDishDiameter () { + return DishDiameter; + } + + /** + * Set DishDiameter to the specified value. + */ + public void setDishDiameter(Length DishDiameter) { + + this.DishDiameter = DishDiameter; + + } + + /** + * Get the value for CommissionDate. + */ + public ArrayTime getCommissionDate () { + return CommissionDate; + } + + /** + * Set CommissionDate to the specified value. + */ + public void setCommissionDate(ArrayTime CommissionDate) { + + this.CommissionDate = CommissionDate; + + } + + /** + * Get the value for XPosition. + */ + public Length getXPosition () { + return XPosition; + } + + /** + * Set XPosition to the specified value. + */ + public void setXPosition(Length XPosition) { + + this.XPosition = XPosition; + + } + + /** + * Get the value for YPosition. + */ + public Length getYPosition () { + return YPosition; + } + + /** + * Set YPosition to the specified value. + */ + public void setYPosition(Length YPosition) { + + this.YPosition = YPosition; + + } + + /** + * Get the value for ZPosition. + */ + public Length getZPosition () { + return ZPosition; + } + + /** + * Set ZPosition to the specified value. + */ + public void setZPosition(Length ZPosition) { + + this.ZPosition = ZPosition; + + } + + /** + * Get the value for XOffset. + */ + public Length getXOffset () { + return XOffset; + } + + /** + * Set XOffset to the specified value. + */ + public void setXOffset(Length XOffset) { + + this.XOffset = XOffset; + + } + + /** + * Get the value for YOffset. + */ + public Length getYOffset () { + return YOffset; + } + + /** + * Set YOffset to the specified value. + */ + public void setYOffset(Length YOffset) { + + this.YOffset = YOffset; + + } + + /** + * Get the value for ZOffset. + */ + public Length getZOffset () { + return ZOffset; + } + + /** + * Set ZOffset to the specified value. + */ + public void setZOffset(Length ZOffset) { + + this.ZOffset = ZOffset; + + } + + /** + * Get the value for ComponentId. + */ + public int getComponentId () { + return ComponentId; + } + + /** + * Set ComponentId to the specified value. + */ + public void setComponentId(int ComponentId) { + + this.ComponentId = ComponentId; + + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/AssemblyLocation.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/AssemblyLocation.java new file mode 100755 index 0000000000000000000000000000000000000000..06089a1d1d862c66c4288139f5eb157e63f79056 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/AssemblyLocation.java @@ -0,0 +1,108 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File AssemblyLocation.java + */ +package alma.tmcdb.access; + +/** + * The AsssemblyLocation class gives the data necessary to locate an assembly + * within the context of a collection of assemblies and can busses. Included + * are the type of assembly, its role name (in case there are more than one), + * its relative can address, channel number and base address. + */ +public class AssemblyLocation { + static private final String newline = System.getProperty("line.separator"); + + private String assemblyTypeName; + private String assemblyRoleName; + private int rca; + private int channelNumber; + private int baseAddress; + + public AssemblyLocation () { + } + + public AssemblyLocation ( + String assemblyTypeName, + String assemblyRoleName, + int rca, + int channelNumber, + int baseAddress ) { + this.assemblyTypeName = assemblyTypeName; + this.assemblyRoleName = assemblyRoleName; + this.rca = rca; + this.channelNumber = channelNumber; + this.baseAddress = baseAddress; + } + + public String toString() { + String s = "AssemblyLocation:" + newline + + "\tassemblyRoleName: " + assemblyRoleName + newline + + "\trca: " + rca + newline + + "\tchannelNumber: " + channelNumber + newline + + "\tbaseAddress: " + baseAddress + newline; + return s; + } + + public String getAssemblyRoleName() { + return assemblyRoleName; + } + + public void setAssemblyRoleName(String assemblyRoleName) { + this.assemblyRoleName = assemblyRoleName; + } + + public String getAssemblyTypeName() { + return assemblyTypeName; + } + + public void setAssemblyTypeName(String assemblyTypeName) { + this.assemblyTypeName = assemblyTypeName; + } + + public int getBaseAddress() { + return baseAddress; + } + + public void setBaseAddress(int baseAddress) { + this.baseAddress = baseAddress; + } + + public int getChannelNumber() { + return channelNumber; + } + + public void setChannelNumber(int channelNumber) { + this.channelNumber = channelNumber; + } + + public int getRca() { + return rca; + } + + public void setRca(int rca) { + this.rca = rca; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/Pad.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/Pad.java new file mode 100755 index 0000000000000000000000000000000000000000..8bc34dab64b7ca5eac64e5c22ff88eeac05e6866 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/Pad.java @@ -0,0 +1,489 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * ///////////////////////////////////////////////////////////////// + * // WARNING! DO NOT MODIFY THIS FILE! // + * // --------------------------------------------------------- // + * // | This is generated code! Do not modify this file. | // + * // | Any changes will be lost when the file is re-generated. | // + * // --------------------------------------------------------- // + * ///////////////////////////////////////////////////////////////// + * + * File Pad.java + */ +package alma.tmcdb.access; + +import astri.TMCDB_IDL.PadIDL; +import astri.physquan.runtime.asdm.types.ArrayTime; +import astri.physquan.runtime.asdm.types.Length; + +/** + + * The most important thing about pads is their location. Locations are in meters. + + * Key: BaseElementId + + * + */ +public class Pad implements java.io.Serializable { + static private final String newline = System.getProperty("line.separator"); + + private int BaseElementId; + + private String PadName; + + // private boolean nullPadName; + + private ArrayTime CommissionDate; + + private Length XPosition; + + private Length YPosition; + + private Length ZPosition; + + /** + * Default Constructor for Pad. Setter methods must be used to insert data. + */ + public Pad () { + + // nullPadName = true; + + } + + /** + * Create a Pad by specifiying all data values. + */ + public Pad ( + + int BaseElementId, + + String PadName, + + ArrayTime CommissionDate, + + Length XPosition, + + Length YPosition, + + Length ZPosition + + ) { + + setBaseElementId(BaseElementId); + + setPadName(PadName); + + setCommissionDate(CommissionDate); + + setXPosition(XPosition); + + setYPosition(YPosition); + + setZPosition(ZPosition); + + } + + /** + * Create a Pad by specifiying data values as an array of strings. + */ + public Pad (String[] data) { + if (data.length != 6) + throw new IllegalArgumentException("Wrong number of items in the data array! (" + data.length + " are specified; should be 6)"); + int i = 0; + + try { + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.BaseElementId = new Integer(Integer.parseInt(data[i])); + + } + + } catch (NumberFormatException err) { + throw new IllegalArgumentException("Invalid number format: (" + data[i] + ")."); + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + // nullPadName = true; + // this.PadName = null; + + } else { + + // nullPadName = false; + + this.PadName = data[i]; + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.CommissionDate = new ArrayTime(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.XPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.YPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.ZPosition = new Length(data[i]); + + } + + ++i; + + } + + /** + * Display the values of this object. + */ + public String toString() { + String s = "Pad:" + newline; + + s += "\tBaseElementId: " + BaseElementId + newline; + + // if (PadName == null) + // s += "\tPadName: null" + newline; + // else + + s += "\tPadName: " + PadName + newline; + + s += "\tCommissionDate: " + CommissionDate.toFITS() + newline; + + s += "\tXPosition: " + XPosition + newline; + + s += "\tYPosition: " + YPosition + newline; + + s += "\tZPosition: " + ZPosition + newline; + + return s; + } + + /** + * Create a string in the "unload" format. + */ + public String toString(String delimiter) { + String s = "Pad" + delimiter; + + s += BaseElementId + delimiter; + + // if (nullPadName) + // s += delimiter; + // else + + // s += PadName + delimiter; + + s += new String(CommissionDate.toFITS()) + delimiter; + + s += XPosition + delimiter; + + s += YPosition + delimiter; + + s += ZPosition + delimiter; + + return s; + } + + /** + * Return the number of columns in the table. + */ + public static int getNumberColumns() { + return 6; + } + + /** + * Create a string with the column names in the "unload" format. + */ + public static String getColumnNames(String delimiter) { + String s = "#Pad" + delimiter + + + "BaseElementId" + delimiter + + + "PadName" + delimiter + + + "CommissionDate" + delimiter + + + "XPosition" + delimiter + + + "YPosition" + delimiter + + + "ZPosition" + delimiter + + ; + return s; + } + + /** + * Create a string with the column names in the "unload" format. + */ + public String getTheColumnNames(String delimiter) { + return getColumnNames(delimiter); + } + + /** + * Compare this oblect with another object of the same type. + */ + public boolean equals(Object obj) { + if (obj == null) return false; + if (!(obj instanceof Pad)) return false; + Pad arg = (Pad) obj; + + if (this.BaseElementId != arg.BaseElementId) + return false; + + if (this.PadName == null) { // Two null strings are equal + if (arg.PadName == null) + return true; + else + return false; + } + if (!this.PadName.equals(arg.PadName)) + return false; + + if (this.CommissionDate.get() != arg.CommissionDate.get()) + return false; + + if (this.XPosition.get() != arg.XPosition.get()) + return false; + + if (this.YPosition.get() != arg.YPosition.get()) + return false; + + if (this.ZPosition.get() != arg.ZPosition.get()) + return false; + + return true; + } + + /** + * Convert this object to its IDL format. + */ + public PadIDL toIDL() { + PadIDL x = new PadIDL (); + + x.BaseElementId = this.BaseElementId; + + x.PadName = this.PadName; + + // x.nullPadName = this.nullPadName; + + x.CommissionDate = this.CommissionDate.toIDLArrayTime(); + + x.XPosition = this.XPosition.toIDLLength(); + + x.YPosition = this.YPosition.toIDLLength(); + + x.ZPosition = this.ZPosition.toIDLLength(); + + return x; + } + + /** + * Populate this object from an IDL format. + */ + public void fromIDL(PadIDL x) { + + this.BaseElementId = x.BaseElementId; + + this.PadName = x.PadName; + + // this.nullPadName = x.nullPadName; + + this.CommissionDate = new ArrayTime(x.CommissionDate); + + this.XPosition = new Length(x.XPosition); + + this.YPosition = new Length(x.YPosition); + + this.ZPosition = new Length(x.ZPosition); + + } + + /* + * If this is a database entry has a generated key, return the value + * of its generated id; otherwise, return 0. + */ + public int getId() { + + return 0; + + } + + ///////////////////////////////////////////////////////////// + // Getter and Setter Methods for Pad. + ///////////////////////////////////////////////////////////// + + /** + * Get the value for BaseElementId. + */ + public int getBaseElementId () { + return BaseElementId; + } + + /** + * Set BaseElementId to the specified value. + */ + public void setBaseElementId(int BaseElementId) { + + this.BaseElementId = BaseElementId; + + } + + /** + * Get the value for PadName. + */ + public String getPadName () { + return PadName; + } + + /** + * Set PadName to the specified value. + */ + public void setPadName(String PadName) { + + // nullPadName = false; + + this.PadName = PadName; + + } + + /* + * Is the PadName null? + */ + // public boolean isPadNameNull() { + // return nullPadName; + // } + + /* + * Set the null indicator for PadName + */ + // public void setPadNameNull() { + // nullPadName = true; + // } + + /** + * Get the value for CommissionDate. + */ + public ArrayTime getCommissionDate () { + return CommissionDate; + } + + /** + * Set CommissionDate to the specified value. + */ + public void setCommissionDate(ArrayTime CommissionDate) { + + this.CommissionDate = CommissionDate; + + } + + /** + * Get the value for XPosition. + */ + public Length getXPosition () { + return XPosition; + } + + /** + * Set XPosition to the specified value. + */ + public void setXPosition(Length XPosition) { + + this.XPosition = XPosition; + + } + + /** + * Get the value for YPosition. + */ + public Length getYPosition () { + return YPosition; + } + + /** + * Set YPosition to the specified value. + */ + public void setYPosition(Length YPosition) { + + this.YPosition = YPosition; + + } + + /** + * Get the value for ZPosition. + */ + public Length getZPosition () { + return ZPosition; + } + + /** + * Set ZPosition to the specified value. + */ + public void setZPosition(Length ZPosition) { + + this.ZPosition = ZPosition; + + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/StartupAntenna.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/StartupAntenna.java new file mode 100755 index 0000000000000000000000000000000000000000..0c0ca78a0106bbafa4dda482e160b8d5d9ed61b2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/StartupAntenna.java @@ -0,0 +1,137 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File StartupAntenna.java + */ +package alma.tmcdb.access; + +/** + * The StartupAntenna class supplies the information needed to initialize + * an antenna. Included are the name of the antenna, the pad on which + * it resides, the name of front end, the assembly locations in the + * front end, and the assembly locations in the antenna. + */ +public class StartupAntenna { + static private final String newline = System.getProperty("line.separator"); + + private String antennaName; + private short uiDisplayOrder; + private String padName; + private String frontEndName; + private AssemblyLocation[] frontEndAssembly; + private AssemblyLocation[] antennaAssembly; + + public StartupAntenna () { + } + + public StartupAntenna ( + String antennaName, + String padName, + String frontEndName, + AssemblyLocation[] frontEndAssembly, + AssemblyLocation[] antennaAssembly) { + this.antennaName = antennaName; + this.uiDisplayOrder = 1; + this.padName = padName; + this.frontEndName = frontEndName; + this.frontEndAssembly = frontEndAssembly; + this.antennaAssembly = antennaAssembly; + } + + public StartupAntenna ( + String antennaName, + short uiDisplayOrder, + String padName, + String frontEndName, + AssemblyLocation[] frontEndAssembly, + AssemblyLocation[] antennaAssembly) { + this.antennaName = antennaName; + this.uiDisplayOrder = uiDisplayOrder; + this.padName = padName; + this.frontEndName = frontEndName; + this.frontEndAssembly = frontEndAssembly; + this.antennaAssembly = antennaAssembly; + } + + public String toString() { + String s = "StartupAntenna:" + newline + + "\tantennaName: " + antennaName + newline + + "\tuiDisplayOrder: " + uiDisplayOrder + newline + + "\tpadName: " + padName + newline + + "\tfrontEndName: " + frontEndName + newline; + for (int i = 0; i < frontEndAssembly.length; ++i) + s += "\tfrontEndAssembly[" + i + "]: " + frontEndAssembly[i].toString() + newline; + for (int i = 0; i < antennaAssembly.length; ++i) + s += "\tantennaAssembly[" + i + "]: " + antennaAssembly[i].toString() + newline; + return s; + } + + public AssemblyLocation[] getAntennaAssembly() { + return antennaAssembly; + } + + public void setAntennaAssembly(AssemblyLocation[] antennaAssembly) { + this.antennaAssembly = antennaAssembly; + } + + public String getAntennaName() { + return antennaName; + } + + public void setAntennaName(String antennaName) { + this.antennaName = antennaName; + } + + public short getUiDisplayOrder() { + return uiDisplayOrder; + } + + public void setUiDisplayOrder(short uiDisplayOrder) { + this.uiDisplayOrder = uiDisplayOrder; + } + + public AssemblyLocation[] getFrontEndAssembly() { + return frontEndAssembly; + } + + public void setFrontEndAssembly(AssemblyLocation[] frontEndAssembly) { + this.frontEndAssembly = frontEndAssembly; + } + + public String getFrontEndName() { + return frontEndName; + } + + public void setFrontEndName(String frontEndName) { + this.frontEndName = frontEndName; + } + + public String getPadName() { + return padName; + } + + public void setPadName(String padName) { + this.padName = padName; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/Telescope.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/Telescope.java new file mode 100755 index 0000000000000000000000000000000000000000..abf6001b2762836a4038722b6c914f5a24fe1f60 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/Telescope.java @@ -0,0 +1,658 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * ///////////////////////////////////////////////////////////////// + * // WARNING! DO NOT MODIFY THIS FILE! // + * // --------------------------------------------------------- // + * // | This is generated code! Do not modify this file. | // + * // | Any changes will be lost when the file is re-generated. | // + * // --------------------------------------------------------- // + * ///////////////////////////////////////////////////////////////// + * + * File Telescope.java + */ +package alma.tmcdb.access; + +import astri.TMCDB_IDL.TelescopeIDL; +import astri.physquan.runtime.asdm.types.ArrayTime; +import astri.physquan.runtime.asdm.types.Length; + +/** + + * The Telescope table represents the general properties of an ALMA antenna. + + * The x-y-z position is the position from the pad position to the point of rotation of the antenna. The x-y-z offset is the offset, if any, from that position to the point from which the feeds offsets are measured. + + * Included is the name of the software component that executes the antenna. + + * Key: BaseElementId + + * + */ +public class Telescope implements java.io.Serializable { + static private final String newline = System.getProperty("line.separator"); + + private int BaseElementId; + + private String TelescopeName; + + // private boolean nullTelescopeName; + + private String TelescopeType; + + private Length DishDiameter; + + private ArrayTime CommissionDate; + + private Length XPosition; + + private Length YPosition; + + private Length ZPosition; + + private int ComponentId; + + /** + * Default Constructor for Telescope. Setter methods must be used to insert data. + */ + public Telescope () { + + // nullTelescopeName = true; + + } + + /** + * Create a Telescope by specifiying all data values. + */ + public Telescope ( + + int BaseElementId, + + String TelescopeName, + + String TelescopeType, + + Length DishDiameter, + + ArrayTime CommissionDate, + + Length XPosition, + + Length YPosition, + + Length ZPosition, + + Length XOffset, + + Length YOffset, + + Length ZOffset, + + int ComponentId + + ) { + + setBaseElementId(BaseElementId); + + setTelescopeName(TelescopeName); + + setTelescopeType(TelescopeType); + + setDishDiameter(DishDiameter); + + setCommissionDate(CommissionDate); + + setXPosition(XPosition); + + setYPosition(YPosition); + + setZPosition(ZPosition); + + setComponentId(ComponentId); + + } + + /** + * Create a Telescope by specifiying data values as an array of strings. + */ + public Telescope (String[] data) { + if (data.length != 12) + throw new IllegalArgumentException("Wrong number of items in the data array! (" + data.length + " are specified; should be 12)"); + int i = 0; + + try { + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.BaseElementId = new Integer(Integer.parseInt(data[i])); + + } + + } catch (NumberFormatException err) { + throw new IllegalArgumentException("Invalid number format: (" + data[i] + ")."); + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + // nullTelescopeName = true; + // this.TelescopeName = null; + + } else { + + // nullTelescopeName = false; + + this.TelescopeName = data[i]; + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.TelescopeType = data[i]; + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.DishDiameter = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.CommissionDate = new ArrayTime(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.XPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.YPosition = new Length(data[i]); + + } + + ++i; + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.ZPosition = new Length(data[i]); + + } + + ++i; + + try { + + if (data[i] == null || data[i].length() == 0) { + + throw new IllegalArgumentException("Invalid data format: Data item number " + i + " cannot be null."); + + } else { + + this.ComponentId = new Integer(Integer.parseInt(data[i])); + + } + + } catch (NumberFormatException err) { + throw new IllegalArgumentException("Invalid number format: (" + data[i] + ")."); + } + + ++i; + + } + + /** + * Display the values of this object. + */ + public String toString() { + String s = "Telescope:" + newline; + + s += "\tBaseElementId: " + BaseElementId + newline; + + // if (TelescopeName == null) + // s += "\tTelescopeName: null" + newline; + // else + + s += "\tTelescopeName: " + TelescopeName + newline; + + s += "\tTelescopeType: " + TelescopeType + newline; + + s += "\tDishDiameter: " + DishDiameter + newline; + + s += "\tCommissionDate: " + CommissionDate.toFITS() + newline; + + s += "\tXPosition: " + XPosition + newline; + + s += "\tYPosition: " + YPosition + newline; + + s += "\tZPosition: " + ZPosition + newline; + + s += "\tComponentId: " + ComponentId + newline; + + return s; + } + + /** + * Create a string in the "unload" format. + */ + public String toString(String delimiter) { + String s = "Telescope" + delimiter; + + s += BaseElementId + delimiter; + + // if (nullTelescopeName) + // s += delimiter; + // else + + // s += TelescopeName + delimiter; + + s += TelescopeType + delimiter; + + s += DishDiameter + delimiter; + + s += new String(CommissionDate.toFITS()) + delimiter; + + s += XPosition + delimiter; + + s += YPosition + delimiter; + + s += ZPosition + delimiter; + + s += ComponentId + delimiter; + + return s; + } + + /** + * Return the number of columns in the table. + */ + public static int getNumberColumns() { + return 12; + } + + /** + * Create a string with the column names in the "unload" format. + */ + public static String getColumnNames(String delimiter) { + String s = "#Telescope" + delimiter + + + "BaseElementId" + delimiter + + + "TelescopeName" + delimiter + + + "TelescopeType" + delimiter + + + "DishDiameter" + delimiter + + + "CommissionDate" + delimiter + + + "XPosition" + delimiter + + + "YPosition" + delimiter + + + "ZPosition" + delimiter + + + "XOffset" + delimiter + + + "YOffset" + delimiter + + + "ZOffset" + delimiter + + + "ComponentId" + delimiter + + ; + return s; + } + + /** + * Create a string with the column names in the "unload" format. + */ + public String getTheColumnNames(String delimiter) { + return getColumnNames(delimiter); + } + + /** + * Compare this oblect with another object of the same type. + */ + public boolean equals(Object obj) { + if (obj == null) return false; + if (!(obj instanceof Telescope)) return false; + Telescope arg = (Telescope) obj; + + if (this.BaseElementId != arg.BaseElementId) + return false; + + if (this.TelescopeName == null) { // Two null strings are equal + if (arg.TelescopeName == null) + return true; + else + return false; + } + if (!this.TelescopeName.equals(arg.TelescopeName)) + return false; + + if (this.TelescopeType == null) { // Two null strings are equal + if (arg.TelescopeType == null) + return true; + else + return false; + } + if (!this.TelescopeType.equals(arg.TelescopeType)) + return false; + + if (this.DishDiameter.get() != arg.DishDiameter.get()) + return false; + + if (this.CommissionDate.get() != arg.CommissionDate.get()) + return false; + + if (this.XPosition.get() != arg.XPosition.get()) + return false; + + if (this.YPosition.get() != arg.YPosition.get()) + return false; + + if (this.ZPosition.get() != arg.ZPosition.get()) + return false; + + if (this.ComponentId != arg.ComponentId) + return false; + + return true; + } + + /** + * Convert this object to its IDL format. + */ + public TelescopeIDL toIDL() { + TelescopeIDL x = new TelescopeIDL (); + + x.BaseElementId = this.BaseElementId; + + x.TelescopeName = this.TelescopeName; + + // x.nullTelescopeName = this.nullTelescopeName; + + x.TelescopeType = this.TelescopeType; + + x.DishDiameter = this.DishDiameter.toIDLLength(); + + x.CommissionDate = this.CommissionDate.toIDLArrayTime(); + + x.XPosition = this.XPosition.toIDLLength(); + + x.YPosition = this.YPosition.toIDLLength(); + + x.ZPosition = this.ZPosition.toIDLLength(); + + x.ComponentId = this.ComponentId; + + return x; + } + + /** + * Populate this object from an IDL format. + */ + public void fromIDL(TelescopeIDL x) { + + this.BaseElementId = x.BaseElementId; + + this.TelescopeName = x.TelescopeName; + + // this.nullTelescopeName = x.nullTelescopeName; + + this.TelescopeType = x.TelescopeType; + + this.DishDiameter = new Length(x.DishDiameter); + + this.CommissionDate = new ArrayTime(x.CommissionDate); + + this.XPosition = new Length(x.XPosition); + + this.YPosition = new Length(x.YPosition); + + this.ZPosition = new Length(x.ZPosition); + + this.ComponentId = x.ComponentId; + + } + + /* + * If this is a database entry has a generated key, return the value + * of its generated id; otherwise, return 0. + */ + public int getId() { + + return 0; + + } + + ///////////////////////////////////////////////////////////// + // Getter and Setter Methods for Telescope. + ///////////////////////////////////////////////////////////// + + /** + * Get the value for BaseElementId. + */ + public int getBaseElementId () { + return BaseElementId; + } + + /** + * Set BaseElementId to the specified value. + */ + public void setBaseElementId(int BaseElementId) { + + this.BaseElementId = BaseElementId; + + } + + /** + * Get the value for TelescopeName. + */ + public String getTelescopeName () { + return TelescopeName; + } + + /** + * Set TelescopeName to the specified value. + */ + public void setTelescopeName(String TelescopeName) { + + // nullTelescopeName = false; + + this.TelescopeName = TelescopeName; + + } + + /* + * Is the TelescopeName null? + */ + // public boolean isTelescopeNameNull() { + // return nullTelescopeName; + // } + + /* + * Set the null indicator for TelescopeName + */ + // public void setTelescopeNameNull() { + // nullTelescopeName = true; + // } + + /** + * Get the value for TelescopeType. + */ + public String getTelescopeType () { + return TelescopeType; + } + + /** + * Set TelescopeType to the specified value. + */ + public void setTelescopeType(String TelescopeType) { + + this.TelescopeType = TelescopeType; + + } + + /** + * Get the value for DishDiameter. + */ + public Length getDishDiameter () { + return DishDiameter; + } + + /** + * Set DishDiameter to the specified value. + */ + public void setDishDiameter(Length DishDiameter) { + + this.DishDiameter = DishDiameter; + + } + + /** + * Get the value for CommissionDate. + */ + public ArrayTime getCommissionDate () { + return CommissionDate; + } + + /** + * Set CommissionDate to the specified value. + */ + public void setCommissionDate(ArrayTime CommissionDate) { + + this.CommissionDate = CommissionDate; + + } + + /** + * Get the value for XPosition. + */ + public Length getXPosition () { + return XPosition; + } + + /** + * Set XPosition to the specified value. + */ + public void setXPosition(Length XPosition) { + + this.XPosition = XPosition; + + } + + /** + * Get the value for YPosition. + */ + public Length getYPosition () { + return YPosition; + } + + /** + * Set YPosition to the specified value. + */ + public void setYPosition(Length YPosition) { + + this.YPosition = YPosition; + + } + + /** + * Get the value for ZPosition. + */ + public Length getZPosition () { + return ZPosition; + } + + /** + * Set ZPosition to the specified value. + */ + public void setZPosition(Length ZPosition) { + + this.ZPosition = ZPosition; + + } + + /** + * Get the value for ComponentId. + */ + public int getComponentId () { + return ComponentId; + } + + /** + * Set ComponentId to the specified value. + */ + public void setComponentId(int ComponentId) { + + this.ComponentId = ComponentId; + + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbAccessor.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbAccessor.java new file mode 100755 index 0000000000000000000000000000000000000000..21bec3134bbe2bcb41491fb1e44622541ba37aaa --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbAccessor.java @@ -0,0 +1,77 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: TmcdbAccessor.java,v 1.9 2011/08/09 15:48:17 rhiriart Exp $" + */ +package alma.tmcdb.access; + +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.AssemblyConfigXMLData; +import alma.TMCDB.TelescopeFocusModel; +import alma.TMCDB.TelescopePointingModel; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import astri.TMCDB_IDL.StartupWeatherStationControllerIDL; +import alma.TmcdbErrType.wrappers.AcsJTmcdbErrorEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; + +public interface TmcdbAccessor { + + public String getConfigurationName(); + + public StartupTelescopeIDL[] getStartupTelescopesInfo(); + + public TelescopeIDL getTelescopeInfo(String telescopeName) + throws AcsJTmcdbNoSuchRowEx; + + public PadIDL getCurrentTelescopePadInfo(String telescopeName) + throws AcsJTmcdbNoSuchRowEx; + + public AssemblyConfigXMLData getAssemblyConfigData( + String serialNumber) throws AcsJTmcdbNoSuchRowEx; + + public ArrayReferenceLocation getArrayReferenceLocation(); + + public void clear() throws Exception; + + public AssemblyConfigXMLData getComponentConfigData(String componentName); + + public StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() + throws AcsJTmcdbErrorEx; + + public TelescopePointingModel getCurrentTelescopePointingModel(String telescopeName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx; + + public TelescopeFocusModel getCurrentTelescopeFocusModel(String telescopeName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx; + + public String getTelescopeName() + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx; + + public void reportTelescopeOnline(String telescopeName); + + public void reportAssemblyOperational(String serialNumber, String componentName); + + public TelescopeIDL[] getTelescopes() throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx; +} \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbHibernateAccessor.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbHibernateAccessor.java new file mode 100755 index 0000000000000000000000000000000000000000..6e1d26edfab1f79eef457b06ea2511d0fa8a774a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbHibernateAccessor.java @@ -0,0 +1,1196 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: TmcdbHibernateAccessor.java,v 1.17 2012/12/07 16:16:15 rhiriart Exp $" + */ +package alma.tmcdb.access; + +import java.io.IOException; +import java.io.StringReader; +import java.security.InvalidParameterException; +import java.util.ArrayList; +import java.util.Date; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; +import java.util.Map; +import java.util.Set; +import java.util.logging.Logger; + +import org.hibernate.Hibernate; +import org.hibernate.HibernateException; +import org.hibernate.Query; +import org.hibernate.Session; +import org.hibernate.Transaction; +import org.hibernate.TypeHelper; +import org.hibernate.type.StandardBasicTypes; +import org.jdom.Document; +import org.jdom.Element; +import org.jdom.JDOMException; +import org.jdom.input.SAXBuilder; + +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.AssemblyConfigXMLData; +import alma.TMCDB.TelescopeFocusModel; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.AssemblyLocationIDL; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import astri.TMCDB_IDL.StartupWeatherStationControllerIDL; +import alma.TmcdbErrType.wrappers.AcsJTmcdbErrorEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; +import alma.acs.tmcdb.Configuration; +import alma.acs.util.UTCUtility; +import alma.archive.database.helpers.wrappers.TmcdbDbConfig; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.Assembly; +import alma.acs.tmcdb.AssemblyOnline; +import alma.acs.tmcdb.AssemblyStartup; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.BaseElement; +import alma.acs.tmcdb.BaseElementOnline; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.BEType; +import alma.acs.tmcdb.FocusModel; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.HwSchemas; +import alma.acs.tmcdb.Pad; +import alma.acs.tmcdb.PointingModel; +import alma.acs.tmcdb.Startup; +import alma.acs.tmcdb.WeatherStationController; +import alma.tmcdb.translation.JavaToIdlTranslator; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; +import alma.tmcdb.utils.TmcdbLoggerFactory; + +/** + * The TMCDBAccessor that get the data from the TMCDB database using Hibernate. + * + * @author Rafael Hiriart (rhiriart@nrao.edu) + * + */ +public class TmcdbHibernateAccessor implements TmcdbAccessor { + + protected Logger logger; + private String configurationName; + private String startupScenarioName; + private TmcdbDbConfig dbconf; + + public TmcdbHibernateAccessor() throws Exception { + this.logger = TmcdbLoggerFactory.getLogger(TmcdbHibernateAccessor.class.getName()); + this.dbconf = new TmcdbDbConfig(logger); + this.configurationName = System.getenv("TMCDB_CONFIGURATION_NAME"); + this.startupScenarioName = System.getenv("TMCDB_STARTUP_NAME"); + initDb(); + } + + public void clear() throws Exception { + HibernateUtil.shutdown(); + } + + @Override + public TelescopeIDL getTelescopeInfo(String antennaName) + throws AcsJTmcdbNoSuchRowEx { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + Telescope ant = getTelescope(session, antennaName); + tx.commit(); + session.close(); + if (ant != null ) + return JavaToIdlTranslator.toIDL(ant); + else + throw new AcsJTmcdbNoSuchRowEx(); + } + +// public String getAntennaBaselineName(int cai) throws AcsJTmcdbNoSuchRowEx { +// String antennaName = null; +// Session session = HibernateUtil.getSessionFactory().openSession(); +// Transaction tx = session.beginTransaction(); +// +// HWConfiguration hwc = getLocalHWConfiguration(session); +// for (Iterator iter = +// hwc.getBaseElements().iterator(); +// iter.hasNext(); ) { +// BaseElement be = iter.next(); +// if (be.getType().equals(BEType.TELESCOPE) && +// ((Telescope)be).getCaiBaseline() == cai) { +// antennaName = be.getName(); +// } +// } +// +// if ( antennaName == null) { +// HWConfiguration ghwc = getGlobalHWConfiguration(session); +// if (ghwc != null) { +// for (Iterator iter = +// ghwc.getBaseElements().iterator(); +// iter.hasNext(); ) { +// BaseElement be = iter.next(); +// if (be.getType().equals(BEType.TELESCOPE) && +// ((Telescope)be).getCaiBaseline() == cai) { +// antennaName = be.getName(); +// } +// } +// } +// } +// tx.commit(); +// session.close(); +// +// if (antennaName != null) { +// return antennaName; +// } else { +// throw new AcsJTmcdbNoSuchRowEx(); +// } +// } +// + +// @Override +// public ArrayReferenceLocation getArrayReferenceLocation() { +// Session session = HibernateUtil.getSessionFactory().openSession(); +// Transaction tx = session.beginTransaction(); +// HWConfiguration hwc = null; +// // +// // The Array Reference Location will always be present in the +// // HW Configuration. There is no condition under which it would be +// // necessary to look for the Location in the Global Configuration. +// // +// try { +// hwc = getLocalHwConfiguration(session); +// } catch (AcsJTmcdbNoSuchRowEx e) { +// // TODO A checked exception should be thrown. I'm not doing it now +// // because it would involve changing the IDL interface, quite +// // a dramatic change to tackle right now. I'm throwing an unchecked +// // exception, that should make the call fail with a +// // CORBA UNKNOWN, and the Container to log the stack. +// throw new NullPointerException(); +// } +// if (hwc == null) { +// throw new NullPointerException(); +// } +// ArrayReferenceLocation loc = new ArrayReferenceLocation(); +// loc.x = hwc.getArrayReference().getX(); +// loc.y = hwc.getArrayReference().getY(); +// loc.z = hwc.getArrayReference().getZ(); +// tx.commit(); +// session.close(); +// return loc; +// } + + @Override + public AssemblyConfigXMLData getAssemblyConfigData(String serialNumber) + throws AcsJTmcdbNoSuchRowEx { + if (serialNumber == null) { + throw new InvalidParameterException("serialNumber is null."); + } + + AssemblyConfigXMLData data = null; + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + Assembly assembly = null; + HwSchemas hwSchema = null; + + // + // Get local and global configurations. The global configuration can + // be null, the local configuration cannot. An exception is thrown if + // the local configuration cannot be found. + // + HWConfiguration local = getLocalHwConfiguration(session); + HWConfiguration global = getGlobalHwConfiguration(session); + // + // First look up the assembly in the local configuration. + // + assembly = getAssemblyFromConfiguration(session, local, serialNumber); + // + // If the assembly was not found in the local configuration and + // there is a global configuration, look it up there. + // + if ( assembly == null && global != null ) { + assembly = getAssemblyFromConfiguration(session, global, serialNumber); + } + + // + // Look for the HwSchema now. The logic is repeated, first look it + // up in the local configuration. If not found and there is a global + // configuration, look for the hw schema there. + // + if (assembly != null) { + hwSchema = getHwSchemaFromConfiguration(session, local, assembly); + if ( hwSchema == null && global != null ) { + hwSchema = getHwSchemaFromConfiguration(session, global, assembly); + } + + } + if (assembly == null) { + throw new AcsJTmcdbNoSuchRowEx(); + } + if (hwSchema == null) { + AcsJTmcdbNoSuchRowEx ex = new AcsJTmcdbNoSuchRowEx(); + ex.setProperty("Details", "no Schema found for " + + assembly.getSerialNumber()); + throw new AcsJTmcdbNoSuchRowEx(); + } + logger.finer("Assembly data: " + assembly.getData()); + logger.finer("Schema data: " + hwSchema.getSchema()); + data = new AssemblyConfigXMLData(assembly.getData(), hwSchema.getSchema()); + tx.commit(); + session.close(); + return data; + } + + @Override + public AssemblyConfigXMLData getComponentConfigData(String componentName) { + // this function is no longer supported and will go away soon + return new AssemblyConfigXMLData("", ""); + } + + public String getConfigurationName() { + return configurationName; + } + + @Override + public TelescopeFocusModel getCurrentTelescopeFocusModel(String antennaName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + Telescope antenna = getTelescope(session, antennaName); + if (antenna == null) { + throw new AcsJTmcdbNoSuchRowEx(); + } + FocusModel[] focusModels = antenna.getFocusModels().toArray(new FocusModel[0]); + if (focusModels.length == 0) { + throw new AcsJTmcdbNoSuchRowEx(); + } + + alma.TMCDB.TelescopeFocusModel idlFocusModel = + JavaToIdlTranslator.toIDL(focusModels[0]); + + tx.commit(); + session.close(); + return idlFocusModel; + } + + @Override + public PadIDL getCurrentTelescopePadInfo(String telescopeName) + throws AcsJTmcdbNoSuchRowEx { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + Telescope tel = getTelescope(session, telescopeName); + if (tel == null) { + throw new AcsJTmcdbNoSuchRowEx(); + } + Pad pad = getCurrentPad(tel); + tx.commit(); + session.close(); + if (pad != null) + return JavaToIdlTranslator.toIDL(pad); + else + throw new AcsJTmcdbNoSuchRowEx(); + } + + /** + * Returns the Pad where, according to the TMCDB configuration, the + * Telescope is installed. By convention, this is the record in the + * AntennaToPad table that has a null endTime for a given Telescope and + * Pad. + * @return Current Pad, or null if there is no such record in the + * database. + */ + public Pad getCurrentPad(Telescope tel) { + for (Iterator iter = tel.getTelescopeToPads().iterator(); + iter.hasNext();) { + TelescopeToPad t2p = iter.next(); + if (t2p.getEndTime() == null) + return t2p.getPad(); + } + return null; + } + + + @Override + public alma.TMCDB.TelescopePointingModel getCurrentTelescopePointingModel(String antennaName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + Telescope antenna = getTelescope(session, antennaName); + if (antenna == null) { + throw new AcsJTmcdbNoSuchRowEx(); + } + + PointingModel[] pointingModels = antenna.getPointingModels().toArray(new PointingModel[0]); + if (pointingModels.length == 0) { + throw new AcsJTmcdbNoSuchRowEx(); + } + + alma.TMCDB.TelescopePointingModel idlPointingModel = + JavaToIdlTranslator.toIDL(pointingModels[0]); + + tx.commit(); + session.close(); + return idlPointingModel; + } + +// @Override +// public double[] getMetrologyCoefficients(String antenna) { +// double[] coeffs = new double[2]; +// coeffs[0] = 0.0; +// coeffs[1] = 0.0; +// Session session = HibernateUtil.getSessionFactory().openSession(); +// Transaction tx = session.beginTransaction(); +// Telescope ant = null; +// try { +// ant = getTelescope(session, antenna); +// } catch (AcsJTmcdbNoSuchRowEx e) { +// // TODO An exception should be thrown. I'm not doing it now +// // because it would involve changing the IDL interface, quite +// // a dramatic change to tackle right now. +// throw new NullPointerException(); +// } +// if (ant == null) { +// return coeffs; +// } +// Set a2ps = ant.getScheduledPadLocations(); +// for (TelescopeToPad a2p : a2ps) { +// if (a2p.getEndTime() == null) { +// // The current pad should be the one with null +// // end time. +// coeffs[0] = a2p.getMountMetrologyAN0Coeff(); +// coeffs[1] = a2p.getMountMetrologyAW0Coeff(); +// } +// } +// tx.commit(); +// session.close(); +// return coeffs; +// } + + + @Override + public StartupTelescopeIDL[] getStartupTelescopesInfo() { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + + List startupTelescopesIDL = + new ArrayList(); + Startup startup = null; + try { + startup = getStartup(session); + } catch (AcsJTmcdbNoSuchRowEx e) { + // TODO A checked exception should be thrown. I'm not doing it now + // because it would involve changing the IDL interface, quite + // a dramatic change to tackle right now. + throw new NullPointerException(); + } + if (startup != null) { + for (Iterator iter2 = + startup.getBaseElementStartups().iterator(); + iter2.hasNext(); ) { + BaseElementStartup bes = iter2.next(); + BaseElement be = bes.getBaseElement(); + if (be.getBaseType() == BEType.TELESCOPE) { + Telescope ant = (Telescope) be; + StartupTelescopeIDL sa = new StartupTelescopeIDL(); + sa.telescopeName = ant.getTelescopeName(); + sa.uiDisplayOrder = getTelescopeUIOrder(ant.getTelescopeName()); + Set a2ps = ant.getTelescopeToPads(); + for (Iterator iter3 = a2ps.iterator(); + iter3.hasNext(); ) { + TelescopeToPad a2p = iter3.next(); + if (a2p.getEndTime() == null) { + sa.padName = a2p.getPad().getPadName(); + } + } + + Set assemblies = bes.getAssemblyStartups(); + // HACK - HACK - HACK - Part I + // Currently is expecting the TMCDBComponent to set the FrontEnd + // as a subdevice of the Telescope in order to start the FrontEnd. + // This is why it is added here as part of the antennaAssemblies, + // even though it is not really an assembly + sa.telescopeAssembly = new AssemblyLocationIDL[assemblies.size() + 1]; + int i = 0; + for (Iterator iter6 = assemblies.iterator(); + iter6.hasNext(); ) { + AssemblyStartup as = iter6.next(); + AssemblyLocationIDL al = new AssemblyLocationIDL(); + al.assemblyRoleName = as.getAssemblyRole().getRoleName(); + al.assemblyTypeName = as.getAssemblyRole().getRoleName(); + al.baseAddress = 0; + al.channelNumber = 0; + al.rca = 0; + sa.telescopeAssembly[i++] = al; + } + // HACK - HACK - HACK - Part II + // Adding a FrontEnd "assembly" in the last location +// AssemblyLocationIDL dummyFEAssLoc = new AssemblyLocationIDL(); +// dummyFEAssLoc.assemblyRoleName = "FrontEnd"; +// dummyFEAssLoc.assemblyTypeName = "FrontEnd"; +// dummyFEAssLoc.baseAddress = 0; +// dummyFEAssLoc.channelNumber = 0; +// dummyFEAssLoc.rca = 0; +// sa.telescopeAssembly[assemblies.size()] = dummyFEAssLoc; +// +// sa.frontEndName = "None"; +// sa.frontEndAssembly = new AssemblyLocationIDL[0]; +// // Not compatible with TMCDB gui. The TMCDB GUI is adding +// // FrontEnd assemblies in the Telescope. +// Set chbes = bes.getChildren(); +// for (Iterator iter4 = chbes.iterator(); +// iter4.hasNext(); ) { +// BaseElementStartup febes = iter4.next(); +// if (febes.getType() == BaseElementStartupType.FrontEnd) { +// sa.frontEndName = "Generic"; +// assemblies = febes.getAssemblyStartups(); +// sa.frontEndAssembly = new AssemblyLocationIDL[assemblies.size()]; +// i = 0; +// for (Iterator iter5 = assemblies.iterator(); +// iter5.hasNext(); ) { +// AssemblyStartup as = iter5.next(); +// AssemblyLocationIDL al = new AssemblyLocationIDL(); +// al.assemblyRoleName = as.getAssemblyRole().getName(); +// al.assemblyTypeName = as.getAssemblyRole().getName(); +// // The following aren't really used. They should +// // be removed. +// al.baseAddress = 0; +// al.channelNumber = 0; +// al.rca = 0; +// sa.frontEndAssembly[i++] = al; +// } +// } +// } +// startupTelescopesIDL.add(sa); + } + } + } + tx.commit(); + session.close(); + return startupTelescopesIDL.toArray(new StartupTelescopeIDL[0]); + } + +// @Override +// public StartupAOSTimingIDL getStartupAOSTimingInfo() { +// logger.finest("Entering getStartupAOSTimingInfo"); +// Session session = HibernateUtil.getSessionFactory().openSession(); +// Transaction tx = session.beginTransaction(); +// StartupScenario startup = null; +// try { +// startup = getStartup(session); +// } catch (AcsJTmcdbNoSuchRowEx e) { +// // TODO A checked exception should be thrown. I'm not doing it now +// // because it would involve changing the IDL interface, quite +// // a dramatic change to tackle right now. +// throw new NullPointerException(); +// } +// StartupAOSTimingIDL sa = null; +// if (startup != null) { +// logger.fine("BaseElementStartup length: " + startup.getBaseElementStartups().size()); +// for (Iterator iter2 = +// startup.getBaseElementStartups().iterator(); +// iter2.hasNext(); ) { +// BaseElementStartup bes = iter2.next(); +// BaseElement be = bes.getBaseElement(); +// logger.finer("BaseElement: " + bes.getBaseElement().getName()); +// if (be.getType() == BaseElementType.AOSTiming) { +// logger.info("It's the Master Clock"); +// AOSTiming lo = (AOSTiming) be; +// sa = new StartupAOSTimingIDL(); +// +// Set assemblies = bes.getAssemblyStartups(); +// sa.assemblies = new AssemblyLocationIDL[assemblies.size()]; +// int i = 0; +// for (Iterator iter6 = assemblies.iterator(); +// iter6.hasNext(); ) { +// AssemblyStartup as = iter6.next(); +// AssemblyLocationIDL al = new AssemblyLocationIDL(); +// logger.info("Role: " + as.getAssemblyRole().getName()); +// al.assemblyRoleName = as.getAssemblyRole().getName(); +// al.assemblyTypeName = as.getAssemblyRole().getName(); +// al.baseAddress = 0; +// al.channelNumber = 0; +// al.rca = 0; +// sa.assemblies[i++] = al; +// } +// } +// } +// } +// tx.commit(); +// session.close(); +// return sa; +// } +// +// @Override +// public StartupCLOIDL getStartupCLOInfo() { +// logger.info("entering getStartupCLOInfo"); +// Session session = HibernateUtil.getSessionFactory().openSession(); +// Transaction tx = session.beginTransaction(); +// StartupScenario startup = null; +// try { +// startup = getStartup(session); +// } catch (AcsJTmcdbNoSuchRowEx e) { +// // TODO An exception should be thrown. I'm not doing it now +// // because it would involve changing the IDL interface, quite +// // a dramatic change to tackle right now. +// throw new NullPointerException(); +// } +// StartupCLOIDL sa = null; +// if (startup != null) { +// for (Iterator iter = +// startup.getBaseElementStartups().iterator(); +// iter.hasNext(); ) { +// BaseElementStartup bes = iter.next(); +// BaseElement be = bes.getBaseElement(); +// logger.info("BaseElement: " + bes.getBaseElement().getName()); +// if (be.getType() == BaseElementType.CentralLO) { +// CentralLO lo = (CentralLO) be; +// +// sa = new StartupCLOIDL(); +// +// Set assemblies = bes.getAssemblyStartups(); +// sa.assemblies = new AssemblyLocationIDL[assemblies.size()]; +// int i = 0; +// for (Iterator iter2 = assemblies.iterator(); +// iter2.hasNext(); ) { +// AssemblyStartup as = iter2.next(); +// AssemblyLocationIDL al = new AssemblyLocationIDL(); +// al.assemblyRoleName = as.getAssemblyRole().getName(); +// al.assemblyTypeName = as.getAssemblyRole().getName(); +// al.baseAddress = 0; +// al.channelNumber = 0; +// al.rca = 0; +// sa.assemblies[i++] = al; +// } +// +// sa.photonicReferences = new StartupPhotonicReferenceIDL[bes.getChildren().size()]; +// i = 0; +// for (Iterator iter3 = bes.getChildren().iterator(); +// iter3.hasNext(); ) { +// BaseElementStartup phbes = iter3.next(); +// StartupPhotonicReferenceIDL sphidl = new StartupPhotonicReferenceIDL(); +// sphidl.name = phbes.getType().toString(); +// Set phassemblies = phbes.getAssemblyStartups(); +// sphidl.assemblies = new AssemblyLocationIDL[phassemblies.size()]; +// int j = 0; +// for (Iterator iter4 = phassemblies.iterator(); +// iter4.hasNext(); ) { +// AssemblyStartup as = iter4.next(); +// AssemblyLocationIDL al = new AssemblyLocationIDL(); +// al.assemblyRoleName = as.getAssemblyRole().getName(); +// al.assemblyTypeName = as.getAssemblyRole().getName(); +// al.baseAddress = 0; +// al.channelNumber = 0; +// al.rca = 0; +// sphidl.assemblies[j++] = al; +// } +// sa.photonicReferences[i++] = sphidl; +// } +// } +// } +// } +// tx.commit(); +// session.close(); +// return sa; +// } + + @Override + public StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() + throws AcsJTmcdbErrorEx { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + Startup startup = null; + try { + startup = getStartup(session); + } catch (AcsJTmcdbNoSuchRowEx e) { + // TODO A checked exception should be thrown. I'm not doing it now + // because it would involve changing the IDL interface, quite + // a dramatic change to tackle right now. + throw new NullPointerException(); + } + StartupWeatherStationControllerIDL idlWsCtrl = new StartupWeatherStationControllerIDL(); + idlWsCtrl.assemblies = new AssemblyLocationIDL[0]; + if (startup != null) { + List idlAssemblies = new ArrayList(); + for (Iterator iter = + startup.getBaseElementStartups().iterator(); + iter.hasNext(); ) { + BaseElementStartup bes = iter.next(); + BaseElement be = bes.getBaseElement(); + logger.info("BaseElement: " + bes.getBaseElement().getBaseElementName()); + if (be.getBaseType() == BEType.WEATHERSTATIONCONTROLLER) { + WeatherStationController ws = (WeatherStationController) be; + for (AssemblyStartup as : bes.getAssemblyStartups()) { + AssemblyLocationIDL idlAssembly = new AssemblyLocationIDL(); + idlAssembly.assemblyRoleName = as.getAssemblyRole().getRoleName(); + idlAssembly.assemblyTypeName = "none"; + idlAssembly.baseAddress = 0; + idlAssembly.channelNumber = 0; + idlAssembly.rca = 0; + idlAssemblies.add(idlAssembly); + } + } + } + idlWsCtrl.assemblies = idlAssemblies.toArray(new AssemblyLocationIDL[0]); + } + tx.commit(); + session.close(); + return idlWsCtrl; + } + + @Override + public String getTelescopeName() { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + HWConfiguration hwConfiguration = null; + try { + hwConfiguration = getLocalHwConfiguration(session); + } catch (AcsJTmcdbNoSuchRowEx e) { + // TODO An exception should be thrown. I'm not doing it now + // because it would involve changing the IDL interface, quite + // a dramatic change to tackle right now. + throw new NullPointerException(); + } + String telescName = hwConfiguration.getTelescopeName(); + tx.commit(); + session.close(); + return telescName; + } + + /** + * Report that an antenna is about to become online. + * + * This function will: + *
    + *
  1. Query the database for the BaseElement using the antennaName parameter. + *
  2. Query the BaseElementOnline table to check if there is a record for the given + * HWConfiguration and BaseElement with a null EndTime. If one exists, it will close it, + * setting the EndTime with the current time and setting NormalTermination to false. + * If no record exists, then there's nothing to do. + *
  3. Create a new BaseElementOnline record, with null EndTime. From now on, this is the + * current BaseElementOnline record. + *
+ * + * @see alma.TMCDB.TMCDBAccessIF#reportTelescopeOnline + */ + @Override + public void reportTelescopeOnline(String antennaName) { + logger.finer("reportTelescopeOnline: " + antennaName); + if ( (antennaName == null) || (antennaName.length() == 0) ) { + logger.warning("invalid antenna name"); + return; + } + + try { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + + HWConfiguration hwconf = getLocalHwConfiguration(session); + // Get the Telescope BaseElement + Telescope antenna = null; + antenna = getTelescopeFromConfiguration(hwconf, antennaName); + if (antenna == null) { + hwconf = getGlobalHwConfiguration(session); + antenna = getTelescopeFromConfiguration(hwconf, antennaName); + if (antenna == null) { + logger.warning("no Telescope BaseElement found for " + antennaName); + return; + } + } + + // Close previous BaseElementOnline record + String qstr = "FROM BaseElementOnline WHERE baseElement = :be AND hwConfiguration = :hwconf " + + "AND endTime is null"; + Query query = session.createQuery(qstr); + query.setParameter("be", antenna, session.getSessionFactory().getTypeHelper().entity(BaseElement.class)); + query.setParameter("hwconf", hwconf, session.getSessionFactory().getTypeHelper().entity(HWConfiguration.class)); + BaseElementOnline pbeo = (BaseElementOnline) query.uniqueResult(); + Long now = UTCUtility.utcJavaToOmg( (new Date()).getTime() ); + if (pbeo != null) { + pbeo.setEndTime(now); + pbeo.setNormalTermination(false); + session.update(pbeo); + } + + // Create a new BaseElementOnline record + BaseElementOnline nbeo = new BaseElementOnline(); + nbeo.setBaseElement(antenna); + nbeo.setHWConfiguration(hwconf); + nbeo.setStartTime(now); + nbeo.setEndTime(null); + nbeo.setNormalTermination(false); + session.save(nbeo); + + tx.commit(); + session.close(); + } catch(Exception ex) { + logger.warning("general exception registering antenna " + antennaName + + ": " + ex.getMessage()); + } + } + + /** + * Reports that an Assembly has been initialized. + *

+ * This function will: + *

    + *
  1. Deduce the parent BaseElement, from the componentName. + *
  2. Query the BaseElementOnline table, looking for the current BaseElementOnline, which is the record + * with a null EndTime. There should be only one. If such a record is not found, then return. + *
  3. Create a record in the AssemblyOnline table. + *
+ * + * @see alma.TMCDB.TMCDBAccessIF#reportAssemblyOperational + */ + @Override + public void reportAssemblyOperational(String serialNumber, + String componentName) { + logger.finer("reportAssemblyOperational: " + serialNumber + ", " + componentName); + if ( (serialNumber == null) || (serialNumber.length() == 0) ) { + logger.warning("invalid serial number"); + return; + } + if ( (componentName == null) || (componentName.length() == 0) ) { + logger.warning("invalid component name"); + return; + } + + try { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + + // + // The final goal is to create an AssemblyOnline record in the TMCDB. For this, + // it is necessary to retrieve the proper BaseElementOnline, from the BaseElement, + // and the Assembly. The BaseElement and the BaseElementOnline should belong to the + // same HWConfiguration, but the Assembly could belong to a different HWConfiguration. + // + + // First look for the BaseElement in the Local Configuration. + HWConfiguration hwconf = getLocalHwConfiguration(session); + BaseElement baseElement = null; + String baseElementName = getBaseElementFromComponentName(componentName); + if (baseElementName != null) { + for (Iterator iter = hwconf.getBaseElements().iterator(); iter.hasNext(); ) { + BaseElement be = iter.next(); + if ( be.getBaseElementName().equals(baseElementName) ) { + baseElement = be; + break; + } + } + } + // If not found in the Local Configuration, look for the BaseElement in the + // Global Configuration. + if (baseElement == null) { + hwconf = getGlobalHwConfiguration(session); + if (baseElementName != null) { + for (Iterator iter = hwconf.getBaseElements().iterator(); iter.hasNext(); ) { + BaseElement be = iter.next(); + if ( be.getBaseElementName().equals(baseElementName) ) { + baseElement = be; + break; + } + } + } + } + if (baseElement == null) { + logger.warning("invalid component name. No corresponding BaseElement was found for " + + componentName); + return; + } + + // Query for the BaseElementOnline object, in the configuration where the + // BaseElement was found. + String qstr = "FROM BaseElementOnline WHERE baseElement = :be AND hwConfiguration = :hwconf " + + "AND endTime is null"; + Query query = session.createQuery(qstr); + query.setParameter("be", baseElement, session.getSessionFactory().getTypeHelper().entity(BaseElement.class)); + query.setParameter("hwconf", hwconf, + session.getSessionFactory().getTypeHelper().entity(HWConfiguration.class)); + BaseElementOnline beo = (BaseElementOnline) query.uniqueResult(); + if (beo == null) { + logger.warning("no BaseElementOnline found for " + componentName); + return; + } + + // Query for the Assembly object, first in the Local HWConfiguration + HWConfiguration hwc = getLocalHwConfiguration(session); + qstr = "FROM Assembly assembly " + + "WHERE assembly.serialNumber = :serialNumber " + + "AND assembly.configuration = :configuration"; + query = session.createQuery(qstr); + query.setParameter("serialNumber", serialNumber, StandardBasicTypes.STRING); + query.setParameter("configuration", hwc, session.getSessionFactory().getTypeHelper().entity(HWConfiguration.class)); + Assembly assembly = (Assembly) query.uniqueResult(); + if (assembly == null) { + // Query for the Assembly object in the Global HWConfiguration. + HWConfiguration ghwc = getGlobalHwConfiguration(session); + query.setParameter("configuration", ghwc, session.getSessionFactory().getTypeHelper().entity(HWConfiguration.class)); + assembly = (Assembly) query.uniqueResult(); + if (assembly == null) { + logger.warning("no assembly record found for " + serialNumber); + return; + } + } + + // Create a new AssemblyOnline object. + Long now = UTCUtility.utcJavaToOmg( (new Date()).getTime() ); + AssemblyOnline ao = DomainEntityFactory.createAssemblyOnline(assembly, + getRoleNameFromComponentName(componentName), now); + ao.setBaseElementOnline(beo); + beo.getAssemblyOnlines().add(ao); + session.update(beo); + + tx.commit(); + session.close(); + } catch(Exception ex) { + logger.warning("general exception registering assembly " + serialNumber + + "; component name: " + componentName + ": " + ex.getMessage()); + } + } + + /** + * Get the Telescope entity, from its name. + *

+ * This function first looks for in the Local Configuration, if there is + * one. If there is no Local Configuration, or the Telescope object is not + * found there, it looks for in the Global Configuration. If it is not found + * there, null is returned. + * + * @param session + * Hibernate Session object + * @param antennaName + * Telescope name + * @return Telescope entity, or null if it is not found + * @throws AcsJTmcdbNoSuchRowEx + * If the Local or Global Configurations are not found. + */ + private Telescope getTelescope(Session session, String antennaName) + throws AcsJTmcdbNoSuchRowEx { + if (session == null) { + throw new InvalidParameterException("session parameter is null"); + } + if (antennaName == null) { + throw new InvalidParameterException("antennaName parameter is null"); + } + Telescope antenna = null; + HWConfiguration hwc = getLocalHwConfiguration(session); + antenna = getTelescopeFromConfiguration(hwc, antennaName); + if ( antenna == null) { + HWConfiguration ghwc = getGlobalHwConfiguration(session); + if (ghwc != null) { + antenna = getTelescopeFromConfiguration(ghwc, antennaName); + } + } + return antenna; + } + + private Telescope getTelescopeFromConfiguration(HWConfiguration configuration, + String antennaName) { + for (Iterator iter = + configuration.getBaseElements().iterator(); + iter.hasNext(); ) { + BaseElement be = iter.next(); + if (be.getBaseType().equals(BEType.TELESCOPE) && + be.getBaseElementName().equals(antennaName)) { + return (Telescope) be; + } + } + return null; +// throw new AcsJTmcdbNoSuchRowEx(); + } + + private short getTelescopeUIOrder(String antennaName) { + short retVal; + if (antennaName.substring(0, 2).equals("DV") || antennaName.substring(0, 2).equals("LA")) { + retVal = (short) Integer.valueOf(antennaName.substring(2, 4)).intValue(); + } else if (antennaName.substring(0, 2).equals("DA")){ + retVal = (short) (Integer.valueOf(antennaName.substring(2, 4)).intValue()-15); + } else if (antennaName.substring(0, 2).equals("PM")) { + retVal = (short) (Integer.valueOf(antennaName.substring(2, 4)).intValue()+62); + } else { //CM case + retVal = (short) (Integer.valueOf(antennaName.substring(2, 4)).intValue()+50); + } + return retVal; + } + + /** + * @param session + * @param configuration + * @param serialNumber + * @return + */ + private Assembly getAssemblyFromConfiguration(Session session, + HWConfiguration configuration, + String serialNumber) + { + String qstr = "FROM Assembly assembly " + + "WHERE assembly.serialNumber = :serialNumber " + + "AND assembly.configuration = :configuration"; + Query query = session.createQuery(qstr); + query.setParameter("serialNumber", + serialNumber, + StandardBasicTypes.STRING); + query.setParameter("configuration", + configuration, + session.getSessionFactory().getTypeHelper().entity(HWConfiguration.class)); + Assembly assembly = (Assembly) query.uniqueResult(); + return assembly; + } + + + private String getBaseElementFromComponentName(String componentName) { + String retVal = null; + String tmp = componentName; + tmp = tmp.replaceFirst("CONTROL/", ""); + if (tmp.contains("CentralLO")) { + // TODO complete this + } else { + // The BaseElement must be an Telescope + int idx = tmp.indexOf("/"); + if (idx > 0) { + retVal = tmp.substring(0, idx); + } + } + return retVal; + } + + /** + * @param session + * @param assembly + * @return + */ + private HwSchemas getHwSchemaFromConfiguration(Session session, + HWConfiguration configuration, + Assembly assembly) + { + String qstr; + Query query; + qstr = "FROM HwSchema WHERE assemblyType = :assemblyType AND configuration = :configuration"; + TypeHelper typHlpr = session.getSessionFactory().getTypeHelper(); + query = session.createQuery(qstr); + query.setParameter("assemblyType", + assembly.getAssemblyType(), + typHlpr.entity(AssemblyType.class)); + query.setParameter("configuration", + configuration, + typHlpr.entity(HWConfiguration.class)); + HwSchemas hwSchema = (HwSchemas) query.list().get(0); + return hwSchema; + } + + private Pad getPad(Session session, String padName) + throws AcsJTmcdbNoSuchRowEx { + + Pad pad = null; + HWConfiguration hwc = getLocalHwConfiguration(session); + try { + pad = getPadFromConfiguration(hwc, padName); + } catch (AcsJTmcdbNoSuchRowEx ex) { + // Fine, continue looking in the global configuration, if there + // is one. + } + if (pad == null) { + HWConfiguration ghwc = getGlobalHwConfiguration(session); + if (ghwc != null) { + pad = getPadFromConfiguration(ghwc, padName); + } + } + if (pad == null) { + AcsJTmcdbNoSuchRowEx ex = new AcsJTmcdbNoSuchRowEx(); + ex.setProperty("Details", "pad entity not found"); + ex.setProperty("padName", padName); + throw ex; + } + return pad; + } + + + private Pad getPadFromConfiguration(HWConfiguration configuration, + String padName) throws AcsJTmcdbNoSuchRowEx { + for (Iterator iter = configuration.getBaseElements() + .iterator(); iter.hasNext();) { + BaseElement be = iter.next(); + if (be.getBaseType().equals(BEType.PAD) + && be.getBaseElementName().equals(padName)) { + return (Pad) be; + } + } + throw new AcsJTmcdbNoSuchRowEx(); + } + + private String getRoleNameFromComponentName(String componentName) { + int idx = componentName.lastIndexOf("/"); + return componentName.substring(idx+1); + } + + protected Configuration getLocalConfiguration(Session session) throws AcsJTmcdbNoSuchRowEx { + String qstr = "FROM Configuration WHERE configurationName = '" + + configurationName + "'"; + Configuration configuration = + (Configuration) session.createQuery(qstr).uniqueResult(); + if (configuration == null) { + AcsJTmcdbNoSuchRowEx ex = new AcsJTmcdbNoSuchRowEx(); + ex.setProperty("Details", "Configuration record not found"); + throw ex; + } + return configuration; + } + + protected HWConfiguration getLocalHwConfiguration(Session session) throws AcsJTmcdbNoSuchRowEx { + Configuration configuration = getLocalConfiguration(session); + String qstr = "FROM HWConfiguration WHERE swConfiguration = :conf"; + Query query = session.createQuery(qstr); + query.setParameter("conf", configuration, session.getSessionFactory().getTypeHelper().entity(Configuration.class)); + HWConfiguration hwc = (HWConfiguration) query.uniqueResult(); + if (hwc == null) { + AcsJTmcdbNoSuchRowEx ex = new AcsJTmcdbNoSuchRowEx(); + ex.setProperty("Details", "HWConfiguration record not found"); + throw ex; + } + return hwc; + } + + /** + * + * @param session Hibernate Session. + * @return the Hardware Configuration, or null if the Global Configuration + * @throws AcsJTmcdbNoSuchRowEx + */ + protected HWConfiguration getGlobalHwConfiguration(Session session) throws AcsJTmcdbNoSuchRowEx { + if (session == null) { + throw new NullPointerException("Null session parameter"); + } + Configuration configuration = getLocalConfiguration(session); + String qstr = "FROM HWConfiguration WHERE swConfiguration = :conf"; + Query query = session.createQuery(qstr); + query.setParameter("conf", configuration, session.getSessionFactory().getTypeHelper().entity(Configuration.class)); + HWConfiguration hwc = (HWConfiguration) query.uniqueResult(); + if (hwc == null) { + AcsJTmcdbNoSuchRowEx ex = new AcsJTmcdbNoSuchRowEx(); + ex.setProperty("Details", "HWConfiguration record not found"); + throw ex; + } + HWConfiguration lhwc = null; // hwc.getGlobalConfiguration(); // TODO: Ask Rafael what the difference is local/global conf + // The global configuration can be null. + return lhwc; + } + + // add a reportTelescopeOffline() function + + protected Startup getStartup(Session session) + throws AcsJTmcdbNoSuchRowEx { + + String qstr = "FROM Startup startup " + + "WHERE startup.name = :startup AND startup.configuration = :configuration"; + Startup startupScenario = null; + // + // Try first to find the Startup in the Local Configuration. + // + HWConfiguration local = getLocalHwConfiguration(session); + Query query = session.createQuery(qstr); + query.setParameter("startup", startupScenarioName, StandardBasicTypes.STRING); + query.setParameter("configuration", local, session.getSessionFactory().getTypeHelper().entity(HWConfiguration.class)); + startupScenario = (Startup) query.uniqueResult(); + if ( startupScenario == null ) { + // + // Try next to find the Startup in the Global Configuration. + // + HWConfiguration global = getGlobalHwConfiguration(session); + if (global != null) { + query = session.createQuery(qstr); + query.setParameter("startup", startupScenarioName, StandardBasicTypes.STRING); + query.setParameter("configuration", global, session.getSessionFactory().getTypeHelper().entity(HWConfiguration.class)); + startupScenario = (Startup) query.uniqueResult(); + } + } + if (startupScenario == null) { + // + // Giving up. No Startup was found in the Local and Global + // Configurations. + // + throw new AcsJTmcdbNoSuchRowEx(); + } + + return startupScenario; + } + + protected void initDb() throws Exception { + HibernateUtil.createConfigurationFromDbConfig(dbconf); + } + + /** + * Set the Startup Scenario name. + *
+ * This function is used for testing. + * + * @param startupName Startup Scenario name. + */ + protected void setStartupName(String startupName) { + this.startupScenarioName = startupName; + } + + @Override + public TelescopeIDL[] getTelescopes() throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + Map telescopes = new HashMap(); + + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + + // + // Get all the telescopes in the local configuration first. + // + HWConfiguration hwc = getLocalHwConfiguration(session); + for (Iterator iter = + hwc.getBaseElements().iterator(); + iter.hasNext(); ) { + BaseElement be = iter.next(); + if (be.getBaseType().equals(BEType.TELESCOPE)) { + telescopes.put(be.getBaseElementName(), JavaToIdlTranslator.toIDL((Telescope) be)); + } + } + + // + // Add all the antennas from the global configuration that hasn't been + // added yet from the local configuration. + // + HWConfiguration ghwc = getGlobalHwConfiguration(session); + if (ghwc != null) { + for (Iterator iter = + ghwc.getBaseElements().iterator(); + iter.hasNext(); ) { + BaseElement be = iter.next(); + if (be.getBaseType().equals(BEType.TELESCOPE) && + !telescopes.keySet().contains(be.getBaseElementName())) { + telescopes.put(be.getBaseElementName(), JavaToIdlTranslator.toIDL((Telescope) be)); + } + } + } + + tx.commit(); + session.close(); + + return telescopes.values().toArray(new TelescopeIDL[0]); + } + + @Override + public ArrayReferenceLocation getArrayReferenceLocation() { + // TODO Auto-generated method stub + return null; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbMixedAccessor.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbMixedAccessor.java new file mode 100755 index 0000000000000000000000000000000000000000..1b36a5376ed51417752cfc9614538ad918bb4c8c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbMixedAccessor.java @@ -0,0 +1,165 @@ +package alma.tmcdb.access; + +import java.util.logging.Logger; + +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.AssemblyConfigXMLData; +import alma.TMCDB.TelescopeFocusModel; +import alma.TMCDB.TelescopePointingModel; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import astri.TMCDB_IDL.StartupWeatherStationControllerIDL; +import alma.TmcdbErrType.wrappers.AcsJTmcdbErrorEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; +import alma.acs.component.ComponentLifecycleException; +import alma.tmcdb.utils.TmcdbLoggerFactory; + +/** + * A mixed TmcdbAccessor, that will get the data from either the TMCDB database, + * or from the $ACS_CDB/TMCDB_DATA, $ACSROOT/SIMTMCDB and science script directories, + * which contain the data in XML files. + * + * This class is temporary. Functions accessing the XML files will be replaced + * one by one by the database version as the TMCDBExplorer is extended to allow editing + * the data. + * + * @author Rafael Hiriart (rhiriart@nrao.edu) + * + */ +public class TmcdbMixedAccessor implements TmcdbAccessor { + + /** Main TMCDB Accessor, uses Hibernate to access the database */ + TmcdbAccessor tmcdb; + + /** The temporary XML TMCDB Accessor, taken from the simulation impl */ + TmcdbAccessor xmlTmcdb; + + Logger logger; + + public TmcdbMixedAccessor() throws ComponentLifecycleException { + logger = TmcdbLoggerFactory.getLogger(TmcdbMixedAccessor.class.getName()); + logger.finest("TmcdbMixedAccessor::TmcdbMixedAccessor"); + try { + this.tmcdb = new TmcdbHibernateAccessor(); + } catch (Exception ex) { + ex.printStackTrace(); + throw new ComponentLifecycleException(ex); + } + this.xmlTmcdb = new TmcdbXmlAccessor(); + } + + @Override + public void clear() throws Exception { + if (tmcdb != null) { + try { + tmcdb.clear(); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + } + + @Override + public TelescopeIDL getTelescopeInfo(String antennaName) + throws AcsJTmcdbNoSuchRowEx { + return tmcdb.getTelescopeInfo(antennaName); + } + + @Override + public ArrayReferenceLocation getArrayReferenceLocation() { + return xmlTmcdb.getArrayReferenceLocation(); + } + + @Override + public AssemblyConfigXMLData getAssemblyConfigData(String serialNumber) + throws AcsJTmcdbNoSuchRowEx { + return tmcdb.getAssemblyConfigData(serialNumber); + } + + @Override + public AssemblyConfigXMLData getComponentConfigData(String componentName) { + return tmcdb.getComponentConfigData(componentName); + } + + @Override + public String getConfigurationName() { + return tmcdb.getConfigurationName(); + } + + //@Override + //public AntennaDelays getCurrentAntennaDelays(String antenna) + //throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + //return xmlTmcdb.getCurrentAntennaDelays(antenna); + //} + + @Override + public PadIDL getCurrentTelescopePadInfo(String antennaName) + throws AcsJTmcdbNoSuchRowEx { + return xmlTmcdb.getCurrentTelescopePadInfo(antennaName); + } + + @Override + public StartupTelescopeIDL[] getStartupTelescopesInfo() { + return tmcdb.getStartupTelescopesInfo(); + } + + @Override + public StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() + throws AcsJTmcdbErrorEx { + return xmlTmcdb.getStartupWeatherStationControllerInfo(); + } + + //@Override + //public XPDelay[] getCrossPolarizationDelays() throws AcsJTmcdbErrorEx, + //AcsJTmcdbNoSuchRowEx { + //return null; + //} + + @Override + public String getTelescopeName() throws AcsJTmcdbErrorEx, + AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } + + //@Override + //public double[] getPolarizationOrientation(String antenna, ReceiverBand band) + //throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + //// TODO Auto-generated method stub + //return null; + //} + + @Override + public void reportAssemblyOperational(String serialNumber, + String componentName) { + // TODO Auto-generated method stub + + } + + @Override + public void reportTelescopeOnline(String antennaName) { + // TODO Auto-generated method stub + + } + + @Override + public TelescopeIDL[] getTelescopes() throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } + + @Override + public TelescopePointingModel getCurrentTelescopePointingModel(String telescopeName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } + + @Override + public TelescopeFocusModel getCurrentTelescopeFocusModel(String telescopeName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbStandaloneHibernateAccessor.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbStandaloneHibernateAccessor.java new file mode 100755 index 0000000000000000000000000000000000000000..3254cce43a9fc66478c8b9b04258240eeaaa2207 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbStandaloneHibernateAccessor.java @@ -0,0 +1,178 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: TmcdbStandaloneHibernateAccessor.java,v 1.8 2011/10/05 00:32:40 sharring Exp $" + */ +package alma.tmcdb.access; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.IOException; +import java.io.Reader; +import java.util.Date; +import java.util.Properties; + +import org.exolab.castor.xml.XMLException; +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.archive.database.helpers.wrappers.DbConfigException; +import alma.archive.database.helpers.wrappers.TmcdbDbConfig; +import alma.tmcdb.utils.AssemblyDataLoader; +import alma.tmcdb.utils.ConfigurationLoader; +import alma.tmcdb.utils.HibernateUtil; +import alma.tmcdb.utils.TmcdbException; +import alma.tmcdb.utils.TmcdbLoggerFactory; +import alma.tmcdb.utils.TmcdbUtils; + +public class TmcdbStandaloneHibernateAccessor extends TmcdbHibernateAccessor { + + public TmcdbStandaloneHibernateAccessor() + throws Exception { + super(); + logger = TmcdbLoggerFactory.getLogger(TmcdbStandaloneHibernateAccessor.class.getName()); + } + + @Override + public void clear() throws Exception { + //TmcdbUtils.dropTables(); + HibernateUtil.shutdown(); + } + + private Reader getConfigurationFile() throws FileNotFoundException { + // First look in the TMCDB_HW_CONF_FILE environment variable + String confFileFromEnv = System.getenv("TMCDB_HW_CONF_FILE"); + if (confFileFromEnv != null) { + File confFile = new File(confFileFromEnv); + if (confFile.exists()) + return new FileReader(confFile); + } + // Then look in the current directory + String currdir = System.getProperty("user.dir"); + String confFileLoc = currdir + "/Configuration.xml"; + File confFile = new File(confFileLoc); + if (confFile.exists()) + return new FileReader(confFile); + // Then look in (ACS/INT)ROOT/config + String introot = System.getenv("INTROOT"); + confFileLoc = introot + "/config/Configuration.xml"; + confFile = new File(confFileLoc); + if (confFile.exists()) + return new FileReader(confFile); + String acsroot = System.getenv("ACSROOT"); + confFileLoc = acsroot + "/config/Configuration.xml"; + confFile = new File(confFileLoc); + if (confFile.exists()) + return new FileReader(confFile); + throw new FileNotFoundException(); + } + + private void loadDatabaseFromXML(Reader reader) + throws XMLException, IOException, TmcdbException, DbConfigException { + logger.finest("TmcdbStandaloneHibernateAccessor::loadDatabaseFromXML"); + logger.fine("loading dummy records"); + setupDummyRecords(); + // LruLoader.loadAllHwConfigFiles(true); + // AssemblyRoleLoader.loadAssemblyRoles(); + logger.fine("loading configuration file"); + (new ConfigurationLoader()).loadConfiguration(reader); + logger.fine("loading assembly data"); + AssemblyDataLoader.loadAssemblyData(true); + } + + private void setupDummyRecords() { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction tx = session.beginTransaction(); + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dummy:1.0"); + session.save(compType); + Configuration config = new Configuration(); + config.setConfigurationName(System.getenv("TMCDB_CONFIGURATION_NAME")); + config.setFullName("Test"); + config.setActive(true); + config.setCreationTime(new Date()); + config.setDescription("created by standalone TMCDBComponent"); + session.save(config); + Component component = new Component(); + component.setComponentName("DUMMY"); + component.setComponentType(compType); + component.setConfiguration(config); + component.setImplLang(ImplLangEnum.valueOfForEnum("java")); + component.setRealTime(false); + component.setCode(""); + component.setPath(""); + component.setIsAutostart(false); + component.setIsDefault(false); + component.setIsControl(false); + component.setKeepAliveTime(0); + component.setMinLogLevel((byte) 0); + component.setMinLogLevelLocal((byte) 0); + session.save(component); + tx.commit(); + session.close(); + } + + @Override + protected void initDb() throws Exception { + logger.finest("TmcdbStandaloneHibernateAccessor::initDb"); + String url, user, password; + String debug = System.getenv("TMCDB_STANDALONE_DEBUG"); + if (debug != null && debug.equalsIgnoreCase("true")) { + logger.config("creating disk based database"); + TmcdbDbConfig tmcdbConfig = new TmcdbDbConfig(logger); + HibernateUtil.createConfigurationFromDbConfig(tmcdbConfig); + url = tmcdbConfig.getConnectionUrl(); + user = tmcdbConfig.getUsername(); + password = tmcdbConfig.getPassword(); + } else { + logger.config("creating an in-memory database"); + // Creates a database entirely in memory + final Properties props = new Properties(); + props.setProperty("hibernate.dialect", + "org.hibernate.dialect.HSQLDialect"); + props.setProperty("hibernate.connection.driver_class", + "org.hsqldb.jdbcDriver"); + props.setProperty("hibernate.connection.url", + "jdbc:hsqldb:mem:ignored"); + props.setProperty("hibernate.connection.username", + "sa"); + props.setProperty("hibernate.connection.password", + ""); + HibernateUtil.createConfigurationWithProperties(props); + url = "jdbc:hsqldb:mem:ignored"; + user = "sa"; + password = ""; + } + try { + TmcdbUtils.dropTables(url, user, password); + } catch (Exception ex) {} // fine, tables haven't been loaded yet + TmcdbUtils.createTables(url, user, password); + loadDatabaseFromXML(getConfigurationFile()); + } +} + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbStandaloneMixedAccessor.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbStandaloneMixedAccessor.java new file mode 100755 index 0000000000000000000000000000000000000000..ce4d90c0b30d28eeff391628eb17245c0e922970 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbStandaloneMixedAccessor.java @@ -0,0 +1,131 @@ +package alma.tmcdb.access; + +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.AssemblyConfigXMLData; +import alma.TMCDB.TelescopeFocusModel; +import alma.TMCDB.TelescopePointingModel; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import astri.TMCDB_IDL.StartupWeatherStationControllerIDL; +import alma.TmcdbErrType.wrappers.AcsJTmcdbErrorEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; +import alma.acs.component.ComponentLifecycleException; + +public class TmcdbStandaloneMixedAccessor implements TmcdbAccessor { + + /** Main TMCDB Accessor, uses Hibernate to access the database */ + TmcdbAccessor tmcdb; + + /** The temporary XML TMCDB Accessor, taken from the simulation impl */ + TmcdbAccessor xmlTmcdb; + + public TmcdbStandaloneMixedAccessor() throws ComponentLifecycleException { + try { + this.tmcdb = new TmcdbStandaloneHibernateAccessor(); + } catch (Exception ex) { + ex.printStackTrace(); + throw new ComponentLifecycleException(ex); + } + this.xmlTmcdb = new TmcdbXmlAccessor(); + } + + @Override + public void clear() throws Exception { + if (tmcdb != null) { + try { + tmcdb.clear(); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + } + + @Override + public TelescopeIDL getTelescopeInfo(String antennaName) + throws AcsJTmcdbNoSuchRowEx { + return tmcdb.getTelescopeInfo(antennaName); + } + + @Override + public ArrayReferenceLocation getArrayReferenceLocation() { + return xmlTmcdb.getArrayReferenceLocation(); + } + + @Override + public AssemblyConfigXMLData getAssemblyConfigData(String serialNumber) + throws AcsJTmcdbNoSuchRowEx { + return tmcdb.getAssemblyConfigData(serialNumber); + } + + @Override + public AssemblyConfigXMLData getComponentConfigData(String componentName) { + return tmcdb.getComponentConfigData(componentName); + } + + @Override + public String getConfigurationName() { + return tmcdb.getConfigurationName(); + } + + @Override + public TelescopeFocusModel getCurrentTelescopeFocusModel(String antennaName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + return xmlTmcdb.getCurrentTelescopeFocusModel(antennaName); + } + + @Override + public PadIDL getCurrentTelescopePadInfo(String antennaName) + throws AcsJTmcdbNoSuchRowEx { + return xmlTmcdb.getCurrentTelescopePadInfo(antennaName); + } + + @Override + public TelescopePointingModel getCurrentTelescopePointingModel(String antennaName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + return xmlTmcdb.getCurrentTelescopePointingModel(antennaName); + } + + @Override + public StartupTelescopeIDL[] getStartupTelescopesInfo() { + return tmcdb.getStartupTelescopesInfo(); + } + + @Override + public StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() + throws AcsJTmcdbErrorEx { + return xmlTmcdb.getStartupWeatherStationControllerInfo(); + } + + //@Override + //public XPDelay[] getCrossPolarizationDelays() throws AcsJTmcdbErrorEx, + //AcsJTmcdbNoSuchRowEx { + //return null; + //} + + @Override + public String getTelescopeName() throws AcsJTmcdbErrorEx, + AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } + + @Override + public void reportAssemblyOperational(String serialNumber, + String componentName) { + // TODO Auto-generated method stub + + } + + @Override + public void reportTelescopeOnline(String antennaName) { + // TODO Auto-generated method stub + + } + + @Override + public TelescopeIDL[] getTelescopes() throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbXmlAccessor.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbXmlAccessor.java new file mode 100755 index 0000000000000000000000000000000000000000..af99a381cce206fd2b8e35ddac56fc9aaf5c30c7 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/TmcdbXmlAccessor.java @@ -0,0 +1,1019 @@ +package alma.tmcdb.access; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.logging.Logger; + +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.parsers.SAXParser; +import javax.xml.parsers.SAXParserFactory; + +import org.xml.sax.Attributes; +import org.xml.sax.SAXException; +import org.xml.sax.helpers.DefaultHandler; + +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.AssemblyConfigXMLData; +import alma.TMCDB.TelescopeFocusModel; +import alma.TMCDB.TelescopePointingModel; +import alma.TMCDB.ModelTerm; +import alma.TMCDBComponentImpl.Telescope; +import alma.TMCDBComponentImpl.AssemblyLocation; +import alma.TMCDBComponentImpl.StartupTelescope; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.TelescopePointingModelIDL; +import astri.TMCDB_IDL.TelescopePointingModelTermIDL; +import astri.TMCDB_IDL.AssemblyLocationIDL; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.PointingModelIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import astri.TMCDB_IDL.StartupWeatherStationControllerIDL; +import alma.TmcdbErrType.wrappers.AcsJTmcdbErrorEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; +import alma.tmcdb.utils.TmcdbLoggerFactory; + +public class TmcdbXmlAccessor implements TmcdbAccessor { + + abstract class GenericXmlParser extends DefaultHandler { + + String filename; + Logger logger; + + public GenericXmlParser(String infilename, Logger logger) { + filename = infilename; + this.logger = logger; + logger.info("Hey!"); + } + + public void parse() throws SAXException, + ParserConfigurationException,IOException { + //get a factory + SAXParserFactory spf = SAXParserFactory.newInstance(); + String acsCdb = java.lang.System.getenv("ACSROOT"); + String location = java.lang.System.getenv("LOCATION"); + //get a new instance of parser + SAXParser sp = spf.newSAXParser(); + + File file; + file = new File(acsCdb + "/config/SIMTMCDB/"+filename+"-"+location+".xml"); + if(!file.exists()) { + file = new File(acsCdb + "/config/SIMTMCDB/"+filename+".xml"); + if (!file.exists()) { + String trueAcsCdbDir = java.lang.System.getenv("ACS_CDB"); + if (trueAcsCdbDir != null) { + String fn = trueAcsCdbDir + "/SIMTMCDB/" + filename + ".xml"; + File f = new File(fn); + if(!f.exists()) { + throw new IOException("File " + fn + " not found"); + } + //parse the file and also register this class for call backs + sp.parse(f, this); + logger.info("reading file " + file.getName()); + return; + } + + } + } + logger.info("reading file " + file.getName()); + //parse the file and also register this class for call backs + sp.parse(file, this); + } + //Event Handlers + public abstract void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException; + + public abstract void characters(char[] ch, int start, int length) + throws SAXException; + + public abstract void endElement(String uri, String localName, String qName) + throws SAXException; + } + + class TelescopeXMLParser extends GenericXmlParser { + + List telescopeList; + List deviceList; + String telescopeName; + String tempVal; + Map telescopePad; + + public TelescopeXMLParser(Map map, Logger logger) { + super("StartupTelescope", logger); + telescopeList = new ArrayList(); + telescopePad = map; + } + + public List getTelescopeList() { + return telescopeList; + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + //reset + tempVal = ""; + if(qName.equalsIgnoreCase("Telescope")) { + deviceList = new ArrayList(); + telescopeName = attributes.getValue("name"); + } + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Telescope")) { + telescopeList.add(createTelescopeStartUp(telescopeName, + telescopePad.get(telescopeName),deviceList)); + } else if(qName.equalsIgnoreCase("Assembly")) { + deviceList.add(tempVal); + } + } + } + + class TelescopePadMapXMLParser extends GenericXmlParser { + Map telescopePad = new HashMap(); + String tempVal; + String telescopeName; + String padName; + + public TelescopePadMapXMLParser(Logger logger) { + super("TelescopePadMap", logger); + } + + public Map getMap() { + return telescopePad; + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + //reset + tempVal = ""; + if(qName.equalsIgnoreCase("Map")) { + telescopeName = attributes.getValue("telescope"); + padName = attributes.getValue("pad"); + } + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Map")) { + telescopePad.put(telescopeName, padName); + } + } + } + + class PadXMLParser extends GenericXmlParser { + + Map padList; + String padName; + String x; + String y; + String z; + String tempVal; + + + public PadXMLParser(Logger logger) { + super("Pad", logger); + padList = new HashMap(); + } + + public PadIDL getPadIDL(String padName) { + return padList.get(padName).toIDL(); + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + //reset + tempVal = ""; + if(qName.equalsIgnoreCase("Pad")) { + padName = attributes.getValue("name"); + x = attributes.getValue("x"); + y = attributes.getValue("y"); + z = attributes.getValue("z"); + } + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Pad")) { + Pad pad = new Pad(); + pad.setPadName(padName); + pad.setCommissionDate(new astri.physquan.runtime.asdm.types.ArrayTime(2006,10,1,0,0,0.0)); // TODO: Get rid of this dependency!!!!!!!!! + pad.setXPosition(new astri.physquan.runtime.asdm.types.Length(new Double(x).doubleValue())); + pad.setYPosition(new astri.physquan.runtime.asdm.types.Length(new Double(y).doubleValue())); + pad.setZPosition(new astri.physquan.runtime.asdm.types.Length(new Double(z).doubleValue())); + padList.put(padName, pad); + } + } + } + + class AOSTimingXMLParser extends GenericXmlParser { + + List assemblyList; + String tempVal; + + public AOSTimingXMLParser(Logger logger) { + super("AOSTiming", logger); + assemblyList = new ArrayList(); + } + + public AssemblyLocationIDL[] getAssemblies() { + return ( AssemblyLocationIDL[] )assemblyList.toArray( new AssemblyLocationIDL[ assemblyList.size() ] ); + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + tempVal = ""; + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Assembly")) { + AssemblyLocationIDL assembly = new AssemblyLocationIDL(); + assembly.assemblyRoleName = tempVal; + assembly.assemblyTypeName = "none"; + assembly.baseAddress = 0; + assembly.channelNumber = 0; + assembly.rca = 0; + assemblyList.add(assembly); + } + } + } + + + + class WeatherStationControllerXMLParser extends GenericXmlParser { + + List assemblyList; + String tempVal; + + public WeatherStationControllerXMLParser(Logger logger) { + super("WeatherStationController", logger); + assemblyList = new ArrayList(); + } + + public AssemblyLocationIDL[] getAssemblies() { + return ( AssemblyLocationIDL[] )assemblyList.toArray( new AssemblyLocationIDL[ assemblyList.size() ] ); + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + tempVal = ""; + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("Assembly")) { + AssemblyLocationIDL assembly = new AssemblyLocationIDL(); + assembly.assemblyRoleName = tempVal; + assembly.assemblyTypeName = "none"; + assembly.baseAddress = 0; + assembly.channelNumber = 0; + assembly.rca = 0; + assemblyList.add(assembly); + } + } + } + + + class ArrayReferenceXMLParser extends GenericXmlParser { + + String tempVal; + ArrayReferenceLocation loc; + String x; + String y; + String z; + + public ArrayReferenceXMLParser(Logger logger) { + super("ArrayReference", logger); + } + + public ArrayReferenceLocation getReference() { + return loc; + } + + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + tempVal = ""; + if(qName.equalsIgnoreCase("ArrayReference")) { + x = attributes.getValue("x"); + y = attributes.getValue("y"); + z = attributes.getValue("z"); + } + } + + + public void characters(char[] ch, int start, int length) + throws SAXException { + tempVal = new String(ch,start,length); + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if(qName.equalsIgnoreCase("ArrayReference")) { + loc = new ArrayReferenceLocation(); + loc.x = new Float(x).floatValue(); + loc.y = new Float(y).floatValue(); + loc.z = new Float(z).floatValue(); + } + } + } + + class ModelXMLParser extends GenericXmlParser { + // The current telescope or band we are parsing. only one of these + // should be non-nill at any one time. + String curTelescope; + Integer curBand; + // The accumulated terms in the telescope or band we are currently parsing + ArrayList curModel; + + // Once we have completed parsing an telescope or band the data is + // moved from the cur* member variables )above into either the + // antModel or bandModel maps (below). + Map antModel = new HashMap(); + Map bandModel = new HashMap(); + // TODO. Add support for a separate set of band offsets in the 7m telescopes. + // Whats commented out below is a partial implementation +// Map bandModel7m = new HashMap(); + + // This string is just used in error messages + String filename; + + public ModelXMLParser(String filename, Logger logger) { + super(filename, logger); + this.filename = filename + ".xml file"; + } + + public void startElement(String uri, String localName, String qName, + Attributes attributes) throws SAXException { + try { + if (qName.equalsIgnoreCase("Telescope")) { + curTelescope = attributes.getValue("name"); + curModel = new ArrayList(); + } else if (qName.equalsIgnoreCase("BandOffset")) { + curBand = Integer.valueOf(attributes.getValue("name")); + curModel = new ArrayList(); +// } else if (qName.equalsIgnoreCase("BandOffset7m")) { +// curBand = Integer.valueOf(attributes.getValue("name")); +// curModel = new ArrayList(); + } else if (qName.equalsIgnoreCase("Term")) { + String termName = attributes.getValue("name"); + double termValue = Double.valueOf(attributes.getValue("value")).doubleValue(); + if (curModel == null) { + final String msg = filename + " is incorrectly structured."; + throw new SAXException(msg); + } + curModel.add(new ModelTerm(termName, termValue)); + } + } catch (NumberFormatException ex) { + final String msg = filename + " contains incorrect numbers."; + throw new SAXException(msg, ex); + } + } + + public void characters(char[] ch, int start, int length) + throws SAXException { + } + + public void endElement(String uri, String localName, String qName) + throws SAXException { + if (qName.equalsIgnoreCase("Telescope")) { + if (curModel == null) { + String msg = filename + " is incorrectly structured.."; + throw new SAXException(msg); + } + antModel.put(curTelescope, curModel.toArray(new ModelTerm[0])); + } else if (qName.equalsIgnoreCase("BandOffset")) { + if (curModel == null) { + String msg = filename + " is incorrectly structured..."; + throw new SAXException(msg); + } + bandModel.put(curBand, curModel.toArray(new ModelTerm[0])); +// } else if (qName.equalsIgnoreCase("BandOffset7m")) { +// if (curModel == null) { +// String msg = filename + " is incorrectly structured..."; +// throw new SAXException(msg); +// } +// bandModel7m.put(curBand, curModel.toArray(new ModelTerm[0])); + } + } + + public void TMCDBParse() throws AcsJTmcdbErrorEx { + try { + super.parse(); + } catch (Exception ex) { + AcsJTmcdbErrorEx jex = new AcsJTmcdbErrorEx(ex); + jex.log(logger); + throw jex; + } + } + + protected Map getTelescopeModel() { + return antModel; + } + + protected Map getBandModel() { + return bandModel; + } + +// protected Map getBandModel7m() { +// return bandModel7m; +// } + } + + class FocusModelXMLParser extends ModelXMLParser { + public FocusModelXMLParser(Logger logger) { + super("FocusModel", logger); + } + + public Map getTelescopeFocusModel() { + return getTelescopeModel(); + } + + public Map getBandFocusModel() { + return getBandModel(); + } + } + + class PointingModelXMLParser extends ModelXMLParser { + public PointingModelXMLParser(Logger logger) { + super("PointingModel", logger); + } + + public Map getTelescopePointingModel() { + return getTelescopeModel(); + } + + public Map getBandPointingModel() { + return getBandModel(); + } + } + + + protected Logger logger; + private String configurationName; + + // The telescope focus model, for each telescope + private Map telescopeFocusModel = null; + // The offsets in the focus model for each band + private Map bandFocusModel = null; + + // The telescope pointing model, for each telescope + private Map telescopePointingModel = null; + // The offsets in the pointing model for each band + private Map bandPointingModel = null; + + /**Map TelescopeName with current PadName */ + Map telescopePad = new HashMap(); + + public TmcdbXmlAccessor() { + logger = TmcdbLoggerFactory.getLogger(TmcdbXmlAccessor.class.getName()); + logger.finest("creating TmcdbXmlAccessor"); + configurationName = System.getenv("TMCDB_CONFIGURATION_NAME"); + } + + /** + * Yet another temporary hack while we finally get the TMCDB fully + * implemented and working. + * This function, implemented in the TMCDB base class, is overriden + * in order to set the configuration that this component must provide. + */ + + + public static StartupTelescope createTelescopeStartUp(String telescopeName, String + padName, List deviceList){ + StartupTelescope ant = new StartupTelescope (); + ant.setTelescopeName(telescopeName); + ant.setPadName(padName); + if(telescopeName.substring(0, 2).equals("DV") || + telescopeName.substring(0, 2).equals("LA")){ + ant.setUiDisplayOrder((short) Integer.valueOf(telescopeName.substring(2, 4)).intValue() ); + } else if (telescopeName.substring(0, 2).equals("DA")){ + ant.setUiDisplayOrder((short) (Integer.valueOf(telescopeName.substring(2, 4)).intValue()-15)); + } else if (telescopeName.substring(0, 2).equals("PM")) { + ant.setUiDisplayOrder((short) (Integer.valueOf(telescopeName.substring(2, 4)).intValue()+62)); + } else {//CM case + ant.setUiDisplayOrder((short) (Integer.valueOf(telescopeName.substring(2, 4)).intValue()+50)); + } + + ant.setFrontEndName("none"); + + AssemblyLocation[] FeDeviceList = new AssemblyLocation[15]; + for (int i = 0; i < FeDeviceList.length; ++i) { + FeDeviceList[i] = new AssemblyLocation (); + FeDeviceList[i].setAssemblyRoleName(""); + FeDeviceList[i].setAssemblyTypeName("none"); + FeDeviceList[i].setBaseAddress(0); + FeDeviceList[i].setChannelNumber(0); + FeDeviceList[i].setRca(0); + } + FeDeviceList[0].setAssemblyRoleName("ColdCart3"); + FeDeviceList[1].setAssemblyRoleName("ColdCart6"); + FeDeviceList[2].setAssemblyRoleName("ColdCart7"); + FeDeviceList[3].setAssemblyRoleName("ColdCart9"); + FeDeviceList[4].setAssemblyRoleName("Cryostat"); + FeDeviceList[5].setAssemblyRoleName("IFSwitch"); + FeDeviceList[6].setAssemblyRoleName("LPR"); + FeDeviceList[7].setAssemblyRoleName("PowerDist3"); + FeDeviceList[8].setAssemblyRoleName("PowerDist6"); + FeDeviceList[9].setAssemblyRoleName("PowerDist7"); + FeDeviceList[10].setAssemblyRoleName("PowerDist9"); + FeDeviceList[11].setAssemblyRoleName("WCA3"); + FeDeviceList[12].setAssemblyRoleName("WCA6"); + FeDeviceList[13].setAssemblyRoleName("WCA7"); + FeDeviceList[14].setAssemblyRoleName("WCA9"); + ant.setFrontEndAssembly(FeDeviceList); + + AssemblyLocation[] devices = new AssemblyLocation[deviceList.size()]; + for (int i = 0; i < devices.length; ++i) { + devices[i] = new AssemblyLocation (); + devices[i].setAssemblyRoleName(""); + devices[i].setAssemblyTypeName("none"); + devices[i].setBaseAddress(0); + devices[i].setChannelNumber(0); + devices[i].setRca(0); + } + + for (int i=0;i telescopeList = new ArrayList(); + + //Make sure we have the telescope pad map + readTelescopePadMap(); + + //Crean telescopes + TelescopeXMLParser antparser = new TelescopeXMLParser(telescopePad, logger); + try { + antparser.parse(); + telescopeList = antparser.getTelescopeList(); + } catch (Exception e) { + // e.printStackTrace(); + // logger.severe("Error while parsing telescope file"); + } + + StartupTelescope[] ants = new StartupTelescope[telescopeList.size()]; + for(int i=0;i < telescopeList.size();i++) + ants[i] = telescopeList.get(i); + + return ants; + } + + /////////////////////////////// + // TMCDB External Operations // + /////////////////////////////// + + + public StartupTelescopeIDL[] getStartupTelescopesInfo() { + + StartupTelescope[] telescope = null; + + telescope = getStartUpTelescopesInfo(); + StartupTelescopeIDL[] list = new StartupTelescopeIDL [telescope.length]; + for (int i = 0; i < list.length; ++i) { + list[i] = new StartupTelescopeIDL(); + list[i].telescopeName = telescope[i].getTelescopeName(); + list[i].padName = telescope[i].getPadName(); +// list[i].uiDisplayOrder = telescope[i].getUiDisplayOrder(); +// AssemblyLocation[] loc = telescope[i].getFrontEndAssembly(); +// list[i].frontEndAssembly = new AssemblyLocationIDL [loc.length]; +// for (int j = 0; j < list[i].frontEndAssembly.length; ++j) { +// list[i].frontEndAssembly[j] = new AssemblyLocationIDL (); +// list[i].frontEndAssembly[j].assemblyTypeName = loc[j].getAssemblyTypeName(); +// list[i].frontEndAssembly[j].assemblyRoleName = loc[j].getAssemblyRoleName(); +// list[i].frontEndAssembly[j].rca = loc[j].getRca(); +// list[i].frontEndAssembly[j].channelNumber = loc[j].getChannelNumber(); +// list[i].frontEndAssembly[j].baseAddress = loc[j].getBaseAddress(); +// } +// loc = telescope[i].getTelescopeAssembly(); +// list[i].telescopeAssembly = new AssemblyLocationIDL [loc.length]; +// for (int j = 0; j < list[i].telescopeAssembly.length; ++j) { +// list[i].telescopeAssembly[j] = new AssemblyLocationIDL (); +// list[i].telescopeAssembly[j].assemblyTypeName = loc[j].getAssemblyTypeName(); +// list[i].telescopeAssembly[j].assemblyRoleName = loc[j].getAssemblyRoleName(); +// list[i].telescopeAssembly[j].rca = loc[j].getRca(); +// list[i].telescopeAssembly[j].channelNumber = loc[j].getChannelNumber(); +// list[i].telescopeAssembly[j].baseAddress = loc[j].getBaseAddress(); +// } + } + return list; + } + + public StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() throws AcsJTmcdbErrorEx { + AssemblyLocationIDL[] assemblies = new AssemblyLocationIDL[0]; + WeatherStationControllerXMLParser parser = new WeatherStationControllerXMLParser(logger); + try { + parser.parse(); + assemblies = parser.getAssemblies(); + } catch (Exception e) { + e.printStackTrace(); + logger.severe("Error while parsing WeatherStationController file"); + } + + return new StartupWeatherStationControllerIDL(assemblies); + } + + + public TelescopeIDL getTelescopeInfo(String telescopeName) throws AcsJTmcdbNoSuchRowEx { + Telescope telescope = new Telescope (); + if(telescopeName.substring(0, 2).equals("DV") || + telescopeName.substring(0, 2).equals("DA") || + telescopeName.substring(0, 2).equals("LA")) { + telescope.setTelescopeName(telescopeName); + telescope.setTelescopeType("tewlveMeter"); + telescope.setCommissionDate(new astri.physquan.runtime.asdm.types.ArrayTime(2009,2,6,0,0,0.0)); + telescope.setDishDiameter(new astri.physquan.runtime.asdm.types.Length(12.0)); + telescope.setXPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setYPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setZPosition(new astri.physquan.runtime.asdm.types.Length(7.0)); + } else if (telescopeName.substring(0, 2).equals("PM")) { + telescope.setTelescopeName(telescopeName); + telescope.setTelescopeType("totalPower"); + telescope.setCommissionDate(new astri.physquan.runtime.asdm.types.ArrayTime(2006,10,1,0,0,0.0)); + telescope.setDishDiameter(new astri.physquan.runtime.asdm.types.Length(12.0)); + telescope.setXPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setYPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setZPosition(new astri.physquan.runtime.asdm.types.Length(7.5)); + } else if(telescopeName.substring(0, 2).equals("CM")) { + telescope.setTelescopeName(telescopeName); + telescope.setTelescopeType("sevenMeter"); + telescope.setCommissionDate(new astri.physquan.runtime.asdm.types.ArrayTime(2006,10,1,0,0,0.0)); + telescope.setDishDiameter(new astri.physquan.runtime.asdm.types.Length(12.0)); + telescope.setXPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setYPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setZPosition(new astri.physquan.runtime.asdm.types.Length(0.0)); + } + telescope.setComponentId(0); + //telescope.setBaseElementId(2); + //telescope.setComputerId(0); // TODO: Verify that removal is correct + //telescope.setConfigurationId(1); + telescope.setXOffset(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setYOffset(new astri.physquan.runtime.asdm.types.Length(0.0)); + telescope.setZOffset(new astri.physquan.runtime.asdm.types.Length(0.0)); + return telescope.toIDL(); + } + + public PadIDL getCurrentTelescopePadInfo(String telescopeName) throws AcsJTmcdbNoSuchRowEx { + String padName=null; + PadIDL pad = new PadIDL(); + PadXMLParser parser = new PadXMLParser(logger); + //make sure we have the telescope pad map + readTelescopePadMap(); + try{ + padName=telescopePad.get(telescopeName); + // System.out.println("padName="+ padName); + }catch (java.lang.NullPointerException exce1){ + logger.severe("Telescope "+telescopeName+ " doesn't exist"); + exce1.printStackTrace(); + } + if(padName == null) { + AcsJTmcdbNoSuchRowEx ex = new AcsJTmcdbNoSuchRowEx("There is no such telescope as " + telescopeName); + throw ex; + } + try { + parser.parse(); + pad = parser.getPadIDL(padName); + } catch (Exception e) { + // e.printStackTrace(); + // logger.severe("Error while parsing pad file"); + } + return pad; + } + + public PointingModelIDL getPMData(String telescopeName) throws AcsJTmcdbNoSuchRowEx { + PointingModelIDL x = new PointingModelIDL (); + x.telescopeName = telescopeName; + // x.padName = telescopePad.get(telescopeName); + x.padName = getCurrentTelescopePadInfo(telescopeName).PadName; + x.pointingModel = new TelescopePointingModelIDL (); + x.pointingModel.TelescopeId = 1; + x.pointingModel.AsdmUID = "none"; + x.pointingModel.PadId = 1; + x.pointingModel.PointingModelId = 0; + astri.physquan.runtime.asdm.types.ArrayTime t = new astri.physquan.runtime.asdm.types.ArrayTime(2006,10,10,8,0,0.0); + x.pointingModel.StartTime = t.toIDLArrayTime(); + x.pointingModel.StartValidTime = t.toIDLArrayTime(); + x.pointingModel.EndValidTime = new astri.asdmIDLTypes.IDLArrayTime (0); + x.term = new TelescopePointingModelTermIDL [18]; + for (int i = 0; i < x.term.length; ++i) { + x.term[i] = new TelescopePointingModelTermIDL (); + x.term[i].PointingModelId = 0; + x.term[i].CoeffError = 0.0F; + x.term[i].CoeffValue = 0.0F; + } + x.term[0].CoeffName = "IA"; + x.term[1].CoeffName = "IE"; + x.term[2].CoeffName = "HASA"; + x.term[3].CoeffName = "HACA"; + x.term[4].CoeffName = "HESE"; + x.term[5].CoeffName = "HECE"; + x.term[6].CoeffName = "HESA"; + x.term[7].CoeffName = "HASA2"; + x.term[8].CoeffName = "HACA2"; + x.term[9].CoeffName = "HESA2"; + x.term[10].CoeffName = "HECA2"; + x.term[11].CoeffName = "HACA3"; + x.term[12].CoeffName = "HECA3"; + x.term[13].CoeffName = "HESA3"; + x.term[14].CoeffName = "NPAE"; + x.term[15].CoeffName = "CA"; + x.term[16].CoeffName = "AN"; + x.term[17].CoeffName = "AW"; + return x; + } + + public PointingModelIDL getPointingModelInfo(String telescopeName) throws AcsJTmcdbNoSuchRowEx { + return getPMData(telescopeName); + } + + public PointingModelIDL getRecentPointingModelInfo(String telescopeName) throws AcsJTmcdbNoSuchRowEx { + return getPMData(telescopeName); + } + + public PointingModelIDL[] getPointingModelsInfo(String telescopeName) throws AcsJTmcdbNoSuchRowEx { + PointingModelIDL[] x = new PointingModelIDL [1]; + x[0] = getPMData(telescopeName); + return x; + } + + public AssemblyConfigXMLData getAssemblyConfigData(String serialNumber) throws AcsJTmcdbNoSuchRowEx { + AssemblyConfigXMLData data = new AssemblyConfigXMLData(); + data.xmlDoc = ""; + data.schema = ""; + return data; + } + + public AssemblyConfigXMLData getComponentConfigData(String componentName) { + return null; + } + + + + @Override + public ArrayReferenceLocation getArrayReferenceLocation() { + ArrayReferenceLocation loc = null; + ArrayReferenceXMLParser parser = new ArrayReferenceXMLParser(logger); + try { + parser.parse(); + loc = parser.getReference(); + } catch (Exception e) { + // e.printStackTrace(); + // logger.severe("Error while parsing array reference file"); + } + if(loc == null){ + loc = new ArrayReferenceLocation(); + loc.x = 2202175.078; + loc.y = -5445230.603; + loc.z = -2485310.452; + } + return loc; + } + + static public boolean isTelescopeNameValid(String telescopeName) { + if (telescopeName.length() != 4) { + return false; + } + final String prefix = telescopeName.substring(0, 2).toUpperCase(); + short number; + try { + number = new Integer(telescopeName.substring(2, 4)).shortValue(); + } catch (NumberFormatException ex) { + return false; + } + + if ((prefix.equals("DV") && number >= 1 && number <= 25) + || (prefix.equals("DA") && number >= 41 && number <= 65) + || (prefix.equals("PM") && number >= 1 && number <= 4) + || (prefix.equals("CM") && number >= 1 && number <= 12)) { + return true; + } + return false; + } + + public TelescopeFocusModel getCurrentTelescopeFocusModel(String telescopeName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { +// if (!TMCDBSimComponentImpl.isTelescopeNameValid(telescopeName)) { +// AcsJTmcdbNoSuchRowEx jex = new AcsJTmcdbNoSuchRowEx(); +// jex.setProperty("Detail", "Telescope '" + telescopeName +// + "' is not a recognized telescope name."); +// jex.log(logger); +// throw jex; +// } +// +// // Always reload the focus model from the TMCDB. +// // TODO. Only load a new model if its has changed. To do this +// // I need a function that tells me if the focus model has +// // changed. +// telescopeFocusModel = null; +// bandFocusModel = null; +// +// if (telescopeFocusModel == null) { +// FocusModelXMLParser parser = new FocusModelXMLParser(logger); +// parser.TMCDBParse(); +// telescopeFocusModel = parser.getTelescopeFocusModel(); +// bandFocusModel = parser.getBandFocusModel(); +// } +// final String upCaseName = telescopeName.toUpperCase(); +// if (telescopeFocusModel.containsKey(upCaseName)) { +// return telescopeFocusModel.get(upCaseName); +// } else { +// return new ModelTerm[0]; +// } + return null; + } + + public ModelTerm[] getCurrentBandFocusModel(short band, + boolean for12MTelescope) throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + // TODO. Work out how to support the 7m telescopes. + // Make sure its a valid band name + if (band < 1 || band > 10) { + AcsJTmcdbNoSuchRowEx jex = new AcsJTmcdbNoSuchRowEx(); + jex.setProperty("Detail", "Band numbers must be between 1 and 10." + + " Band " + band + " is not allowed."); + jex.log(logger); + throw jex; + } + + // Always reload the focus model from the TMCDB. + // TODO. Only load a new model if its has changed. To do this + // I need a function that tells me if the focus model has + // changed. + telescopeFocusModel = null; + bandFocusModel = null; + + if (bandFocusModel == null) { + FocusModelXMLParser parser = new FocusModelXMLParser(logger); + parser.TMCDBParse(); + telescopeFocusModel = parser.getTelescopeFocusModel(); + bandFocusModel = parser.getBandFocusModel(); + } + final Integer bandNum = (int) band; + if (bandFocusModel.containsKey(bandNum)) { + return bandFocusModel.get(bandNum); + } else { + return new ModelTerm[0]; + } + } + + public TelescopePointingModel getCurrentTelescopePointingModel(String telescopeName) + throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { +// if (!TMCDBSimComponentImpl.isTelescopeNameValid(telescopeName)) { +// AcsJTmcdbNoSuchRowEx jex = new AcsJTmcdbNoSuchRowEx(); +// jex.setProperty("Detail", "Telescope '" + telescopeName +// + "' is not a recognized telescope name."); +// jex.log(logger); +// throw jex; +// } +// +// // Always reload the pointing model from the TMCDB. +// // TODO. Only load a new model if its has changed. To do this +// // I need a function that tells me if the pointing model has +// // changed. +// telescopePointingModel = null; +// bandPointingModel = null; +// +// if (telescopePointingModel == null) { +// PointingModelXMLParser parser = new PointingModelXMLParser(logger); +// parser.TMCDBParse(); +// telescopePointingModel = parser.getTelescopePointingModel(); +// bandPointingModel = parser.getBandPointingModel(); +// } +// final String upCaseName = telescopeName.toUpperCase(); +// if (telescopePointingModel.containsKey(upCaseName)) { +// return telescopePointingModel.get(upCaseName); +// } else { +// return new ModelTerm[0]; +// } + return null; + } + + public ModelTerm[] getCurrentBandPointingModel(short band, + boolean for12MTelescope) throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + // TODO. Work out how to support the 7m telescopes. + // Make sure its a valid band name + if (band < 0 || band > 10) { + AcsJTmcdbNoSuchRowEx jex = new AcsJTmcdbNoSuchRowEx(); + jex.setProperty("Detail", "Band numbers must be between 0 and 10." + + " Band " + band + " is not allowed."); + jex.log(logger); + throw jex; + } + + // Always reload the pointing model from the TMCDB. + // TODO. Only load a new model if its has changed. To do this + // I need a function that tells me if the pointing model has + // changed. + telescopePointingModel = null; + bandPointingModel = null; + + if (bandPointingModel == null) { + PointingModelXMLParser parser = new PointingModelXMLParser(logger); + parser.TMCDBParse(); + telescopePointingModel = parser.getTelescopePointingModel(); + bandPointingModel = parser.getBandPointingModel(); + } + final Integer bandNum = (int) band; + if (bandPointingModel.containsKey(bandNum)) { + return bandPointingModel.get(bandNum); + } else { + return new ModelTerm[0]; + } + } + + @Override + public String getConfigurationName() { + return configurationName; + } + + @Override + public void clear() throws Exception { + // TODO Auto-generated method stub + + } + + //@Override + //public XPDelay[] getCrossPolarizationDelays() throws AcsJTmcdbErrorEx, + //AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + //return null; + //} + + @Override + public String getTelescopeName() throws AcsJTmcdbErrorEx, + AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } + + @Override + public void reportAssemblyOperational(String serialNumber, + String componentName) { + // TODO Auto-generated method stub + + } + + @Override + public void reportTelescopeOnline(String telescopeName) { + // TODO Auto-generated method stub + + } + + @Override + public TelescopeIDL[] getTelescopes() throws AcsJTmcdbErrorEx, AcsJTmcdbNoSuchRowEx { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbComponentImpl.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbComponentImpl.java new file mode 100755 index 0000000000000000000000000000000000000000..ccdb70058afb8e2b1443d5bab54048a618a8acd8 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbComponentImpl.java @@ -0,0 +1,296 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File TMCDBComponent.java + */ +package alma.tmcdb.access.compimpl; + +import java.util.HashMap; +import java.util.Map; +import java.util.logging.Logger; + +import alma.ACS.ComponentStates; +import alma.TMCDB.AccessOperations; +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.AssemblyConfigXMLData; +import alma.TMCDB.TelescopeFocusModel; +import alma.TMCDB.TelescopePointingModel; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.PointingModelIDL; +import astri.TMCDB_IDL.StartupWeatherStationControllerIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import astri.TMCDB_IDL.TelescopeIDL; +import alma.TmcdbErrType.TmcdbDuplicateKeyEx; +import alma.TmcdbErrType.TmcdbErrorEx; +import alma.TmcdbErrType.TmcdbNoSuchRowEx; +import alma.TmcdbErrType.TmcdbRowAlreadyExistsEx; +import alma.TmcdbErrType.TmcdbSqlEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbErrorEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; +import alma.acs.component.ComponentLifecycle; +import alma.acs.component.ComponentLifecycleException; +import alma.acs.container.ContainerServices; +import alma.tmcdb.access.TmcdbAccessor; +import alma.tmcdb.access.TmcdbHibernateAccessor; +import alma.tmcdb.utils.TmcdbLoggerFactory; + +/** + * The TMCDBComponent is the way the CONTROL subsystem gets its configuration + * information. + * + * @author Rafael Hiriart (rhiriart@nrao.edu) + * + */ +public class TmcdbComponentImpl + implements AccessOperations, ComponentLifecycle { + + /** + * The ACS container services. + */ + protected ContainerServices container; + + /** + * The ACS Logger. + */ + protected Logger logger; + + /** TMCDB Accessor */ + TmcdbAccessor tmcdb; + + /** Startup Telescope information to be setup from test cases. */ + private StartupTelescopeIDL[] testStartupTelescopesInfo; + + /** Telescope information to be setup from test cases. */ + private Map testTelescopeInfo = + new HashMap(); + + /** Telescope pad information to be setup from test cases. */ + private Map testPadInfo = + new HashMap(); + + /** Pointing model information to be setup from test cases. */ + private PointingModelIDL testPointingModelInfo; + + + /** + * Constructor. + */ + public TmcdbComponentImpl() { + super(); + } + + @Override + public void aboutToAbort() { + cleanUp(); + } + + @Override + public void cleanUp() { + if (tmcdb != null) { + try { + tmcdb.clear(); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + } + + @Override + public ComponentStates componentState() { + return container.getComponentStateManager().getCurrentState(); + } + + @Override + public void execute() throws ComponentLifecycleException {} + + @Override + public TelescopeIDL getTelescopeInfo(String telescopeName) + throws TmcdbSqlEx, TmcdbNoSuchRowEx, TmcdbDuplicateKeyEx { + if (testTelescopeInfo.containsKey(telescopeName)) + return testTelescopeInfo.get(telescopeName); + try { + return tmcdb.getTelescopeInfo(telescopeName); + } catch (AcsJTmcdbNoSuchRowEx ex) { + throw ex.toTmcdbNoSuchRowEx(); + } + } + + public ArrayReferenceLocation getArrayReferenceLocation() { + return tmcdb.getArrayReferenceLocation(); + } + + @Override + public AssemblyConfigXMLData getAssemblyConfigData(String serialNumber) + throws TmcdbSqlEx, TmcdbNoSuchRowEx { + try { + return tmcdb.getAssemblyConfigData(serialNumber); + } catch (AcsJTmcdbNoSuchRowEx ex) { + throw ex.toTmcdbNoSuchRowEx(); + } + } + + @Override + public String getConfigurationName() throws TmcdbErrorEx { + return tmcdb.getConfigurationName(); + } + + + @Override + public PadIDL getCurrentTelescopePadInfo(String telescopeName) + throws TmcdbSqlEx, + TmcdbNoSuchRowEx, + TmcdbDuplicateKeyEx, + TmcdbRowAlreadyExistsEx { + if (testPadInfo.containsKey(telescopeName)) + return testPadInfo.get(telescopeName); + try { + return tmcdb.getCurrentTelescopePadInfo(telescopeName); + } catch (AcsJTmcdbNoSuchRowEx ex) { + throw ex.toTmcdbNoSuchRowEx(); + } + } + + @Override + public TelescopePointingModel getCurrentTelescopePointingModel(String telescopeName) + throws TmcdbErrorEx, TmcdbNoSuchRowEx { + try { + return tmcdb.getCurrentTelescopePointingModel(telescopeName); + } catch (AcsJTmcdbErrorEx e) { + throw e.toTmcdbErrorEx(); + } catch (AcsJTmcdbNoSuchRowEx e) { + throw e.toTmcdbNoSuchRowEx(); + } + } + + public TelescopeFocusModel getCurrentTelescopeFocusModel(String telescopeName) + throws TmcdbErrorEx, TmcdbNoSuchRowEx { + try { + return tmcdb.getCurrentTelescopeFocusModel(telescopeName); + } catch (AcsJTmcdbErrorEx e) { + throw e.toTmcdbErrorEx(); + } catch (AcsJTmcdbNoSuchRowEx e) { + throw e.toTmcdbNoSuchRowEx(); + } + } + + public StartupTelescopeIDL[] getStartupTelescopesInfo() throws TmcdbErrorEx { + return testStartupTelescopesInfo == null ? + tmcdb.getStartupTelescopesInfo() : + testStartupTelescopesInfo; + } + + + @Override + public StartupWeatherStationControllerIDL getStartupWeatherStationControllerInfo() + throws TmcdbErrorEx { + try { + return tmcdb.getStartupWeatherStationControllerInfo(); + } catch (AcsJTmcdbErrorEx e) { + throw e.toTmcdbErrorEx(); + } + } + + @Override + public String getTelescopeName() throws TmcdbErrorEx, TmcdbNoSuchRowEx { + try { + return tmcdb.getTelescopeName(); + } catch (AcsJTmcdbErrorEx e) { + throw e.toTmcdbErrorEx(); + } catch (AcsJTmcdbNoSuchRowEx e) { + throw e.toTmcdbNoSuchRowEx(); + } + } + + @Override + public void initialize(ContainerServices cs) + throws ComponentLifecycleException { + this.container = cs; + this.logger = cs.getLogger(); + TmcdbLoggerFactory.SINGLETON.setLogger(this.logger); + try { + this.tmcdb = new TmcdbHibernateAccessor(); + } catch (Exception ex) { + ex.printStackTrace(); + throw new ComponentLifecycleException(ex); + } + } + + @Override + public String name() { + return container.getName(); + } + + /** + * Sets up the telescopes information. This function provides a way to + * set up this structure from test cases. + * This is a temporary hack while a way to do this is implemented at the + * TMCDB layer. + */ + @Override + public void setTelescopeInfo(String an, TelescopeIDL ai) { + testTelescopeInfo.put(an, ai); + } + + /** + * Sets up the Telescope pads information. This function provides a way to + * set up this structure from test cases. + * This is a temporary hack while a way to do this is implemented at the + * TMCDB layer. + */ + @Override + public void setTelescopePadInfo(String tel, PadIDL api) { + testPadInfo.put(tel, api); + } + + /** + * Sets up the startup telescopes information. This function provides a way to + * set up this structure from test cases. + * This is a temporary hack while a way to do this is implemented at the + * TMCDB layer. + */ + public void setStartupTelescopesInfo(StartupTelescopeIDL[] sai) { + testStartupTelescopesInfo = sai; + } + + + @Override + public void reportAssemblyOperational(String serialNumber, String componentName) { + tmcdb.reportAssemblyOperational(serialNumber, componentName); + } + + @Override + public void reportTelescopeOnline(String telescopeName) { + tmcdb.reportTelescopeOnline(telescopeName); + } + + @Override + public TelescopeIDL[] getTelescopes() throws TmcdbErrorEx, TmcdbNoSuchRowEx { + try { + return tmcdb.getTelescopes(); + } catch (AcsJTmcdbErrorEx e) { + throw e.toTmcdbErrorEx(); + } catch (AcsJTmcdbNoSuchRowEx e) { + throw e.toTmcdbNoSuchRowEx(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbComponentImplHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbComponentImplHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..16cd462c32172cde1ac9f5d46e65b41ca98b8e29 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbComponentImplHelper.java @@ -0,0 +1,58 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File TMCDBComponentImplCreator.java + */ +package alma.tmcdb.access.compimpl; + +import java.util.logging.Logger; + +import alma.TMCDB.AccessOperations; +import alma.TMCDB.AccessPOATie; +import alma.acs.component.ComponentLifecycle; +import alma.acs.container.ComponentHelper; +import alma.maciErrType.wrappers.AcsJComponentCreationEx; + +public class TmcdbComponentImplHelper extends ComponentHelper { + + public TmcdbComponentImplHelper(Logger containerLogger) { + super(containerLogger); + } + + @Override + protected ComponentLifecycle _createComponentImpl() + throws AcsJComponentCreationEx { + return new TmcdbComponentImpl(); + } + + @Override + protected Class _getPOATieClass() { + return AccessPOATie.class; + } + + @Override + protected Class _getOperationsInterface() { + return AccessOperations.class; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbStandaloneComponentImpl.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbStandaloneComponentImpl.java new file mode 100755 index 0000000000000000000000000000000000000000..9b89e9cc9236e388e9017df774494e46aa52c236 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbStandaloneComponentImpl.java @@ -0,0 +1,52 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File TMCDBComponent.java + */ +package alma.tmcdb.access.compimpl; + +import alma.TMCDB.AccessOperations; +import alma.acs.component.ComponentLifecycle; +import alma.acs.component.ComponentLifecycleException; +import alma.acs.container.ContainerServices; +import alma.tmcdb.access.TmcdbStandaloneHibernateAccessor; +import alma.tmcdb.utils.TmcdbLoggerFactory; + +public class TmcdbStandaloneComponentImpl extends TmcdbComponentImpl + implements AccessOperations, ComponentLifecycle { + + @Override + public void initialize(ContainerServices cs) + throws ComponentLifecycleException { + this.container = cs; + this.logger = cs.getLogger(); + TmcdbLoggerFactory.SINGLETON.setLogger(this.logger); + try { + // this.tmcdb = new TmcdbStandaloneMixedAccessor(); + this.tmcdb = new TmcdbStandaloneHibernateAccessor(); + } catch (Exception ex) { + ex.printStackTrace(); + throw new ComponentLifecycleException(ex); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbStandaloneComponentImplHelper.java b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbStandaloneComponentImplHelper.java new file mode 100755 index 0000000000000000000000000000000000000000..a03d2e409dbd44a28669a9c42224e737c8fbfdeb --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/alma/tmcdb/access/compimpl/TmcdbStandaloneComponentImplHelper.java @@ -0,0 +1,58 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * File TMCDBComponentImplCreator.java + */ +package alma.tmcdb.access.compimpl; + +import java.util.logging.Logger; + +import alma.TMCDB.AccessOperations; +import alma.TMCDB.AccessPOATie; +import alma.acs.component.ComponentLifecycle; +import alma.acs.container.ComponentHelper; +import alma.maciErrType.wrappers.AcsJComponentCreationEx; + +public class TmcdbStandaloneComponentImplHelper extends ComponentHelper { + + public TmcdbStandaloneComponentImplHelper(Logger containerLogger) { + super(containerLogger); + } + + @Override + protected ComponentLifecycle _createComponentImpl() + throws AcsJComponentCreationEx { + return new TmcdbStandaloneComponentImpl(); + } + + @Override + protected Class _getPOATieClass() { + return AccessPOATie.class; + } + + @Override + protected Class _getOperationsInterface() { + return AccessOperations.class; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/src/build.xml b/ARCHIVE/SharedCode/TMCDB/Access/src/build.xml new file mode 100755 index 0000000000000000000000000000000000000000..bdec42cdd159c561b01eecded00f2bdc96f81847 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/src/build.xml @@ -0,0 +1,18 @@ + + +A simple build file that just calls the Makefiles. + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/Configuration.xml b/ARCHIVE/SharedCode/TMCDB/Access/test/Configuration.xml new file mode 100755 index 0000000000000000000000000000000000000000..2e64db25d0933cf7047ac396407c02453fe6ab53 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/Configuration.xml @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/GlobalConfiguration.xml b/ARCHIVE/SharedCode/TMCDB/Access/test/GlobalConfiguration.xml new file mode 100755 index 0000000000000000000000000000000000000000..200ca6d1740fc96151e557326f915d186e088c31 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/GlobalConfiguration.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/LocalConfiguration.xml b/ARCHIVE/SharedCode/TMCDB/Access/test/LocalConfiguration.xml new file mode 100755 index 0000000000000000000000000000000000000000..ea72d215acbca68bfe8c1aa1c4d2562fb6c44142 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/LocalConfiguration.xml @@ -0,0 +1,143 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/Makefile b/ARCHIVE/SharedCode/TMCDB/Access/test/Makefile new file mode 100755 index 0000000000000000000000000000000000000000..c2558626717e05041a19a34bce28f67fb30830f2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/Makefile @@ -0,0 +1,244 @@ +#******************************************************************************* +# PPPPPPPP +# +# "@(#) $Id: Makefile,v 1.3 2011/07/28 17:07:23 rhiriart Exp $" +# +# Makefile of ........ +# +# who when what +# -------- -------- ---------------------------------------------- +# rhiriart 17/04/09 created +# + +#******************************************************************************* +# This Makefile follows VLT Standards (see Makefile(5) for more). +#******************************************************************************* +# REMARKS +# None +#------------------------------------------------------------------------ + +# +# user definable C-compilation flags +#USER_CFLAGS = + +# +# additional include and library search paths +#USER_INC = +#USER_LIB = +USER_LIB = -lACE \ + -lTAO \ + -lTAO_DsLogAdmin \ + -lTAO_CosNaming \ + -lTAO_IORTable \ + -lTAO_PortableServer \ + -lTAO_Svc_Utils \ + -lTAO_CosTrading \ + -lTAO_CosNotification \ + -lTAO_DynamicAny \ + -lTAO_IFR_Client \ + -lTAO_CosProperty \ + -lacsutil \ + -lcdb \ + -llogging \ + -lacscomponent \ + -lbaci \ + -lmaci \ + -lmaciErrType \ + -lmaciClient \ + -lacserr \ + -lm \ + -lloki \ + -lacstime + +# +# MODULE CODE DESCRIPTION: +# ------------------------ +# As a general rule: public file are "cleaned" and "installed" +# local (_L) are not "installed". + +# +# C programs (public and local) +# ----------------------------- +EXECUTABLES = +EXECUTABLES_L = TmcdbBasebandDelayTest TmcdbAntennaLOOffsetTest TmcdbAntennaWalshFunctionsTest + +# +# TMCDB Baseband Delay utility class test. +TmcdbBasebandDelayTest_OBJECTS = TmcdbBasebandDelayTest +TmcdbBasebandDelayTest_LIBS = C++ TmcdbBasebandDelay CorrelatorArrayStubs + +TmcdbAntennaLOOffsetTest_OBJECTS = TmcdbAntennaLOOffsetTest +TmcdbAntennaLOOffsetTest_LIBS = C++ TmcdbAntennaLOOffset CorrelatorArrayStubs + +TmcdbAntennaWalshFunctionsTest_OBJECTS = TmcdbAntennaWalshFunctionsTest +TmcdbAntennaWalshFunctionsTest_LIBS = C++ TmcdbAntennaWalshFunctions CorrelatorArrayStubs + +# +# +xxxxx_OBJECTS = +xxxxx_LDFLAGS = +xxxxx_LIBS = + +# +# special compilation flags for single c sources +#yyyyy_CFLAGS = + +# +# Includes (.h) files (public only) +# --------------------------------- +INCLUDES = + +# +# Libraries (public and local) +# ---------------------------- +LIBRARIES = +LIBRARIES_L = + +# +# +lllll_OBJECTS = + +# +# Scripts (public and local) +# ---------------------------- +SCRIPTS = +SCRIPTS_L = + +# +# TCL scripts (public and local) +# ------------------------------ +TCL_SCRIPTS = +TCL_SCRIPTS_L = + +# +# Python stuff (public and local) +# ---------------------------- +PY_SCRIPTS = +PY_SCRIPTS_L = + +PY_MODULES = +PY_MODULES_L = + +PY_PACKAGES = +PY_PACKAGES_L = +pppppp_MODULES = + +# +# +tttttt_OBJECTS = +tttttt_TCLSH = +tttttt_LIBS = + +# +# TCL libraries (public and local) +# ------------------------------ +TCL_LIBRARIES = +TCL_LIBRARIES_L = + +# +# +tttlll_OBJECTS = + +# +# Configuration Database Files +# ---------------------------- +CDB_SCHEMAS = + +# +# IDL Files and flags +# +IDL_FILES = +TAO_IDLFLAGS = +USER_IDL = +# +# Jarfiles and their directories +# +JARFILES=TMCDBAccessTest +TMCDBAccessTest_DIRS=alma +# jjj_EXTRAS= +# +# java sources in Jarfile on/off +DEBUG=on +# +# ACS XmlIdl generation on/off +# +XML_IDL= +# +# Java Component Helper Classes generation on/off +# +COMPONENT_HELPERS= +# +# Java Entity Classes generation on/off +# +XSDBIND= +# +# Schema Config files for the above +# +XSDBIND_INCLUDE= +# man pages to be done +# -------------------- +MANSECTIONS = +MAN1 = +MAN3 = +MAN5 = +MAN7 = +MAN8 = + +# +# local man pages +# --------------- +MANl = + +# +# ASCII file to be converted into Framemaker-MIF +# -------------------- +ASCII_TO_MIF = + +# +# other files to be installed +#---------------------------- +INSTALL_FILES = + +# +# list of all possible C-sources (used to create automatic dependencies) +# ------------------------------ +CSOURCENAMES = \ + $(foreach exe, $(EXECUTABLES) $(EXECUTABLES_L), $($(exe)_OBJECTS)) \ + $(foreach rtos, $(RTAI_MODULES) , $($(rtos)_OBJECTS)) \ + $(foreach lib, $(LIBRARIES) $(LIBRARIES_L), $($(lib)_OBJECTS)) + +# +#>>>>> END OF standard rules + +# +# INCLUDE STANDARDS +# ----------------- + +MAKEDIRTMP := $(shell searchFile include/acsMakefile) +ifneq ($(MAKEDIRTMP),\#error\#) + MAKEDIR := $(MAKEDIRTMP)/include + include $(MAKEDIR)/acsMakefile +endif + +# +# TARGETS +# ------- +all: do_all + @echo " . . . 'all' done" + +clean : clean_all + @echo " . . . clean done" + +clean_dist : clean_all clean_dist_all + @echo " . . . clean_dist done" + +man : do_man + @echo " . . . man page(s) done" + +install : install_all + @echo " . . . installation done" + +test: all + ./allTests.sh + +#___oOo___ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbAntennaLOOffsetTest.cpp b/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbAntennaLOOffsetTest.cpp new file mode 100755 index 0000000000000000000000000000000000000000..863ba5a0957b10858cd4d2f562720874e8642b4e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbAntennaLOOffsetTest.cpp @@ -0,0 +1,65 @@ +/******************************************************************************* + * ALMA - Atacama Large Millimiter Array + * (c) Associated Universities Inc., 2010 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * "@(#) $Id: TmcdbAntennaLOOffsetTest.cpp,v 1.2 2011/07/28 17:07:23 rhiriart Exp $" + * + */ + +#include +#include +#include +#include +#include + +using namespace maci; + +void testTmcdbLOOffsetsWithAllAntennas(ContainerServices* container) { + TmcdbAntennaLOOffset tmcdbLOOffsets(container); + std::cout << "----------------------- ALL ANTENNAS ------------------------" << std::endl; + std::cout << "----------------------- LO Offsets --------------------------" << std::endl; + TmcdbAntennaLOOffset::loOffsetIndexMap_t map = tmcdbLOOffsets.getLOOffsets(); + for (TmcdbAntennaLOOffset::loOffsetIndexMap_t::iterator it = map.begin(); it != map.end(); ++it) { + std::cout << it->first << " " << it->second << std::endl; + } +} + +void testTmcdbLOOffsetsWithFewAntennas(ContainerServices* container) { + TmcdbAntennaLOOffset tmcdbLOOffsets(container); + TmcdbAntennaLOOffset::antennaIDs_t antennaIds; + antennaIds.push_back("DV01"); + std::cout << "----------------------- SELECTED ANTENNAS -------------------" << std::endl; + std::cout << "----------------------- LO Offsets --------------------------" << std::endl; + TmcdbAntennaLOOffset::loOffsetIndexMap_t map = tmcdbLOOffsets.getLOOffsets(antennaIds); + for (TmcdbAntennaLOOffset::loOffsetIndexMap_t::iterator it = map.begin(); it != map.end(); ++it) { + std::cout << it->first << " " << it->second << std::endl; + } +} + +int main(int argc, char** argv) { + SimpleClient client; + if (client.init(argc, argv) == 0) { + ACS_SHORT_LOG((LM_ERROR, "Cannot init client")); + return -1; + } + client.login(); + testTmcdbLOOffsetsWithAllAntennas(client.getContainerServices()); + testTmcdbLOOffsetsWithFewAntennas(client.getContainerServices()); + client.logout(); + return 0; +} + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbAntennaWalshFunctionsTest.cpp b/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbAntennaWalshFunctionsTest.cpp new file mode 100755 index 0000000000000000000000000000000000000000..71c1e5c6193b5e82192087e69803c9e59b9311c7 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbAntennaWalshFunctionsTest.cpp @@ -0,0 +1,65 @@ +/******************************************************************************* + * ALMA - Atacama Large Millimiter Array + * (c) Associated Universities Inc., 2010 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * "@(#) $Id: TmcdbAntennaWalshFunctionsTest.cpp,v 1.2 2011/07/28 17:07:23 rhiriart Exp $" + * + */ + +#include +#include +#include +#include +#include + +using namespace maci; + +void testTmcdbWalshFunctionsWithAllAntennas(ContainerServices* container) { + TmcdbAntennaWalshFunctions tmcdbWalshFunctions(container); + std::cout << "----------------------- ALL ANTENNAS ------------------------" << std::endl; + std::cout << "----------------------- Walsh Functions Indices -------------" << std::endl; + TmcdbAntennaWalshFunctions::walshFunctionIndexMap_t map = tmcdbWalshFunctions.getWalshFunctions(); + for (TmcdbAntennaWalshFunctions::walshFunctionIndexMap_t::iterator it = map.begin(); it != map.end(); ++it) { + std::cout << it->first << " " << it->second << std::endl; + } +} + +void testTmcdbWalshFunctionsWithFewAntennas(ContainerServices* container) { + TmcdbAntennaWalshFunctions tmcdbWalshFunctions(container); + TmcdbAntennaWalshFunctions::antennaIDs_t antennaIds; + antennaIds.push_back("DV01"); + std::cout << "----------------------- SELECTED ANTENNAS -------------------" << std::endl; + std::cout << "----------------------- Walsh Functions Indices -------------" << std::endl; + TmcdbAntennaWalshFunctions::walshFunctionIndexMap_t map = tmcdbWalshFunctions.getWalshFunctions(antennaIds); + for (TmcdbAntennaWalshFunctions::walshFunctionIndexMap_t::iterator it = map.begin(); it != map.end(); ++it) { + std::cout << it->first << " " << it->second << std::endl; + } +} + +int main(int argc, char** argv) { + SimpleClient client; + if (client.init(argc, argv) == 0) { + ACS_SHORT_LOG((LM_ERROR, "Cannot init client")); + return -1; + } + client.login(); + testTmcdbWalshFunctionsWithAllAntennas(client.getContainerServices()); + testTmcdbWalshFunctionsWithFewAntennas(client.getContainerServices()); + client.logout(); + return 0; +} + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbBasebandDelayTest.cpp b/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbBasebandDelayTest.cpp new file mode 100755 index 0000000000000000000000000000000000000000..df19cb2add9ded468e6c9794df9f722393f2b8e2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/TmcdbBasebandDelayTest.cpp @@ -0,0 +1,137 @@ +/******************************************************************************* + * ALMA - Atacama Large Millimiter Array + * (c) Associated Universities Inc., 2010 + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + * + * "@(#) $Id: TmcdbBasebandDelayTest.cpp,v 1.5 2011/05/09 23:06:59 rtobar Exp $" + * + */ + +#include +#include +#include +#include +#include + +using namespace maci; + +void testTmcdbBBDelaysWithAllAntennas(ContainerServices* container) { + TmcdbBasebandDelay tmcdbBBDelays(container); + + std::cout << "----------------------- ALL ANTENNAS ------------------------" << std::endl; + std::cout << "----------------------- Baseband Delays ---------------------" << std::endl; + TmcdbBasebandDelay::antennaBBMap_t map = tmcdbBBDelays.getBasebandDelays(PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + for (TmcdbBasebandDelay::antennaBBMap_t::iterator it = map.begin(); it != map.end(); ++it) { + std::cout << it->first.antennaID << " " << it->first.baseBand << " " + << it->second << std::endl; + } + std::cout << "----------------------- Coarse Delays -----------------------" << std::endl; + TmcdbBasebandDelay::antennaBBCoarseMap_t coarseDelays = + tmcdbBBDelays.getCoarseBasebandDelays(PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + for (TmcdbBasebandDelay::antennaBBCoarseMap_t::iterator it = coarseDelays.begin(); it + != coarseDelays.end(); ++it) { + std::cout << it->first.antennaID << " " << it->first.baseBand << " " + << it->second << " (" << (it->second * 250E-12)<< ")" << std::endl; + } + std::cout << "----------------------- Residual Delays ---------------------" << std::endl; + TmcdbBasebandDelay::antennaBBResidualMap_t residualDelays = + tmcdbBBDelays.getBasebandResidualDelays(PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + for (TmcdbBasebandDelay::antennaBBResidualMap_t::iterator it = residualDelays.begin(); it + != residualDelays.end(); ++it) { + std::cout << it->first.antennaID << " " << it->first.baseBand << " " + << it->second << std::endl; + } + std::cout << "---- TmcdbBasebandDelay::getBasebandDelay -------------------" << std::endl; + double delay; + delay = tmcdbBBDelays.getBasebandDelay("DV01", BasebandNameMod::BB_1, PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + std::cout << delay << std::endl; + std::cout << "---- TmcdbBasebandDelay::getCoarseBasebandDelay --------------" << std::endl; + delay = tmcdbBBDelays.getCoarseBasebandDelay("DV01", BasebandNameMod::BB_1, PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + std::cout << delay << std::endl; + std::cout << "---- TmcdbBasebandDelay::getResidualBasebandDelay ------------" << std::endl; + delay = tmcdbBBDelays.getResidualBasebandDelay("DV01", BasebandNameMod::BB_1, PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + std::cout << delay << std::endl; +} + +void testTmcdbBBDelaysWithFewAntennas(ContainerServices* container) { + Correlator::AntennaSeq_t antennaSeq; + antennaSeq.length(1); + antennaSeq[0] = CORBA::string_dup("DV01"); + + TmcdbBasebandDelay tmcdbBBDelays(container, antennaSeq); + + std::cout << "----------------------- ONLY DV01 ---------------------------" << std::endl; + std::cout << "----------------------- Baseband Delays ---------------------" << std::endl; + TmcdbBasebandDelay::antennaBBMap_t map = tmcdbBBDelays.getBasebandDelays(PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + for (TmcdbBasebandDelay::antennaBBMap_t::iterator it = map.begin(); it != map.end(); ++it) { + std::cout << it->first.antennaID << " " << it->first.baseBand << " " + << it->second << std::endl; + } + std::cout << "----------------------- Coarse Delays -----------------------" << std::endl; + TmcdbBasebandDelay::antennaBBCoarseMap_t coarseDelays = + tmcdbBBDelays.getCoarseBasebandDelays(PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + for (TmcdbBasebandDelay::antennaBBCoarseMap_t::iterator it = coarseDelays.begin(); it + != coarseDelays.end(); ++it) { + std::cout << it->first.antennaID << " " << it->first.baseBand << " " + << it->second << " (" << (it->second * 250E-12)<< ")" << std::endl; + } + std::cout << "----------------------- Residual Delays ---------------------" << std::endl; + TmcdbBasebandDelay::antennaBBResidualMap_t residualDelays = + tmcdbBBDelays.getBasebandResidualDelays(PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + for (TmcdbBasebandDelay::antennaBBResidualMap_t::iterator it = residualDelays.begin(); it + != residualDelays.end(); ++it) { + std::cout << it->first.antennaID << " " << it->first.baseBand << " " + << it->second << std::endl; + } + std::cout << "---- TmcdbBasebandDelay::getBasebandDelay -------------------" << std::endl; + double delay; + delay = tmcdbBBDelays.getBasebandDelay("DV01", BasebandNameMod::BB_1, PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + std::cout << delay << std::endl; + std::cout << "---- TmcdbBasebandDelay::getCoarseBasebandDelay --------------" << std::endl; + delay = tmcdbBBDelays.getCoarseBasebandDelay("DV01", BasebandNameMod::BB_1, PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + std::cout << delay << std::endl; + std::cout << "---- TmcdbBasebandDelay::getResidualBasebandDelay ------------" << std::endl; + delay = tmcdbBBDelays.getResidualBasebandDelay("DV01", BasebandNameMod::BB_1, PolarizationTypeMod::X, + ReceiverBandMod::ALMA_RB_01, NetSidebandMod::LSB, false); + std::cout << delay << std::endl; +} + +int main(int argc, char** argv) { + std::cout << "Hello world" << std::endl; + + SimpleClient client; + if (client.init(argc, argv) == 0) { + ACS_SHORT_LOG((LM_ERROR, "Cannot init client")); + return -1; + } + client.login(); + testTmcdbBBDelaysWithAllAntennas(client.getContainerServices()); + testTmcdbBBDelaysWithFewAntennas(client.getContainerServices()); + client.logout(); + return 0; +} + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/allTests.sh b/ARCHIVE/SharedCode/TMCDB/Access/test/allTests.sh new file mode 100755 index 0000000000000000000000000000000000000000..4388c5e3cf3fbb1f6de880683b627a27051440a4 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/allTests.sh @@ -0,0 +1,18 @@ +printf "###############################################\n" +./scripts/testEnv start + +# Run the tests +./runTmcdbComponentTest.sh; RETURN=$? +# ./runOtherTest; let "RETURN&=$?" + +# Final result +if [ "$RETURN" = "0" ]; then + printf "PASSED\n" +else + printf "FAILED\n" +fi + +printf "###############################################\n" +./scripts/testEnv stop + +exit "$RETURN" diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/AllTests.java b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/AllTests.java new file mode 100755 index 0000000000000000000000000000000000000000..64e33584014ad6656cbccb3e7f4d8038949a033d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/AllTests.java @@ -0,0 +1,16 @@ +package alma.tmcdb.access; + +import junit.framework.TestSuite; + + +public class AllTests { + + public AllTests() { } + + public static TestSuite suite() { + TestSuite suite = new TestSuite("Automated test suite"); + suite.addTest(new TmcdbHibernateDualAccessorTest()); + suite.addTest(new TmcdbHibernateSingleAccessorTest()); + return suite; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/GlobalConfigurationTest.java b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/GlobalConfigurationTest.java new file mode 100755 index 0000000000000000000000000000000000000000..cfcbd47a0db4d026911c171fa2486a3e538834d7 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/GlobalConfigurationTest.java @@ -0,0 +1,299 @@ +package alma.tmcdb.access; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.IOException; +import java.io.Reader; +import java.util.logging.Logger; + +import org.exolab.castor.xml.XMLException; +import org.hibernate.Hibernate; +import org.hibernate.Query; +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.TMCDB.Access; +import alma.TMCDB.AccessHelper; +import alma.TMCDB.AssemblyConfigXMLData; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import alma.TmcdbErrType.TmcdbNoSuchRowEx; +import alma.acs.component.client.ComponentClientTestCase; +import alma.acs.container.ContainerServices; +import alma.acs.tmcdb.Configuration; +import alma.archive.database.helpers.wrappers.DbConfigException; +import alma.archive.database.helpers.wrappers.TmcdbDbConfig; +import alma.acs.tmcdb.HWConfiguration; +import alma.tmcdb.utils.AssemblyDataLoader; +import alma.tmcdb.utils.ConfigurationLoader; +import alma.tmcdb.utils.HibernateUtil; +import alma.tmcdb.utils.TmcdbException; +import alma.tmcdb.utils.TmcdbUtils; + +/** + * Tests support for Global and Local TMCDB configurations. + *

+ * This test first constructs a TMCDB database with a Global and a Local + * configuration. This is done by importing the files GlobalConfiguration.xml + * and LocalConfiguration.xml. It then proceeds to test each one of the functions + * in the TMCDB Access component. + *

+ * In general, for each one of the TMCDB Access component methods, there are + * four cases to test: + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + * + *
Exists in GlobalExists in LocalExpected outcome
00An exception is returned
01Local entity is returned
10Global entity is returned
11Local overrides Global
+ * + * @author Rafael Hiriart rhiriart@nrao.edu + * + */ +public class GlobalConfigurationTest extends ComponentClientTestCase { + + /** + * Flag used to load the database only once for all tests. + */ + private static boolean dbSetup = false; + + /** ACS ContainerServices */ + private ContainerServices container; + + /** The logger */ + private Logger logger; + + /** The TMCDB component under test here */ + private Access tmcdb; + + /** TMCDB Database Configurator. It reads the archiveConfig.properties file. */ + private TmcdbDbConfig tmcdbConfig; + + /** + * Constructor. + * + * @param name Test name + * @throws Exception + */ + public GlobalConfigurationTest(String name) throws Exception { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + container = getContainerServices(); + logger = container.getLogger(); + assertNotNull(container); + assertNotNull(logger); + + if (!dbSetup) { + // + // Setting the database only need to be performed once for all the + // test cases. + // + tmcdbConfig = new TmcdbDbConfig(logger); + try { + TmcdbUtils.dropTables(tmcdbConfig.getConnectionUrl(), + tmcdbConfig.getUsername(), tmcdbConfig.getPassword()); + } catch (Exception ex) { + ex.printStackTrace(); + } + TmcdbUtils.createTables(tmcdbConfig.getConnectionUrl(), + tmcdbConfig.getUsername(), tmcdbConfig.getPassword()); + + // Load the Global Configuration + Reader hwConfFile1 = getConfigurationFile("GlobalConfiguration.xml"); + (new ConfigurationLoader()).loadConfiguration(hwConfFile1); + + // Load the Local Configuration + Reader hwConfFile2 = getConfigurationFile("LocalConfiguration.xml"); + (new ConfigurationLoader()).loadConfiguration(hwConfFile2); + + AssemblyDataLoader.loadAssemblyData("GlobalCatalog.xml", true); + AssemblyDataLoader.loadAssemblyData("LocalCatalog.xml", true); + + associateGlobalAndLocal("Test.Global", "Test"); + dbSetup = true; + } + + tmcdb = AccessHelper.narrow(container.getComponent("TMCDB_NO_SIM")); + } + + protected void tearDown() throws Exception { + container.releaseComponent("TMCDB_NO_SIM"); + super.tearDown(); + } + + /** + * Tests Global/Local configuration support on getting the Antenna + * information. + * + * @throws Exception + */ + public void testGetAntennaInfo() throws Exception { + // + // Case 1, entity doesn't exist in Global or Local + // ===> an exception is returned + // + try { + TelescopeIDL a1 = tmcdb.getTelescopeInfo("DA45"); + assertTrue(false); // It should never reach this point + } catch (TmcdbNoSuchRowEx e) { + // fine + } + // + // Case 2, entity exists in Local but not in Global + // ===> Local entity is returned + // + TelescopeIDL a2 = tmcdb.getTelescopeInfo("DA42"); + // + // Case 3. entity exists in Global but not in Local + // ===> Global entity is returned + // + TelescopeIDL a3 = tmcdb.getTelescopeInfo("DA41"); + // + // Case 4, entity exists both in Global and Local + // ===> Local overrides Global + // + TelescopeIDL a4 = tmcdb.getTelescopeInfo("DV01"); + assertEquals(2340.0, a4.XPosition.value, 0.001); + } + + + /** + * Tests Global/Local configuration support on getting the Assembly Config + * data. + * + * @throws Exception + */ + public void testGetAssemblyConfigData() throws Exception { + // + // Case 1, entity doesn't exist in Global or Local + // ===> an exception is returned + // + try { + AssemblyConfigXMLData c1 = tmcdb.getAssemblyConfigData("000000000000000000"); + assertTrue(false); // It should never reach this point + } catch (TmcdbNoSuchRowEx e) { + // fine + } + // + // Case 2, entity exists in Local but not in Global + // ===> Local entity is returned + // + AssemblyConfigXMLData c2 = tmcdb.getAssemblyConfigData("100007867129528425"); + // + // Case 3. entity exists in Global but not in Local + // ===> Global entity is returned + // + AssemblyConfigXMLData c3 = tmcdb.getAssemblyConfigData("100007867129528425"); + // + // Case 4, entity exists both in Global and Local + // ===> Local overrides Global + // + AssemblyConfigXMLData c4 = tmcdb.getAssemblyConfigData("100007867129528423"); + } + + /** + * Tests Global/Local configuration support on getting the Antenna + * Startup Info. + * + * @throws Exception + */ + public void testGetStartupAntennasInfo() throws Exception { + // + // In this case the Startup of the Local Configuration just + // overrides the Startup defined in the Global Configuration. + // I've taken out "DV01" from the Local Configuration, but it + // is in the Global Configuration. + // + StartupTelescopeIDL[] s = tmcdb.getStartupTelescopesInfo(); + for (StartupTelescopeIDL sa : s) { + assertNotSame("It shouldn't have found DV01 in Local Configuration", + sa.telescopeName, "DV01"); + } + } + + private Reader getConfigurationFile(String fileName) throws FileNotFoundException { + File file = new File(fileName); + if (file.exists()) + return new FileReader(fileName); + throw new FileNotFoundException(); + + } + + private Reader getConfigurationFile() throws FileNotFoundException { + // First look in the TMCDB_HW_CONF_FILE environment variable + String confFileFromEnv = System.getenv("TMCDB_HW_CONF_FILE"); + if (confFileFromEnv != null) { + File confFile = new File(confFileFromEnv); + if (confFile.exists()) + return new FileReader(confFile); + } + // Then look in the current directory + String currdir = System.getProperty("user.dir"); + String confFileLoc = currdir + "/Configuration.xml"; + File confFile = new File(confFileLoc); + if (confFile.exists()) + return new FileReader(confFile); + // Then look in (ACS/INT)ROOT/config + String introot = System.getenv("INTROOT"); + confFileLoc = introot + "/config/Configuration.xml"; + confFile = new File(confFileLoc); + if (confFile.exists()) + return new FileReader(confFile); + String acsroot = System.getenv("ACSROOT"); + confFileLoc = acsroot + "/config/Configuration.xml"; + confFile = new File(confFileLoc); + if (confFile.exists()) + return new FileReader(confFile); + throw new FileNotFoundException(); + } + + private void loadDatabaseFromXML(Reader reader) + throws XMLException, IOException, TmcdbException, DbConfigException { + (new ConfigurationLoader()).loadConfiguration(reader); + AssemblyDataLoader.loadAssemblyData(true); + } + + private void associateGlobalAndLocal(String global, String local) { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction trx = session.beginTransaction(); + Query query = session.createQuery("FROM Configuration WHERE ConfigurationName = '"+global+"'"); + Configuration globalConf = (Configuration) query.list().get(0); + query = session.createQuery("FROM Configuration WHERE ConfigurationName = '"+local+"'"); + Configuration localConf = (Configuration) query.list().get(0); + query = session.createQuery("FROM HwConfiguration WHERE swConfiguration = :conf"); + query.setParameter("conf", globalConf, Hibernate.entity(Configuration.class)); + HWConfiguration globalHwConfig = (HWConfiguration) query.list().get(0); + query = session.createQuery("FROM HwConfiguration WHERE swConfiguration = :conf"); + query.setParameter("conf", localConf, Hibernate.entity(Configuration.class)); + HWConfiguration localHwConfig = (HWConfiguration) query.list().get(0); + localHwConfig.setGlobalConfiguration(globalHwConfig); + trx.commit(); + session.close(); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbAccessorTest.java b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbAccessorTest.java new file mode 100755 index 0000000000000000000000000000000000000000..cb721448e175d9dd6975c96c8d24aefb31b900a2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbAccessorTest.java @@ -0,0 +1,56 @@ +package alma.tmcdb.access; + +import junit.framework.TestCase; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import astri.TMCDB_IDL.AssemblyLocationIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; + +public class TmcdbAccessorTest extends TestCase { + + private static Logger logger = + LoggerFactory.getLogger(TmcdbAccessorTest.class); + TmcdbHibernateAccessor tmcdb; + + public TmcdbAccessorTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + tmcdb = new TmcdbHibernateAccessor(); + } + + protected void tearDown() throws Exception { + tmcdb.clear(); + super.tearDown(); + } + + public void testGetStartupAntennasInfo() throws Exception { + StartupTelescopeIDL[] sai = tmcdb.getStartupTelescopesInfo(); + logger.info("startup antenna length: " + sai.length); + for (StartupTelescopeIDL sa : sai) { + logger.info("antennaName: " + sa.telescopeName); + //logger.info("frontEndName: " + sa.frontEndName); + logger.info("padName: " + sa.padName); + logger.info("uiDisplayOrder: " + sa.uiDisplayOrder); + for (AssemblyLocationIDL aa : sa.telescopeAssembly) { + logger.info("\tassemblyRoleName: " + aa.assemblyRoleName); + logger.info("\tassemblyTypeName: " + aa.assemblyTypeName); + logger.info("\tbaseAddress: " + aa.baseAddress); + logger.info("\tchannelNumber: " + aa.channelNumber); + logger.info("\trca: " + aa.rca); + } +// for (AssemblyLocationIDL aa : sa.frontEndAssembly) { +// logger.info("\tassemblyRoleName: " + aa.assemblyRoleName); +// logger.info("\tassemblyTypeName: " + aa.assemblyTypeName); +// logger.info("\tbaseAddress: " + aa.baseAddress); +// logger.info("\tchannelNumber: " + aa.channelNumber); +// logger.info("\trca: " + aa.rca); +// } + } + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbHibernateDualAccessorTest.java b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbHibernateDualAccessorTest.java new file mode 100755 index 0000000000000000000000000000000000000000..af0d451a3aa2b0ed2dce3c95608f7fd40020ca24 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbHibernateDualAccessorTest.java @@ -0,0 +1,412 @@ +package alma.tmcdb.access; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.Reader; +import java.util.Date; +import java.util.Set; +import java.util.logging.Logger; + +import junit.framework.TestCase; + +import org.hibernate.Hibernate; +import org.hibernate.Query; +import org.hibernate.Session; +import org.hibernate.Transaction; + +//import alma.ReceiverBandMod.ReceiverBand; +//import alma.TMCDB.AntennaDelays; +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.AssemblyConfigXMLData; +import alma.TMCDB.TelescopePointingModel; +import alma.TMCDB.ModelTerm; +import alma.TMCDB.TelescopeFocusModel; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; +import astri.TMCDB_IDL.StartupWeatherStationControllerIDL; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; +import alma.acs.tmcdb.Configuration; +import alma.acs.util.UTCUtility; +import alma.archive.database.helpers.wrappers.TmcdbDbConfig; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.Assembly; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.HWConfiguration; +import alma.tmcdb.utils.AssemblyDataLoader; +import alma.tmcdb.utils.ConfigurationLoader; +import alma.tmcdb.utils.HibernateUtil; +import alma.tmcdb.utils.TmcdbUtils; + +/** + * Unit test for TmcdbHibernateAccessor class. + * + * @author Rafael Hiriart + * + */ +public class TmcdbHibernateDualAccessorTest extends TestCase { + + /** + * Flag used to load the database only once for all tests. + */ + private static boolean dbSetup = false; + + /** The logger */ + private Logger logger = Logger.getAnonymousLogger(); + + /** TMCDB Database Configurator. It reads the archiveConfig.properties file. */ + private TmcdbDbConfig tmcdbConfig; + + private TmcdbHibernateAccessor accessor; + + public TmcdbHibernateDualAccessorTest() { + super(); + } + + public TmcdbHibernateDualAccessorTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + if (!dbSetup) { + // + // Setting the database only need to be performed once for all the + // test cases. + // + tmcdbConfig = new TmcdbDbConfig(logger); + try { + TmcdbUtils.dropTables(tmcdbConfig.getConnectionUrl(), + tmcdbConfig.getUsername(), tmcdbConfig.getPassword()); + } catch (Exception ex) { + ex.printStackTrace(); + } + TmcdbUtils.createTables(tmcdbConfig.getConnectionUrl(), + tmcdbConfig.getUsername(), tmcdbConfig.getPassword()); + + // Load the Global Configuration + Reader hwConfFile1 = getConfigurationFile("GlobalConfiguration.xml"); + (new ConfigurationLoader()).loadConfiguration(hwConfFile1); + AssemblyDataLoader.loadAssemblyData("GlobalCatalog.xml", true); + + // Load the Local Configuration + Reader hwConfFile2 = getConfigurationFile("LocalConfiguration.xml"); + (new ConfigurationLoader()).loadConfiguration(hwConfFile2); + AssemblyDataLoader.loadAssemblyData("LocalCatalog.xml", true); + + associateGlobalAndLocal("Test.Global", "Test"); + crossPadBetweenGlobalAndLocal("Test.Global", "Test"); + dbSetup = true; + } + + accessor = new TmcdbHibernateAccessor(); + } + + protected void tearDown() throws Exception { + super.tearDown(); + accessor = null; + } + + /** + * Test getAntennaInfo function. + * + */ + public void testGetAntennaInfo() throws Exception { + // Entity doesn't exist in the global and local configuration. + TelescopeIDL a1 = null; + try { + a1 = accessor.getTelescopeInfo("DA45"); + } catch (AcsJTmcdbNoSuchRowEx ex) { + // fine + } + + // Entity exists in the global configuration but not in the local + TelescopeIDL a2 = accessor.getTelescopeInfo("DA41"); + + // Entity exists in the local configuration but not in the global + TelescopeIDL a3 = accessor.getTelescopeInfo("DA42"); + + // Entity exists both in the global and in the local + TelescopeIDL a4 =accessor.getTelescopeInfo("DV01"); + assertEquals(2340.0, a4.XPosition.value, 1E-6); + } + + + /** + * Test retrieval of the array reference location.
+ * + * The array reference location is in the HwConfiguration table.
+ * + * These fields are nullifiable. It would be ideal to test the case where these + * are null, but in practive this is difficult to test. + * + * @throws Exception + */ + public void testGetArrayReferenceLocation() throws Exception { + ArrayReferenceLocation loc = accessor.getArrayReferenceLocation(); + assertEquals(2.0, loc.x); + assertEquals(2.0, loc.y); + assertEquals(2.0, loc.z); + } + + public void testGetAssemblyConfigData() throws Exception { + // + // Case 1, entity doesn't exist in Global or Local + // ===> an exception is returned + // + try { + AssemblyConfigXMLData d1 = accessor.getAssemblyConfigData("99999999999999999999"); + assertTrue(false); // should never get to this point + } catch(AcsJTmcdbNoSuchRowEx ex) { + // fine + } + + // + // Case 2, entity exists in Local but not in Global + // ===> Local entity is returned + // + AssemblyConfigXMLData d2 = accessor.getAssemblyConfigData("100007867129528425"); + + // + // Case 3. entity exists in Global but not in Local + // ===> Global entity is returned + // + AssemblyConfigXMLData d3 = accessor.getAssemblyConfigData("100007867129528423"); + + // + // Case 4, entity exists both in Global and Local + // ===> Local overrides Global + // + AssemblyConfigXMLData d4 = accessor.getAssemblyConfigData("100007867129528424"); + assertEquals("\n", d4.xmlDoc); + } + + public void testGetConfigurationName() throws Exception { + assertEquals("Test", accessor.getConfigurationName()); + } + + /** + * Test the retrieval of the XP Delays. + *
+ * In this specific test the local configuration doesn't contain XP + * delays, but the global does. The function should return the XP delays + * from the global. + * + * @throws Exception + */ +// public void testGetXpDelays() throws Exception { +// alma.TMCDB.XPDelay[] xpd = accessor.getCrossPolarizationDelays(); +// assertEquals(4, xpd.length); +// } + + /** + * Test the retrieval of the Antenna Delays. + *
+ * In this specific test the local configuration doesn't contain the + * requested Antenna, but the global does. The function should return the + * Antenna delays from the global. + * + * @throws Exception + */ +// public void testGetAntennaDelays() throws Exception { +// AntennaDelays ad = accessor.getCurrentAntennaDelays("DA41"); +// assertEquals(1, ad.feDelays.length); +// } + + public void testGetCurrentAntennaFocusModel() throws Exception { + // + // Case 1, entity doesn't exist in Global or Local + // ===> an exception is returned + // + try { + TelescopeFocusModel f1 = accessor.getCurrentTelescopeFocusModel("DA45"); + assertTrue(false); // It should never reach this point + } catch (AcsJTmcdbNoSuchRowEx e) { + // fine + } + // + // Case 2, entity exists in Local but not in Global + // ===> Local entity is returned + // + TelescopeFocusModel f2 = accessor.getCurrentTelescopeFocusModel("DA42"); + // + // Case 3. entity exists in Global but not in Local + // ===> Global entity is returned + // + TelescopeFocusModel f3 = accessor.getCurrentTelescopeFocusModel("DA41"); + // + // Case 4, entity exists both in Global and Local + // ===> Local overrides Global + // + TelescopeFocusModel f4 = accessor.getCurrentTelescopeFocusModel("DV01"); + assertEquals(0.8374, f4.base[0].value, 0.001); + } + + public void testGetCurrentAntennaPadInfo() throws Exception { + PadIDL padInfo = accessor.getCurrentTelescopePadInfo("DA42"); + assertEquals("Pad03", padInfo.PadName); + } + + public void testGetCurrentAntennaPointingModel() throws Exception { + // + // Case 1, entity doesn't exist in Global or Local + // ===> an exception is returned + // + try { + TelescopePointingModel pm1 = accessor.getCurrentAntennaPointingModel("DA45"); + assertTrue(false); // It should never reach this point + } catch (AcsJTmcdbNoSuchRowEx e) { + // fine + } + + // + // Case 2, entity exists in Local but not in Global + // ===> Local entity is returned + // + TelescopePointingModel pm2 = accessor.getCurrentAntennaPointingModel("DA42"); + + // + // Case 3. entity exists in Global but not in Local + // ===> Global entity is returned + // + TelescopePointingModel pm3 = accessor.getCurrentAntennaPointingModel("DA41"); + + // + // Case 4, entity exists both in Global and Local + // ===> Local overrides Global + // + TelescopePointingModel pm4 = accessor.getCurrentAntennaPointingModel("DV01"); + for (ModelTerm mt : pm4.base) { + if (mt.name.equals("ONE")) { + assertEquals(1.0, mt.value); + break; + } + assertTrue(false); + } + } + + +I + public void testGetStartupAntennasInfo() throws Exception { + // + // Case 1, entity doesn't exist in Global or Local + // ===> an exception is returned + // + try { + accessor.setStartupName("DoesNotExist"); + StartupTelescopeIDL[] st1 = accessor.getStartupTelescopesInfo(); + assertTrue(false); + } catch (NullPointerException e) { + // expected + } + + // + // Case 2, entity exists in Local but not in Global + // ===> Local entity is returned + // + accessor.setStartupName("Test"); + StartupTelescopeIDL[] st2 = accessor.getStartupTelescopesInfo(); + + // + // Case 3. entity exists in Global but not in Local + // ===> Global entity is returned + // + accessor.setStartupName("Test.Global"); + StartupTelescopeIDL[] st3 = accessor.getStartupTelescopesInfo(); + + // + // Case 4, entity exists both in Global and Local + // ===> Local overrides Global + // + accessor.setStartupName("Test.LocalAndGlobal"); + StartupTelescopeIDL[] st4 = accessor.getStartupTelescopesInfo(); + + } + + + public void testGetStartupWeatherStationControllerInfo() throws Exception { + // + // Case 1, entity doesn't exist in Global or Local + // ===> an exception is returned + // + try { + accessor.setStartupName("DoesNotExist"); + StartupWeatherStationControllerIDL st1 = accessor.getStartupWeatherStationControllerInfo(); + assertTrue(false); + } catch (NullPointerException e) { + // expected + } + + // + // Case 2, entity exists in Local but not in Global + // ===> Local entity is returned + // + accessor.setStartupName("Test"); + StartupWeatherStationControllerIDL st2 = accessor.getStartupWeatherStationControllerInfo(); + + // + // Case 3. entity exists in Global but not in Local + // ===> Global entity is returned + // + accessor.setStartupName("Test.Global"); + StartupWeatherStationControllerIDL st3 = accessor.getStartupWeatherStationControllerInfo(); + + // + // Case 4, entity exists both in Global and Local + // ===> Local overrides Global + // + accessor.setStartupName("Test.LocalAndGlobal"); + StartupWeatherStationControllerIDL st4 = accessor.getStartupWeatherStationControllerInfo(); + } + + public void testGetTelescopeName() throws Exception { + assertEquals("AOS", accessor.getTelescopeName()); + } + + private Reader getConfigurationFile(String fileName) throws FileNotFoundException { + File file = new File(fileName); + if (file.exists()) + return new FileReader(fileName); + throw new FileNotFoundException(); + + } + + private void associateGlobalAndLocal(String global, String local) { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction trx = session.beginTransaction(); + Query query = session.createQuery("FROM Configuration WHERE ConfigurationName = '"+global+"'"); + Configuration globalConf = (Configuration) query.list().get(0); + query = session.createQuery("FROM Configuration WHERE ConfigurationName = '"+local+"'"); + Configuration localConf = (Configuration) query.list().get(0); + query = session.createQuery("FROM HwConfiguration WHERE swConfiguration = :conf"); + query.setParameter("conf", globalConf, Hibernate.entity(Configuration.class)); + HWConfiguration globalHwConfig = (HWConfiguration) query.list().get(0); + query = session.createQuery("FROM HwConfiguration WHERE swConfiguration = :conf"); + query.setParameter("conf", localConf, Hibernate.entity(Configuration.class)); + HWConfiguration localHwConfig = (HWConfiguration) query.list().get(0); + localHwConfig.setGlobalConfiguration(globalHwConfig); + trx.commit(); + session.close(); + } + + private void crossPadBetweenGlobalAndLocal(String global, String local) { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction trx = session.beginTransaction(); + Query query = session.createQuery("FROM Pad WHERE name = 'Pad03'"); + alma.acs.tmcdb.Pad pad03 = (alma.acs.tmcdb.Pad) query.uniqueResult(); + query = session.createQuery("FROM Antenna WHERE name = 'DA42'"); + alma.acs.tmcdb.Telescope da42 = (alma.acs.tmcdb.Telescope) query.uniqueResult(); + Set allocations = da42.getScheduledPadLocations(); + for (TelescopeToPad a2p : allocations) { + if (a2p.getEndTime() == null) { + a2p.setEndTime(UTCUtility.utcJavaToOmg((new Date()).getTime())); + } + } + TelescopeToPad newAllocation = new TelescopeToPad(da42, pad03, new Date(), null, true); + da42.getScheduledPadLocations().add(newAllocation); + pad03.getScheduledAntennas().add(newAllocation); + trx.commit(); + session.close(); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbHibernateSingleAccessorTest.java b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbHibernateSingleAccessorTest.java new file mode 100755 index 0000000000000000000000000000000000000000..6e2bfea228b572bb1c8d2613de01ee11ce63f24c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbHibernateSingleAccessorTest.java @@ -0,0 +1,140 @@ +package alma.tmcdb.access; + +import java.io.File; +import java.io.FileNotFoundException; +import java.io.FileReader; +import java.io.Reader; +import java.util.Date; +import java.util.Set; +import java.util.logging.Logger; + +import junit.framework.TestCase; + +import org.hibernate.Hibernate; +import org.hibernate.Query; +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.TMCDB.ArrayReferenceLocation; +import alma.TMCDB.TelescopeFocusModel; +import astri.TMCDB_IDL.PadIDL; +import alma.TmcdbErrType.TmcdbNoSuchRowEx; +import alma.TmcdbErrType.wrappers.AcsJTmcdbNoSuchRowEx; +import alma.acs.tmcdb.Configuration; +import alma.acs.util.UTCUtility; +import alma.archive.database.helpers.wrappers.TmcdbDbConfig; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.Assembly; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.HWConfiguration; +import alma.tmcdb.utils.AssemblyDataLoader; +import alma.tmcdb.utils.ConfigurationLoader; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; +import alma.tmcdb.utils.TmcdbUtils; + +/** + * Unit test for TmcdbHibernateAccessor class. + * + * @author Rafael Hiriart + * + */ +public class TmcdbHibernateSingleAccessorTest extends TestCase { + + /** + * Flag used to load the database only once for all tests. + */ + private static boolean dbSetup = false; + + /** The logger */ + private Logger logger = Logger.getAnonymousLogger(); + + /** TMCDB Database Configurator. It reads the archiveConfig.properties file. */ + private TmcdbDbConfig tmcdbConfig; + + private TmcdbHibernateAccessor accessor; + + public TmcdbHibernateSingleAccessorTest() { + super(); + } + + public TmcdbHibernateSingleAccessorTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + if (!dbSetup) { + // + // Setting the database only need to be performed once for all the + // test cases. + // + tmcdbConfig = new TmcdbDbConfig(logger); + try { + TmcdbUtils.dropTables(tmcdbConfig.getConnectionUrl(), + tmcdbConfig.getUsername(), tmcdbConfig.getPassword()); + } catch (Exception ex) { + ex.printStackTrace(); + } + TmcdbUtils.createTables(tmcdbConfig.getConnectionUrl(), + tmcdbConfig.getUsername(), tmcdbConfig.getPassword()); + + Reader hwConfFile1 = getConfigurationFile("Configuration.xml"); + (new ConfigurationLoader()).loadConfiguration(hwConfFile1); + AssemblyDataLoader.loadAssemblyData("Catalog.xml", true); + + dbSetup = true; + } + + accessor = new TmcdbHibernateAccessor(); + } + + protected void tearDown() throws Exception { + super.tearDown(); + accessor = null; + } + + public void testGetArrayReferenceLocation() throws Exception { + ArrayReferenceLocation loc = accessor.getArrayReferenceLocation(); + assertEquals(1.0, loc.x); + assertEquals(1.0, loc.y); + assertEquals(1.0, loc.z); + } + + + public void testGetCurrentAntennaFocusModel() throws Exception { + TelescopeFocusModel fm = accessor.getCurrentTelescopeFocusModel("DV01"); + assertEquals(0.8374, fm.base[0].value, 0.001); + } + + public void testGetCurrentAntennaPadInfo() throws Exception { + PadIDL padInfo = accessor.getCurrentTelescopePadInfo("DV01"); + assertEquals("Pad01", padInfo.PadName); + } + + public void testGetPolarizationOrientation() throws Exception { + // Create a record in the Assembly table. + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction trx = session.beginTransaction(); + HWConfiguration hwc = accessor.getLocalHwConfiguration(session); + Query query = session.createQuery("FROM AssemblyType WHERE AssemblyTypeName = 'ColdCart3'"); + AssemblyType at = (AssemblyType) query.uniqueResult(); + String xmlStr = ""; + Assembly assembly = DomainEntityFactory.createAssembly("012345", xmlStr, at); + hwc.addAssemblyToAssemblies(assembly); + session.save(hwc); + trx.commit(); + session.close(); + + accessor.reportTelescopeOnline("DV01"); + accessor.reportAssemblyOperational("012345", "CONTROL/DV01/FrontEnd/ColdCart3"); + } + + private Reader getConfigurationFile(String fileName) throws FileNotFoundException { + File file = new File(fileName); + if (file.exists()) + return new FileReader(fileName); + throw new FileNotFoundException(); + + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbStandaloneAccessorTest.java b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbStandaloneAccessorTest.java new file mode 100755 index 0000000000000000000000000000000000000000..113c37c7d564a3c53a1ebfa5ad451d43cd2871b5 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/alma/tmcdb/access/TmcdbStandaloneAccessorTest.java @@ -0,0 +1,107 @@ +package alma.tmcdb.access; + +import java.util.ArrayList; +import java.util.List; + +import junit.framework.TestCase; + +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import alma.TMCDB.AssemblyConfigXMLData; +import astri.TMCDB_IDL.TelescopeIDL; +import astri.TMCDB_IDL.AssemblyLocationIDL; +import astri.TMCDB_IDL.PadIDL; +import astri.TMCDB_IDL.StartupTelescopeIDL; + +public class TmcdbStandaloneAccessorTest extends TestCase { + + private static Logger logger = + LoggerFactory.getLogger(TmcdbStandaloneAccessorTest.class); + TmcdbStandaloneHibernateAccessor tmcdb; + + public TmcdbStandaloneAccessorTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + tmcdb = new TmcdbStandaloneHibernateAccessor(); + } + + protected void tearDown() throws Exception { + tmcdb.clear(); + super.tearDown(); + } + + public void testGetAntennaStartupIDL() throws Exception { + StartupTelescopeIDL[] sas = tmcdb.getStartupTelescopesInfo(); + assertEquals(2, sas.length); + List roles = new ArrayList(); + for (int i=0; i expAssemblies, + AssemblyLocationIDL[] assemblies) { + for (int i=0; i + +Ant wrapper. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/config/CDB.tar.gz b/ARCHIVE/SharedCode/TMCDB/Access/test/config/CDB.tar.gz new file mode 100755 index 0000000000000000000000000000000000000000..fd2a44cc1dcd90ab78a84e1cd81232d829452497 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/test/config/CDB.tar.gz differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/config/TMCDB_DATA.tar.gz b/ARCHIVE/SharedCode/TMCDB/Access/test/config/TMCDB_DATA.tar.gz new file mode 100755 index 0000000000000000000000000000000000000000..70f59210ba4c37e36f7f2c87453c3c1f30793796 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Access/test/config/TMCDB_DATA.tar.gz differ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/config/sqltool.rc b/ARCHIVE/SharedCode/TMCDB/Access/test/config/sqltool.rc new file mode 100755 index 0000000000000000000000000000000000000000..6977d50e114444d889c9e40bb6edcd810ddee3e6 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/config/sqltool.rc @@ -0,0 +1,130 @@ +# $Id: sqltool.rc,v 1.1 2009/12/28 21:22:03 rhiriart Exp $ + +# This is a sample RC configuration file used by SqlTool, DatabaseManager, +# and any other program that uses the org.hsqldb.util.RCData class. + +# You can run SqlTool right now by copying this file to your home directory +# and running +# java -jar /path/to/hsqldb.jar mem +# This will access the first urlid definition below in order to use a +# personal Memory-Only database. +# "url" values may, of course, contain JDBC connection properties, delimited +# with semicolons. + +# If you have the least concerns about security, then secure access to +# your RC file. +# See the documentation for SqlTool for various ways to use this file. + +# A personal Memory-Only (non-persistent) database. +#urlid mem +#url jdbc:hsqldb:mem:memdbid +#username sa +#password + +# A personal, local, persistent database. +#urlid personal +#url jdbc:hsqldb:file:${user.home}/db/personal;shutdown=true +#username sa +#password +# When connecting directly to a file database like this, you should +# use the shutdown connection property like this to shut down the DB +# properly when you exit the JVM. + +# This is for a hsqldb Server running with default settings on your local +# computer (and for which you have not changed the password for "sa"). +urlid tmcdb +url jdbc:hsqldb:hsql://localhost:9001/tmcdb +username sa +password + + + +# Template for a urlid for an Oracle database. +# You will need to put the oracle.jdbc.OracleDriver class into your +# classpath. +# In the great majority of cases, you want to use the file classes12.zip +# (which you can get from the directory $ORACLE_HOME/jdbc/lib of any +# Oracle installation compatible with your server). +# Since you need to add to the classpath, you can't invoke SqlTool with +# the jar switch, like "java -jar .../hsqldb.jar..." or +# "java -jar .../hsqlsqltool.jar...". +# Put both the HSQLDB jar and classes12.zip in your classpath (and export!) +# and run something like "java org.hsqldb.util.SqlTool...". + +#urlid cardiff2 +#url jdbc:oracle:thin:@aegir.admc.com:1522:TRAFFIC_SID +#username blaine +#password secretpassword +#driver oracle.jdbc.OracleDriver + + + +# Template for a TLS-encrypted HSQLDB Server. +# Remember that the hostname in hsqls (and https) JDBC URLs must match the +# CN of the server certificate (the port and instance alias that follows +# are not part of the certificate at all). +# You only need to set "truststore" if the server cert is not approved by +# your system default truststore (which a commercial certificate probably +# would be). + +#urlid tls +#url jdbc:hsqldb:hsqls://db.admc.com:9001/lm2 +#username blaine +#password asecret +#truststore /home/blaine/ca/db/db-trust.store + + +# Template for a Postgresql database +#urlid blainedb +#url jdbc:postgresql://idun.africawork.org/blainedb +#username blaine +#password losung1 +#driver org.postgresql.Driver + +# Template for a MySQL database. MySQL has poor JDBC support. +#urlid mysql-testdb +#url jdbc:mysql://hostname:3306/dbname +#username root +#username blaine +#password hiddenpwd +#driver com.mysql.jdbc.Driver + +# Note that "databases" in SQL Server and Sybase are traditionally used for +# the same purpose as "schemas" with more SQL-compliant databases. + +# Template for a Microsoft SQL Server database +#urlid msprojsvr +#url jdbc:microsoft:sqlserver://hostname;DatabaseName=DbName;SelectMethod=Cursor +# The SelectMethod setting is required to do more than one thing on a JDBC +# session (I guess Microsoft thought nobody would really use Java for +# anything other than a "hello world" program). +# This is for Microsoft's SQL Server 2000 driver (requires mssqlserver.jar +# and msutil.jar). +#driver com.microsoft.jdbc.sqlserver.SQLServerDriver +#username myuser +#password hiddenpwd + +# Template for a Sybase database +#urlid sybase +#url jdbc:sybase:Tds:hostname:4100/dbname +#username blaine +#password hiddenpwd +# This is for the jConnect driver (requires jconn3.jar). +#driver com.sybase.jdbc3.jdbc.SybDriver + +# Template for Embedded Derby / Java DB. +#urlid derby1 +#url jdbc:derby:path/to/derby/directory;create=true +#username ${user.name} +#password any_noauthbydefault +#driver org.apache.derby.jdbc.EmbeddedDriver +# The embedded Derby driver requires derby.jar. +# There'a also the org.apache.derby.jdbc.ClientDriver driver with URL +# like jdbc:derby://[:]/databaseName, which requires +# derbyclient.jar. +# You can use \= to commit, since the Derby team decided (why???) +# not to implement the SQL standard statement "commit"!! +# Note that SqlTool can not shut down an embedded Derby database properly, +# since that requires an additional SQL connection just for that purpose. +# However, I've never lost data by not shutting it down properly. +# Other than not supporting this quirk of Derby, SqlTool is miles ahead of ij. diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/config/testEnv b/ARCHIVE/SharedCode/TMCDB/Access/test/config/testEnv new file mode 100755 index 0000000000000000000000000000000000000000..bdd628d0fcc0f2d265c40c95d42756eb0a5cd340 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/config/testEnv @@ -0,0 +1,40 @@ +# CDB location +# Comment this line if the CDB being used shouldn't be decompressed +# from a tar file. +CDB_PACKED_FILE=./config/CDB.tar.gz +TMCDB_DATA_PACKED_FILE=./config/TMCDB_DATA.tar.gz +TESTDIR=`pwd` +ACS_CDB=`pwd`/tmp +# ACS_CDB=`pwd`/config +ACS_TMP=`pwd`/tmp +ACS_LOCK=${ACS_TMP}/.running +#ACS_INSTANCE=1 +ACS_CONTAINERS="CONTROL/ACC/javaContainer" +IDL_FILES_TO_LOAD=TMCDBComponent.idl +ACS_LOG_STDOUT=2 + +# Hibernate database configuration +DBDIR=$ACS_TMP/hsqldb +DBNAME=tmcdb +DBPORT=9001 +SQLTOOL_RC_FILE=./config/sqltool.rc + +JAVA_OPTIONS="-Darchive.configFile=archiveConfig.properties $JAVA_OPTIONS" +JAVA_OPTIONS="-Djava.util.logging.config.file=logging.properties $JAVA_OPTIONS" + +### Test specific configurations #### + +# If 'true' then the TMCDBStandaloneComponent won't use an in-memory +# database, but a disk based one, which can be accessed by script/sqltool. +TMCDB_STANDALONE_DEBUG=true +TMCDB_CONFIGURATION_NAME=Test +TMCDB_STARTUP_NAME=Test + +unset DISPLAY + +export ACS_CDB +export ACS_TMP +export ACS_INSTANCE +export TMCDB_CONFIGURATION_NAME +export TMCDB_LOCAL_CONFIGURATION_NAME +export TMCDB_STARTUP_NAME diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/dbConfig.properties b/ARCHIVE/SharedCode/TMCDB/Access/test/dbConfig.properties new file mode 100755 index 0000000000000000000000000000000000000000..017c3d35924ef34b82b9344fed06c951dda01222 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/dbConfig.properties @@ -0,0 +1,56 @@ +# dbConfig.properties file development & testing +# +# A M Chavan, ESO, 12-Oct-2006 +# +# $Id: dbConfig.properties,v 1.3 2009/12/28 21:17:56 rhiriart Exp $ + +archive.db.backend=xmldb +archive.db.mode=test + +# Setup for Exist +#---------------------------------------------------- +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +#archive.xmldb.location=xmldb:exist://its01.aoc.nrao.edu:8180/exist/xmlrpc +#archive.xmldb.location=xmldb:exist://almadev5.hq.eso.org:8180/exist/xmlrpc +archive.xmldb.location=xmldb:exist://localhost:8180/exist/xmlrpc +archive.xmldb.name=db +archive.xmldb.cache=100 + +# Oracle setup (relational side) +#---------------------------------------------------- +archive.oracle.name=alma1 +archive.oracle.user=almatest +archive.oracle.location=almadev1.hq.eso.org:1521 + +# Shiftlog-specific stuff +#--------------------------------------------------- +archive.shiftlog.backend=hsqldb + +archive.oracle.shiftlog.dbname=alma1 +archive.oracle.shiftlog.user=operlogtest +archive.oracle.shiftlog.user.passwd=alma$dba + +archive.hsqldb.shiftlog.dbname=shiftlog +archive.hsqldb.shiftlog.user=sa +archive.hsqldb.shiftlog.passwd= +archive.hsqldb.shiftlog.location=ignored +archive.hsqldb.shiftlog.mode=mem + +# Tmcdb-specific stuff +#--------------------------------------------------- +archive.tmcdb.configuration=Test +archive.tmcdb.startup=STE Startup + +archive.tmcdb.backend=hsqldb + +archive.oracle.tmcdb.dbname=alma1 +archive.oracle.tmcdb.user=operlogtest +archive.oracle.tmcdb.user.passwd=alma$dba + +archive.hsqldb.tmcdb.dbname=tmcdb +archive.hsqldb.tmcdb.user=sa +archive.hsqldb.tmcdb.passwd= +archive.hsqldb.tmcdb.location=localhost:9001 +archive.hsqldb.tmcdb.mode=hsql +# archive.hsqldb.tmcdb.location=ignored +# archive.hsqldb.tmcdb.mode=mem diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/hibernate.cfg.xml b/ARCHIVE/SharedCode/TMCDB/Access/test/hibernate.cfg.xml new file mode 100755 index 0000000000000000000000000000000000000000..cc1e0f834db0e6ffb0e3eaccfd7ee210d9e3a233 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/hibernate.cfg.xml @@ -0,0 +1,107 @@ + + + + + + + org.hsqldb.jdbcDriver + + + jdbc:hsqldb:hsql://localhost:9001/tmcdb + + + sa + + + + org.hibernate.dialect.HSQLDialect + + + + 5 + 20 + 300 + 50 + 3000 + + + true + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/logging.properties b/ARCHIVE/SharedCode/TMCDB/Access/test/logging.properties new file mode 100755 index 0000000000000000000000000000000000000000..db967ca671718d5b1532c08218592c83415858c9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/logging.properties @@ -0,0 +1,43 @@ +# +# JDK 1.4 Logging Configuration +# + +handlers = java.util.logging.ConsoleHandler +# handlers = alma.tmcdb.utils.TmcdbLoggingHandler + +java.util.logging.ConsoleHandler.level = FINEST +java.util.logging.ConsoleHandler.formatter = alma.acs.logging.formatters.ConsoleLogFormatter + +alma.tmcdb.utils.TmcdbLoggingHandler.level = INFO +alma.tmcdb.utils.TmcdbLoggingHandler.formatter = alma.acs.logging.formatters.ConsoleLogFormatter + +# +# Hibernate Loggers +# + +# Log everything. This is a lot of information but it is useful for troubleshooting. +org.hibernate.level = INFO +# Log all SQL DML statements as they are executed. +org.hibernate.SQL.level = INFO +# Log all JDBC parameters. +org.hibernate.type.level = INFO +# Log all SQL DDL statements as they are executed. +org.hibernate.tool.hbm2ddl.level = INFO +# Log the state of all entities (max 20 entities) associated with the session at flush time. +org.hibernate.pretty.level = INFO +# Log all second-level cache activity. +org.hibernate.cache.level = INFO +# Log transaction related activity. +org.hibernate.transaction.level = INFO +# Log all JDBC resource acquisition. +org.hibernate.jdbc.level = INFO +# Log HQL and SQL ASTs during query parsing. +org.hibernate.hql.ast.AST.level = INFO +# Log all JAAS authorization requests. +org.hibernate.secure.level = INFO + +# +# Application Loggers +# + +alma.tmcdb.utils.LruLoader.level = FINEST diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/runTmcdbComponentTest.sh b/ARCHIVE/SharedCode/TMCDB/Access/test/runTmcdbComponentTest.sh new file mode 100755 index 0000000000000000000000000000000000000000..0b15f7b6ad6d163e2bd2f0b5c74f99cd03da26d0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/runTmcdbComponentTest.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +############################################################################## +# ALMA - Atacama Large Millimiter Array +# (c) European Southern Observatory, 2002 +# Copyright by ESO (in the framework of the ALMA collaboration), +# All rights reserved +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# $Id: runTmcdbComponentTest.sh,v 1.2 2011/05/09 23:36:47 rtobar Exp $ +# + +# Documentation about the test goes here. +# +# + +export CLASSPATH=$CLASSPATH:../lib/TMCDBAccessTest.jar + +declare TEST_OPTIONS= +declare TEST_CLASS=alma.tmcdb.access.TmcdbStandaloneComponentTest +declare TEST_LOG_FILE=tmp/TmcdbStandaloneComponentTest.log + +printf "###############################################\n" +printf "TmcdbStandaloneComponentTest: " +acsStartJava -endorsed junit.textui.TestRunner "$TEST_CLASS" &> "$TEST_LOG_FILE" + +RESULT=$? +if [ "$RESULT" = "0" ]; then + printf "PASSED\n" +else + printf "FAILED\n" +fi +exit "$RESULT" + +# __oOo__ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/getAcsEndorsedJarPath b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/getAcsEndorsedJarPath new file mode 100755 index 0000000000000000000000000000000000000000..f6bff9bcd5eec754bf63d4d20b9338f7b54c1027 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/getAcsEndorsedJarPath @@ -0,0 +1,24 @@ +CL_JARPATH="" + +if [ -d ../lib ] ; then + CL_JARPATH="../lib/endorsed${PATH_SEP}" +fi + +if [ -d $INTROOT ] && [ $INTROOT ] ; then + CL_JARPATH="$CL_JARPATH$INTROOT/lib/endorsed${PATH_SEP}" +fi + +# Separation of dirs +item_list=`echo $INTLIST | sed s/:/\ /g` +for item in $item_list +do + if [ -d $item ] && [ $item ] ; then + CL_JARPATH="$CL_JARPATH$item/lib/endorsed${PATH_SEP}" + fi +done + +if [ -d $ACSROOT ] && [ $ACSROOT ] ; then + CL_JARPATH="$CL_JARPATH$ACSROOT/lib/endorsed" +fi +echo $CL_JARPATH + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/getAcsJarPath b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/getAcsJarPath new file mode 100755 index 0000000000000000000000000000000000000000..6aa60bc4b88762c1a28e941d8768375f94330a7e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/getAcsJarPath @@ -0,0 +1,23 @@ +CL_JARPATH="" + +if [ -d ../lib ] ; then + CL_JARPATH="../lib${PATH_SEP}" +fi + +if [ -d $INTROOT ] && [ $INTROOT ] ; then + CL_JARPATH="$CL_JARPATH$INTROOT/lib${PATH_SEP}" +fi + +# Separation of dirs +item_list=`echo $INTLIST | sed s/:/\ /g` +for item in $item_list +do + if [ -d $item ] && [ $item ] ; then + CL_JARPATH="$CL_JARPATH$item/lib${PATH_SEP}" + fi +done + +if [ -d $ACSROOT ] && [ $ACSROOT ] ; then + CL_JARPATH="$CL_JARPATH$ACSROOT/lib" +fi +echo $CL_JARPATH diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/runGlobalConfigurationTest b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/runGlobalConfigurationTest new file mode 100755 index 0000000000000000000000000000000000000000..da240195b34e089d0e3f2e96e8d1786a2d945420 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/runGlobalConfigurationTest @@ -0,0 +1,2 @@ +. config/testEnv +acsStartJava -endorsed junit.textui.TestRunner alma.tmcdb.access.GlobalConfigurationTest diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/runGlobalConfigurationTest.sh b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/runGlobalConfigurationTest.sh new file mode 100755 index 0000000000000000000000000000000000000000..f763095c8e2dc76666013eae04f9eadb70ca5506 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/runGlobalConfigurationTest.sh @@ -0,0 +1,52 @@ +#!/bin/bash + +############################################################################## +# ALMA - Atacama Large Millimiter Array +# (c) European Southern Observatory, 2002 +# Copyright by ESO (in the framework of the ALMA collaboration), +# All rights reserved +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# $Id$ +# + +# Documentation about the test goes here. +# +# + +export CLASSPATH=$CLASSPATH:../lib/TMCDBAccessTest.jar + +declare TEST_OPTIONS= +declare TEST_CLASS=alma.tmcdb.access.GlobalConfigurationTest +# declare TEST_LOG_FILE=tmp/GlobalConfigurationTest.log +declare TEST_LOG_FILE=/dev/stdout + +. config/testEnv + +printf "###############################################\n" +printf "GlobalConfigurationTest: " +acsStartJava -endorsed junit.textui.TestRunner "$TEST_CLASS" &> "$TEST_LOG_FILE" + +RESULT=$? +if [ "$RESULT" = "0" ]; then + printf "PASSED\n" +else + printf "FAILED\n" +fi +exit "$RESULT" + +# __oOo__ diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/sqltool b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/sqltool new file mode 100755 index 0000000000000000000000000000000000000000..d39177fb9bff46a9a98b63d624d9a822addd52f3 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/sqltool @@ -0,0 +1,24 @@ +#!/bin/bash + +# We require the config/testenv file. +[ -f config/testEnv ] || exit $? + +# Source test configuration file. +. config/testEnv + +if test -a $ACSROOT/lib/sqltool.jar; then + HSQLDB_JAR=$ACSROOT/lib/sqltool.jar +elif test -a $INTROOT/lib/sqltool.jar; then + HSQLDB_JAR=$INTROOT/lib/sqltool.jar +fi + +if test $# -ge 1; then + SQL_COMMAND=$@ +fi + +if test -n "$SQL_COMMAND"; then + java -jar "$HSQLDB_JAR" --rcFile "$SQLTOOL_RC_FILE" --sql "$SQL_COMMAND" "$DBNAME" +else + java -jar "$HSQLDB_JAR" --rcFile "$SQLTOOL_RC_FILE" "$DBNAME" +fi + diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/startHSQLDB b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/startHSQLDB new file mode 100755 index 0000000000000000000000000000000000000000..9670f5475d463fd5c7553e35aab4ff5a8126132b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/startHSQLDB @@ -0,0 +1,9 @@ +#!/bin/bash + +# We require the config/testenv file. +[ -f config/testEnv ] || exit $? + +# Source test configuration file. +. config/testEnv + +acsStartJava -noDirectory org.hsqldb.Server -database.0 file:"$DBDIR/$DBNAME" -dbname.0 "$DBNAME" -port "$DBPORT" diff --git a/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/testEnv b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/testEnv new file mode 100755 index 0000000000000000000000000000000000000000..d7b65cf30f388831d48ff66a8e2125d27ef31a5c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Access/test/scripts/testEnv @@ -0,0 +1,244 @@ +#!/bin/bash + +# We require the config/testenv file. +[ -f config/testEnv ] || exit $? + +# Source test configuration file. +. config/testEnv + +# Check that these variables have been defined, and export them. +export ACS_INSTANCE +export ACS_TMP +export ACS_CDB +export ACS_LOG_STDOUT + +export TMCDB_STANDALONE_DEBUG +export TMCDB_CONFIGURATION_NAME +export TMCDB_STARTUP_NAME +export JAVA_OPTIONS + +RETVAL=0 + +createLock() { + # To be sure, delete all temporary and the recovery files before starting + if [ -e "$ACS_TMP" ]; then + if [ -e "$ACS_LOCK" ]; then + printf "*** Lock file %s already exists, exiting\n" "$ACS_LOCK" + exit 0 + fi + rm -rf "$ACS_TMP" &> /dev/null + fi + mkdir "$ACS_TMP" + date > "$ACS_LOCK" +} + +clearLock() { + rm -f "$ACS_LOCK" &> /dev/null +} + +checkInstances() { + instanceFile="${ACS_TMP}/acs_instance" + if [ -e ${instanceFile} ]; then + fileInstance=`cat ${instanceFile}` + if [ ${fileInstance} != $ACS_INSTANCE ]; then + printf "*** Discrepancy in ACS instance\n" + printf " env: ACS_INSTANCE = %s\n" $ACS_INSTANCE + printf " file: ACS_INSTANCE = %s\n" $fileInstance + fi + else + printf "*** Missing ACS instance file ${instanceFile}" + fi + rm -f "$ACS_LOCK" &> /dev/null +} + +start() { + printf "Starting test\n" + startHSQLDB + startACS +} + +suspend() { + printf "Suspending test\n" + stopACS +} + +restart() { + printf "Restarting test\n" + startACS +} + +stop() { + printf "Stopping test\n" + stopACS + stopHSQLDB +} + +startHSQLDB() { + printf "Starting HSQLDB\n" + java -cp $(searchFile lib/hsqldb.jar)/lib/hsqldb.jar org.hsqldb.Server -database.0 file:"$DBDIR/$DBNAME" -dbname.0 "$DBNAME" -port "$DBPORT" &> tmp/hsqldb.log & + # allow some time for the database to start + sleep 5 + if test -f "$INTROOT/config/CreateHsqldbTables.sql"; then + printf "Creating tables... " + ./scripts/sqltool "\i $INTROOT/config/CreateHsqldbTables.sql" + elif test -f "ACSROOT/config/CreateHsqldbTables.sql"; then + printf "Creating tables..." + ./scripts/sqltool "\i $ACSROOT/config/CreateHsqldbTables.sql" + fi +} + +stopHSQLDB() { + printf "Stopping HSQLDB\n" + # Get the location of hsqldb.jar. + if test -a $ACSROOT/lib/sqltool.jar; then + HSQLDB_JAR=$ACSROOT/lib/sqltool.jar + elif test -a $INTROOT/lib/sqltool.jar; then + HSQLDB_JAR=$INTROOT/lib/sqltool.jar + fi + java -jar "$HSQLDB_JAR" --rcFile "$SQLTOOL_RC_FILE" --sql "shutdown;" "$DBNAME" +} + +startACS() { + # Unpack the CDB + if test -n "$CDB_PACKED_FILE"; then + CDB_ABS_LOC=`pwd`/$CDB_PACKED_FILE + cd $ACS_CDB + tar xvf "$CDB_ABS_LOC" &> /dev/null + cd - &> /dev/null + fi + # Unpack TMCDB_DATA + if test -n "$TMCDB_DATA_PACKED_FILE"; then + TMCDB_DATA_ABS_LOC=`pwd`/$TMCDB_DATA_PACKED_FILE + cd $ACS_CDB + tar xvf "$TMCDB_DATA_ABS_LOC" &> /dev/null + cd - &> /dev/null + fi + + # Now see if we should wait for the interface repository to load + if [ -n "$IDL_FILES_TO_LOAD" ]; then + noloadifr='--noloadifr' + fi + + # + # Start the ORB services and manager and optionally load the interface repository + # + printf "Starting ACS\n" + echo "$ACS_INSTANCE" > $ACS_TMP/acs_instance + if [ -n "$noloadifr" ]; then + # acsutilTATPrologue -l $noloadifr + acsutilBlock -t 60 -f $ACS_TMP/acsStart.log -b "Manager is up and running" \ + -x acsStart --noloadifr &> $ACS_TMP/acsutilBlock-ACS.log + if [ -n "$IDL_FILES_TO_LOAD" ]; then + acsstartupLoadIFR "$IDL_FILES_TO_LOAD" &> $ACS_TMP/loadifr.log + fi + else + # acsutilTATPrologue -l + acsutilBlock -t 60 -f $ACS_TMP/acsStart.log -b "Manager is up and running" \ + -x acsStart &> $ACS_TMP/acsutilBlock-ACS.log + fi + + # Start ACS containers + declare -a CONTAINERS + COUNTER=0 + for DIR in $ACS_CONTAINERS; do + CONTAINERS[$COUNTER]=$DIR + let COUNTER++ + done + N=${#CONTAINERS[*]} + for (( COUNTER=0; COUNTER<$N; COUNTER++)) ; do + CONTAINER_TYPE="java" + + echo "${CONTAINERS[$COUNTER]}" | grep -q java + if [ $? -eq 0 ] ; then + CONTAINER_TYPE="java" + fi + echo "${CONTAINERS[$COUNTER]}" | grep -q python + if [ $? -eq 0 ] ; then + CONTAINER_TYPE="py" + fi + echo "${CONTAINERS[$COUNTER]}" | grep -q cpp + if [ $? -eq 0 ] ; then + CONTAINER_TYPE="cpp" + fi + LOG_FILE=$ACS_TMP/${CONTAINERS[$COUNTER]//\//_}.log + # printf "%d) %s %s %s\n" "$COUNTER" "${CONTAINERS[$COUNTER]}" "$CONTAINER_TYPE" "$LOG_FILE" + printf "Starting container %s\n" "${CONTAINERS[$COUNTER]}" + + logfile=$ACS_TMP/container-$c.log + acsutilBlock -t 60 -f $LOG_FILE -b "components activated." \ + -x acsStartContainer -$CONTAINER_TYPE ${CONTAINERS[$COUNTER]} > \ + $ACS_TMP/acsutilBlock-$c.log 2>&1 + + done + + # + # Now start the archive + # + # ARCHIVE_CMD="tomcat start" + # LOGFILE=$ACS_TMP/archive.log + # ${ARCHIVE_CMD} > $LOGFILE 2>&1 & + # pid=$! + # echo $pid > $ACS_TMP/archive.pid + # acsutilBlock -t 60 -f $LOGFILE -b "Initialized Archive subsystem." + printf "Starting Tomcat\n" + tomcat start &> $ACS_TMP/archive.log + PID=$! + echo $PID > $ACS_TMP/archive.pid +} + +stopACS() { + acsutilTATEpilogue + printf "Stopping Tomcat\n" + if [ -r "$ACS_TMP/archive.pid" ]; then + tomcat stop &> $ACS_TMP/archiveStop.log + fi +} + +startUnit() { + # Unpack TMCDB_DATA + if test -n "$TMCDB_DATA_PACKED_FILE"; then + TMCDB_DATA_ABS_LOC=`pwd`/$TMCDB_DATA_PACKED_FILE + cd $ACS_CDB + tar xvf "$TMCDB_DATA_ABS_LOC" &> /dev/null + cd - &> /dev/null + fi + startHSQLDB +} + +stopUnit() { + stopHSQLDB +} + +case "$1" in + start) + createLock + start + checkInstances + ;; + suspend) + suspend + clearLock + ;; + restart) + createLock + restart + checkInstances + ;; + stop) + stop + clearLock + ;; + startUnit) + createLock + startUnit + ;; + stopUnit) + stopUnit + clearLock + ;; + *) + printf "Usage: $0 {start|stop|suspend|restart}\n" + exit 1 +esac + +exit $RETVAL diff --git a/ARCHIVE/SharedCode/TMCDB/Makefile b/ARCHIVE/SharedCode/TMCDB/Makefile new file mode 100755 index 0000000000000000000000000000000000000000..c51273ad8b247e3d89ee02cb0ece0375f4ef92c1 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Makefile @@ -0,0 +1,430 @@ +# $Id: Makefile,v 1.3 2010/09/29 20:46:43 rhiriart Exp $ +# +# Copyright (C) 2003, 2004 +# Associated Universities, Inc. Washington DC, USA. +# +# Produced for the ALMA project +# +# This library is free software; you can redistribute it and/or modify it +# under the terms of the GNU Library General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at your +# option) any later version. +# +# This library is distributed in the hope that it will be useful but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +# FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public +# License for more details. +# +# You should have received a copy of the GNU Library General Public License +# along with this library; if not, write to the Free Software Foundation, +# Inc., 675 Massachusetts Ave, Cambridge, MA, 02139, USA. +# +# Correspondence concerning ALMA should be addressed as follows: +# Internet email: alma-sw-admin@nrao.edu +# +# + +SUBSYSTEM = "ICD/SharedCode/TMCDB" + +GROUPS = + +MODULES = Persistence Utils Access alma.obops.tmcdb.jars alma.obops.tmcdb.dam alma.obops.tmcdb.explorer + +MODULES_TEST = + +# --------------- Standard Makefile Beyond this Point ----------------- +# If option KEEP_GOING=on is present in the make command line gnu_make +# is NOT interrupted when the first error is encountered + +KEEP_GOING = 1 +# This variable is always defined so that NRI will always build all +# modules. This hack should be removed when NRI invokes this makefile +# with this variable defined. + +ifdef KEEP_GOING + KEEP_GOING="on" +else + KEEP_GOING="off" +endif + +RETURN_CODE=return_code +TMP_RETURN_CODE=tmp_return_code + +MAKE_FLAGS = "-k" +PLATFORM := $(shell uname) + +SHELL=/bin/ksh +ECHO=echo + +ifdef MAKE_VERBOSE + AT = + OUTPUT = +else + AT = @ + OUTPUT = > /dev/null +endif +# +os = $(shell uname) +osrev = $(shell uname -r) + +# +# "Failed all" error management +# +define mng_failed_all + if [[ -a $(TMP_RETURN_CODE) ]]; then\ + $(ECHO) "### ==> FAILED all ! " | tee -a build.log | tee -a $(RETURN_CODE);\ + rm $(TMP_RETURN_CODE);\ + if [[ $(KEEP_GOING) = "off" ]]; then \ + if [[ -a $(RETURN_CODE) ]]; then \ + rm $(RETURN_CODE);\ + fi;\ + exit 2;\ + fi;\ + fi +endef + +# +# "Failed install" error management +# +define mng_failed_install + if [[ -a $(TMP_RETURN_CODE) ]]; then\ + $(ECHO) "### ==> FAILED install ! " | tee -a build.log | tee -a $(RETURN_CODE);\ + rm $(TMP_RETURN_CODE);\ + if [[ $(KEEP_GOING) = "off" ]]; then \ + if [[ -a $(RETURN_CODE) ]]; then \ + rm $(RETURN_CODE);\ + fi;\ + exit 2;\ + fi;\ + fi +endef + + +# +# This target just forward any make target to all modules +# +define canned + @$(ECHO) "############ Executing '$@' on all $(SUBSYSTEM) modules #################" + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + echo "### ==> $${group} SUBDIRECTORY NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} $@ | tee -a build.log;\ + continue ;\ + fi;\ + done + @for member in $(foreach name, $(MODULES), $(name) ) ; do \ + $(ECHO) "############ $${member}" ;\ + if [ ! -d $${member} ]; then \ + echo "### ==> $${member} MODULE NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${member}/src/Makefile ]; then \ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ $@ || break ;\ + fi;\ + done +endef + +# +# This target just forward any make target to the test directory in all modules +# +define testcanned + @$(ECHO) "############ Executing '$@' on all $(SUBSYSTEM) test modules #################" + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + echo "### ==> $${group} SUBDIRECTORY NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} $@ | tee -a build.log;\ + continue ;\ + fi;\ + done + @for member in $(foreach name, $(MODULES_TEST), $(name) ) ; do \ + $(ECHO) "############ $${member}" ;\ + if [ ! -d $${member}/test ]; then \ + echo "### ==> $${member} MODULE NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${member}/test/Makefile ]; then \ + $(MAKE) $(MAKE_FLAGS) -C $${member}/test/ $@ || break ;\ + fi;\ + done +endef + +clean_log: + @$(ECHO) "############ Clean Build Log File: build.log #################" + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + echo "### ==> $${group} SUBDIRECTORY NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} $@ | tee -a build.log;\ + continue ;\ + fi;\ + done + @rm -f build.log + @touch build.log + +# +# building all modules +# +build: + @$(ECHO) "############ build $(SUBSYSTEM) Software #################"| tee -a build.log + @# Deletion of temporary files used to store make return code + @if [[ -a $(TMP_RETURN_CODE) ]]; then \ + rm $(TMP_RETURN_CODE);\ + fi + @if [[ -a $(RETURN_CODE) ]]; then \ + rm $(RETURN_CODE);\ + fi + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + echo "### ==> $${group} SUBDIRECTORY NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(RM) $${group}/build.log;\ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} build | tee -a build.log;\ + cat $${group}/build.log >> build.log;\ + continue ;\ + fi;\ + done + @for member in $(foreach name, $(MODULES), $(name) ) ; do \ + if [ ! -d $${member} ]; then \ + echo "### ==> $${member} MODULE NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${member}/src/Makefile ]; then \ + $(ECHO) "############ $${member} MAIN" | tee -a build.log;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ clean >> build.log 2>& 1;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ all >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_all);\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ install >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_install);\ + continue ;\ + fi;\ + if [ -f $${member}/Makefile ]; then \ + $(ECHO) "############ $${member} External" | tee -a build.log;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/ clean >> build.log 2>& 1;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/ all >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_all);\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/ install >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_install);\ + continue ;\ + fi;\ + done + +# +# rebuilding all modules +# +rebuild: + @$(ECHO) "############ rebuild $(SUBSYSTEM) Software #################"| tee -a build.log + @# Deletion of temporary files used to store make return code + @if [[ -a $(TMP_RETURN_CODE) ]]; then \ + rm $(TMP_RETURN_CODE);\ + fi + @if [[ -a $(RETURN_CODE) ]]; then \ + rm $(RETURN_CODE);\ + fi + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + echo "### ==> $${group} SUBDIRECTORY NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(RM) $${group}/build.log;\ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} rebuild | tee -a build.log;\ + cat $${group}/build.log >> build.log;\ + continue ;\ + fi;\ + done + @for member in $(foreach name, $(MODULES), $(name) ) ; do \ + if [ ! -d $${member} ]; then \ + echo "### ==> $${member} MODULE NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${member}/src/Makefile ]; then \ + $(ECHO) "############ $${member} MAIN" | tee -a build.log;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ all >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_all);\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ install >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_install);\ + continue ;\ + fi;\ + if [ -f $${member}/Makefile ]; then \ + $(ECHO) "############ $${member} External" | tee -a build.log;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/ all >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_all);\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/ install >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_install);\ + continue ;\ + fi;\ + done + +# +# building all RTAI modules +# +build_rtai: + @$(ECHO) "############ build RTAI $(SUBSYSTEM) Software #################"| tee -a build.log + @# Deletion of temporary files used to store make return code + @if [[ -a $(TMP_RETURN_CODE) ]]; then \ + rm $(TMP_RETURN_CODE);\ + fi + @if [[ -a $(RETURN_CODE) ]]; then \ + rm $(RETURN_CODE);\ + fi + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + echo "### ==> $${group} SUBDIRECTORY NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(RM) $${group}/build.log;\ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} build_rtai | tee -a build.log;\ + cat $${group}/build.log >> build.log;\ + continue ;\ + fi;\ + done + @for member in $(foreach name, $(MODULES), $(name) ) ; do \ + if [ ! -d $${member} ]; then \ + echo "### ==> $${member} MODULE NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${member}/src/Makefile ]; then \ + $(ECHO) "############ $${member} MAIN" | tee -a build.log;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ clean_rtai >> build.log 2>& 1;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ directory_structure >> build.log 2>& 1;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ do_rtai >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_all);\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ install_rtai >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_install);\ + continue ;\ + fi;\ + if [ -f $${member}/Makefile ]; then \ + $(ECHO) "############ $${member} External" | tee -a build.log;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ clean_rtai >> build.log 2>& 1;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ directory_structure >> build.log 2>& 1;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ do_rtai >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_all);\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ install_rtai >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_install);\ + continue ;\ + fi;\ + done + +# +# rebuilding all RTAI modules +# +rebuild_rtai: + @$(ECHO) "############ rebuild RTAI $(SUBSYSTEM) Software #################"| tee -a build.log + @# Deletion of temporary files used to store make return code + @if [[ -a $(TMP_RETURN_CODE) ]]; then \ + rm $(TMP_RETURN_CODE);\ + fi + @if [[ -a $(RETURN_CODE) ]]; then \ + rm $(RETURN_CODE);\ + fi + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + echo "### ==> $${group} SUBDIRECTORY NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(RM) $${group}/build.log;\ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} rebuild_rtai | tee -a build.log;\ + cat $${group}/build.log >> build.log;\ + continue ;\ + fi;\ + done + @for member in $(foreach name, $(MODULES), $(name) ) ; do \ + if [ ! -d $${member} ]; then \ + echo "### ==> $${member} MODULE NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${member}/src/Makefile ]; then \ + $(ECHO) "############ $${member} MAIN" | tee -a build.log;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ directory_structure >> build.log 2>& 1;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ do_rtai >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_all);\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ install_rtai >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_install);\ + continue ;\ + fi;\ + if [ -f $${member}/Makefile ]; then \ + $(ECHO) "############ $${member} External" | tee -a build.log;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ directory_structure >> build.log 2>& 1;\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ do_rtai >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_all);\ + $(MAKE) $(MAKE_FLAGS) -C $${member}/src/ install_rtai >> build.log 2>& 1 || echo $$? >> $(TMP_RETURN_CODE) ;\ + $(mng_failed_install);\ + continue ;\ + fi;\ + done + +# +# Test target +# + +.PHONY: test + +Test = test +$(Test): + @rm -f test.log + @touch test.log + @$(ECHO) "############ TEST $(SUBSYSTEM) Software #################"| tee -a test.log + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + echo "### ==> $${group} SUBDIRECTORY NOT FOUND! FAILED! " | tee -a build.log;\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} $@ | tee -a build.log;\ + continue ;\ + fi;\ + done + @for member in $(foreach name,$(MODULES_TEST),$(name)); do\ + if [ -d $${member}/test ]; then\ + $(ECHO) "############ $${member}/test MAIN TEST ############" | tee -a test.log ;\ + $(MAKE) -k -C $${member}/test/ $@ | tee -a test.log | egrep '(Nothing to|FAILED.|PASSED.|Error:)';\ + else\ + $(ECHO) "### ==> $${member} TEST DIRECTORY STRUCTURE NOT FOUND! FAILED!" | tee -a test.log ;\ + fi;\ + done + +# +# show_modules target +# +# Simply lists all MODULES that would be build +# with the current setup +# +show_modules: + @for group in $(foreach name, $(GROUPS), $(name) ) ; do \ + if [ ! -d $${group} ]; then \ + $(ECHO) "$${group} SUBDIRECTORY NOT FOUND! FAILED! ";\ + fi;\ + if [ -f $${group}/Makefile ]; then \ + $(MAKE) $(MAKE_FLAGS) -s -C $${group} show_modules;\ + continue ;\ + fi;\ + done; \ + + @for member in $(foreach name, $(MODULES), $(name) ) ; do \ + $(ECHO) "$(SUBSYSTEM)/$${member}";\ + done + +## + +# +# Standard canned targets +# +clean: + $(canned) + $(testcanned) + $(RM) build.log test.log return_code *~ + +clean_dist: + $(canned) + $(testcanned) + $(RM) build.log test.log return_code *~ + +all: + $(canned) +install: + $(canned) + +man: + $(canned) + +buildClean: build clean + +buildMan: build man diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/.classpath b/ARCHIVE/SharedCode/TMCDB/Persistence/.classpath new file mode 100755 index 0000000000000000000000000000000000000000..c10818756a8cd91150ad57a77e82cf88cad57fc4 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/.classpath @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/.project b/ARCHIVE/SharedCode/TMCDB/Persistence/.project new file mode 100755 index 0000000000000000000000000000000000000000..09838ece727ec1644d5a1517f6d605b888a8c7a6 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/.project @@ -0,0 +1,17 @@ + + + Persistence + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/CloneAndPersistStartupScenarioTest.launch b/ARCHIVE/SharedCode/TMCDB/Persistence/CloneAndPersistStartupScenarioTest.launch new file mode 100755 index 0000000000000000000000000000000000000000..9af7e2e3f6c4cabbe9faba6aa42d3c6a60656567 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/CloneAndPersistStartupScenarioTest.launch @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/BaseElement.mapping.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/config/BaseElement.mapping.xml new file mode 100755 index 0000000000000000000000000000000000000000..44a0933e1688dbee08dbcfd3e31bc2b800ff5a8a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/BaseElement.mapping.xml @@ -0,0 +1,24 @@ + + + + Description for the TMCDB Configuration class + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/Configuration.mapping.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/config/Configuration.mapping.xml new file mode 100755 index 0000000000000000000000000000000000000000..db5f4c1723d414616b0f9a2d892c45c8baa10a56 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/Configuration.mapping.xml @@ -0,0 +1,86 @@ + + + + Description for the TMCDB Configuration class + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_globalconfigs/oracle/RevertGlobalConfigsChanges.sql b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_globalconfigs/oracle/RevertGlobalConfigsChanges.sql new file mode 100755 index 0000000000000000000000000000000000000000..0c5da33480c5db26ac2118d67d754b496740a45e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_globalconfigs/oracle/RevertGlobalConfigsChanges.sql @@ -0,0 +1,14 @@ +alter table HwConfiguration drop column GLOBALCONFIGID; + +drop table AntennaToFrontEnd; +drop SEQUENCE AntennTFE_seq; + +CREATE TABLE AntennaToFrontEnd ( + AntennaId NUMBER (10) NOT NULL, + FrontEndId NUMBER (10) NOT NULL, + StartTime NUMBER (19) NOT NULL, + EndTime NUMBER (19) NULL, + CONSTRAINT AntennaToFEAntennaId FOREIGN KEY (AntennaId) REFERENCES Antenna, + CONSTRAINT AntennaToFEFrontEndId FOREIGN KEY (FrontEndId) REFERENCES FrontEnd, + CONSTRAINT AntennTFEKey PRIMARY KEY (AntennaId, FrontEndId, StartTime) +); diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_globalconfigs/oracle/UpdateForGlobalConfigs.sql b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_globalconfigs/oracle/UpdateForGlobalConfigs.sql new file mode 100755 index 0000000000000000000000000000000000000000..ec66061698fbcf59bc01c6294760ed2ffc1740d5 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_globalconfigs/oracle/UpdateForGlobalConfigs.sql @@ -0,0 +1,16 @@ +alter table hwconfiguration add ( GLOBALCONFIGID NUMBER(10) NULL ); + +drop table AntennaToFrontEnd; +CREATE TABLE AntennaToFrontEnd ( + AntennaToFrontEndId NUMBER (10) NOT NULL, + AntennaId NUMBER (10) NOT NULL, + FrontEndId NUMBER (10) NOT NULL, + StartTime NUMBER (19) NOT NULL, + EndTime NUMBER (19) NULL, + CONSTRAINT AntennTFEAltKey UNIQUE (AntennaId, FrontEndId, StartTime), + CONSTRAINT AntennaToFEAntennaId FOREIGN KEY (AntennaId) REFERENCES Antenna, + CONSTRAINT AntennaToFEFrontEndId FOREIGN KEY (FrontEndId) REFERENCES FrontEnd, + CONSTRAINT AntennTFEKey PRIMARY KEY (AntennaToFrontEndId) +); + +CREATE SEQUENCE AntennTFE_seq; diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/RevertVersioningChanges.sql b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/RevertVersioningChanges.sql new file mode 100755 index 0000000000000000000000000000000000000000..83f7f2001633623abd03d25e32bc65b20ed6a1bb --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/RevertVersioningChanges.sql @@ -0,0 +1,80 @@ +ALTER TABLE Antenna DROP ( + DelayBLLocked, + DelayBLIncreaseVersion, + DelayBLCurrentVersion, + DelayBLWho, + DelayBLChangeDesc +); + +ALTER TABLE HWConfiguration DROP ( + XPDelayBLLocked, + XPDelayBLIncreaseVersion, + XPDelayBLCurrentVersion, + XPDelayBLWho, + XPDelayBLChangeDesc +); + +ALTER TABLE PointingModel DROP ( + Locked, + IncreaseVersion, + CurrentVersion, + Who, + ChangeDesc +); + +ALTER TABLE FocusModel DROP ( + Locked, + IncreaseVersion, + CurrentVersion, + Who, + ChangeDesc +); + +ALTER TABLE Pad DROP ( + Locked, + IncreaseVersion, + CurrentVersion, + Who, + ChangeDesc +); + +DROP TABLE BL_FEDelay; + +DROP TABLE BL_IFDelay; + +DROP TABLE BL_LODelay; + +DROP TABLE BL_XPDelay; + +DROP TABLE BL_PointingModelCoeff; + +DROP TABLE BL_PointingModelCoeffOffset; + +DROP TABLE BL_FocusModelCoeff; + +DROP TABLE BL_FocusModelCoeffOffset; + +DROP TABLE BL_AntennaDelay; + +DROP TABLE BL_Pad; + +DROP TRIGGER AntDelayHistTrig; + +DROP TRIGGER PadHistTrig; + +DROP TRIGGER FEDelayHistTrig; + +DROP TRIGGER IFDelayHistTrig; + +DROP TRIGGER LODelayHistTrig; + +DROP TRIGGER XPDelayHistTrig; + +DROP TRIGGER PointingModelHistTrig; + +DROP TRIGGER PMCoeffOffsetHistTrig; + +DROP TRIGGER FocusModelHistTrig; + +DROP TRIGGER FMCoeffOffsetHistTrig; + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/UpdateForVersioning.sql b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/UpdateForVersioning.sql new file mode 100755 index 0000000000000000000000000000000000000000..b5b586143a163fd71e8e0f406da46a475933c626 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/UpdateForVersioning.sql @@ -0,0 +1,215 @@ +ALTER TABLE Antenna ADD ( + DelayBLLocked CHAR(1) NULL, + DelayBLIncreaseVersion CHAR(1) NULL, + DelayBLCurrentVersion NUMBER(10) NULL, + DelayBLWho VARCHAR2(128) NULL, + DelayBLChangeDesc VARCHAR2(1024) NULL +); + +UPDATE Antenna SET DelayBLLocked = '0'; +UPDATE Antenna SET DelayBLIncreaseVersion = '0'; +UPDATE Antenna SET DelayBLCurrentVersion = 0; +UPDATE Antenna SET DelayBLWho = ''; +UPDATE Antenna SET DelayBLChangeDesc = ''; + +ALTER TABLE HWConfiguration ADD ( + XPDelayBLLocked CHAR(1) NULL, + XPDelayBLIncreaseVersion CHAR(1) NULL, + XPDelayBLCurrentVersion NUMBER(10) NULL, + XPDelayBLWho VARCHAR2(128) NULL, + XPDelayBLChangeDesc VARCHAR2(1024) NULL +); + +UPDATE HWConfiguration SET XPDelayBLLocked = '0'; +UPDATE HWConfiguration SET XPDelayBLIncreaseVersion = '0'; +UPDATE HWConfiguration SET XPDelayBLCurrentVersion = 0; +UPDATE HWConfiguration SET XPDelayBLWho = ''; +UPDATE HWConfiguration SET XPDelayBLChangeDesc = ''; + +ALTER TABLE PointingModel ADD ( + Locked CHAR(1) NULL, + IncreaseVersion CHAR(1) NULL, + CurrentVersion NUMBER(10) NULL, + Who VARCHAR2(128) NULL, + ChangeDesc VARCHAR2(1024) NULL +); + +UPDATE PointingModel SET Locked = '0'; +UPDATE PointingModel SET IncreaseVersion = '0'; +UPDATE PointingModel SET CurrentVersion = 0; +UPDATE PointingModel SET Who = ''; +UPDATE PointingModel SET ChangeDesc = ''; + +ALTER TABLE FocusModel ADD ( + Locked CHAR(1) NULL, + IncreaseVersion CHAR(1) NULL, + CurrentVersion NUMBER(10) NULL, + Who VARCHAR2 (128) NULL, + ChangeDesc VARCHAR2(1024) NULL +); + +UPDATE FocusModel SET Locked = '0'; +UPDATE FocusModel SET IncreaseVersion = '0'; +UPDATE FocusModel SET CurrentVersion = 0; +UPDATE FocusModel SET Who = ''; +UPDATE FocusModel SET ChangeDesc = ''; + +ALTER TABLE Pad ADD ( + Locked CHAR(1) NULL, + IncreaseVersion CHAR(1) NULL, + CurrentVersion NUMBER(10) NULL, + Who VARCHAR2 (128) NULL, + ChangeDesc VARCHAR2(1024) NULL +); + +UPDATE Pad SET Locked = '0'; +UPDATE Pad SET IncreaseVersion = '0'; +UPDATE Pad SET CurrentVersion = 0; +UPDATE Pad SET Who = ''; +UPDATE Pad SET ChangeDesc = ''; + +CREATE TABLE BL_FEDelay ( + Version NUMBER(10) NOT NULL, + ModTime NUMBER(19) NOT NULL, + Operation CHAR(1) NOT NULL, + Who VARCHAR2(128) NULL, + ChangeDesc VARCHAR2(1024) NULL, + FEDelayId NUMBER (10) NOT NULL, + AntennaId NUMBER (10) NOT NULL, + ReceiverBand VARCHAR2 (128) NOT NULL, + Polarization VARCHAR2 (128) NOT NULL, + SideBand VARCHAR2 (128) NOT NULL, + Delay BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_FEDelayOp CHECK (Operation IN ('I', 'U', 'D')), + CONSTRAINT BL_FEDelayKey PRIMARY KEY (Version, ModTime, Operation, FEDelayId) +); + +CREATE TABLE BL_IFDelay ( + Version NUMBER(10) NOT NULL, + ModTime NUMBER(19) NOT NULL, + Operation CHAR(1) NOT NULL, + Who VARCHAR2(128) NULL, + ChangeDesc VARCHAR2(1024) NULL, + IFDelayId NUMBER (10) NOT NULL, + AntennaId NUMBER (10) NOT NULL, + BaseBand VARCHAR2 (128) NOT NULL, + Polarization VARCHAR2 (128) NOT NULL, + IFSwitch VARCHAR2 (128) NOT NULL, + Delay BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_IFDelayOp CHECK (Operation IN ('I', 'U', 'D')), + CONSTRAINT BL_IFDelayKey PRIMARY KEY (Version, ModTime, Operation, IFDelayId) +); + +CREATE TABLE BL_LODelay ( + Version NUMBER(10) NOT NULL, + ModTime NUMBER(19) NOT NULL, + Operation CHAR(1) NOT NULL, + Who VARCHAR2(128) NULL, + ChangeDesc VARCHAR2(1024) NULL, + LODelayId NUMBER (10) NOT NULL, + AntennaId NUMBER (10) NOT NULL, + BaseBand VARCHAR2 (128) NOT NULL, + Delay BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_LODelayOp CHECK (Operation IN ('I', 'U', 'D')), + CONSTRAINT BL_LODelayKey PRIMARY KEY (Version, ModTime, Operation, LODelayId) +); + +CREATE TABLE BL_XPDelay ( + Version NUMBER(10) NOT NULL, + ModTime NUMBER(19) NOT NULL, + Operation CHAR(1) NOT NULL, + Who VARCHAR2(128) NULL, + ChangeDesc VARCHAR2(1024) NULL, + XPDelayId NUMBER (10) NOT NULL, + ConfigurationId NUMBER (10) NOT NULL, + ReceiverBand VARCHAR2 (128) NOT NULL, + SideBand VARCHAR2 (128) NOT NULL, + BaseBand VARCHAR2 (128) NOT NULL, + Delay BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_XPDelayOp CHECK (Operation IN ('I', 'U', 'D')), + CONSTRAINT BL_XPDelayKey PRIMARY KEY (Version, ModTime, Operation, XPDelayId) +); + +CREATE TABLE BL_PointingModelCoeff ( + Version NUMBER (10) NOT NULL, + ModTime NUMBER (19) NOT NULL, + Operation CHAR (1) NOT NULL, + Who VARCHAR2 (128) NULL, + ChangeDesc VARCHAR2 (1024) NULL, + PointingModelId NUMBER (10) NOT NULL, + CoeffName VARCHAR2 (128) NOT NULL, + CoeffValue BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_PointingModelCoeffOp CHECK (Operation IN ('I', 'U', 'D')), + CONSTRAINT BL_PoiMCKey PRIMARY KEY (Version, ModTime, Operation, PointingModelId, CoeffName) +); + +CREATE TABLE BL_PointingModelCoeffOffset ( + Version NUMBER (10) NOT NULL, + ModTime NUMBER (19) NOT NULL, + Operation CHAR (1) NOT NULL, + Who VARCHAR2 (128) NULL, + ChangeDesc VARCHAR2 (1024) NULL, + PointingModelId NUMBER (10) NOT NULL, + CoeffName VARCHAR2 (128) NOT NULL, + ReceiverBand VARCHAR2 (128) NOT NULL, + Offset BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_AntennaPMCoeffOffOp CHECK (Operation IN ('I', 'U', 'D')), + CONSTRAINT BL_AntennaPMCoeffOffBand CHECK (ReceiverBand IN ('ALMA_RB_01', 'ALMA_RB_02', 'ALMA_RB_03', 'ALMA_RB_04', 'ALMA_RB_05', 'ALMA_RB_06', 'ALMA_RB_07', 'ALMA_RB_08', 'ALMA_RB_09', 'ALMA_RB_10')), + CONSTRAINT BL_PoiMCOKey PRIMARY KEY (Version, ModTime, Operation, PointingModelId, CoeffName, ReceiverBand) +); + + +CREATE TABLE BL_FocusModelCoeff ( + Version NUMBER (10) NOT NULL, + ModTime NUMBER (19) NOT NULL, + Operation CHAR (1) NOT NULL, + Who VARCHAR2 (128) NULL, + ChangeDesc VARCHAR2 (1024) NULL, + FocusModelId NUMBER (10) NOT NULL, + CoeffName VARCHAR2 (128) NOT NULL, + CoeffValue BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_FocusModelCoeffOp CHECK (Operation IN ('I', 'U', 'D')), + CONSTRAINT BL_FocMCKey PRIMARY KEY (Version, ModTime, Operation, FocusModelId, CoeffName) +); + + +CREATE TABLE BL_FocusModelCoeffOffset ( + Version NUMBER (10) NOT NULL, + ModTime NUMBER (19) NOT NULL, + Operation CHAR (1) NOT NULL, + Who VARCHAR2 (128) NULL, + ChangeDesc VARCHAR2 (1024) NULL, + FocusModelId NUMBER (10) NOT NULL, + CoeffName VARCHAR2 (128) NOT NULL, + ReceiverBand VARCHAR2 (128) NOT NULL, + Offset BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_AntennaFMCoeffOffOp CHECK (Operation IN ('I', 'U', 'D')), + CONSTRAINT BL_AntennaFMCoeffOffBand CHECK (ReceiverBand IN ('ALMA_RB_01', 'ALMA_RB_02', 'ALMA_RB_03', 'ALMA_RB_04', 'ALMA_RB_05', 'ALMA_RB_06', 'ALMA_RB_07', 'ALMA_RB_08', 'ALMA_RB_09', 'ALMA_RB_10')), + CONSTRAINT BL_FocMCOKey PRIMARY KEY (Version, ModTime, Operation, FocusModelId, CoeffName, ReceiverBand) +); + +CREATE TABLE BL_AntennaDelay ( + Version NUMBER (10) NOT NULL, + ModTime NUMBER (19) NOT NULL, + Operation CHAR (1) NOT NULL, + Who VARCHAR2 (128) NULL, + ChangeDesc VARCHAR2 (1024) NULL, + BaseElementId NUMBER (10) NOT NULL, + Delay BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_AntDelayKey PRIMARY KEY (Version, ModTime, Operation, BaseElementId) +); + +CREATE TABLE BL_Pad ( + Version NUMBER (10) NOT NULL, + ModTime NUMBER (19) NOT NULL, + Operation CHAR (1) NOT NULL, + Who VARCHAR2 (128) NULL, + ChangeDesc VARCHAR2 (1024) NULL, + BaseElementId NUMBER (10) NOT NULL, + CommissionDate NUMBER (19) NOT NULL, + XPosition BINARY_DOUBLE NOT NULL, + YPosition BINARY_DOUBLE NOT NULL, + ZPosition BINARY_DOUBLE NOT NULL, + Delay BINARY_DOUBLE NOT NULL, + CONSTRAINT BL_PadKey PRIMARY KEY (Version, ModTime, Operation, BaseElementId) +); diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/VersionHistoryTriggers.sql b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/VersionHistoryTriggers.sql new file mode 100755 index 0000000000000000000000000000000000000000..fedb0deee1f082a95e988c1adc8508c9f1c6ea27 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/TMCDB_hwconfigmonitoring/oracle/VersionHistoryTriggers.sql @@ -0,0 +1,852 @@ +-- VERSION HISTORY TRIGGERS +-- +-- The strategy that the following triggers is always the same. +-- For each trigger in table XXX the final objective is to create a record in the BL_XXX +-- table appropiatedly. The BL_XXX shadows the XXX table, keeping the history of versions +-- for the objects stored in the table XXX and its child tables. +-- For this is necessary to collect some data from the underlying 'entity', which is +-- the object for which the history is being tracked and that it has an independent editor +-- in the tmcdb-explorer. For example, for the pointing model coefficients, the 'entity' +-- would be a record in the PointingModel table. +-- Additional columns in the 'entity' are used to keep accounting data for changes that should +-- be considered as a whole. Several changes could be done when saving a single new version of the +-- entity. These columns are: +-- Locked - (not used yet) Reserved in case it is necessary to prevent concurrency problems +-- IncreaseVersion - Indicates if it is necessary to increase the version of the entity +-- CurrentVersion - Current version of the entity. +-- Who - The person that has made changes to the entity, creating a new version. +-- ChangeDesc - A description of the changes. +-- These columns are not mapped to Hibernate, as this causes problems with the tmcdb-explorer. +-- Instead, direct SQL is used to interact with them. In practice the only required interaction +-- is to perform the 'prepareSave' operation, that sets the IncreaseVersion to True. This column +-- is later read and updated by the triggers. + +-- ****************************************** +-- Function date_to_unixts +-- Converts Oracle DATA to UNIX timestamp +-- ****************************************** + +CREATE OR REPLACE FUNCTION date_to_unixts(oracle_date IN DATE) RETURN FLOAT IS + unix_epoch date := to_date('19700101000000','YYYYMMDDHH24MISS'); + unix_ts FLOAT; +BEGIN + unix_ts := (oracle_date - unix_epoch) * 86400.0; + RETURN(unix_ts); +END; +/ + +-- ********************************** +-- Antenna Delay History Trigger +-- ********************************** + +-- When the parent entity is the same as the entity being changed +-- we only care of updates, not inserts of deletes. Inserts are irrelevants +-- because they will always be the original version, saved in the next update. +-- Deletes are irrelevant because in this case there is no way of accessing the +-- history from the tmcdb-explorer. + +CREATE OR REPLACE TRIGGER AntDelayHistTrig +BEFORE UPDATE OF Delay ON Antenna +FOR EACH ROW +DECLARE + Version BL_AntennaDelay.Version%TYPE; + Oper CHAR(1); + Who BL_AntennaDelay.Who%TYPE; + ChangeDesc BL_AntennaDelay.ChangeDesc%TYPE; + EntityId Antenna.BaseElementId%TYPE; + Delay Antenna.Delay%Type; + LastModTime BL_AntennaDelay.ModTime%TYPE; + LastModTimeFE BL_FEDelay.ModTime%TYPE; + LastModTimeIF BL_IFDelay.ModTime%TYPE; + LastModTimeLO BL_LODelay.ModTime%TYPE; + LastModTimeAnt BL_AntennaDelay.ModTime%TYPE; +BEGIN + Oper := 'U'; + IF :old.Delay = :new.Delay THEN + RETURN; + END IF; + EntityId := :old.BaseElementId; + Delay := :old.Delay; + Version := :old.DelayBLCurrentVersion; + Who := :old.DelayBLWho; + ChangeDesc := :old.DelayBLChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF :old.DelayBLIncreaseVersion = '1' THEN + Version := Version + 1; + :new.DelayBLCurrentVersion := Version; + :new.DelayBLIncreaseVersion := '0'; + END IF; + INSERT INTO BL_AntennaDelay VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + EntityId, + Delay); +END; +/ + +-- ********************************** +-- Pad History Trigger +-- ********************************** + +CREATE OR REPLACE TRIGGER PadHistTrig +BEFORE UPDATE OF CommissionDate, XPosition, YPosition, ZPosition, Delay ON Pad +FOR EACH ROW +DECLARE + Version BL_Pad.Version%TYPE; + Oper CHAR(1); + Who BL_Pad.Who%TYPE; + ChangeDesc BL_Pad.ChangeDesc%TYPE; + EntityId Pad.BaseElementId%TYPE; + CommissionDate Pad.CommissionDate%TYPE; + XPosition Pad.XPosition%TYPE; + YPosition Pad.YPosition%TYPE; + ZPosition Pad.ZPosition%TYPE; + Delay Pad.Delay%TYPE; + LastModTime BL_Pad.ModTime%TYPE; +BEGIN + Oper := 'U'; + IF :old.Delay = :new.Delay AND :old.XPosition = :new.XPosition AND + :old.YPosition = :new.YPosition AND :old.ZPosition = :new.ZPosition THEN + RETURN; + END IF; + EntityId := :old.BaseElementId; + CommissionDate := :old.CommissionDate; + XPosition := :old.XPosition; + YPosition := :old.YPosition; + ZPosition := :old.ZPosition; + Delay := :old.Delay; + Version := :old.CurrentVersion; + Who := :old.Who; + ChangeDesc := :old.ChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF :old.IncreaseVersion = '1' THEN + Version := Version + 1; + :new.CurrentVersion := Version; + :new.IncreaseVersion := '0'; + END IF; + INSERT INTO BL_Pad VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + EntityId, + CommissionDate, + XPosition, + YPosition, + ZPosition, + Delay); +END; +/ + +-- ******************************* +-- FEDelay History Trigger +-- ******************************* + +CREATE OR REPLACE TRIGGER FEDelayHistTrig +BEFORE INSERT OR UPDATE OR DELETE ON FEDelay +FOR EACH ROW +DECLARE + Entity Antenna%ROWTYPE; + Version BL_FEDelay.Version%TYPE; + Oper CHAR(1); + EntityId Antenna.BaseElementId%TYPE; + FEDelayId FEDelay.FEDelayId%TYPE; + AntennaId FEDelay.AntennaId%TYPE; + ReceiverBand FEDelay.ReceiverBand%TYPE; + Polarization FEDelay.Polarization%TYPE; + SideBand FEDelay.SideBand%TYPE; + Delay FEDelay.Delay%TYPE; + LastModTime BL_FEDelay.ModTime%TYPE; + LastModTimeFE BL_FEDelay.ModTime%TYPE; + LastModTimeIF BL_IFDelay.ModTime%TYPE; + LastModTimeLO BL_LODelay.ModTime%TYPE; + LastModTimeAnt BL_AntennaDelay.ModTime%TYPE; + Who BL_FEDelay.Who%TYPE; + ChangeDesc BL_FEDelay.ChangeDesc%TYPE; +BEGIN + IF INSERTING THEN + Oper := 'I'; + EntityId := :new.AntennaId; + FEDelayId := :new.FEDelayId; + AntennaId := :new.AntennaId; + ReceiverBand := :new.ReceiverBand; + Polarization := :new.Polarization; + SideBand := :new.SideBand; + Delay := :new.Delay; + ELSIF UPDATING THEN + Oper := 'U'; + EntityId := :old.AntennaId; + FEDelayId := :old.FEDelayId; + AntennaId := :old.AntennaId; + ReceiverBand := :old.ReceiverBand; + Polarization := :old.Polarization; + SideBand := :old.SideBand; + Delay := :old.Delay; + ELSIF DELETING THEN + Oper := 'D'; + EntityId := :old.AntennaId; + FEDelayId := :old.FEDelayId; + AntennaId := :old.AntennaId; + ReceiverBand := :old.ReceiverBand; + Polarization := :old.Polarization; + SideBand := :old.SideBand; + Delay := :old.Delay; + END IF; + IF Oper = 'U' THEN + IF :old.Delay = :new.Delay THEN + RETURN; + END IF; + END IF; + SELECT * INTO Entity FROM Antenna WHERE BaseElementId = EntityId; + Version := Entity.DelayBLCurrentVersion; + Who := Entity.DelayBLWho; + ChangeDesc := Entity.DelayBLChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF Entity.DelayBLIncreaseVersion = '1' THEN + Version := Version + 1; + UPDATE Antenna SET DelayBLCurrentVersion = Version WHERE BaseElementId = EntityId; + UPDATE Antenna SET DelayBLIncreaseVersion = '0' WHERE BaseElementId = EntityId; + END IF; + INSERT INTO BL_FEDelay VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + FEDelayId, + AntennaId, + ReceiverBand, + Polarization, + SideBand, + Delay); +END; +/ + +-- ******************************* +-- IFDelay History Trigger +-- ******************************* + +CREATE OR REPLACE TRIGGER IFDelayHistTrig +BEFORE INSERT OR UPDATE OR DELETE ON IFDelay +FOR EACH ROW +DECLARE + Entity Antenna%ROWTYPE; + Version BL_IFDelay.Version%TYPE; + Oper CHAR(1); + EntityId Antenna.BaseElementId%TYPE; + IFDelayId IFDelay.IFDelayId%TYPE; + AntennaId IFDelay.AntennaId%TYPE; + BaseBand IFDelay.BaseBand%TYPE; + Polarization IFDelay.Polarization%TYPE; + IFSwitch IFDelay.IFSwitch%TYPE; + Delay IFDelay.Delay%Type; + LastModTime BL_IFDelay.ModTime%TYPE; + LastModTimeFE BL_FEDelay.ModTime%TYPE; + LastModTimeIF BL_IFDelay.ModTime%TYPE; + LastModTimeLO BL_LODelay.ModTime%TYPE; + LastModTimeAnt BL_AntennaDelay.ModTime%TYPE; + Who BL_IFDelay.Who%TYPE; + ChangeDesc BL_IFDelay.ChangeDesc%TYPE; +BEGIN + IF INSERTING THEN + Oper := 'I'; + EntityId := :new.AntennaId; + IFDelayId := :new.IFDelayId; + AntennaId := :new.AntennaId; + BaseBand := :new.BaseBand; + Polarization := :new.Polarization; + IFSwitch := :new.IFSwitch; + Delay := :new.Delay; + ELSIF UPDATING THEN + Oper := 'U'; + EntityId := :old.AntennaId; + IFDelayId := :old.IFDelayId; + AntennaId := :old.AntennaId; + BaseBand := :old.BaseBand; + Polarization := :old.Polarization; + IFSwitch := :old.IFSwitch; + Delay := :old.Delay; + ELSIF DELETING THEN + Oper := 'D'; + EntityId := :old.AntennaId; + IFDelayId := :old.IFDelayId; + AntennaId := :old.AntennaId; + BaseBand := :old.BaseBand; + Polarization := :old.Polarization; + IFSwitch := :old.IFSwitch; + Delay := :old.Delay; + END IF; + IF Oper = 'U' THEN + IF :old.Delay = :new.Delay THEN + RETURN; + END IF; + END IF; + SELECT * INTO Entity FROM Antenna WHERE BaseElementId = EntityId; + Version := Entity.DelayBLCurrentVersion; + Who := Entity.DelayBLWho; + ChangeDesc := Entity.DelayBLChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF Entity.DelayBLIncreaseVersion = '1' THEN + Version := Version + 1; + UPDATE Antenna SET DelayBLCurrentVersion = Version WHERE BaseElementId = EntityId; + UPDATE Antenna SET DelayBLIncreaseVersion = '0' WHERE BaseElementId = EntityId; + END IF; + INSERT INTO BL_IFDelay VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + IFDelayId, + AntennaId, + BaseBand, + Polarization, + IFSwitch, + Delay); +END; +/ + +-- ******************************* +-- LODelay History Trigger +-- ******************************* + + +CREATE OR REPLACE TRIGGER LODelayHistTrig +BEFORE INSERT OR UPDATE OR DELETE ON LODelay +FOR EACH ROW +DECLARE + Entity Antenna%ROWTYPE; + Version BL_LODelay.Version%TYPE; + Oper CHAR(1); + EntityId Antenna.BaseElementId%TYPE; + LODelayId LODelay.LODelayId%TYPE; + AntennaId LODelay.AntennaId%TYPE; + BaseBand LODelay.BaseBand%TYPE; + Delay LODelay.Delay%Type; + LastModTime BL_LODelay.ModTime%TYPE; + LastModTimeFE BL_FEDelay.ModTime%TYPE; + LastModTimeIF BL_IFDelay.ModTime%TYPE; + LastModTimeLO BL_LODelay.ModTime%TYPE; + LastModTimeAnt BL_AntennaDelay.ModTime%TYPE; + Who BL_LODelay.Who%TYPE; + ChangeDesc BL_LODelay.ChangeDesc%TYPE; +BEGIN + IF INSERTING THEN + Oper := 'I'; + EntityId := :new.AntennaId; + LODelayId := :new.LODelayId; + AntennaId := :new.AntennaId; + BaseBand := :new.BaseBand; + Delay := :new.Delay; + ELSIF UPDATING THEN + Oper := 'U'; + EntityId := :old.AntennaId; + LODelayId := :old.LODelayId; + AntennaId := :old.AntennaId; + BaseBand := :old.BaseBand; + Delay := :old.Delay; + ELSIF DELETING THEN + Oper := 'D'; + EntityId := :old.AntennaId; + LODelayId := :old.LODelayId; + AntennaId := :old.AntennaId; + BaseBand := :old.BaseBand; + Delay := :old.Delay; + END IF; + IF Oper = 'U' THEN + IF :old.Delay = :new.Delay THEN + RETURN; + END IF; + END IF; + SELECT * INTO Entity FROM Antenna WHERE BaseElementId = EntityId; + Version := Entity.DelayBLCurrentVersion; + Who := Entity.DelayBLWho; + ChangeDesc := Entity.DelayBLChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF Entity.DelayBLIncreaseVersion = '1' THEN + Version := Version + 1; + UPDATE Antenna SET DelayBLCurrentVersion = Version WHERE BaseElementId = EntityId; + UPDATE Antenna SET DelayBLIncreaseVersion = '0' WHERE BaseElementId = EntityId; + END IF; + INSERT INTO BL_LODelay VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + LODelayId, + AntennaId, + BaseBand, + Delay); +END; +/ + +-- ******************************* +-- XPDelay History Trigger +-- ******************************* + +CREATE OR REPLACE TRIGGER XPDelayHistTrig +BEFORE INSERT OR UPDATE OR DELETE ON XPDelay +FOR EACH ROW +DECLARE + Entity HWConfiguration%ROWTYPE; + Version BL_XPDelay.Version%TYPE; + Oper CHAR(1); + EntityId HWConfiguration.ConfigurationId%TYPE; + XPDelayId XPDelay.XPDelayId%TYPE; + ConfigurationId XPDelay.ConfigurationId%TYPE; + ReceiverBand XPDelay.ReceiverBand%TYPE; + SideBand XPDelay.SideBand%TYPE; + BaseBand XPDelay.BaseBand%TYPE; + Delay XPDelay.Delay%TYPE; + LastModTime BL_XPDelay.ModTime%TYPE; + Who BL_XPDelay.Who%TYPE; + ChangeDesc BL_XPDelay.ChangeDesc%TYPE; +BEGIN + IF INSERTING THEN + Oper := 'I'; + EntityId := :new.ConfigurationId; + XPDelayId := :new.XPDelayId; + ConfigurationId := :new.ConfigurationId; + ReceiverBand := :new.ReceiverBand; + SideBand := :new.SideBand; + BaseBand := :new.BaseBand; + Delay := :new.Delay; + ELSIF UPDATING THEN + Oper := 'U'; + EntityId := :old.ConfigurationId; + XPDelayId := :old.XPDelayId; + ConfigurationId := :old.ConfigurationId; + ReceiverBand := :old.ReceiverBand; + SideBand := :old.SideBand; + BaseBand := :old.BaseBand; + Delay := :old.Delay; + ELSIF DELETING THEN + Oper := 'D'; + EntityId := :old.ConfigurationId; + XPDelayId := :old.XPDelayId; + ConfigurationId := :old.ConfigurationId; + ReceiverBand := :old.ReceiverBand; + SideBand := :old.SideBand; + BaseBand := :old.BaseBand; + Delay := :old.Delay; + END IF; + IF Oper = 'U' THEN + IF :old.Delay = :new.Delay THEN + RETURN; + END IF; + END IF; + SELECT * INTO Entity FROM HWConfiguration WHERE ConfigurationId = EntityId; + Version := Entity.XPDelayBLCurrentVersion; + Who := Entity.XPDelayBLWho; + ChangeDesc := Entity.XPDelayBLChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF Entity.XPDelayBLIncreaseVersion = '1' THEN + Version := Version + 1; + UPDATE HWConfiguration SET XPDelayBLCurrentVersion = Version WHERE ConfigurationId = EntityId; + UPDATE HWConfiguration SET XPDelayBLIncreaseVersion = '0' WHERE ConfigurationId = EntityId; + END IF; + INSERT INTO BL_XPDelay VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Entity.XPDelayBLWho, + Entity.XPDelayBLChangeDesc, + XPDelayId, + ConfigurationId, + ReceiverBand, + SideBand, + BaseBand, + Delay); +END; +/ + +-- ************************************** +-- PointingModelCoeff History Trigger +-- ************************************** + +CREATE OR REPLACE TRIGGER PointingModelHistTrig +BEFORE INSERT OR UPDATE OR DELETE ON PointingModelCoeff +FOR EACH ROW +DECLARE + Entity PointingModel%ROWTYPE; + Version BL_PointingModelCoeff.Version%TYPE; + Oper CHAR(1); + EntityId PointingModel.PointingModelId%TYPE; + CoeffName PointingModelCoeff.CoeffName%TYPE; + CoeffValue PointingModelCoeff.CoeffValue%TYPE; + LastModTime BL_PointingModelCoeff.ModTime%TYPE; + Who BL_PointingModelCoeff.Who%TYPE; + ChangeDesc BL_PointingModelCoeff.ChangeDesc%TYPE; +BEGIN + IF INSERTING THEN + Oper := 'I'; + EntityId := :new.PointingModelId; + CoeffName := :new.CoeffName; + CoeffValue := :new.CoeffValue; + ELSIF UPDATING THEN + Oper := 'U'; + EntityId := :old.PointingModelId; + CoeffName := :old.CoeffName; + CoeffValue := :old.CoeffValue; + ELSIF DELETING THEN + Oper := 'D'; + EntityId := :old.PointingModelId; + CoeffName := :old.CoeffName; + CoeffValue := :old.CoeffValue; + END IF; + IF Oper = 'U' THEN + IF :old.CoeffValue = :new.CoeffValue THEN + RETURN; + END IF; + END IF; + SELECT * INTO Entity FROM PointingModel WHERE PointingModelId = EntityId; + Version := Entity.CurrentVersion; + Who := Entity.Who; + ChangeDesc := Entity.ChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF Entity.IncreaseVersion = '1' THEN + Version := Version + 1; + UPDATE PointingModel SET CurrentVersion = Version WHERE PointingModelId = EntityId; + UPDATE PointingModel SET IncreaseVersion = '0' WHERE PointingModelId = EntityId; + END IF; + INSERT INTO BL_PointingModelCoeff VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + EntityId, + CoeffName, + CoeffValue); +END; +/ + +-- ******************************************** +-- PointingModelCoeffOffset History Trigger +-- ******************************************** + +CREATE OR REPLACE TRIGGER PMCoeffOffsetHistTrig +BEFORE INSERT OR UPDATE OR DELETE ON PointingModelCoeffOffset +FOR EACH ROW +DECLARE + Entity PointingModel%ROWTYPE; + Version BL_PointingModelCoeff.Version%TYPE; + Coeff PointingModelCoeff%ROWTYPE; + Oper CHAR(1); + CoeffId PointingModelCoeffOffset.PointingModelCoeffId%TYPE; + Band PointingModelCoeffOffset.ReceiverBand%TYPE; + Offset PointingModelCoeffOffset.Offset%TYPE; + LastModTime BL_PointingModelCoeff.ModTime%TYPE; + LastModTime2 BL_PointingModelCoeffOffset.ModTime%TYPE; + Who BL_PointingModelCoeffOffset.Who%TYPE; + ChangeDesc BL_PointingModelCoeffOffset.ChangeDesc%TYPE; +BEGIN + IF INSERTING THEN + Oper := 'I'; + CoeffId := :new.PointingModelCoeffId; + Band := :new.ReceiverBand; + Offset := :new.Offset; + ELSIF UPDATING THEN + Oper := 'U'; + CoeffId := :old.PointingModelCoeffId; + Band := :old.ReceiverBand; + Offset := :old.Offset; + ELSIF DELETING THEN + Oper := 'D'; + CoeffId := :old.PointingModelCoeffId; + Band := :old.ReceiverBand; + Offset := :old.Offset; + END IF; + IF Oper = 'U' THEN + IF :old.Offset = :new.Offset THEN + RETURN; + END IF; + END IF; + SELECT * INTO Coeff FROM PointingModelCoeff WHERE + PointingModelCoeffId = CoeffId; + SELECT * INTO Entity FROM PointingModel WHERE PointingModelId = Coeff.PointingModelId; + Version := Entity.CurrentVersion; + Who := Entity.Who; + ChangeDesc := Entity.ChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF Entity.IncreaseVersion = '1' THEN + Version := Version + 1; + update PointingModel SET CurrentVersion = Version WHERE PointingModelId = Entity.PointingModelId; + update PointingModel SET IncreaseVersion = '0' WHERE PointingModelId = Entity.PointingModelId; + END IF; + INSERT INTO BL_PointingModelCoeffOffset VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + Coeff.PointingModelId, + Coeff.CoeffName, + Band, + Offset); +END; +/ + +-- ************************************** +-- FocusModelCoeff History Trigger +-- ************************************** + +CREATE OR REPLACE TRIGGER FocusModelHistTrig +BEFORE INSERT OR UPDATE OR DELETE ON FocusModelCoeff +FOR EACH ROW +DECLARE + Entity FocusModel%ROWTYPE; + Version BL_FocusModelCoeff.Version%TYPE; + Oper CHAR(1); + EntityId FocusModel.FocusModelId%TYPE; + CoeffName FocusModelCoeff.CoeffName%TYPE; + CoeffValue FocusModelCoeff.CoeffValue%TYPE; + LastModTime BL_FocusModelCoeff.ModTime%TYPE; + Who BL_FocusModelCoeff.Who%TYPE; + ChangeDesc BL_FocusModelCoeff.ChangeDesc%TYPE; +BEGIN + IF INSERTING THEN + Oper := 'I'; + EntityId := :new.FocusModelId; + CoeffName := :new.CoeffName; + CoeffValue := :new.CoeffValue; + ELSIF UPDATING THEN + Oper := 'U'; + EntityId := :old.FocusModelId; + CoeffName := :old.CoeffName; + CoeffValue := :old.CoeffValue; + ELSIF DELETING THEN + Oper := 'D'; + EntityId := :old.FocusModelId; + CoeffName := :old.CoeffName; + CoeffValue := :old.CoeffValue; + END IF; + IF Oper = 'U' THEN + IF :old.CoeffValue = :new.CoeffValue THEN + RETURN; + END IF; + END IF; + SELECT * INTO Entity FROM FocusModel WHERE FocusModelId = EntityId; + Version := Entity.CurrentVersion; + Who := Entity.Who; + ChangeDesc := Entity.ChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF Entity.IncreaseVersion = '1' THEN + Version := Version + 1; + UPDATE FocusModel SET CurrentVersion = version WHERE FocusModelId = EntityId; + UPDATE FocusModel SET IncreaseVersion = '0' WHERE FocusModelId = EntityId; + END IF; + INSERT INTO BL_FocusModelCoeff VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + EntityId, + CoeffName, + CoeffValue); +END; +/ + +-- ******************************************** +-- PointingModelCoeffOffset History Trigger +-- ******************************************** + +CREATE OR REPLACE TRIGGER FMCoeffOffsetHistTrig +BEFORE INSERT OR UPDATE OR DELETE ON FocusModelCoeffOffset +FOR EACH ROW +DECLARE + Entity FocusModel%ROWTYPE; + Version BL_FocusModelCoeff.Version%TYPE; + Coeff FocusModelCoeff%ROWTYPE; + Oper CHAR(1); + CoeffId FocusModelCoeffOffset.FocusModelCoeffId%TYPE; + Band FocusModelCoeffOffset.ReceiverBand%TYPE; + Offset FocusModelCoeffOffset.Offset%TYPE; + LastModTime BL_PointingModelCoeff.ModTime%TYPE; + LastModTime2 BL_PointingModelCoeffOffset.ModTime%TYPE; + Who BL_PointingModelCoeffOffset.Who%TYPE; + ChangeDesc BL_PointingModelCoeffOffset.ChangeDesc%TYPE; +BEGIN + IF INSERTING THEN + Oper := 'I'; + CoeffId := :new.FocusModelCoeffId; + Band := :new.ReceiverBand; + Offset := :new.Offset; + ELSIF UPDATING THEN + Oper := 'U'; + CoeffId := :old.FocusModelCoeffId; + Band := :old.ReceiverBand; + Offset := :old.Offset; + ELSIF DELETING THEN + Oper := 'D'; + CoeffId := :old.FocusModelCoeffId; + Band := :old.ReceiverBand; + Offset := :old.Offset; + END IF; + IF Oper = 'U' THEN + IF :old.Offset = :new.Offset THEN + RETURN; + END IF; + END IF; + SELECT * INTO Coeff FROM FocusModelCoeff WHERE + FocusModelCoeffId = CoeffId; + SELECT * INTO entity FROM FocusModel WHERE FocusModelId = Coeff.FocusModelId; + Version := Entity.CurrentVersion; + Who := Entity.Who; + ChangeDesc := Entity.ChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF Entity.IncreaseVersion = '1' THEN + Version := Version + 1; + update FocusModel SET CurrentVersion = Version WHERE FocusModelId = Entity.FocusModelId; + update FocusModel SET IncreaseVersion = '0' WHERE FocusModelId = Entity.FocusModelId; + END IF; + INSERT INTO BL_FocusModelCoeffOffset VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + Coeff.FocusModelId, + Coeff.CoeffName, + Band, + Offset); +END; +/ + +-- ********************************** +-- AntennaToPad History Trigger +-- ********************************** + +CREATE OR REPLACE TRIGGER AntennaToPadHistTrig +BEFORE UPDATE OF MountMetrologyAN0Coeff, MountMetrologyAW0Coeff ON AntennaToPad +FOR EACH ROW +DECLARE + Version BL_AntennaToPad.Version%TYPE; + Oper CHAR(1); + Who BL_AntennaToPad.Who%TYPE; + ChangeDesc BL_AntennaToPad.ChangeDesc%TYPE; + EntityId AntennaToPad.AntennaToPadId%TYPE; + MountMetrologyAN0Coeff BL_AntennaToPad.MountMetrologyAN0Coeff%TYPE; + MountMetrologyAW0Coeff BL_AntennaToPad.MountMetrologyAW0Coeff%TYPE; +BEGIN + Oper := 'U'; + IF :old.MountMetrologyAW0Coeff = :new.MountMetrologyAW0Coeff AND :old.MountMetrologyAN0Coeff = :new.MountMetrologyAN0Coeff THEN + RETURN; + END IF; + EntityId := :old.AntennaToPadId; + MountMetrologyAN0Coeff := :old.MountMetrologyAN0Coeff; + MountMetrologyAW0Coeff := :old.MountMetrologyAW0Coeff; + Version := :old.CurrentVersion; + Who := :old.Who; + ChangeDesc := :old.ChangeDesc; + IF Version IS NULL THEN + Version := 0; + END IF; + IF Who IS NULL THEN + Who := '???'; + END IF; + IF ChangeDesc IS NULL THEN + ChangeDesc := '???'; + END IF; + IF :old.IncreaseVersion = '1' THEN + Version := Version + 1; + :new.CurrentVersion := Version; + :new.IncreaseVersion := '0'; + END IF; + INSERT INTO BL_AntennaToPad VALUES ( + Version, + date_to_unixts(sysdate), + Oper, + Who, + ChangeDesc, + EntityId, + MountMetrologyAN0Coeff, + MountMetrologyAW0Coeff); +END; +/ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/hibernate.cfg.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/config/hibernate.cfg.xml new file mode 100755 index 0000000000000000000000000000000000000000..6dec5354ee16ebf209db0a23422a773efd6688d2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/hibernate.cfg.xml @@ -0,0 +1,51 @@ + + + + + + + org.hsqldb.jdbcDriver + + + jdbc:hsqldb:hsql://localhost:8090 + + + sa + + + + org.hibernate.dialect.HSQLDialect + + + + 5 + 20 + 300 + 50 + 3000 + + + true + true + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/config/hibernate.oracle.cfg.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/config/hibernate.oracle.cfg.xml new file mode 100755 index 0000000000000000000000000000000000000000..3076734563837a051144c346081d799148ada9f8 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/config/hibernate.oracle.cfg.xml @@ -0,0 +1,53 @@ + + + + + + + oracle.jdbc.driver.OracleDriver + + + jdbc:oracle:thin:@//pumice:1521/XE + + + rhiriart + + alma$dba + + org.hibernate.dialect.Oracle10gDialect + + + + + 5 + 20 + 300 + 50 + 3000 + + + true + true + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/aopalliance-1.0.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/aopalliance-1.0.jar new file mode 100755 index 0000000000000000000000000000000000000000..578b1a0c359ef88a84461bdb91d9d0041afd54de Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/aopalliance-1.0.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/beanlib-5.0.2beta.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/beanlib-5.0.2beta.jar new file mode 100755 index 0000000000000000000000000000000000000000..12b329126f8da3781c03e4020c88847d4566b3c4 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/beanlib-5.0.2beta.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/beanlib-hibernate-5.0.2beta.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/beanlib-hibernate-5.0.2beta.jar new file mode 100755 index 0000000000000000000000000000000000000000..9f2cdb2266f5e8600506f00ec86fb02a0727b967 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/beanlib-hibernate-5.0.2beta.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/c3p0-0.9.1.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/c3p0-0.9.1.jar new file mode 100755 index 0000000000000000000000000000000000000000..693667a34b65902de62d3b2d975df8298b135077 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/c3p0-0.9.1.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/cglib-2.2.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/cglib-2.2.jar new file mode 100755 index 0000000000000000000000000000000000000000..084ef6e54b5144b25de6baa454aa93f1a51c9e0e Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/cglib-2.2.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/javassist-3.12.0.GA.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/javassist-3.12.0.GA.jar new file mode 100755 index 0000000000000000000000000000000000000000..8f692f4f2704b2d3f5f13e3014fcfc629f6b58bf Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/javassist-3.12.0.GA.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/jcip-annotations.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/jcip-annotations.jar new file mode 100755 index 0000000000000000000000000000000000000000..ee22858b3cae3e95e03a1d75ad8b70c546df1fad Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/jcip-annotations.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/tar.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/tar.jar new file mode 100755 index 0000000000000000000000000000000000000000..0d4def631388b3a4f430b800041c37c83a46ff49 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/tar.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/lib/xstream-1.3.1.jar b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/xstream-1.3.1.jar new file mode 100755 index 0000000000000000000000000000000000000000..4ef4219c6f62944a898fd5bec4bfeb8671109d5b Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Persistence/lib/xstream-1.3.1.jar differ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/object/TMCDBCloning/TMCDBCloning.manifest b/ARCHIVE/SharedCode/TMCDB/Persistence/object/TMCDBCloning/TMCDBCloning.manifest new file mode 100644 index 0000000000000000000000000000000000000000..9587b5515803dd0d206c6f30e4ed5633cc61ed07 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/object/TMCDBCloning/TMCDBCloning.manifest @@ -0,0 +1 @@ +TMCDBCloning-ACS-Generated-FromModule: /home/astrisw/TestMaster/tmcdb_files/SharedCode/TMCDB/Persistence/src diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/object/TMCDBPersistence/TMCDBPersistence.manifest b/ARCHIVE/SharedCode/TMCDB/Persistence/object/TMCDBPersistence/TMCDBPersistence.manifest new file mode 100644 index 0000000000000000000000000000000000000000..876088fb35b950d929bf22df5cc6d132f4d0d669 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/object/TMCDBPersistence/TMCDBPersistence.manifest @@ -0,0 +1 @@ +TMCDBPersistence-ACS-Generated-FromModule: /home/astrisw/TestMaster/tmcdb_files/SharedCode/TMCDB/Persistence/src diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/Makefile b/ARCHIVE/SharedCode/TMCDB/Persistence/src/Makefile new file mode 100755 index 0000000000000000000000000000000000000000..1496db3528731a6f5d1cc09d3c60703fb4aea740 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/Makefile @@ -0,0 +1,221 @@ +#******************************************************************************* +# PPPPPPPP +# +# "@(#) $Id: Makefile,v 1.34 2012/11/15 21:28:15 sharring Exp $" +# +# Makefile of ........ +# +# who when what +# -------- -------- ---------------------------------------------- +# rhiriart 11/03/09 created +# + +#******************************************************************************* +# This Makefile follows VLT Standards (see Makefile(5) for more). +#******************************************************************************* +# REMARKS +# None +#------------------------------------------------------------------------ + +# +# user definable C-compilation flags +#USER_CFLAGS = + +# +# additional include and library search paths +#USER_INC = +#USER_LIB = + +# +# MODULE CODE DESCRIPTION: +# ------------------------ +# As a general rule: public file are "cleaned" and "installed" +# local (_L) are not "installed". + +# +# C programs (public and local) +# ----------------------------- +EXECUTABLES = +EXECUTABLES_L = + +# +# +xxxxx_OBJECTS = +xxxxx_LDFLAGS = +xxxxx_LIBS = + +# +# special compilation flags for single c sources +#yyyyy_CFLAGS = + +# +# Includes (.h) files (public only) +# --------------------------------- +INCLUDES = + +# +# Libraries (public and local) +# ---------------------------- +LIBRARIES = +LIBRARIES_L = + +# +# +lllll_OBJECTS = + +# +# Scripts (public and local) +# ---------------------------- +SCRIPTS = +SCRIPTS_L = + +# +# TCL scripts (public and local) +# ------------------------------ +TCL_SCRIPTS = +TCL_SCRIPTS_L = + +# +# Python stuff (public and local) +# ---------------------------- +PY_SCRIPTS = +PY_SCRIPTS_L = + +PY_MODULES = +PY_MODULES_L = + +PY_PACKAGES = +PY_PACKAGES_L = +pppppp_MODULES = + +# +# +tttttt_OBJECTS = +tttttt_TCLSH = +tttttt_LIBS = + +# +# TCL libraries (public and local) +# ------------------------------ +TCL_LIBRARIES = +TCL_LIBRARIES_L = + +# +# +tttlll_OBJECTS = + +# +# Configuration Database Files +# ---------------------------- +CDB_SCHEMAS = + +# +# IDL Files and flags +# +IDL_FILES = +TAO_IDLFLAGS = +USER_IDL = +# +# Jarfiles and their directories +# +JARFILES=TMCDBPersistence TMCDBCloning +TMCDBPersistence_DIRS=alma/tmcdb/utils # alma/tmcdb/history +TMCDBCloning_DIRS=alma/tmcdb/cloning +TMCDBPersistence_EXTRAS= log4j.xml \ + tmcdb.hibernate.cfg.xml + +# +# java sources in Jarfile on/off +DEBUG=on +# +# ACS XmlIdl generation on/off +# +XML_IDL= +# +# Java Component Helper Classes generation on/off +# +COMPONENT_HELPERS= +# +# Java Entity Classes generation on/off +# +XSDBIND= +# +# Schema Config files for the above +# +XSDBIND_INCLUDE= +# man pages to be done +# -------------------- +MANSECTIONS = +MAN1 = +MAN3 = +MAN5 = +MAN7 = +MAN8 = + +# +# local man pages +# --------------- +MANl = + +# +# ASCII file to be converted into Framemaker-MIF +# -------------------- +ASCII_TO_MIF = + +# +# other files to be installed +#---------------------------- +INSTALL_FILES = ../lib/beanlib-hibernate-5.0.2beta.jar \ + ../lib/beanlib-5.0.2beta.jar \ + ../lib/aopalliance-1.0.jar \ + ../lib/xstream-1.3.1.jar \ + ../lib/jcip-annotations.jar \ + ../lib/cglib-nodep-2.1_3.jar \ + ../lib/javassist-3.12.0.GA.jar \ + ../lib/tar.jar + +# +# list of all possible C-sources (used to create automatic dependencies) +# ------------------------------ +CSOURCENAMES = \ + $(foreach exe, $(EXECUTABLES) $(EXECUTABLES_L), $($(exe)_OBJECTS)) \ + $(foreach rtos, $(RTAI_MODULES) , $($(rtos)_OBJECTS)) \ + $(foreach lib, $(LIBRARIES) $(LIBRARIES_L), $($(lib)_OBJECTS)) + +# +#>>>>> END OF standard rules + +# +# INCLUDE STANDARDS +# ----------------- + +MAKEDIRTMP := $(shell searchFile include/acsMakefile) +ifneq ($(MAKEDIRTMP),\#error\#) + MAKEDIR := $(MAKEDIRTMP)/include + include $(MAKEDIR)/acsMakefile +endif + +# +# TARGETS +# ------- +all: do_all + @echo " . . . 'all' done" + +clean : clean_all + @echo " . . . clean done" + +clean_dist : clean_all clean_dist_all + @echo " . . . clean_dist done" + +man : do_man + @echo " . . . man page(s) done" + +DDLDATA=$(ACSDATA)/config/DDL +install : install_all + @echo "== Copying trigger definitions .sql files to $(DDLDATA)/oracle" +#ntroncos 20110103 Fix. Before copying lets guarantee the destination direcoty exists. + @mkdir -p $(DDLDATA)/oracle/TMCDB_hwconfigmonitoring + @cp ../config/TMCDB_hwconfigmonitoring/oracle/*.sql $(DDLDATA)/oracle/TMCDB_hwconfigmonitoring + @echo " . . . installation done" + +#___oOo___ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/BaseElementTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/BaseElementTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..a85e46f3e929b901e2d6815c9ffd7971a4ff0e49 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/BaseElementTransformer.java @@ -0,0 +1,64 @@ +package alma.tmcdb.cloning; + +import java.util.Set; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; + +import org.hibernate.collection.PersistentSet; + +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.BaseElement; +//import alma.acs.tmcdb.BaseElementType; + +/** + * Used in cloning; custom transformer to handle startup scenarios; specifically, reuses many of the 'global' + * (and/or other items that can be shared within a configuration) from the startup scenario that is being cloned, + * rather than blindly cloning everything recursively. + * + * @author sharrington + */ +public class BaseElementTransformer implements CustomBeanTransformerSpi +{ + private HWConfiguration configurationBeingCloned; + private BeanTransformerSpi defaultBeanTransformer; + + public BaseElementTransformer(BeanTransformerSpi contextBeanTransformer, HWConfiguration configurationBeingCloned) + { + this.defaultBeanTransformer = contextBeanTransformer; + this.configurationBeingCloned = configurationBeingCloned; + } + + @Override + @SuppressWarnings("unchecked") + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + boolean retVal = false; + + if(null != from && BaseElement.class.isAssignableFrom(toClass)) + { + BaseElement be = (BaseElement) from; + // if the baseelement is from a *different* configuration, this transformer will handle it; otherwise not. + if(!be.getHWConfiguration().getConfiguration().getConfigurationName().equals(configurationBeingCloned.getConfiguration().getConfigurationName()) || + (null != be.getHWConfiguration().getConfigurationId() && null != configurationBeingCloned.getConfigurationId() + && !be.getHWConfiguration().getConfigurationId().equals(configurationBeingCloned.getConfigurationId())) ) + { + retVal = true; + } + } + + return retVal; + } + + @SuppressWarnings("unchecked") + @Override + public T transform(Object in, Class toClass, PropertyInfo propertyInfo) + { + // because the baseelement is from a different configuration (hence this transformer is handling it), + // we don't actually want to clone it, instead just returning it as-is. + T retVal = (T)in; + return retVal; + } +} + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/BaseElementTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/BaseElementTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..b52d6f9c88749f0160b750353a4b34f6cec22743 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/BaseElementTransformerFactory.java @@ -0,0 +1,27 @@ +package alma.tmcdb.cloning; + +import alma.acs.tmcdb.BaseElement; +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; + +import alma.acs.tmcdb.HWConfiguration; + +/** + * Factory to return a transformer which will 'pass through' (i.e. return the identical object reference) + * any 'global' domain classes. + * + * @author sharrington + */ +public class BaseElementTransformerFactory implements CustomBeanTransformerSpi.Factory +{ + private HWConfiguration configBeingCloned; + + public BaseElementTransformerFactory(HWConfiguration configBeingCloned) + { + this.configBeingCloned = configBeingCloned; + } + + public CustomBeanTransformerSpi newCustomBeanTransformer(BeanTransformerSpi beanTransformer) { + return new BaseElementTransformer(beanTransformer, configBeingCloned); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneAlmaEnumTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneAlmaEnumTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..5c7618832512d86fd423e1efe3128bd2c6ae9b07 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneAlmaEnumTransformer.java @@ -0,0 +1,35 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import alma.BasebandNameMod.BasebandName; +import alma.NetSidebandMod.NetSideband; +import alma.PolarizationTypeMod.PolarizationType; +import alma.ReceiverBandMod.ReceiverBand; + +public class CloneAlmaEnumTransformer implements CustomBeanTransformerSpi +{ + protected BeanTransformerSpi defaultBeanTransformer; + + public CloneAlmaEnumTransformer(BeanTransformerSpi beanTransformer) + { + this.defaultBeanTransformer = beanTransformer; + } + + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + return (toClass == ReceiverBand.class || + toClass == BasebandName.class || + toClass == PolarizationType.class || + toClass == NetSideband.class); + } + + @SuppressWarnings("unchecked") + public T transform(Object in, Class toClass, PropertyInfo propertyInfo) + { + // Default behavior: global tables' rows are just copied + T retVal = (T)in; + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneAlmaEnumTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneAlmaEnumTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..85ec0ce856076ac789eb2a8439019e5856bf15cc --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneAlmaEnumTransformerFactory.java @@ -0,0 +1,20 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi.Factory; + +/** + * Transformer factory used when cloning alma enums, which don't have a no-args constructor, using beanlib. + * @author sharring + */ +public class CloneAlmaEnumTransformerFactory implements Factory +{ + @Override + public CustomBeanTransformerSpi newCustomBeanTransformer( + BeanTransformerSpi contextBeanTransformer) + { + return new CloneAlmaEnumTransformer(contextBeanTransformer); + } +} + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneBACIPropertiesTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneBACIPropertiesTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..b30cb9130fcdc5d39ffdf73af7c4c0a286f70f66 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneBACIPropertiesTransformer.java @@ -0,0 +1,68 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import alma.acs.tmcdb.BACIProperty; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.Configuration; + +/** + * Transformer for copying baci properties (used during cloning of antenna baseelement, e.g.) + * @author sharring + */ +public class CloneBACIPropertiesTransformer extends ConfigurationGlobalTransformer +{ + private Component component; + + /** + * Constructor. + */ + public CloneBACIPropertiesTransformer(BeanTransformerSpi beanTransformer, Component component) + { + super(beanTransformer); + this.component = component; + } + + @Override + @SuppressWarnings("unchecked") + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + boolean retVal = false; + + if(super.isTransformable(from, toClass, propertyInfo)) + { + retVal = true; + } + // We check with isAssignableFrom instead of doing == between the classes + // because we may get hibernate proxies instead of the actual instances + // of our domain classes + else if(Configuration.class.isAssignableFrom(toClass) || + Component.class.isAssignableFrom(toClass) || + BACIProperty.class.isAssignableFrom(toClass) ) + { + retVal = true; + } + + return retVal; + } + + @SuppressWarnings("unchecked") + @Override + public T transform(Object in, Class toClass, + PropertyInfo propertyInfo) + { + T retVal = (T)in; + + if(BACIProperty.class.isAssignableFrom(toClass) && in != null) + { + retVal = (T)defaultBeanTransformer.getBeanReplicatable().replicateBean(in, BACIProperty.class); + } + + if(Component.class.isAssignableFrom(toClass) && in != null) { + retVal = (T)component; + } + + return retVal; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneBACIPropertiesTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneBACIPropertiesTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..c335de95d2118985e2cc7d2594d2e12fb0c1b4e8 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneBACIPropertiesTransformerFactory.java @@ -0,0 +1,26 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi.Factory; +import alma.acs.tmcdb.Component; + +/** + * Factory to create transformer objects used during cloning of baci properties (part of antenna cloning). + * @author sharring + */ +public class CloneBACIPropertiesTransformerFactory implements Factory +{ + private Component component; + + public CloneBACIPropertiesTransformerFactory(Component component) + { + this.component = component; + } + + @Override + public CustomBeanTransformerSpi newCustomBeanTransformer(BeanTransformerSpi contextBeanTransformer) + { + return new CloneBACIPropertiesTransformer(contextBeanTransformer, component); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneComponentsTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneComponentsTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..1f748e08dd2f59dd3c6e7c6c5214621e1722c0d3 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneComponentsTransformer.java @@ -0,0 +1,79 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import alma.acs.tmcdb.BACIProperty; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; + +/** + * Beanlib transformer used when cloning components. + * + * To clone a component, the path+name must be changed somehow. Either way, we will end up in a + * constraint violation error. This transformer replaces a given part of the path of the component for a new one. + * + * @author rtobar, Mar 30, 2010 + */ +public class CloneComponentsTransformer extends ConfigurationGlobalTransformer +{ + + private Configuration _addToConfiguration; + private ComponentNameReplacer _replacer; + + /** + * Constructor. + */ + public CloneComponentsTransformer(BeanTransformerSpi beanTransformer, ComponentNameReplacer replacer, Configuration addToConfiguration) + { + super(beanTransformer); + _addToConfiguration = addToConfiguration; + _replacer = replacer; + } + + @SuppressWarnings("rawtypes") + @Override + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + boolean retVal = false; + + if(super.isTransformable(from, toClass, propertyInfo)) + { + retVal = true; + } + // We check with isAssignableFrom instead of doing == between the classes + // because we may get hibernate proxies instead of the actual instances + // of our domain classes + else if(Configuration.class.isAssignableFrom(toClass) || + Component.class.isAssignableFrom(toClass) || + Container.class.isAssignableFrom(toClass) || + BACIProperty.class.isAssignableFrom(toClass) ) + { + retVal = true; + } + + return retVal; + } + + @SuppressWarnings("unchecked") + @Override + public T transform(Object in, Class toClass, + PropertyInfo propertyInfo) + { + T retVal = (T)in; + + // Replace the path + if(Component.class.isAssignableFrom(toClass) && in != null) + { + retVal = (T)defaultBeanTransformer.getBeanReplicatable().replicateBean(in, Component.class); + Component comp = (Component)retVal; + _replacer.replaceName(comp); + } + + if(Configuration.class.isAssignableFrom(toClass) && in != null) { + retVal = (T) _addToConfiguration; + } + + return retVal; + } +} \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneComponentsTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneComponentsTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..d1e432ca4e8ecde98e67d1f2d0aa277a4aece748 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneComponentsTransformerFactory.java @@ -0,0 +1,30 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi.Factory; +import alma.acs.tmcdb.Configuration; + +/** + * Transformer factory used when cloning base elements using beanlib. + * @author sharring + */ +public class CloneComponentsTransformerFactory implements Factory +{ + + private ComponentNameReplacer _replacer; + private Configuration _addToConfiguration; + + public CloneComponentsTransformerFactory(ComponentNameReplacer replacer, Configuration addToConfiguration) { + _addToConfiguration = addToConfiguration; + _replacer = replacer; + } + + @Override + public CustomBeanTransformerSpi newCustomBeanTransformer( + BeanTransformerSpi contextBeanTransformer) + { + return new CloneComponentsTransformer(contextBeanTransformer, _replacer, _addToConfiguration); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneContainersTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneContainersTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..fd1d17d7369cd3fa41cb2670a0d5b142fa4aff3b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneContainersTransformer.java @@ -0,0 +1,88 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.Computer; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; + +/** + * Beanlib transformer used when cloning containers. + * + * To clone a container, the path+name must be changed somehow. Either way, we will end up in a + * constraint violation error. This transformer replaces a given part of the path of the container for a new one. + * + * @author rtobar, Mar 30, 2010 + */ +public class CloneContainersTransformer extends ConfigurationGlobalTransformer +{ + + private String oldName; + private String newName; + private Configuration addToConfiguration; + + /** + * Constructor. + */ + public CloneContainersTransformer(BeanTransformerSpi beanTransformer, String oldName, String newName, Configuration addToConfiguration) + { + super(beanTransformer); + this.oldName = oldName; + this.newName = newName; + this.addToConfiguration = addToConfiguration; + } + + @Override + @SuppressWarnings("unchecked") + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + boolean retVal = false; + + if(super.isTransformable(from, toClass, propertyInfo)) + { + retVal = true; + } + // We check with isAssignableFrom instead of doing == between the classes + // because we may get hibernate proxies instead of the actual instances + // of our domain classes + else if(Configuration.class.isAssignableFrom(toClass) || + Computer.class.isAssignableFrom(toClass) || + Container.class.isAssignableFrom(toClass) || + Component.class.isAssignableFrom(toClass) ) + { + retVal = true; + } + + return retVal; + } + + + @SuppressWarnings("unchecked") + @Override + public T transform(Object in, Class toClass, + PropertyInfo propertyInfo) + { + T retVal = (T)in; + + if( Component.class.isAssignableFrom(toClass) ) + return null; + + if( Container.class.isAssignableFrom(toClass) && in != null ) { + retVal = (T)defaultBeanTransformer.getBeanReplicatable().replicateBean(in, Container.class); + Container cont = (Container)retVal; + cont.setPath( cont.getPath().replaceAll(oldName, newName) ); + if( cont.getComponents() != null ) { + cont.getComponents().clear(); + } + else + cont.setComponents(null); + } + + if(Configuration.class.isAssignableFrom(toClass) && null != in) { + retVal = (T) addToConfiguration; + } + + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneContainersTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneContainersTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..8185ee26ce38f01432a027b15a1717726ea3dac7 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneContainersTransformerFactory.java @@ -0,0 +1,32 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi.Factory; +import alma.acs.tmcdb.Configuration; + +/** + * Transformer factory used when cloning base elements using beanlib. + * @author sharring + */ +public class CloneContainersTransformerFactory implements Factory +{ + + private String oldName; + private String newName; + private Configuration addToConfiguration; + + public CloneContainersTransformerFactory(String oldName, String newName, Configuration addToConfiguration) { + this.oldName = oldName; + this.newName = newName; + this.addToConfiguration = addToConfiguration; + } + + @Override + public CustomBeanTransformerSpi newCustomBeanTransformer( + BeanTransformerSpi contextBeanTransformer) + { + return new CloneContainersTransformer(contextBeanTransformer, oldName, newName, addToConfiguration); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneDefaultCanAddressTransformer.java.save b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneDefaultCanAddressTransformer.java.save new file mode 100755 index 0000000000000000000000000000000000000000..c39c8fb286ad6ae0434d2cae0bf2838e250c4803 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneDefaultCanAddressTransformer.java.save @@ -0,0 +1,88 @@ +package alma.tmcdb.cloning; + +import java.util.Set; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.DefaultCanAddress; + +/** + * Beanlib transformer used when cloning DefaultCanAddress objects. + * + * When cloning a DefaultCanAddress, the associated Component is not cloned, + * but instead it is picked up from a list of candidate components, which + * in turn have been already cloned when cloning their host configuration + * + * @author rtobar, Jul 21, 2010 + */ +public class CloneDefaultCanAddressTransformer extends ConfigurationGlobalTransformer +{ + private Set _candidateComponents; + private String _originalPathSubstring; + private String _finalPathSubstring; + + /** + * Constructor. + */ + public CloneDefaultCanAddressTransformer(BeanTransformerSpi beanTransformer, Set candidateComponents, String originalPathSubstring, String finalPathSubstring) + { + super(beanTransformer); + _candidateComponents = candidateComponents; + _originalPathSubstring = originalPathSubstring; + _finalPathSubstring = finalPathSubstring; + } + + @Override + @SuppressWarnings("unchecked") + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + boolean retVal = false; + + // We check with isAssignableFrom instead of doing == between the classes + // because we may get hibernate proxies instead of the actual instances + // of our domain classes + if(DefaultCanAddress.class.isAssignableFrom(toClass) || + Component.class.isAssignableFrom(toClass) ) + { + retVal = true; + } + else if(super.isTransformable(from, toClass, propertyInfo)) + { + retVal = true; + } + + return retVal; + } + + + @SuppressWarnings("unchecked") + @Override + public T transform(Object in, Class toClass, + PropertyInfo propertyInfo) + { + T retVal = (T)in; + + if(DefaultCanAddress.class.isAssignableFrom(toClass) && null != in) { + retVal = (T)defaultBeanTransformer.getBeanReplicatable().replicateBean(in, DefaultCanAddress.class); + DefaultCanAddress dca = (DefaultCanAddress)retVal; + + Component c = dca.getComponent(); + String originalPath = c.getPath(); + for(Component candidate: _candidateComponents) { + + if( _originalPathSubstring != null && _finalPathSubstring != null && + !_originalPathSubstring.equals(_finalPathSubstring) ) + originalPath = originalPath.replace(_originalPathSubstring, _finalPathSubstring); + + if( candidate.getComponentName().equals(c.getComponentName()) && + candidate.getPath().equals(originalPath)) { + dca.setComponent(candidate); + break; + } + } + } + + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneDefaultCanAddressTransformerFactory.java.save b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneDefaultCanAddressTransformerFactory.java.save new file mode 100755 index 0000000000000000000000000000000000000000..4b9252ea8cb4204aa5d0c8e7113da61ca7ee2247 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneDefaultCanAddressTransformerFactory.java.save @@ -0,0 +1,30 @@ +package alma.tmcdb.cloning; + +import java.util.Set; + +import alma.acs.tmcdb.Component; +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi.Factory; + +public class CloneDefaultCanAddressTransformerFactory implements Factory { + + private Set _candidateComponents; + private String _originalPathSubstring; + private String _finalPathSubstring; + + public CloneDefaultCanAddressTransformerFactory(Set candidateComponents, + String originalPathSubstring, String finalPathSubstring) { + _candidateComponents = candidateComponents; + _originalPathSubstring = originalPathSubstring; + _finalPathSubstring = finalPathSubstring; + } + + @Override + public CustomBeanTransformerSpi newCustomBeanTransformer( + BeanTransformerSpi contextBeanTransformer) { + return new CloneDefaultCanAddressTransformer(contextBeanTransformer, + _candidateComponents, _originalPathSubstring, _finalPathSubstring); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneTelescopeTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneTelescopeTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..6b573489e5b3e1374911c52198fe46f7b00db6fd --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneTelescopeTransformer.java @@ -0,0 +1,129 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeToCamera; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.Pad; + +import java.util.Map; +import java.util.Set; +import java.util.Map.Entry; + +//import alma.acs.tmcdb.FEDelay; +//import alma.acs.tmcdb.IFDelay; +//import alma.acs.tmcdb.LODelay; +import alma.acs.tmcdb.PointingModel; +import alma.acs.tmcdb.PointingModelCoeff; +import alma.acs.tmcdb.FocusModel; +import alma.acs.tmcdb.FocusModelCoeff; +import alma.ReceiverBandMod.ReceiverBand; + +/** + * Beanlib transformer used when cloning base elements. + * @author sharring + */ +public class CloneTelescopeTransformer extends ConfigurationGlobalTransformer +{ + + private String oldName; + private String newName; + + /** + * Constructor. + */ + public CloneTelescopeTransformer(BeanTransformerSpi beanTransformer, String oldName, String newName) + { + super(beanTransformer); + this.oldName = oldName; + this.newName = newName; + } + + @Override + @SuppressWarnings("rawtypes") + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + boolean retVal = false; + + if(super.isTransformable(from, toClass, propertyInfo)) + { + retVal = true; + } + else if(toClass == HWConfiguration.class || + toClass == Component.class || + toClass == Container.class || + toClass == Configuration.class || + toClass == Pad.class || + toClass == TelescopeToPad.class || + toClass == Telescope.class) + { + retVal = true; + } + + return retVal; + } + + @SuppressWarnings("unchecked") + @Override + public T transform(Object in, Class toClass, + PropertyInfo propertyInfo) + { + // 1) reuse as-is (without cloning) the existing elements of: + // HWConfiguration, Configuration, Pad + T retVal = (T)in; + + // 2) skip cloning (altogether) TelescopeToPadTest, & AntennaToFrontEnd mapping classes + if((toClass == TelescopeToPad.class ) && null != in) + { + retVal = null; + } + + // 3) skip cloning the telescope's antenna-to-pad collection + // but clone everything else about the telescope + else if(toClass == Telescope.class && null != in) + { + retVal = (T)defaultBeanTransformer.getBeanReplicatable().replicateBean(in, in.getClass()); + Telescope telescope = (Telescope) retVal; + telescope.setTelescopeName( telescope.getTelescopeName().replaceAll(oldName, newName) ); + telescope.getTelescopeToPads().clear(); + zeroOutDelayPointingAndFocusModel(telescope); + } + + return retVal; + } + + // Per COMP-5071, don't copy delay model, pointing model, or focus model + static void zeroOutDelayPointingAndFocusModel(Telescope antenna) + { + + Set pointingModels = antenna.getPointingModels(); + if(pointingModels.size() > 0) + { + PointingModel pm = pointingModels.iterator().next(); + Set coeffs = pm.getPointingModelCoeffs(); + for(PointingModelCoeff coeff : coeffs) + { + coeff.setCoeffValue(0.0);; + + } + } + + Set focusModels = antenna.getFocusModels(); + if(focusModels.size() > 0) + { + FocusModel pm = focusModels.iterator().next(); + Set coeffs = pm.getFocusModelCoeffs(); + for(FocusModelCoeff coeff : coeffs) + { + coeff.setCoeffValue(0.0); + + } + } + + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneTelescopeTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneTelescopeTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..183bcefbc91d5f8e91e25ad31efdc52a5542360d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloneTelescopeTransformerFactory.java @@ -0,0 +1,29 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi.Factory; + +/** + * Transformer factory used when cloning base elements using beanlib. + * @author sharring + */ +public class CloneTelescopeTransformerFactory implements Factory +{ + + private String oldName; + private String newName; + + public CloneTelescopeTransformerFactory(String oldName, String newName) { + this.oldName = oldName; + this.newName = newName; + } + + @Override + public CustomBeanTransformerSpi newCustomBeanTransformer( + BeanTransformerSpi contextBeanTransformer) + { + return new CloneTelescopeTransformer(contextBeanTransformer, oldName, newName); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloningTestUtils.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloningTestUtils.java new file mode 100755 index 0000000000000000000000000000000000000000..a50883e0cc68d43989146bc26c6824336d34323d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloningTestUtils.java @@ -0,0 +1,2346 @@ +package alma.tmcdb.cloning; + +import java.io.File; +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.OutputStream; +import java.util.ArrayList; +import java.util.HashSet; +import java.util.List; +import java.util.Date; +import java.util.Set; +import java.util.zip.GZIPInputStream; + +import junit.framework.TestCase; +import alma.acs.tmcdb.AcsService; +import alma.acs.tmcdb.AlarmDefinition; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Computer; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Contact; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ContainerStartupOption; +import alma.acs.tmcdb.Event; +import alma.acs.tmcdb.EventChannel; +import alma.acs.tmcdb.FaultCode; +import alma.acs.tmcdb.FaultFamily; +import alma.acs.tmcdb.FaultMember; +import alma.acs.tmcdb.HwSchemas; +import alma.acs.tmcdb.LRUType; +import alma.acs.tmcdb.Location; +import alma.acs.tmcdb.LoggingConfig; +import alma.acs.tmcdb.Manager; +import alma.acs.tmcdb.NamedLoggerConfig; +import alma.acs.tmcdb.NetworkDevice; +import alma.acs.tmcdb.NotificationServiceMapping; +import alma.acs.tmcdb.ReductionLink; +import alma.acs.tmcdb.ReductionThreshold; +import alma.acs.tmcdb.Schemas; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.Assembly; +import alma.acs.tmcdb.AssemblyRole; +import alma.acs.tmcdb.AssemblyStartup; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.BaseElement; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.BEType; +import alma.tmcdb.utils.Coordinate; +import alma.acs.tmcdb.FocusModel; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.HwSchemas; +import alma.acs.tmcdb.LRUType; +import alma.acs.tmcdb.Pad; +import alma.acs.tmcdb.PointingModel; +import alma.acs.tmcdb.Startup; + +import com.ice.tar.TarArchive; + +/** + * Utility class for all cloning related tests, containing methods + * for comparing domain entities (necessary because domain entities' + * equals methods are not useful for content comparison; they are useful + * primarily in a hibernate context in that they often only check for the + * object identity being equal). + * + * @author sharrington + * + */ +public class CloningTestUtils +{ + private static final String ACSROOT = "ACSROOT"; + private static final String INTROOT = "INTROOT"; + private static final String USER_DIR = "user.dir"; + private static final String TMCDBSAMPLE_TAR_GZ = "TMCDBSample.tar.gz"; + private static final String TMCDB = "TMCDB"; + private static final String TMCDBSAMPLE_TAR = "TMCDBSample.tar"; + private static List listOfProblems = new ArrayList(); + private static int indent = 0; + + public static String[] getListOfProblems() { + return listOfProblems.toArray(new String[0]); + } + + public static synchronized void clearListOfProblems() { + listOfProblems.clear(); + indent = 0; + } + + public static synchronized void addToListOfProblems(String newProb) { + StringBuffer strBuf = new StringBuffer(newProb); + //for(int i = 0; i < CloningTestUtils.indent; i++) { + // strBuf.insert(0, " "); + //} + listOfProblems.add(strBuf.toString()); + } + + public static Component createComponent(String name, String path, + ComponentType compType, Configuration config) { + return createComponent(name, path, compType, "urn", config); + } + + public static void unzipSampleTmcdbDatabase() throws IOException + { + // Open the compressed file + String pathPrefix = getPathPrefix(); + String path = pathPrefix + File.separator + "config" + File.separator + TMCDBSAMPLE_TAR_GZ; + GZIPInputStream in = new GZIPInputStream(new FileInputStream(path)); + + // Open the output file && unzip it from a tar.gz to a plain (uncompressed) tar file + String tmpDir = System.getProperty(USER_DIR); + OutputStream out = new FileOutputStream(tmpDir + File.separator + TMCDBSAMPLE_TAR); + + copyInputStream(in, out); + } + + public static void untarSampleTmcdbDatabase() throws IOException + { + // untar the tar file + String tmpDir = System.getProperty(USER_DIR); + String path = tmpDir + File.separator + TMCDBSAMPLE_TAR; + FileInputStream fis = new FileInputStream(path); + TarArchive tarArchive = new TarArchive(fis); + tarArchive.extractContents(new File(System.getProperty(USER_DIR))); + } + + public static void removeSampleTmcdbDatabase() + { + // delete the directory into which we untarred the sample db + String tmpDir = System.getProperty(USER_DIR); + File zipDir = new File(tmpDir + File.separator + TMCDB); + @SuppressWarnings("unused") + boolean deletedDir = deleteDir(zipDir); + + // delete the tar file into which we gunzipped the tar.gz file + File zipFile = new File(tmpDir + File.separator + TMCDBSAMPLE_TAR); + @SuppressWarnings("unused") + boolean deletedFile = zipFile.delete(); + } + + public static void compareAssemblies(HWConfiguration config1, HWConfiguration config2) + { + CloningTestUtils.indent++; + Set assemblies1 = config1.getAssemblies(); + Set assemblies2 = config2.getAssemblies(); + if(assemblies1.size() != assemblies2.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + config1.getConfiguration().getConfigurationName() + "' and configuration '" + config2.getConfiguration().getConfigurationName() + + "' do not contain the same number of assemblies"); + CloningTestUtils.addToListOfProblems("Config one has " + assemblies1.size() + " and config two has " + assemblies2.size()); + } + + for(Assembly origAssembly : config1.getAssemblies()) + { + boolean foundAssembly = false; + for(Assembly clonedAssembly: config2.getAssemblies()) + { + if(safeEquals(origAssembly, clonedAssembly)) + { + foundAssembly = true; + Set origRoles = origAssembly.getAssemblyType().getAssemblyRoles(); + Set clonedRoles = clonedAssembly.getAssemblyType().getAssemblyRoles(); + if(origRoles.size() != clonedRoles.size()) { + CloningTestUtils.addToListOfProblems("Number of assembly roles differs for assemblytype '" + origAssembly.getAssemblyType() + "'"); + CloningTestUtils.addToListOfProblems("AssemblyType one has " + origRoles.size() + " and AssemblyType two has " + clonedRoles.size()); + } + + for(AssemblyRole origRole : origRoles) + { + boolean found = false; + for(AssemblyRole clonedRole : clonedRoles) + { + if(safeEquals(origRole, clonedRole)) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("assemblyrole '" + origRole.getRoleName() + "' was not found in assembly of type '" + + clonedAssembly.getAssemblyType().getAssemblyTypeName() + "' in config '" + config2.getConfiguration().getConfigurationName() + "'"); + CloningTestUtils.indent--; + foundAssembly = false; + } + } + if(foundAssembly) { + break; + } + } + } + if(!foundAssembly) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Assembly '" + origAssembly.getAssemblyType().getAssemblyTypeName() + "' of serial number '" + + origAssembly.getSerialNumber() + "' was not found (or differs) in configuration '" + config2.getConfiguration().getConfigurationName() +"'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + public static void compareStartups(Set startups1, Set startups2) + { + CloningTestUtils.indent++; + if(startups1.size() != startups2.size()) { + CloningTestUtils.addToListOfProblems("Number of startup scenarios differs in the 2 configs"); + CloningTestUtils.addToListOfProblems("First config has " + startups1.size() + " and second config has " + startups2.size()); + } + for(Startup startup1: startups1) { + boolean found = false; + for(Startup startup2: startups2) { + if(safeEquals(startup1, startup2)) { + found = true; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Configuration '" + startups2.toArray(new Startup[0])[0].getHWConfiguration().getConfiguration().getConfigurationName() + "' did not contain a startup scenario equivalent to '" + startup1.getStartupName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + public static void compareBaseElements(HWConfiguration config1, HWConfiguration config2) + { + CloningTestUtils.indent++; + Set baseElements1 = config1.getBaseElements(); + Set baseElements2 = config2.getBaseElements(); + if(baseElements1.size() != baseElements2.size()) { + CloningTestUtils.addToListOfProblems("Number of base elements differs in the 2 configs"); + CloningTestUtils.addToListOfProblems("First config has " + baseElements1.size() + " and second config has " + baseElements2.size()); + } + for(BaseElement element1: baseElements1) { + boolean found = false; + for(BaseElement element2: baseElements2) { + if(safeEquals(element1, element2)) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Configuration '" + config2.getConfiguration().getConfigurationName() + "' did not contain a base element equivalent to '" + element1.getBaseElementName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + public static void compareComponentsForHw(HWConfiguration config, HWConfiguration config2) + { + compareComponentsForSw(config.getConfiguration(), config2.getConfiguration()); + } + + public static void compareSwConfigurations(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + if(!safeEquals(one, two)) { + CloningTestUtils.addToListOfProblems("Software configuration '" + one.getConfigurationName() + "' differs from configuration '" + two.getConfigurationName() + "'"); + } + CloningTestUtils.indent--; + } + + public static void compareConfigurations(HWConfiguration config, HWConfiguration clonedConfig) { + CloningTestUtils.indent = 0; + compareSwConfigurations(config.getConfiguration(), clonedConfig.getConfiguration()); + compareStartups(config.getStartups(), clonedConfig.getStartups()); + compareBaseElements(config, clonedConfig); + compareAssemblies(config, clonedConfig); + compareHwSchemas(config, clonedConfig); + compareHWConfigurationAttributes(config, clonedConfig); + } + + public static boolean safeEquals(Startup one, Startup two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(safeEquals(one.getStartupName(), two.getStartupName())) + { + Set aStartups1 = new HashSet(); + for (BaseElementStartup bes1 : one.getBaseElementStartups()) { + aStartups1.addAll(bes1.getAssemblyStartups()); + } +// In Rafael's handwritten classes, getAssemblyStartups() is a method of StartupScenario (our Startup class) + // Set aStartups1 = one.getBaseElementStartups().; +// Set aStartups2 = two.getAssemblyStartups(); + Set aStartups2 = new HashSet(); + for (BaseElementStartup bes2 : two.getBaseElementStartups()) { + aStartups2.addAll(bes2.getAssemblyStartups()); + } + if(aStartups1.size() != aStartups2.size()) { + CloningTestUtils.addToListOfProblems("Number of assembly startups differs in startup scenario '" + one.getStartupName() + "' between the 2 configs"); + CloningTestUtils.addToListOfProblems("Startup one has " + aStartups1.size() + " and Startup two has " + aStartups2.size()); + } + + for(AssemblyStartup aStartup1 : aStartups1) { + boolean found = false; + for(AssemblyStartup aStartup2 : aStartups2) { + if(safeEquals(aStartup1, aStartup2) && aStartup1 != aStartup2) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.addToListOfProblems("Configuration '" + two.getHWConfiguration().getConfiguration().getConfigurationName() + "' Startup of name '" + + two.getStartupName() + "' does not contain a matching assemblystartup for '" + aStartup1.getAssemblyRole().getRoleName() + "'"); + return false; + } + } + + Set bStartups1 = one.getBaseElementStartups(); + Set bStartups2 = two.getBaseElementStartups(); + if(bStartups1.size() != bStartups2.size()) { + CloningTestUtils.addToListOfProblems("Number of baseElement startups differs in startup scenario '" + one.getStartupName() + "' between the 2 configs"); + CloningTestUtils.addToListOfProblems("Startup one has " + bStartups1.size() + " and Startup two has " + bStartups2.size()); + } + for(BaseElementStartup bStartup1 : bStartups1) { + boolean found = false; + for(BaseElementStartup bStartup2 : bStartups2) { + if(safeEquals(bStartup1, bStartup2)) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Configuration '" + two.getHWConfiguration().getConfiguration().getConfigurationName() + "' Startup of name '" + + two.getStartupName() + "' does not contain a matching baseelementstartup for '" + bStartup1.getBaseElement().getBaseElementName() + + "' with baseelement from config '" + bStartup1.getBaseElement().getHWConfiguration().getConfiguration().getConfigurationName() + "'"); + CloningTestUtils.indent--; + return false; + } + } + retVal = true; + } + } + + CloningTestUtils.indent--; + return retVal; + } + + public static boolean safeEquals(Assembly one, Assembly two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(safeEquals(one.getAssemblyType(), two.getAssemblyType()) && safeEquals(one.getSerialNumber(), two.getSerialNumber())) + { + if(!safeEquals(one.getData(), two.getData())) { + CloningTestUtils.addToListOfProblems("Assembly of serial number '" + two.getSerialNumber() + "' of type '" + + two.getAssemblyType().getAssemblyTypeName() + "' differs in 'data' field"); + addToListOfProblems("------------------ data one: ------------------------------------------------"); + addToListOfProblems(one.getData().toString()); + addToListOfProblems("------------------ data two: ------------------------------------------------"); + addToListOfProblems(two.getData().toString()); + addToListOfProblems("---------------------------------------------------------------------------------------"); + } + else { + retVal = true; + } + } + } + + CloningTestUtils.indent--; + return retVal; + } + + public static boolean safeEquals(BaseElement one, BaseElement two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(safeEquals(one.getBaseElementName(), two.getBaseElementName()) && + safeEquals(one.getBaseType(), two.getBaseType())) + { + // TODO: specialize for additional base element types + if(one instanceof Telescope) { + Telescope antOne = (Telescope)one; + Telescope antTwo = (Telescope)two; + retVal = safeEquals(antOne, antTwo); + } else if(one instanceof Pad) { + Pad padOne = (Pad) one; + Pad padTwo = (Pad) two; + retVal = safeEquals(padOne, padTwo); + } + // TODO: other base element types: Array, MasterClock, WeatherStation, HolographyTower. + // e.g. else if(one instanceof Array) etc... + else { + retVal = true; + } + } + } + + return retVal; + } + + private CloningTestUtils() + { + // private constructor to enforce static-methods-only utility class. + } + + private static boolean safeEquals(Double one, Double two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(one.equals(two)) { + retVal = true; + } else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals(Short one, Short two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(one.equals(two)) { + retVal = true; + } else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals(Long one, Long two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(one.equals(two)) { + retVal = true; + } else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals(Integer one, Integer two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(one.equals(two)) { + retVal = true; + } else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals(String one, String two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(one.equals(two)) { + retVal = true; + } else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals(Schemas one, Schemas two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(safeEquals(one.getURN(), two.getURN())) + { + if(!safeEquals(one.getSchema(), two.getSchema())) { + CloningTestUtils.addToListOfProblems("Schemas '" + two.getURN() + "' differs in 'schema' field"); + addToListOfProblems("------------------ schema one: ------------------------------------------------"); + addToListOfProblems(one.getSchema().toString()); + addToListOfProblems("------------------ schema two: ------------------------------------------------"); + addToListOfProblems(two.getSchema().toString()); + addToListOfProblems("-------------------------------------------------------------------------------"); + retVal = false; + } + else { + retVal = true; + } + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static boolean safeEquals(LRUType one, LRUType two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(safeEquals(one.getDescription(), two.getDescription()) && + safeEquals(one.getFullName(), two.getFullName()) && + safeEquals(one.getICD(), two.getICD()) && + safeEquals(one.getLRUName(), two.getLRUName()) && + safeEquals(one.getNotes(), two.getNotes()) && + one.getICDDate() == two.getICDDate()) + { + retVal = true; + } + } + + return retVal; + } + + private static boolean safeEquals(ComponentType one, ComponentType two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(safeEquals(one.getIDL(), two.getIDL())) + { + retVal = true; + } + } + + return retVal; + } + + private static boolean safeEquals(BEType one, BEType two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(safeEquals(one.name(), two.name())) + { + retVal = true; + } + } + + return retVal; + } + + private static boolean safeEquals(Coordinate one, Coordinate two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(one.getX() == two.getX() && + one.getY() == two.getY() && + one.getZ() == two.getZ() ) + { + retVal = true; + } + } + + return retVal; + } + + private static boolean safeEquals(Pad one, Pad two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + Coordinate coord1 = new Coordinate(one.getXPosition(),one.getYPosition(),one.getZPosition()); + Coordinate coord2 = new Coordinate(two.getXPosition(),two.getYPosition(),two.getZPosition()); + if(safeEquals(one.getPadName(), two.getPadName()) && + safeEquals(coord1, coord2) && + one.getBaseType().equals(two.getBaseType()) && + one.getCommissionDate().longValue() == two.getCommissionDate().longValue()) + // TODO: scheduled antennas? + { + retVal = true; + } + } + + return retVal; + } + + private static boolean safeEquals(Component one, Component two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else if(safeEquals(one.getComponentName(), two.getComponentName()) && safeEquals(one.getPath(), two.getPath())) + { + if(!safeEquals(one.getCode(), two.getCode())) { + CloningTestUtils.addToListOfProblems("Component '" + one.getPath() + "/" + one.getComponentName() + "' has a different value for the 'code' field"); + CloningTestUtils.addToListOfProblems("first code is: " + one.getCode().toString() + " and second is: " + two.getCode().toString()); + retVal = false; + } else if(!safeEquals(one.getImplLang(), two.getImplLang())) { + CloningTestUtils.addToListOfProblems("Component '" + one.getPath() + "/" + one.getComponentName() + "' has a different value for the 'implLang' field"); + CloningTestUtils.addToListOfProblems("first implLang is: " + one.getImplLang().toString() + " and second is: " + two.getImplLang().toString()); + retVal = false; + } + /* else if(!safeEquals(one.getURN(), two.getURN())) { + retVal = false; + } + */ + else if(!safeEquals(one.getXMLDoc(), two.getXMLDoc())) { + CloningTestUtils.addToListOfProblems("Component '" + one.getPath() + "/" + one.getComponentName() + "' has a different value for the 'xmlDoc' field"); + CloningTestUtils.addToListOfProblems("------------------ xmldoc one: ---------------------------------"); + CloningTestUtils.addToListOfProblems(one.getXMLDoc()); + CloningTestUtils.addToListOfProblems("------------------ xmldoc two: ---------------------------------"); + CloningTestUtils.addToListOfProblems(two.getXMLDoc()); + CloningTestUtils.addToListOfProblems("----------------------------------------------------------------"); + retVal = false; + } else if(!safeEquals(one.getMinLogLevel(), two.getMinLogLevel())) { + CloningTestUtils.addToListOfProblems("Component '" + one.getPath() + "/" + one.getComponentName() + "' has a different value for the 'minLogLevel' field"); + CloningTestUtils.addToListOfProblems("first MinLogLevel is: " + one.getMinLogLevel().toString() + " and second is: " + two.getMinLogLevel().toString()); + retVal = false; + } else if(!safeEquals(one.getKeepAliveTime(), two.getKeepAliveTime())) { + CloningTestUtils.addToListOfProblems("Component '" + one.getPath() + "/" + one.getComponentName() + "' has a different value for the 'keepAliveTime' field"); + CloningTestUtils.addToListOfProblems("first KeepAliveTime is: " + one.getKeepAliveTime().toString() + " and second is: " + two.getKeepAliveTime().toString()); + retVal = false; + } else if(!safeEquals(one.getComponentType(), two.getComponentType())) { + CloningTestUtils.addToListOfProblems("Component '" + one.getPath() + "/" + one.getComponentName() + "' has a different value for the 'componentType' field"); + retVal = false; + } else { + retVal = true; + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static boolean safeEquals(Container one, Container two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else if(safeEquals(one.getContainerName(), two.getContainerName()) && safeEquals(one.getPath(), two.getPath())) + { + if( !safeEquals(one.getAutoloadSharedLibs(), two.getAutoloadSharedLibs())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'autoloadsharedlibs' field"); + CloningTestUtils.addToListOfProblems("first autoloadSharedLibs is: " + one.getAutoloadSharedLibs().toString() + + " and second is: " + two.getAutoloadSharedLibs().toString()); + retVal = false; + } + else if(!safeEquals(one.getCallTimeout(), two.getCallTimeout())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'callTimeout' field"); + CloningTestUtils.addToListOfProblems("first callTimeout is: " + one.getCallTimeout().toString() + " and second is: " + two.getCallTimeout().toString()); + retVal = false; + } + else if(!safeEquals(one.getComputer(), two.getComputer(), false)) + { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'computer' field"); + retVal = false; + } + else if(!safeEquals(one.getImplLang(), two.getImplLang())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'implLang' field"); + CloningTestUtils.addToListOfProblems("first ImplLang is: " + one.getImplLang().toString() + " and second is: " + two.getImplLang().toString()); + retVal = false; + } + else if(!safeEquals(one.getKeepAliveTime(), two.getKeepAliveTime())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'keepAliveTime' field"); + CloningTestUtils.addToListOfProblems("first keepAliveTime is: " + one.getKeepAliveTime().toString() + " and second is: " + two.getKeepAliveTime().toString()); + retVal = false; + } + else if(!safeEquals(one.getKernelModule(), two.getKernelModule())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'kernelModule' field"); + CloningTestUtils.addToListOfProblems("first kernelModule is: " + one.getKernelModule().toString() + " and second is: " + two.getKernelModule().toString()); + retVal = false; + } + else if(!safeEquals(one.getKernelModuleLocation(), two.getKernelModuleLocation())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'kernelModuleLocation' field"); + CloningTestUtils.addToListOfProblems("first kernelModuleLocation is: " + one.getKernelModuleLocation().toString() + " and second is: " + two.getKernelModuleLocation().toString()); + retVal = false; + } + else if(!safeEquals(one.getManagerRetry(), two.getManagerRetry())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'managerRetry' field"); + CloningTestUtils.addToListOfProblems("first managerRetry is: " + one.getManagerRetry().toString() + " and second is: " + two.getManagerRetry().toString()); + retVal = false; + } + else if(!safeEquals(one.getPingInterval(), two.getPingInterval())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'pinginterval' field"); + CloningTestUtils.addToListOfProblems("first pingInterval is: " + one.getPingInterval().toString() + " and second is: " + two.getPingInterval().toString()); + retVal = false; + } + else if(!safeEquals(one.getRealTime(), two.getRealTime())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'realtime' field"); + CloningTestUtils.addToListOfProblems("first realTime is: " + one.getRealTime().toString() + " and second is: " + two.getRealTime().toString()); + retVal = false; + } + else if(!safeEquals(one.getRealTimeType(), two.getRealTimeType())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'realtimetype' field"); + CloningTestUtils.addToListOfProblems("first realTimeType is: " + one.getRealTimeType().toString() + " and second is: " + two.getRealTimeType().toString()); + retVal = false; + } + else if(!safeEquals(one.getRecovery(), two.getRecovery())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'recovery' field"); + CloningTestUtils.addToListOfProblems("first recovery is: " + one.getRecovery().toString() + " and second is: " + two.getRecovery().toString()); + retVal = false; + } + else if(!safeEquals(one.getServerThreads(), two.getServerThreads())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'serverThreads' field"); + CloningTestUtils.addToListOfProblems("first serverThreads is: " + one.getServerThreads().toString() + " and second is: " + two.getServerThreads().toString()); + retVal = false; + } + else if(!safeEquals(one.getStartOnDemand(), two.getStartOnDemand())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'startOnDemand' field"); + CloningTestUtils.addToListOfProblems("first startOnDemand is: " + one.getStartOnDemand().toString() + " and second is: " + two.getStartOnDemand().toString()); + retVal = false; + } + else if(!safeEquals(one.getTypeModifiers(), two.getTypeModifiers())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has a different value for 'typeModifiers' field"); + CloningTestUtils.addToListOfProblems("first typeModifiers is: " + one.getTypeModifiers().toString() + " and second is: " + two.getTypeModifiers().toString()); + retVal = false; + } + else if(!safeEquals(one.getLoggingConfig(), two.getLoggingConfig())) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' has different settings for 'loggingConfig' field"); + retVal = false; + } + else { + retVal = true; + } + + int numProbsBefore = CloningTestUtils.getListOfProblems().length; + compareContainerStartupOptions(one, two); + int numProbsAfter = CloningTestUtils.getListOfProblems().length; + if(numProbsBefore != numProbsAfter) { + retVal = false; + } + + numProbsBefore = CloningTestUtils.getListOfProblems().length; + compareDeploymentOfComponentsForContainers(one, two); + numProbsAfter = CloningTestUtils.getListOfProblems().length; + if(numProbsBefore != numProbsAfter) { + retVal = false; + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static boolean safeEquals(LoggingConfig one, LoggingConfig two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else + { + if( !safeEquals(one.getCentralizedLogger(), two.getCentralizedLogger())) { + CloningTestUtils.addToListOfProblems("Loggingconfigs have different values for 'centralizedLogger' field"); + CloningTestUtils.addToListOfProblems("first CentralizedLogger is: " + one.getCentralizedLogger().toString() + " and second is: " + two.getCentralizedLogger().toString()); + retVal = false; + } else if (!safeEquals(one.getDispatchPacketSize(), two.getDispatchPacketSize())) { + CloningTestUtils.addToListOfProblems("Loggingconfigs have different values for 'dispatchPacketSize' field"); + CloningTestUtils.addToListOfProblems("first CentralizedLogger is: " + one.getDispatchPacketSize().toString() + " and second is: " + two.getDispatchPacketSize().toString()); + retVal = false; + } else if(!safeEquals(one.getFlushPeriodSeconds(), two.getFlushPeriodSeconds())) { + CloningTestUtils.addToListOfProblems("Loggingconfigs have different values for 'flushPeriodSeconds' field"); + CloningTestUtils.addToListOfProblems("first FlushPeriodSeconds is: " + one.getFlushPeriodSeconds().toString() + " and second is: " + two.getFlushPeriodSeconds().toString()); + retVal = false; + } else if(!safeEquals(one.getImmediateDispatchLevel(), two.getImmediateDispatchLevel())) { + CloningTestUtils.addToListOfProblems("Loggingconfigs have different values for 'immediateDispatchLevel' field"); + CloningTestUtils.addToListOfProblems("first ImmediateDispatchLevel is: " + one.getImmediateDispatchLevel().toString() + + " and second is: " + two.getImmediateDispatchLevel().toString()); + retVal = false; + } else if(!safeEquals(one.getMaxLogQueueSize(), two.getMaxLogQueueSize())) { + CloningTestUtils.addToListOfProblems("Loggingconfigs have different values for 'maxLogQueueSize' field"); + CloningTestUtils.addToListOfProblems("first MaxLogQueueSize is: " + one.getMaxLogQueueSize().toString() + " and second is: " + two.getMaxLogQueueSize().toString()); + retVal = false; + } else if(!safeEquals(one.getMaxLogsPerSecond(), two.getMaxLogsPerSecond())) { + CloningTestUtils.addToListOfProblems("Loggingconfigs have different values for 'maxLogsPerSecond' field"); + CloningTestUtils.addToListOfProblems("first MaxLogsPerSecond is: " + one.getMaxLogsPerSecond().toString() + " and second is: " + two.getMaxLogsPerSecond().toString()); + retVal = false; + } else if(!safeEquals(one.getMinLogLevelDefault(), two.getMinLogLevelDefault())) { + CloningTestUtils.addToListOfProblems("Loggingconfigs have different values for 'minLogLevelDefault' field"); + CloningTestUtils.addToListOfProblems("first MinLogLevelDefault is: " + one.getMinLogLevelDefault().toString() + " and second is: " + two.getMinLogLevelDefault().toString()); + retVal = false; + } else if(!safeEquals(one.getMinLogLevelLocalDefault(), two.getMinLogLevelLocalDefault())) { + CloningTestUtils.addToListOfProblems("Loggingconfigs have different values for 'minLogLevelLocalDefault' field"); + CloningTestUtils.addToListOfProblems("first MinLogLevelLocalDefault is: " + + one.getMinLogLevelLocalDefault().toString() + " and second is: " + two.getMinLogLevelLocalDefault().toString()); + retVal = false; + } else { + retVal = true; + } + } + if( retVal ) { + int numProbsBefore = CloningTestUtils.getListOfProblems().length; + compareNamedLoggerConfigs(one, two); + int numProbsAfter = CloningTestUtils.getListOfProblems().length; + if(numProbsBefore != numProbsAfter) { + retVal = false; + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static void compareHwSchemas(HWConfiguration one, HWConfiguration two) + { + CloningTestUtils.indent++; + Set origHwSchemas = one.getHwSchemases(); + for(HwSchemas origHwSchema : origHwSchemas) + { + Set clonedHwSchemas = two.getHwSchemases(); + + if(origHwSchemas.size() != clonedHwSchemas.size()) { + CloningTestUtils.addToListOfProblems("Configurations do not have the same number of hwschemas"); + CloningTestUtils.addToListOfProblems("First config has " + origHwSchemas.size() + " and second config has " + clonedHwSchemas.size()); + } + + boolean found = false; + for(HwSchemas clonedHwSchema : clonedHwSchemas) + { + if(safeEquals(origHwSchema, clonedHwSchema)) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("HwSchema '" + origHwSchema.getURN() + + "' was not found (or differs) in configuration '" + two.getConfiguration().getConfigurationName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static boolean safeEquals(Enum one, Enum two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else + { + if(one.equals(two)) { + retVal = true; + } + } + + return retVal; + } + + private static boolean safeEquals(HwSchemas one, HwSchemas two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else if(safeEquals(one.getURN(), two.getURN())) + { + if(!safeEquals(one.getSchema(), two.getSchema())) { + CloningTestUtils.addToListOfProblems("HwSchema '" + one.getURN() + "' differs for the 'schema' field"); + addToListOfProblems("------------------ schema one: ------------------------------------------------"); + addToListOfProblems(one.getSchema().toString()); + addToListOfProblems("------------------ schema two: ------------------------------------------------"); + addToListOfProblems(two.getSchema().toString()); + addToListOfProblems("-------------------------------------------------------------------------------"); + retVal = false; + } else if(!safeEquals(one.getAssemblyType(), two.getAssemblyType())) { + CloningTestUtils.addToListOfProblems("HwSchema '" + one.getURN() + "' differs for the 'assemblyType' field"); + CloningTestUtils.addToListOfProblems("first assemblytype is: " + one.getAssemblyType().getAssemblyTypeName() + " and second is: " + two.getAssemblyType().getAssemblyTypeName()); + retVal = false; + } + else { + retVal = true; + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static void compareNamedLoggerConfigs(LoggingConfig one, LoggingConfig two) + { + CloningTestUtils.indent++; + Set origNLCs = one.getNamedLoggerConfigs(); + for(NamedLoggerConfig origNLC : origNLCs) + { + boolean found = false; + Set clonedNLCs = two.getNamedLoggerConfigs(); + + if(origNLCs.size() != clonedNLCs.size()) { + CloningTestUtils.addToListOfProblems("Configurations do not have the same number of named logger configs"); + CloningTestUtils.addToListOfProblems("First config has " + origNLCs.size() + " and second config has " + clonedNLCs.size()); + } + + for(NamedLoggerConfig clonedNLC : clonedNLCs) + { + if(safeEquals(origNLC, clonedNLC)) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Comparison configuration did not contain NamedLoggerConfig '" + origNLC.getName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static boolean safeEquals(NamedLoggerConfig one, NamedLoggerConfig two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else if(safeEquals(one.getName(), two.getName())) + { + if(!safeEquals(one.getMinLogLevel(), two.getMinLogLevel())) { + CloningTestUtils.addToListOfProblems("Named logger config '" + one.getName() + "' differs for the 'minLogLevel' field"); + CloningTestUtils.addToListOfProblems("minLogLevel in config 1 is: " + one.getMinLogLevel().toString() + " and minLogLevel in config 2 is: " + two.getMinLogLevel().toString()); + retVal = false; + } else if(!safeEquals(one.getMinLogLevelLocal(), two.getMinLogLevelLocal())) { + CloningTestUtils.addToListOfProblems("Named logger config '" + one.getName() + "' differs for the 'minLogLevelLocal' field"); + CloningTestUtils.addToListOfProblems("minLogLevelLocal in config 1 is: " + one.getMinLogLevelLocal().toString() + + " and minLogLevelLocal in config 2 is: " + two.getMinLogLevelLocal().toString()); + retVal = false; + } + else { + retVal = true; + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static void compareContainerStartupOptions(Container one, Container two) + { + CloningTestUtils.indent++; + Set origCSOs = one.getContainerStartupOptions(); + for(ContainerStartupOption origCSO : origCSOs) + { + boolean found = false; + Set clonedCSOs = two.getContainerStartupOptions(); + + if(origCSOs.size() != clonedCSOs.size()) { + CloningTestUtils.addToListOfProblems("Container '" + two.getPath() + "/" + two.getContainerName() + "' did not contain the same number of container startup options in both configs"); + CloningTestUtils.addToListOfProblems("First container has " + origCSOs.size() + " and second container has " + clonedCSOs.size()); + } + + for(ContainerStartupOption clonedCSO : clonedCSOs) + { + if(safeEquals(origCSO, clonedCSO)) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Did not find container startup option '" + origCSO.getOptionName() + "' of type '" + origCSO.getOptionType() + "' for container '" + + one.getPath() + "/" + one.getContainerName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static boolean safeEquals(ContainerStartupOption one, ContainerStartupOption two) { + + boolean retVal = false; + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else + { + if( !safeEquals(one.getOptionName(), two.getOptionName()) || + !safeEquals(one.getOptionType(), two.getOptionType()) || + !safeEquals(one.getOptionValue(), two.getOptionValue()) ) + retVal = false; + else { + retVal = true; + } + } + + return retVal; + } + + private static boolean safeEquals(Byte one, Byte two) { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(one.equals(two)) { + retVal = true; + } else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals(Telescope one, Telescope two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else if(safeEquals(one.getTelescopeName(), two.getTelescopeName())) + { + Coordinate positionOne = new Coordinate(one.getLatitude(),one.getLongitude(),one.getAltitude()); + Coordinate positionTwo = new Coordinate(two.getLatitude(),two.getLongitude(),two.getAltitude()); + if(!safeEquals(one.getBaseType(), two.getBaseType())) { + CloningTestUtils.addToListOfProblems("Telescope " + one.getTelescopeName() + " differs in 'type' field"); + retVal = false; + } else if(!one.getTelescopeType().equals(two.getTelescopeType())) { + CloningTestUtils.addToListOfProblems("Telescope " + one.getTelescopeName() + " differs in 'antennaType' field"); + retVal = false; + } + else if(!one.getCommissionDate().equals(two.getCommissionDate())) { + CloningTestUtils.addToListOfProblems("Telescope " + one.getTelescopeName() + " differs in 'commissionDate' field"); + retVal = false; + } + else if(!one.getDishDiameter().equals(two.getDishDiameter())) { + CloningTestUtils.addToListOfProblems("Telescope " + one.getTelescopeName() + " differs in 'diameter' field"); + CloningTestUtils.addToListOfProblems("first diameter is: " + one.getDishDiameter().toString() + + " and second diameter is: " + two.getDishDiameter().toString()); + retVal = false; + } + else if(!safeEquals(positionOne, positionTwo)) { + CloningTestUtils.addToListOfProblems("Telescope " + one.getTelescopeName() + " differs in 'position' field"); + retVal = false; + } + else + { + retVal = true; + } + + // compare LO delays + int numProbsBefore = getListOfProblems().length; + + + // TODO: pointing model + numProbsBefore = getListOfProblems().length; + comparePointingModels(one, two); + int numProbsAfter = getListOfProblems().length; + if(numProbsBefore != numProbsAfter) { + retVal = false; + } + + // TODO: focus model + numProbsBefore = getListOfProblems().length; + compareFocusModels(one, two); + numProbsAfter = getListOfProblems().length; + if(numProbsBefore != numProbsAfter) { + retVal = false; + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static void compareFocusModels(Telescope one, Telescope two) + { + // TODO + } + + private static void comparePointingModels(Telescope one, Telescope two) + { + // TODO + } + + + + + private static boolean safeEquals(AssemblyRole one, AssemblyRole two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(safeEquals(one.getRoleName(), two.getRoleName())) { + retVal = true; + } + + return retVal; + } + + private static boolean safeEquals(AssemblyType one, AssemblyType two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else { + if(safeEquals(one.getDescription(), two.getDescription()) && + safeEquals(one.getFullName(), two.getFullName()) && + safeEquals(one.getAssemblyTypeName(), two.getAssemblyTypeName()) && + safeEquals(one.getNotes(), two.getNotes()) && + safeEquals(one.getComponentType(), two.getComponentType()) && + safeEquals(one.getBaseElementType(), two.getBaseElementType()) && + safeEquals(one.getLRUType(), two.getLRUType()) ) + { + Set oneRoles = one.getAssemblyRoles(); + Set twoRoles = two.getAssemblyRoles(); + for(AssemblyRole roleOne: oneRoles) + { + boolean found = false; + for(AssemblyRole roleTwo: twoRoles) { + if(safeEquals(roleOne, roleTwo)) { + found = true; + break; + } + } + if(!found) { + retVal = false; + return retVal; + } + } + retVal = true; + } + } + + return retVal; + } + + private static boolean safeEquals(AssemblyStartup one, AssemblyStartup two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else { + if(!safeEquals(one.getAssemblyRole(), two.getAssemblyRole())) + { + retVal = false; + } else if(!safeEquals(one.getSimulated(), two.getSimulated())) { + retVal = false; + CloningTestUtils.addToListOfProblems("Assemblystartup '" + one.getAssemblyRole().getRoleName() + "' differs in 'simulated' field"); + addToListOfProblems("one is: " + one.getSimulated().toString() + " and two is: " + two.getSimulated().toString()); + } else { + retVal = true; + } + } + CloningTestUtils.indent--; + return retVal; + } + + private static boolean safeEquals(BaseElementStartup one, BaseElementStartup two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else + { + if(!safeEquals(one.getBaseElement().getBaseElementName(), two.getBaseElement().getBaseElementName())) + { + retVal = false; + } + else if(!safeEquals(one.getSimulated(), two.getSimulated())) { + retVal = false; + CloningTestUtils.addToListOfProblems("Baseelementstartup '" + two.getBaseElement().getBaseElementName() + "' differs in 'simulated' field"); + addToListOfProblems("one is: " + one.getSimulated().toString() + " and two is: " + two.getSimulated().toString()); + } + else { + retVal = true; + } + if(retVal) { + int numProbsBefore = getListOfProblems().length; + compareAssemblyStartupsForBaseElementStartup(one, two); + int numProbsAfter = getListOfProblems().length; + if(numProbsBefore != numProbsAfter) { + retVal = false; + } + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static void compareAssemblyStartupsForBaseElementStartup(BaseElementStartup one, BaseElementStartup two) + { + CloningTestUtils.indent++; + Set aStartups1 = one.getAssemblyStartups(); + Set aStartups2 = two.getAssemblyStartups(); + + if(aStartups1.size() != aStartups2.size()) { + CloningTestUtils.addToListOfProblems("Number of assembly startups differs for baseelementstartup '" + one.getBaseElement().getBaseElementName() + "' in startup scenario '" + + two.getStartup().getStartupName() + "'"); + CloningTestUtils.addToListOfProblems("BaseElementStartup one has " + aStartups1.size() + " and BaseElementStartup two has " + aStartups2.size()); + } + + for(AssemblyStartup aStartup1 : aStartups1) + { + boolean found = false; + for(AssemblyStartup aStartup2 : aStartups2) + { + if(safeEquals(aStartup1, aStartup2)) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("No matching assembly startup found for '" + aStartup1.getAssemblyRole().getRoleName() + "' in baseelementstartup '" + + two.getBaseElement().getBaseElementName() + "' in startup scenario '" + one.getStartup().getStartupName() + "' from configuration '" + two.getBaseElement().getHWConfiguration().getConfiguration().getConfigurationName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static boolean safeEquals(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else { + retVal = true; + } + if(retVal == true) { + compareContainersForSw(one, two); + compareComponentsForSw(one, two); + compareNetworkDevicesForSw(one, two); + compareAlarmsForSw(one, two); + compareAcsServicesForSw(one, two); + compareSchemasesForSw(one, two); + compareManagersForSw(one, two); + compareNotificationServiceMappingsForSw(one, two); + compareEventChannelsForSw(one, two); + } + // TODO: compare remainder of sw stuff +/* + protected SnmpTrapSink snmpTrapSink; + private Set eventChannels = new HashSet(0); +*/ + CloningTestUtils.indent--; + return retVal; + } + + private static void compareEventChannelsForSw(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + Set origEventChannels = one.getEventChannels(); + Set clonedEventChannels = two.getEventChannels(); + + if(origEventChannels.size() != clonedEventChannels.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + + one.getConfigurationName() + "' did not have the same number of EventChannels as configuration '" + two.getConfigurationName() + "'"); + CloningTestUtils.addToListOfProblems("First configuration has " + origEventChannels.size() + " and second configuration has " + clonedEventChannels.size()); + } + for(EventChannel origEventChannel: origEventChannels) { + boolean found = false; + for(EventChannel clonedEventChannel: clonedEventChannels) { + if( safeEquals(origEventChannel, clonedEventChannel) ) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Configuration '" + two.getConfigurationName() + "' did not contain (or differs in) EventChannel '" + + origEventChannel.getName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static boolean safeEquals(EventChannel one, EventChannel two) + { + CloningTestUtils.indent++; + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(safeEquals(one.getName(), two.getName()) && safeEquals(one.getPath(), two.getPath())) + { + if(!safeEquals(one.getIntegrationLogs(), two.getIntegrationLogs())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'IntegrationLogs' field"); + addToListOfProblems("first integrationLogs is " + one.getIntegrationLogs().toString() + " and second is " + two.getIntegrationLogs().toString()); + retVal = false; + } + else if(!safeEquals(one.getMaxQueueLength(), two.getMaxQueueLength())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'MaxQueueLength' field"); + addToListOfProblems("first maxQueueLength is " + one.getMaxQueueLength().toString() + " and second is " + two.getMaxQueueLength().toString()); + retVal = false; + } + else if(!safeEquals(one.getMaxConsumers(), two.getMaxConsumers())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'MaxConsumers' field"); + addToListOfProblems("first maxConsumers is " + one.getMaxConsumers().toString() + " and second is " + two.getMaxConsumers().toString()); + retVal = false; + } + else if(!safeEquals(one.getMaxSuppliers(), two.getMaxSuppliers())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'MaxSuppliers' field"); + addToListOfProblems("first maxSuppliers is " + one.getMaxSuppliers().toString() + " and second is " + two.getMaxSuppliers().toString()); + retVal = false; + } + else if(!safeEquals(one.getRejectNewEvents(), two.getRejectNewEvents())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'RejectNewEvents' field"); + addToListOfProblems("first rejectNewEvents is " + one.getRejectNewEvents().toString() + " and second is " + two.getRejectNewEvents().toString()); + retVal = false; + } + else if(!safeEquals(one.getDiscardPolicy(), two.getDiscardPolicy())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'DiscardPolicy' field"); + addToListOfProblems("first discardPolicy is " + one.getDiscardPolicy().toString() + " and second is " + two.getDiscardPolicy().toString()); + retVal = false; + } + else if(!safeEquals(one.getEventReliability(), two.getEventReliability())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'EventReliability' field"); + addToListOfProblems("first eventReliability is " + one.getEventReliability().toString() + " and second is " + two.getEventReliability().toString()); + retVal = false; + } + else if(!safeEquals(one.getConnectionReliability(), two.getConnectionReliability())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'ConnectionReliability' field"); + addToListOfProblems("first connectionReliability is " + one.getConnectionReliability().toString() + " and second is " + two.getConnectionReliability().toString()); + retVal = false; + } + else if(!safeEquals(one.getPriority(), two.getPriority())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'Priority' field"); + addToListOfProblems("first priority is " + one.getPriority().toString() + " and second is " + two.getPriority().toString()); + retVal = false; + } + else if(!safeEquals(one.getTimeout(), two.getTimeout())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'Timeout' field"); + addToListOfProblems("first timeout is " + one.getTimeout().toString() + " and second is " + two.getTimeout().toString()); + retVal = false; + } + else if(!safeEquals(one.getOrderPolicy(), two.getOrderPolicy())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'OrderPolicy' field"); + addToListOfProblems("first orderPolicy is " + one.getOrderPolicy().toString() + " and second is " + two.getOrderPolicy().toString()); + retVal = false; + } + else if(!safeEquals(one.getStartTimeSupported(), two.getStartTimeSupported())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'StartTimeSupported' field"); + addToListOfProblems("first startTimeSupported is " + one.getStartTimeSupported().toString() + " and second is " + two.getStartTimeSupported().toString()); + retVal = false; + } + else if(!safeEquals(one.getMaxEventsPerConsumer(), two.getMaxEventsPerConsumer())) { + addToListOfProblems("EventChannel '" + one.getName() + "' differs in 'MaxEventsPerConsumer' field"); + addToListOfProblems("first maxEventsPerConsumer is " + one.getMaxEventsPerConsumer().toString() + " and second is " + two.getMaxEventsPerConsumer().toString()); + retVal = false; + } + else { + retVal = true; + } + + int numProbsBefore = CloningTestUtils.getListOfProblems().length; + compareEventsForEventChannels(one, two); + int numProbsAfter = CloningTestUtils.getListOfProblems().length; + if(numProbsBefore != numProbsAfter) { + retVal = false; + } + } + else { + retVal = false; + } + CloningTestUtils.indent--; + return retVal; + } + + private static void compareEventsForEventChannels(EventChannel one, EventChannel two) + { + CloningTestUtils.indent++; + Set origEvents = one.getEvents(); + Set clonedEvents = two.getEvents(); + + if(origEvents.size() != clonedEvents.size()) { + CloningTestUtils.addToListOfProblems("EventChannel '" + + one.getPath() + "/" + one.getName() + "' did not have the same number of Events as EventChannel '" + two.getPath() + "/" + two.getName() + "'"); + CloningTestUtils.addToListOfProblems("First eventchannel has " + origEvents.size() + " and second eventchannel has " + clonedEvents.size()); + } + for(Event origEvent: origEvents) { + boolean found = false; + for(Event clonedEvent: clonedEvents) { + if( safeEquals(origEvent, clonedEvent) ) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("EventChannel '" + two.getPath() + "/" + two.getName() + "' did not contain (or differs in) Event '" + + origEvent.getName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static boolean safeEquals(Event one, Event two) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else if(safeEquals(one.getName(), two.getName())) + { + if(!safeEquals(one.getMaxProcessTime(), two.getMaxProcessTime())) { + addToListOfProblems("Event '" + one.getName() + "' differs in field 'maxProcessTime'"); + addToListOfProblems("first maxProcessTime is " + one.getMaxProcessTime().toString() + " and second is " + two.getMaxProcessTime().toString()); + retVal = false; + } + else { + retVal = true; + } + } + CloningTestUtils.indent--; + return retVal; + } + + private static void compareNotificationServiceMappingsForSw(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + Set origMappings = one.getNotificationServiceMappings(); + Set clonedMappings = two.getNotificationServiceMappings(); + + if(origMappings.size() != clonedMappings.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + one.getConfigurationName() + "' did not have the same number of NotificationServiceMappings as configuration '" + + two.getConfigurationName() + "'"); + CloningTestUtils.addToListOfProblems("First configuration has " + origMappings.size() + " and second configuration has " + clonedMappings.size()); + } + CloningTestUtils.indent--; + } + + private static void compareManagersForSw(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + Set origManagers = one.getManagers(); + Set clonedManagers = two.getManagers(); + + if(origManagers.size() != clonedManagers.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + one.getConfigurationName() + "' did not have the same number of Managers as configuration '" + two.getConfigurationName() + "'"); + CloningTestUtils.addToListOfProblems("First configuration has " + origManagers.size() + " and second configuration has " + clonedManagers.size()); + } + for(Manager origManager: origManagers) { + boolean found = false; + for(Manager clonedManager: clonedManagers) { + if( safeEquals(origManager, clonedManager) ) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Configuration '" + two.getConfigurationName() + "' did not contain (or differs in) a Manager"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static boolean safeEquals(Manager one, Manager two) + { + CloningTestUtils.indent++; + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else if(!safeEquals(one.getLoggingConfig(), two.getLoggingConfig())) { + addToListOfProblems("Managers differ in field 'loggingconfig'"); + retVal = false; + } + else if(!safeEquals(one.getStartup(), two.getStartup())) { + addToListOfProblems("Managers differ in field 'Startup'"); + retVal = false; + } + else if(!safeEquals(one.getServiceComponents(), two.getServiceComponents())) { + addToListOfProblems("Managers differ in field 'ServiceComponents'"); + retVal = false; + } + else if(!safeEquals(one.getServiceDaemons(), two.getServiceDaemons())) { + addToListOfProblems("Managers differ in field 'ServiceDaemons'"); + retVal = false; + } + else if(!safeEquals(one.getTimeout(), two.getTimeout())) { + addToListOfProblems("Managers differ in field 'Timeout'"); + retVal = false; + } + else if(!safeEquals(one.getClientPingInterval(), two.getClientPingInterval())) { + addToListOfProblems("Managers differ in field 'ClientPingInterval'"); + retVal = false; + } + else if(!safeEquals(one.getAdministratorPingInterval(), two.getAdministratorPingInterval())) { + addToListOfProblems("Managers differ in field 'AdministratorPingInterval'"); + retVal = false; + } + else if(!safeEquals(one.getContainerPingInterval(), two.getContainerPingInterval())) { + addToListOfProblems("Managers differ in field 'ContainerPingInterval'"); + retVal = false; + } + else if(!safeEquals(one.getServerThreads(), two.getServerThreads())) { + addToListOfProblems("Managers differ in field 'ServerThreads'"); + retVal = false; + } + else { + retVal = true; + } + CloningTestUtils.indent--; + return retVal; + } + + private static void compareSchemasesForSw(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + Set origSchemases = one.getSchemases(); + Set clonedSchemases = two.getSchemases(); + + if(origSchemases.size() != clonedSchemases.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + one.getConfigurationName() + "' did not have the same number of schemas as configuration '" + two.getConfigurationName() + "'"); + CloningTestUtils.addToListOfProblems("First configuration has " + origSchemases.size() + " and second configuration has " + clonedSchemases.size()); + } + + for(Schemas origSchemas: origSchemases) { + boolean found = false; + for(Schemas clonedSchemas: clonedSchemases) { + if( safeEquals(origSchemas, clonedSchemas) ) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Configuration '" + two.getConfigurationName() + "' did not contain (or differs in) a Schemas of type '" + origSchemas.getURN() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static void compareAcsServicesForSw(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + + Set origAcsServices = one.getAcsServices(); + Set clonedAcsServices = two.getAcsServices(); + + if(origAcsServices.size() != clonedAcsServices.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + one.getConfigurationName() + + "' did not have the same number of acs services as configuration '" + two.getConfigurationName() + "'"); + CloningTestUtils.addToListOfProblems("First configuration has " + origAcsServices.size() + " and second configuration has " + clonedAcsServices.size()); + } + + for(AcsService origAcsService: origAcsServices) { + boolean found = false; + for(AcsService clonedAcsService: clonedAcsServices) { + if( safeEquals(origAcsService, clonedAcsService) ) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Configuration '" + two.getConfigurationName() + "' did not contain (or differs in) a service of type '" + origAcsService.getServiceType() + + "' on computer '" + origAcsService.getComputer().getName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static void compareNetworkDevicesForSw(Configuration one, Configuration two) { + CloningTestUtils.indent++; + Set origNetworkDevices = one.getNetworkDevices(); + Set clonedNetworkDevices = two.getNetworkDevices(); + + if(origNetworkDevices.size() != clonedNetworkDevices.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + one.getConfigurationName() + "' and configuration '" + two.getConfigurationName() + + "' do not contain the same number of network devices"); + CloningTestUtils.addToListOfProblems("First configuration has " + origNetworkDevices.size() + " and second configuration has " + clonedNetworkDevices.size()); + } + + for(NetworkDevice origNetworkDevice: origNetworkDevices) { + if( origNetworkDevice instanceof Computer ) { + boolean found = false; + for(NetworkDevice clonedNetworkDevice: clonedNetworkDevices) { + if( clonedNetworkDevice instanceof Computer && + safeEquals((Computer)origNetworkDevice, (Computer)clonedNetworkDevice, true) ) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Network device '" + origNetworkDevice.getName() + "' was not found (or differs) in configuration '" + two.getConfigurationName() + "'"); + CloningTestUtils.indent--; + } + } + } + CloningTestUtils.indent--; + } + + private static void compareAlarmsForSw(Configuration one, Configuration two) { + CloningTestUtils.indent++; + Set origLinks = one.getReductionLinks(); + Set clonedLinks = two.getReductionLinks(); + + if(origLinks.size() != clonedLinks.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + one.getConfigurationName() + "' and configuration '" + two.getConfigurationName() + + "' do not contain the same number of reduction links"); + CloningTestUtils.addToListOfProblems("First configuration has " + origLinks.size() + " and second configuration has " + clonedLinks.size()); + } + + for(ReductionLink origLink: origLinks) { + boolean found = false; + for(ReductionLink clonedLink: clonedLinks) { + if( safeEquals(origLink, clonedLink) ) { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("ReductionLink was not found (or differs) in configuration '" + two.getConfigurationName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static boolean safeEquals(AcsService one, AcsService two) + { + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getServiceInstanceName(), two.getServiceInstanceName())) && + (safeEquals(one.getServiceType(), two.getServiceType())) && + (safeEquals(one.getComputer(), two.getComputer(), false)) ) + { + retVal = true; + } + else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals(Computer one, Computer two, boolean checkDeployment) + { + CloningTestUtils.indent++; + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } + else if(safeEquals(one.getName(), two.getName()) && safeEquals(one.getNetworkName(), two.getNetworkName())) + { + if(!safeEquals(one.getDiskless(), two.getDiskless())) { + CloningTestUtils.addToListOfProblems("Computer '" + one.getName() + "' with network name '" + one.getNetworkName() + "' differs in 'diskless' field"); + addToListOfProblems("first diskless is " + one.getDiskless().toString() + " and second is " + two.getDiskless().toString()); + retVal = false; + } + else if(!safeEquals(one.getPhysicalLocation(), two.getPhysicalLocation())) { + CloningTestUtils.addToListOfProblems("Computer '" + one.getName() + "' with network name '" + one.getNetworkName() + "' differs in 'physicalLocation' field"); + addToListOfProblems("first physicalLocation is " + one.getPhysicalLocation().toString() + " and second is " + two.getPhysicalLocation().toString()); + retVal = false; + } + else if(!safeEquals(one.getProcessorType(), two.getProcessorType())) { + CloningTestUtils.addToListOfProblems("Computer '" + one.getName() + "' with network name '" + one.getNetworkName() + "' differs in 'processorType' field"); + addToListOfProblems("first processorType is " + one.getProcessorType().toString() + " and second is " + two.getProcessorType().toString()); + retVal = false; + } + else if(!safeEquals(one.getRealTime(), two.getRealTime())) + { + CloningTestUtils.addToListOfProblems("Computer '" + one.getName() + "' with network name '" + one.getNetworkName() + "' differs in 'realtime' field"); + addToListOfProblems("first processorType is " + one.getRealTime().toString() + " and second is " + two.getRealTime().toString()); + retVal = false; + } + else { + retVal = true; + } + + if(checkDeployment) + { + int numProbsBefore = CloningTestUtils.getListOfProblems().length; + compareDeploymentOfContainersForComputers(one, two); + int numProbsAfter = CloningTestUtils.getListOfProblems().length; + if(numProbsBefore != numProbsAfter) { + retVal = false; + } + } + } + + CloningTestUtils.indent--; + return retVal; + } + + private static boolean safeEquals(ReductionLink one, ReductionLink two) { + + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getAction(), two.getAction())) && + (safeEquals(one.getType(), two.getType())) && + (safeEquals(one.getAlarmDefinitionByChildalarmdefid(), two.getAlarmDefinitionByChildalarmdefid())) && + (safeEquals(one.getAlarmDefinitionByParentalarmdefid(), two.getAlarmDefinitionByParentalarmdefid())) ) + { + retVal = true; + } + else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals( AlarmDefinition one, AlarmDefinition two) { + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getFaultCode(), two.getFaultCode())) && + (safeEquals(one.getFaultMember(), two.getFaultMember())) && + (safeEquals (one.getReductionThreshold(), two.getReductionThreshold())) ) + { + retVal = true; + } + else { + retVal = false; + } + + // TODO: compare remainder of sw stuff + return retVal; + } + + private static boolean safeEquals(ReductionThreshold one, ReductionThreshold two) { + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getValue(), two.getValue())) ) + { + retVal = true; + } + else { + retVal = false; + } + + // TODO: compare remainder of sw stuff + return retVal; + } + + private static boolean safeEquals(FaultMember one, FaultMember two) { + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getMemberName(), two.getMemberName())) && + (safeEquals(one.getLocation(), two.getLocation())) && + (safeEquals(one.getFaultFamily(), two.getFaultFamily())) ) + { + retVal = true; + } + else { + retVal = false; + } + + // TODO: compare remainder of sw stuff + return retVal; + } + + private static boolean safeEquals(Location one, Location two) { + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getBuilding(), two.getBuilding())) && + (safeEquals(one.getFloor(), two.getFloor())) && + (safeEquals(one.getLocationPosition(), two.getLocationPosition())) && + (safeEquals(one.getMnemonic(), two.getMnemonic())) && + (safeEquals(one.getRoom(), two.getRoom())) ) + { + retVal = true; + } + else { + retVal = false; + } + + // TODO: compare remainder of sw stuff + return retVal; + } + + private static boolean safeEquals(FaultCode one, FaultCode two) { + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getAction(), two.getAction())) && + (safeEquals(one.getCause(), two.getCause())) && + (safeEquals (one.getConsequence(), two.getConsequence())) && + (safeEquals(one.getCodeValue(), two.getCodeValue())) && + (safeEquals(one.getIsInstant(), two.getIsInstant())) && + (safeEquals (one.getPriority(), two.getPriority())) && + (safeEquals(one.getProblemDescription(), two.getProblemDescription())) && + (safeEquals(one.getFaultFamily(), two.getFaultFamily())) ) + { + retVal = true; + } + else { + retVal = false; + } + + // TODO: compare remainder of sw stuff + return retVal; + } + + private static boolean safeEquals(FaultFamily one, FaultFamily two) { + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getAlarmSource(), two.getAlarmSource())) && + (safeEquals(one.getFamilyName(), two.getFamilyName())) && + (safeEquals (one.getHelpURL(), two.getHelpURL())) && + (safeEquals(one.getContact(), two.getContact())) ) + { + retVal = true; + } + else { + retVal = false; + } + + // TODO: compare remainder of sw stuff + return retVal; + } + + private static boolean safeEquals(Contact one, Contact two) { + boolean retVal; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if((safeEquals(one.getContactName(), two.getContactName())) && + (safeEquals(one.getEmail(), two.getEmail())) && + (safeEquals (one.getGsm(), two.getGsm())) ) + { + retVal = true; + } + else { + retVal = false; + } + + // TODO: compare remainder of sw stuff + return retVal; + } + + private static void compareContainersForSw(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + Set origContainers = one.getContainers(); + Set clonedContainers = two.getContainers(); + if(origContainers.size() != clonedContainers.size()) { + CloningTestUtils.addToListOfProblems("Configurations do not have the same number of containers"); + CloningTestUtils.addToListOfProblems("First configuration has " + origContainers.size() + " and second configuration has " + clonedContainers.size()); + } + for(Container origContainer : origContainers) + { + boolean found = false; + for(Container clonedContainer : clonedContainers) + { + if(safeEquals(origContainer, clonedContainer)) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Container '" + origContainer.getPath() + "/" + origContainer.getContainerName() + + "' was not found (or differs) in configuration '" + two.getConfigurationName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static void compareDeploymentOfContainersForComputers(Computer one, Computer two) + { + CloningTestUtils.indent++; + Set origContainers = one.getContainers(); + Set clonedContainers = two.getContainers(); + if(origContainers.size() != clonedContainers.size()) { + CloningTestUtils.addToListOfProblems("Computer '" + one.getNetworkName() + "' differs in the number of containers deployed"); + CloningTestUtils.addToListOfProblems("First computer has " + origContainers.size() + " and second computer has " + clonedContainers.size()); + } + for(Container origContainer : origContainers) + { + boolean found = false; + for(Container clonedContainer : clonedContainers) + { + if( safeEquals(origContainer.getContainerName(), clonedContainer.getContainerName()) && safeEquals(origContainer.getPath(), clonedContainer.getPath()) ) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Container '" + origContainer.getPath() + "/" + origContainer.getContainerName() + + "' was not found in computer '" + two.getNetworkName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static void compareDeploymentOfComponentsForContainers(Container one, Container two) + { + CloningTestUtils.indent++; + Set origComponents = one.getComponents(); + Set clonedComponents = two.getComponents(); + if(origComponents.size() != clonedComponents.size()) { + CloningTestUtils.addToListOfProblems("Container '" + one.getPath() + "/" + one.getContainerName() + "' does not have the same number of components deployed"); + CloningTestUtils.addToListOfProblems("First container has " + origComponents.size() + " and second container has " + clonedComponents.size()); + } + for(Component origComponent : origComponents) + { + boolean found = false; + for(Component clonedComponent : clonedComponents) + { + if( safeEquals(origComponent.getComponentName(), clonedComponent.getComponentName()) && safeEquals(origComponent.getPath(), clonedComponent.getPath()) ) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Component " + origComponent.getPath() + "/" + origComponent.getComponentName() + + " was not found in container '" + two.getPath() + "/" + two.getContainerName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + private static void compareComponentsForSw(Configuration one, Configuration two) + { + CloningTestUtils.indent++; + Set origComponents = one.getComponents(); + Set clonedComponents = two.getComponents(); + if(origComponents.size() != clonedComponents.size()) { + CloningTestUtils.addToListOfProblems("Configuration '" + one.getConfigurationName() + "' and configuration '" + two.getConfigurationName() + + "' do not have the same number of components"); + CloningTestUtils.addToListOfProblems("First configuration has " + origComponents.size() + " and second configuration has " + clonedComponents.size()); + } + for(Component origComponent : origComponents) + { + boolean found = false; + for(Component clonedComponent : clonedComponents) + { + if(safeEquals(origComponent, clonedComponent)) + { + found = true; + break; + } + } + if(!found) { + CloningTestUtils.indent++; + CloningTestUtils.addToListOfProblems("Component " + origComponent.getPath() + "/" + origComponent.getComponentName() + + " was not found (or differs) in configuration '" + two.getConfigurationName() + "'"); + CloningTestUtils.indent--; + } + } + CloningTestUtils.indent--; + } + + @SuppressWarnings("unused") + private static boolean safeEquals(Date one, Date two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(one.equals(two)) { + retVal = true; + } else { + retVal = false; + } + + return retVal; + } + + private static boolean safeEquals(Boolean one, Boolean two) + { + boolean retVal = false; + + if(null == one && null == two) { + retVal = true; + } else if(null == one && null != two) { + retVal = false; + } else if(null != one && null == two) { + retVal = false; + } else if(one.equals(two)) { + retVal = true; + } else { + retVal = false; + } + + return retVal; + } + + private static void compareHWConfigurationAttributes(HWConfiguration config, HWConfiguration clonedConfig) + { + CloningTestUtils.indent++; + if(!config.getConfiguration().getDescription().equals(clonedConfig.getConfiguration().getDescription())) { + CloningTestUtils.addToListOfProblems("Configuration descriptions differ"); + } + if(!config.getConfiguration().getFullName().equals(clonedConfig.getConfiguration().getFullName())) { + CloningTestUtils.addToListOfProblems("Configuration full names differ"); + } + if(!config.getTelescopeName().equals(clonedConfig.getTelescopeName())) { + CloningTestUtils.addToListOfProblems("Configuration telescopenames differ"); + } + if(!config.getConfiguration().getActive().equals(clonedConfig.getConfiguration().getActive())) { + CloningTestUtils.addToListOfProblems("Configuration active boolean flags differ"); + } +/* if(null != config.getArrayReferenceX() && null != clonedConfig.getArrayReferenceX() + && null != config.getArrayReferenceY() && null != clonedConfig.getArrayReferenceY() + && null != config.getArrayReferenceZ() && null != clonedConfig.getArrayReferenceZ()) { + if(!config.getArrayReferenceX().equals(clonedConfig.getArrayReferenceX())) { + CloningTestUtils.addToListOfProblems("Configuration array ref position X values differ"); + } + if(!config.getArrayReferenceY().equals(clonedConfig.getArrayReferenceY())) { + CloningTestUtils.addToListOfProblems("Configuration array ref position Y values differ"); + } + if(!config.getArrayReferenceZ().equals(clonedConfig.getArrayReferenceZ())) { + CloningTestUtils.addToListOfProblems("Configuration array ref position Z values differ"); + } + } + else { + if(config.getArrayReferenceX() != clonedConfig.getArrayReferenceX()) { // TODO: Verify that this is OK + CloningTestUtils.addToListOfProblems("Configuration array references differ"); + } + }*/ + + CloningTestUtils.indent--; + } + + private static boolean deleteDir(File dir) + { + if (dir.isDirectory()) { + String[] children = dir.list(); + for (int i=0; i= 0) + out.write(buffer, 0, len); + + in.close(); + out.close(); + } + + public static Component createComponent(String name, String path, + ComponentType compType, String urn, Configuration config) + { + Component comp = new Component(); + comp.setConfiguration(config); + comp.setComponentName(name); + comp.setComponentType(compType); + comp.setPath(path); + // comp.setURN(urn); + comp.setImplLang(ImplLangEnum.valueOfForEnum("java")); + comp.setRealTime(false); + comp.setCode("LIB"); + comp.setIsAutostart(false); + comp.setIsDefault(false); + comp.setIsControl(false); + comp.setKeepAliveTime(0); + comp.setMinLogLevel((byte)-1); + comp.setMinLogLevelLocal((byte)-1); + config.getComponents().add(comp); + return comp; + } + + public static HWConfiguration createConfiguration(String name) + { + Configuration swCfg = new Configuration(); + swCfg.setConfigurationName(name); + swCfg.setFullName("full name of: " + name); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription("description of: " + name); + HWConfiguration config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + return config; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloningUtils.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloningUtils.java new file mode 100755 index 0000000000000000000000000000000000000000..8f60ed8ce9d34dc6b82f297018375a09d8039918 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CloningUtils.java @@ -0,0 +1,367 @@ +package alma.tmcdb.cloning; + +import java.util.Collection; +import java.util.HashSet; +import java.util.Set; +import java.util.Map; +import java.util.HashMap; + +import net.sf.beanlib.hibernate.HibernateBeanReplicator; +import net.sf.beanlib.hibernate.UnEnhancer; +import net.sf.beanlib.hibernate3.Hibernate3BeanReplicator; + +import org.hibernate.SessionFactory; + +import alma.acs.tmcdb.BACIProperty; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ContainerStartupOption; +//import alma.acs.tmcdb.DefaultCanAddress; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.BaseElement; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.BEType; +import alma.acs.tmcdb.Pad; +import alma.acs.tmcdb.AssemblyStartup; +import alma.acs.tmcdb.BaseElement; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.Startup; + +/** + * Utility methods for cloning items of interest: Startup and Configuration, for use by TMCDBExplorer GUI. + * @author sharrington + */ +public class CloningUtils +{ + private static final String COPY_OF = "Copy of: "; + private static final String CLONE_OF = "Clone of: "; + + /** + * Clones a startup scenario within a configuration, using the beanlib library. NOTE: this is the preferred approach because + * it involves less code and is in theory less fragile to changes in the domain - the other method (cloneStartup) + * will be replaced by this one as soon as we have 100 percent confidence that this method is working as expected. + * + * @param sessionFactory the hibernate session factory used when dealing with persistent objects in hibernate. + * @param startup the startup to clone. + * @param clonedStartupName the name of the cloned startup (must be unique within a configuration, i.e. cannot + * be the same name as the scenario being cloned, nor the same name as any other startup in the configuration). + * @return the cloned startup, *NOT* persisted. + */ + public static Startup cloneStartupWithBeanlib(SessionFactory sessionFactory, Startup startup, String clonedStartupName) + { + HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); + replicator.initCustomTransformerFactory(new StartupScenarioTransformerFactory()); + Startup clonedStartup = replicator.copy(startup); + + if(null != clonedStartupName) { + clonedStartup.setStartupName(clonedStartupName); + } else { + clonedStartup.setStartupName(CLONE_OF + startup.getStartupName()); + } + + startup.getHWConfiguration().addStartupToStartups(clonedStartup); + return clonedStartup; + } + + /** + * Clones a configuration. + * @param sessionFactory the hibernate session factory used when dealing with persistent objects in hibernate. + * @param config the configuration to clone. + * @param clonedConfigName the name of the new configuration; must be unique. + * @return the new (cloned) configuration *NOT* persisted. + */ + public static HWConfiguration cloneConfiguration(SessionFactory sessionFactory, HWConfiguration config, String clonedConfigName) + { + UnEnhancer.setDefaultCheckCGLib(false); // globally disable checking + HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); + + replicator.initCustomTransformerFactory(new ConfigurationGlobalTransformerFactory(), new CloneAlmaEnumTransformerFactory(), new BaseElementTransformerFactory(config)); + HWConfiguration clonedConfiguration = replicator.copy(config); + + if(null != clonedConfigName) { + clonedConfiguration.getConfiguration().setConfigurationName(clonedConfigName); + } else { + clonedConfiguration.getConfiguration().setConfigurationName(CLONE_OF + config.getConfiguration().getConfigurationName()); + } + + // restore the global configuration for the cloned config (because vetoer prevented it from being cloned) + clonedConfiguration.setGlobalConfigId(config.getGlobalConfigId()); + + return clonedConfiguration; + } + + public static Set removeStartups(HWConfiguration clonedConfig) + { + Set retVal = clonedConfig.getStartups(); + clonedConfig.setStartups(new HashSet()); + return retVal; + } + + public static void restoreStartups(HWConfiguration config, Set savedStartups) + { + config.setStartups(savedStartups); + } + + /* + * This method (in conjunction with the corresponding restoreAntennaToPadMappings method) can be used to + * workaround some tricky hibernate issues with cloning, related to the antennaToPad mappings. + * + * A short synopsis of the problem is: we cannot (easily) control the order in which hibernate persists unsaved objects + * after a configuration is cloned. For technical reasons, we do not wish to have a cascade for the TelescopeToPadTest->Pad + * relationship. Thus, if the TelescopeToPadTest is saved *before* the referenced Pad, we will get an exception indicating + * that the TelescopeToPadTest's pad id is null (which is not allowed). Thus, we would like to save the Pad objects *first* + * and then save the TelescopeToPadTest objects. This method allows you to remove the a2p's and then later restore them. Thus, + * you could do something like this: + * + * 1) clone a config + * 2) remove (by calling this method) the antennatopad mappings + * 3) save the config, which will save the pads (and generate values for the pad.id field) + * 4) restore (by calling the restoreAntennaToPadMappings method defined in this class) the antennatopad mappings + * 5) save the config, a 2nd time, which results in both the pads and the antennatopad mappings being saved. + * + * Yes, this is a bit tricky, but the alternatives were worse. + * + * Note: we cannot do this all within the cloneConfiguration method, unfortunately, because it involves persisting things + * which is not done w/in the context of this utility class (but occurs at a different layer). + */ + public static Map > removeAntennaToPadMappings(HWConfiguration clonedConfig) + { + Map > savedAntennaToPadMappings = new HashMap >(); + for(BaseElement be: clonedConfig.getBaseElements()) + { + if(be.getBaseType().equals(BEType.PAD) || be instanceof Pad) { + Pad pad = (Pad) be; + if(pad.getTelescopeToPads().size() > 0) { + savedAntennaToPadMappings.put(pad.getPadName(), pad.getTelescopeToPads()); + pad.setTelescopeToPads(new HashSet()); + } + } + else if(be.getBaseType().equals(BEType.TELESCOPE) || be instanceof Telescope) { + Telescope ant = (Telescope) be; + if(ant.getTelescopeToPads().size() > 0) { + savedAntennaToPadMappings.put(ant.getTelescopeName(), ant.getTelescopeToPads()); + ant.setTelescopeToPads(new HashSet()); + } + } + } + return savedAntennaToPadMappings; + } + + /* + * This method (in conjunction with the corresponding removeAntennaToPadMappings method) can be used to + * workaround some tricky hibernate issues with cloning, related to the antennaToPad mappings. + * + * A short synopsis of the problem is: we cannot (easily) control the order in which hibernate persists unsaved objects + * after a configuration is cloned. For technical reasons, we do not wish to have a cascade for the TelescopeToPadTest->Pad + * relationship. Thus, if the TelescopeToPadTest is saved *before* the referenced Pad, we will get an exception indicating + * that the TelescopeToPadTest's pad id is null (which is not allowed). Thus, we would like to save the Pad objects *first* + * and then save the TelescopeToPadTest objects. This method allows you to remove the a2p's and then later restore them. Thus, + * you could do something like this: + * + * 1) clone a config + * 2) remove (by calling the removeAntennaToPadMappings method) defined in this class + * 3) save the config, which will save the pads (and generate values for the pad.id field) + * 4) restore (by calling this method) the antennatopad mappings + * 5) save the config, a 2nd time, which results in both the pads and the antennatopad mappings being saved. + * + * Yes, this is a bit tricky, but the alternatives were worse. + * + * Note: we cannot do this all within the cloneConfiguration method, unfortunately, because it involves persisting things + * which is not done w/in the context of this utility class (but occurs at a different layer). + */ + public static void restoreTelescopeToPadMappings(HWConfiguration clonedConfig, Map > savedAntennaToPadMappings ) + { + for(BaseElement be: clonedConfig.getBaseElements()) { + if(be.getBaseType().equals(BEType.PAD) || be instanceof Pad) { + Pad pad = (Pad) be; + pad.setTelescopeToPads(savedAntennaToPadMappings.get(pad.getPadName())); + } + else if(be.getBaseType().equals(BEType.TELESCOPE) || be instanceof Telescope) { + Telescope ant = (Telescope) be; + ant.setTelescopeToPads(savedAntennaToPadMappings.get(ant.getTelescopeName())); + } + } + } + + /** + * reconnects baseelements with baseelementstartups after cloning (this handles the case of cross-configuration baseelementstartups, + * which point to baseelements in other configurations; the cloning simply returns the baseelement from the other configuration, w/o cloning + * it (to avoid cloning other parts of the 2nd config, which isn't desired); we actually want to use the cloned baseelement for these. + private static void reConnectBaseElementsForBaseElementStartups(HWConfiguration clonedConfiguration, String origConfigName) + { + Map beMap = new HashMap(); + for(BaseElement be: clonedConfiguration.getBaseElements()) { + beMap.put(be.getName(), be); + } + + for(Startup startup: clonedConfiguration.getStartups()) + { + for(BaseElementStartup bes: startup.getBaseElementStartups()) { + if(bes.getBaseElement().getConfiguration().getName().equals(origConfigName)) { + bes.setBaseElement(beMap.get(bes.getBaseElement().getName())); + } + } + } + } + */ + + /** + * Clones a set of DefaultCanAddress objects. While cloning, it also associate + * the right component from the candidateComponents set, so it + * reuses the already existing components. + * + *

While looking for the component to be used in a cloned instance of a DefaultCanAddress object, + * the two arguments originalPathSubstring and finalPathSubstring can be used + * to substitute a substring in the original component's path in order to look for matches in the + * candidateComponents. This must be used, for example, if we intend to clone DCAs from antenna A + * to antenna B. In this case, the original components will have a path like CONTROL/A, while the + * candidates will have a path like CONTROL/B. + * + * @param sessionFactory the hibernate session factory used when dealing with persistent objects in hibernate. + * @param defaultCanAddresses the set of DefaultCanAddress objects to clone + * @param candidateComponents the set of Component objects used while cloning to properly link the cloned DefaultCanAddress + * objects + * @param originalPathSubstring a substring on the path of the components associated to the original DCAs that can be + * replaced by the finalPathSubstring when looking for the right component + * to link with the cloned DCA. If null, no substitution takes place, and the candidate components + * are compared with their original values for name and path. + * @param finalPathSubstring a substring on the path of the candidate components to be used by the cloned instances of the + * DCAs. If null, no substitution takes place, and the candidate components are compared with their + * original values for name and path + * @return the new (cloned) set of DefaultCanAddress objects *NOT* persisted. + */ +// public static Set cloneDefaultCanAddressesForConfiguration(SessionFactory sessionFactory, +// Set defaultCanAddresses, Set candidateComponents, +// String originalPathSubstring, String finalPathSubstring) +// { +// UnEnhancer.setDefaultCheckCGLib(false); // globally disable checking +// HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); +// replicator.initCustomTransformerFactory(new CloneDefaultCanAddressTransformerFactory(candidateComponents, originalPathSubstring, finalPathSubstring)); +// Set clonedDefaulCanAddresses = replicator.copy(defaultCanAddresses); +// return clonedDefaulCanAddresses; +// } + + /** + * Clones a base element. + * @param sessionFactory the hibernate session factory used when dealing with persistent objects in hibernate. + * @param element the base element to clone. + * @param clonedElementName the name of the new base element; must be unique (within a configuration). + * @return the new (cloned) base element *NOT* persisted. + */ + public static BaseElement cloneBaseElement(SessionFactory sessionFactory, BaseElement element, String clonedElementName) + { + HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); + replicator.initCustomTransformerFactory(new CloneTelescopeTransformerFactory(element.getBaseElementName(), clonedElementName), new CloneAlmaEnumTransformerFactory()); + BaseElement clonedBaseElement = replicator.copy(element); + element.getHWConfiguration().addBaseElementToBaseElements(clonedBaseElement); + return clonedBaseElement; + } + + /** + * Copies a base element. + * @param sessionFactory the hibernate session factory used when dealing with persistent objects in hibernate. + * @param element the base element to clone. + * @param copiedElementName the name of the new base element; must be unique (within a configuration). + * @param addToConfiguration the configuration to which to add the new base element. + * @return the new (copied) base element *NOT* persisted. + */ + public static BaseElement copyBaseElement(SessionFactory sessionFactory, BaseElement element, String copiedElementName, HWConfiguration addToConfiguration) + { + HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); + replicator.initCustomTransformerFactory(new CopyAntennaTransformerFactory(addToConfiguration, copiedElementName), new CloneAlmaEnumTransformerFactory()); + BaseElement copiedBaseElement = replicator.copy(element); + + if(null != copiedElementName) + copiedBaseElement.setBaseElementName(copiedElementName); + else + copiedBaseElement.setBaseElementName(COPY_OF + element.getBaseElementName()); + + addToConfiguration.addBaseElementToBaseElements(copiedBaseElement); + return copiedBaseElement; + } + + + /** + * Clones a bunch of components that belong to an antenna. This method will create a duplicate + * of the components arrays given as parameter, with their paths changed. For instance, + * if the original components were part of the antenna DV01, and we are cloning them + * for the antenna DV23, all the paths in the components will be changed from "CONTROL/DV01" + * to "CONTROL/DV23". + * + * @param sessionFactory The Hibernate Session Factory object + * @param components A set of components to be cloned + * @param oldName The old name that must be replaced in the path of both components and containers + * @param newName The new name that must replace the old one in the path of both components and containers + * @param addToConfiguration the configuration to which the components will be added + */ + public static Collection cloneComponentsForAntenna(SessionFactory sessionFactory, + Collection components, String oldName, String newName, Configuration addToConfiguration) + { + HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); + ComponentNameReplacer replacer = new TelescopeComponentNameReplacer(oldName, newName); + replicator.initCustomTransformerFactory(new CloneComponentsTransformerFactory(replacer, addToConfiguration)); + return replicator.copy(components); + } + + /** + * Clones a component, changing its name and path to the given ones. + * + * @param sessionFactory The Hibernate Session Factory object + * @param components A set of components to be cloned + * @param newName The new name for the component. If null, then the name shouldn't be changed + * @param newPath The new path for the component. If null, then the path shouldn't be changed + * @param targetConfiguration the configuration to which the component will belong + */ + public static Component cloneComponent(SessionFactory sessionFactory, + Component component, String newName, String newPath, Configuration targetConfiguration) + { + HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); + ComponentNameReplacer replacer = new NameAndPathComponentNameReplacer(newName, newPath); + replicator.initCustomTransformerFactory(new CloneComponentsTransformerFactory(replacer, targetConfiguration)); + return replicator.copy(component); + } + + /** + * Clones a bunch of containers that belong to an antenna. This method will create a duplicate + * of the containers given as parameter, with their paths changed. For instance, + * if the original containers were part of the antenna DV01, and we are cloning them + * for the antenna DV23, all the paths in the containers will be changed from "CONTROL/DV01" + * to "CONTROL/DV23". + * + * @param sessionFactory The Hibernate Session Factory object + * @param containers A set of containers to be cloned + * @param oldName The old name that must be replaced in the path of both components and containers + * @param newName The new name that must replace the old one in the path of both components and containers + * @param addToConfiguration the configuration to which the containers will be added + */ + public static Collection cloneContainersForAntenna(SessionFactory sessionFactory, + Collection containers, String oldName, String newName, Configuration addToConfiguration) + { + HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); + replicator.initCustomTransformerFactory(new CloneContainersTransformerFactory(oldName, newName, addToConfiguration)); + return replicator.copy(containers); + } + + /** + * Clones a bunch of BACIProperty objects that belong to a component. This method will create a duplicate + * of the BACIProperty objects associated with the component which is given as parameter. + * + * @param sessionFactory The Hibernate Session Factory object + * @param component A component for which we want to clone the baci properties. + */ + public static void cloneBACIPropertiesForComponent(SessionFactory sessionFactory, Component component) + { + HibernateBeanReplicator replicator = new Hibernate3BeanReplicator(null, null, new HibernateIdFieldVetoer(sessionFactory)); + replicator.initCustomTransformerFactory(new CloneBACIPropertiesTransformerFactory(component)); + Set copiedBaciProps = replicator.copy(component.getBACIProperties()); + for(BACIProperty prop : copiedBaciProps) { + component.addBACIPropertyToBACIProperties(prop); + prop.setComponent(component); + } + } + + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ComponentNameReplacer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ComponentNameReplacer.java new file mode 100755 index 0000000000000000000000000000000000000000..0268b114e7c28e2054c702e52a368dc8ed72a5bc --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ComponentNameReplacer.java @@ -0,0 +1,23 @@ +package alma.tmcdb.cloning; + +import alma.acs.tmcdb.Component; + + +/** + * This interface defines a common base for classes that change a Component's + * name fields (e.g., componetName or path). + * It is used by the Component cloner transformer, in order to separate the + * cloning logic from the name replacement logic. + * + * @author rtobar, Apr 28th, 2011 + * + */ +public interface ComponentNameReplacer { + + /** + * Replaces the necessary name fields for the given Component. + * + * @param comp The component whose name fields will be changed + */ + public void replaceName(Component comp); +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ConfigurationGlobalTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ConfigurationGlobalTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..b4d020c69c1542e18d7719dbbbab6d653fac81f8 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ConfigurationGlobalTransformer.java @@ -0,0 +1,59 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Contact; +import alma.acs.tmcdb.LRUType; +import alma.acs.tmcdb.Location; +//import alma.acs.tmcdb.ArrayReference; +import alma.acs.tmcdb.AssemblyRole; +import alma.acs.tmcdb.AssemblyType; +import alma.tmcdb.utils.Coordinate; +//import alma.acs.tmcdb.Term; + +/** + * Used in cloning; transformer to 'pass through' (i.e. return the identical object reference) + * any 'global' domain classes; in this case, the global classes are those + * that are not associated with a configuration: LruType, AssemblyType, + * PropertyType, and AssemblyRole. + * + * @author sharrington + */ +public class ConfigurationGlobalTransformer implements CustomBeanTransformerSpi +{ + protected BeanTransformerSpi defaultBeanTransformer; + + public ConfigurationGlobalTransformer(BeanTransformerSpi beanTransformer) + { + this.defaultBeanTransformer = beanTransformer; + } + + @SuppressWarnings("unchecked") + @Override + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) { + if (toClass == LRUType.class || +// toClass == Term.class || TODO: Verify that eliminating these two (not in generated POJOs) here is OK +// toClass == ArrayReference.class || + toClass == Coordinate.class || + toClass == AssemblyType.class || + toClass == AssemblyRole.class || + toClass == ComponentType.class || + toClass == Location.class || + toClass == Contact.class + ) + return true; + + return false; + } + + @SuppressWarnings("unchecked") + @Override + public T transform(Object in, Class toClass, PropertyInfo propertyInfo) + { + // Default behavior: global tables' rows are just copied + T retVal = (T)in; + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ConfigurationGlobalTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ConfigurationGlobalTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..f36be4765cfa4957caa7e6a689b4eb2a1437723e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/ConfigurationGlobalTransformerFactory.java @@ -0,0 +1,21 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; + +/** + * Used in cloning; factory to return a transformer which will 'pass through' (i.e. return the identical object reference) + * any 'global' domain classes. + * + * @author sharrington + */ +public class ConfigurationGlobalTransformerFactory implements CustomBeanTransformerSpi.Factory +{ + public ConfigurationGlobalTransformerFactory() + { + } + + public CustomBeanTransformerSpi newCustomBeanTransformer(BeanTransformerSpi beanTransformer) { + return new ConfigurationGlobalTransformer(beanTransformer); + } +} \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CopyAntennaTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CopyAntennaTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..b3a1cd32bdd222f3e132a8984eccf96fa14d9a72 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CopyAntennaTransformerFactory.java @@ -0,0 +1,24 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi.Factory; +import alma.acs.tmcdb.HWConfiguration; + +public class CopyAntennaTransformerFactory implements Factory +{ + private HWConfiguration addToConfiguration; + private String newName; + + public CopyAntennaTransformerFactory(HWConfiguration addToConfiguration, String newName) + { + this.addToConfiguration = addToConfiguration; + this.newName = newName; + } + + @Override + public CustomBeanTransformerSpi newCustomBeanTransformer(BeanTransformerSpi contextBeanTransformer) + { + return new CopyTelescopeTransformer(contextBeanTransformer, addToConfiguration, newName); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CopyTelescopeTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CopyTelescopeTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..88070c112acc9656568d86769e8d36807b860de9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/CopyTelescopeTransformer.java @@ -0,0 +1,97 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.Pad; + +public class CopyTelescopeTransformer extends ConfigurationGlobalTransformer +{ + private HWConfiguration addToConfiguration; + private String newName; + + public CopyTelescopeTransformer(BeanTransformerSpi beanTransformer, HWConfiguration addToConfiguration, String newName) + { + super(beanTransformer); + this.newName = newName; + this.addToConfiguration = addToConfiguration; + } + + @Override + @SuppressWarnings("unchecked") + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + boolean retVal = false; + + if(super.isTransformable(from, toClass, propertyInfo)) + { + retVal = true; + } + else if(toClass == HWConfiguration.class || + toClass == Configuration.class || + toClass == Component.class || + toClass == Container.class || + toClass == Pad.class || + toClass == TelescopeToPad.class || + toClass == Telescope.class) + { + retVal = true; + } + + return retVal; + } + + @SuppressWarnings("unchecked") + @Override + public T transform(Object in, Class toClass, + PropertyInfo propertyInfo) + { + T retVal = null; + + // 1) reassign hwconfiguration to the new hwconfiguration + // into which we're copying this antenna + if(HWConfiguration.class.isAssignableFrom(toClass) && null != in) + { + retVal = (T)addToConfiguration; + } + + // 2) reassign sw configuration to the new sw configuration + // into which we're copying this antenna + else if(Configuration.class.isAssignableFrom(toClass) && null != in) { + retVal = (T)addToConfiguration.getConfiguration(); + } + + // 3) don't copy pad, antennatopad, antennatofrontend, container objects at all + else if(toClass == Pad.class || toClass == TelescopeToPad.class || + Container.class.isAssignableFrom(toClass)) + { + retVal = null; + } + + // 4) handle antenna object in a special way: clear out the collections of a2p, & a2fe objects + else if(toClass == Telescope.class) { + retVal = (T)defaultBeanTransformer.getBeanReplicatable().replicateBean(in, in.getClass()); + Telescope antenna = (Telescope) retVal; + antenna.getTelescopeToPads().clear(); + CloneTelescopeTransformer.zeroOutDelayPointingAndFocusModel(antenna); + } + + // clone the component, and rename + else if(toClass == Component.class && in != null) { + retVal = (T)defaultBeanTransformer.getBeanReplicatable().replicateBean(in, in.getClass()); + Component comp = (Component)retVal; + comp.setComponentName( comp.getComponentName().replaceAll(comp.getComponentName(), newName) ); + } + + else { + retVal = super.transform(in, toClass, propertyInfo); + } + + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/HibernateIdFieldVetoer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/HibernateIdFieldVetoer.java new file mode 100755 index 0000000000000000000000000000000000000000..89b9ece153111d198800c49ea4df7236c0be5766 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/HibernateIdFieldVetoer.java @@ -0,0 +1,74 @@ +package alma.tmcdb.cloning; + +import alma.acs.tmcdb.HWConfiguration; +import java.lang.reflect.Method; +import java.util.Collection; + +import net.sf.beanlib.spi.PropertyFilter; + +import org.hibernate.SessionFactory; +import org.hibernate.metadata.ClassMetadata; +import net.sf.cglib.proxy.Enhancer; + + +/** + * Utility class used in cloning; vetos (to prevent copying) any fields which are hibernate identifier fields. + * @author sharrington + */ +public class HibernateIdFieldVetoer implements PropertyFilter +{ + private final static String GLOBAL_CONFIG_PROPERTY_NAME = "globalConfiguration"; + private SessionFactory sessionFactory; + + public HibernateIdFieldVetoer(SessionFactory sessionFactory) { + this.sessionFactory = sessionFactory; + } + + @Override + @SuppressWarnings("unchecked") + public boolean propagate(String propertyName, Method readerMethod) + { + boolean retVal = false; + retVal = !(readerMethod.getReturnType() == HWConfiguration.class && propertyName.equals(GLOBAL_CONFIG_PROPERTY_NAME)); + if(retVal == false) { + return retVal; + } + + Class c = readerMethod.getDeclaringClass(); + ClassMetadata classMetaData = sessionFactory.getClassMetadata(c); + if (Enhancer.isEnhanced(c)) { + // figure out the pre-enhanced class + c = c.getSuperclass(); + } + + // Clone the collections + if (Collection.class.isAssignableFrom(readerMethod.getReturnType())) { + retVal = true; + } + else { + // Skip populating if it is an identifier property. + if(null != classMetaData) + { + if(classMetaData.hasIdentifierProperty()) { + retVal = !classMetaData.getIdentifierPropertyName().equals(propertyName); + if(false == retVal) { + return retVal; + } + } + else if(classMetaData.hasNaturalIdentifier()) + { + retVal = true; + String[] propertyNames = classMetaData.getPropertyNames(); + int[] propertyLocations = classMetaData.getNaturalIdentifierProperties(); + for(int i : propertyLocations) { + if(propertyNames[i].equals(propertyName)) { + retVal = false; + return retVal; + } + } + } + } + } + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/NameAndPathComponentNameReplacer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/NameAndPathComponentNameReplacer.java new file mode 100755 index 0000000000000000000000000000000000000000..d293ec2cc3a3c6ef7fcfd6459e3f1e42b2fd3458 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/NameAndPathComponentNameReplacer.java @@ -0,0 +1,34 @@ +package alma.tmcdb.cloning; + +import alma.acs.tmcdb.Component; + +/** + * A {@link ComponentNameReplacer} that always replaces the component's name + * and path for the given ones at construction time, provided that their values + * are not null. + * + * @author rtobar, Apr 28th, 2011 + * + */ +public class NameAndPathComponentNameReplacer implements ComponentNameReplacer { + + private String _newName; + private String _newPath; + + public NameAndPathComponentNameReplacer(String newName, String newPath) { + if( newName == null && newPath == null ) + throw new RuntimeException("Cannot replace noth name and path in cloned component with null"); + + _newName = newName; + _newPath = newPath; + } + + @Override + public void replaceName(Component comp) { + if( _newName != null ) + comp.setComponentName(_newName); + if( _newPath != null ) + comp.setPath(_newPath); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/StartupScenarioTransformer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/StartupScenarioTransformer.java new file mode 100755 index 0000000000000000000000000000000000000000..1689f26a21dfe8c01ddb17c2065b175ee7365e03 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/StartupScenarioTransformer.java @@ -0,0 +1,57 @@ +package alma.tmcdb.cloning; + +import java.util.Set; + +import net.sf.beanlib.PropertyInfo; +import net.sf.beanlib.spi.BeanTransformerSpi; + +import org.hibernate.collection.PersistentSet; + +//import alma.acs.tmcdb.AbstractBaseElementStartup; +import alma.acs.tmcdb.AssemblyStartup; +import alma.acs.tmcdb.BaseElementStartup; +//import alma.acs.tmcdb.GenericBaseElementStartup; +import alma.acs.tmcdb.Startup; + +/** + * Used in cloning; custom transformer to handle startup scenarios; specifically, reuses many of the 'global' + * (and/or other items that can be shared within a configuration) from the startup scenario that is being cloned, + * rather than blindly cloning everything recursively. + * + * @author sharrington + */ +public class StartupScenarioTransformer extends ConfigurationGlobalTransformer +{ + public StartupScenarioTransformer(BeanTransformerSpi contextBeanTransformer) + { + super(contextBeanTransformer); + // TODO Auto-generated constructor stub + } + + @Override + @SuppressWarnings("unchecked") + public boolean isTransformable(Object from, Class toClass, PropertyInfo propertyInfo) + { + boolean retVal = false; + + // this transformer handles a) anything that is 'global' (handled by our super class) + // plus anything *other than* things ending in the word 'startup'. In other words, when + // cloning a startup, we reuse all the things within a configuration (plus the globals) + // and *only* clone the BaseElementStartup, AssemblyStartup, and Startup objects. + + if(super.isTransformable(from, toClass, propertyInfo)) { + retVal = true; + } + + if(toClass == AssemblyStartup.class || toClass == BaseElementStartup.class || toClass == Set.class || + toClass == Startup.class || toClass == PersistentSet.class ) //|| +// toClass == AbstractBaseElementStartup.class || toClass == GenericBaseElementStartup.class ) + { + retVal = false; + } else { + retVal = true; + } + + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/StartupScenarioTransformerFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/StartupScenarioTransformerFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..c521045331441f113800d3c0494d48271d62a0c1 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/StartupScenarioTransformerFactory.java @@ -0,0 +1,18 @@ +package alma.tmcdb.cloning; + +import net.sf.beanlib.spi.BeanTransformerSpi; +import net.sf.beanlib.spi.CustomBeanTransformerSpi; + + +/** + * Factory to return a transformer which will 'pass through' (i.e. return the identical object reference) + * any 'global' domain classes. + * + * @author sharrington + */ +public class StartupScenarioTransformerFactory implements CustomBeanTransformerSpi.Factory +{ + public CustomBeanTransformerSpi newCustomBeanTransformer(BeanTransformerSpi beanTransformer) { + return new StartupScenarioTransformer(beanTransformer); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/TelescopeComponentNameReplacer.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/TelescopeComponentNameReplacer.java new file mode 100755 index 0000000000000000000000000000000000000000..dc0e6cbd1fc1360b5d12d4ef1bd89278f1d02d9d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/cloning/TelescopeComponentNameReplacer.java @@ -0,0 +1,30 @@ +package alma.tmcdb.cloning; + +import alma.acs.tmcdb.Component; + +/** + * A {@link ComponentNameReplacer} that replaces a component's name based on + * an old and new antenna names. + * + * @author rtobar, Apr 28th, 2011 + * + */ +public class TelescopeComponentNameReplacer implements ComponentNameReplacer { + + private String _oldTelescopeName; + private String _newTelescopeName; + + public TelescopeComponentNameReplacer(String oldTelescopeName, String newTelescopeName) { + _oldTelescopeName = oldTelescopeName; + _newTelescopeName = newTelescopeName; + } + + @Override + public void replaceName(Component comp) { + if( comp.getComponentName().equals(_oldTelescopeName) ) + comp.setComponentName(_newTelescopeName); + else + comp.setPath( comp.getPath().replaceAll(_oldTelescopeName, _newTelescopeName) ); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AOSTiming.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AOSTiming.java new file mode 100755 index 0000000000000000000000000000000000000000..21036b35bc575dc039f8bb06e3c2fdffa4be0229 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AOSTiming.java @@ -0,0 +1,62 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AOSTiming.java,v 1.6 2011/05/02 08:47:46 rtobar Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; + +import alma.acs.util.UTCUtility; + +/** + * The AOSTiming is a collection of devices in the AOS that generate + * several central synchronization timing signals. It includes the Central + * Reference Generator (CRG) and the Central Reference Distributor (CRD). + * @author rhiriart + * + */ +public class AOSTiming extends BaseElement { + + private Long commissionDate; + + public AOSTiming() {} + + public AOSTiming(String name, Date commissionDate) { + this(name, UTCUtility.utcJavaToOmg(commissionDate.getTime())); + } + + public AOSTiming(String name, Long commissionDate) { + super(null, name, BaseElementType.AOSTiming); + this.name = name; + this.commissionDate = commissionDate; + } + + public Long getCommissionDate() { + return commissionDate; + } + + public void setCommissionDate(Long commissionDate) { + this.commissionDate = commissionDate; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AbstractBaseElementStartup.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AbstractBaseElementStartup.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..db81e62b2a34be4b4150921c6125b0265c7ef161 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AbstractBaseElementStartup.hbm.xml @@ -0,0 +1,48 @@ + + + + + alma.tmcdb.domain.BaseElementType + + + + + BaseElS_seq + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AbstractBaseElementStartup.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AbstractBaseElementStartup.java new file mode 100755 index 0000000000000000000000000000000000000000..a597632a04f43e3b2fa9349a473809b5a28687a6 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AbstractBaseElementStartup.java @@ -0,0 +1,74 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AbstractBaseElementStartup.java,v 1.1 2009/04/08 14:38:44 rhiriart Exp $" + */ +package alma.tmcdb.domain; + +import java.util.HashSet; +import java.util.Set; + +public abstract class AbstractBaseElementStartup { + + protected Long id; + protected BaseElementType type; + protected Set assemblyStartups = + new HashSet(); + protected Set children = + new HashSet(); + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public BaseElementType getType() { + return type; + } + + public void setType(BaseElementType type) { + this.type = type; + } + + public Set getAssemblyStartups() { + return assemblyStartups; + } + + public void setAssemblyStartups(Set assemblyStartups) { + this.assemblyStartups = assemblyStartups; + } + + public Set getChildren() { + return children; + } + + public void setChildren(Set children) { + this.children = children; + } + + // TODO Add a method to add AssemblyStartup. It can't be done without + // breaking old BaseElementStartup. +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrDelays.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrDelays.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..f664c5b402e96c2b9d67b96cbeeea0e209675f34 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrDelays.hbm.xml @@ -0,0 +1,18 @@ + + + + + + + antenna + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrDelays.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrDelays.java new file mode 100755 index 0000000000000000000000000000000000000000..f43f06ad651ad86238d63add7b240b3245448d4c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrDelays.java @@ -0,0 +1,129 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AcaCorrDelays.java,v 1.1 2012/11/15 21:28:15 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; + +import alma.tmcdb.history.Identifiable; +import alma.acs.util.UTCUtility; + +public class AcaCorrDelays implements Identifiable +{ + private Long antennaId; + private Antenna antenna; + private Double delayBbOne; + private Double delayBbTwo; + private Double delayBbThree; + private Double delayBbFour; + + public AcaCorrDelays() {} + + public AcaCorrDelays(Antenna antenna, Double bbOneDelay, Double bbTwoDelay, Double bbThreeDelay, Double bbFourDelay) + { + this.antenna = antenna; + this.delayBbOne = bbOneDelay; + this.delayBbTwo = bbTwoDelay; + this.delayBbThree = bbThreeDelay; + this.delayBbFour = bbFourDelay; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof AcaCorrDelays)) + return false; + AcaCorrDelays delays = (AcaCorrDelays) o; + return (getAntenna() == null ? delays.getAntenna() == null : + getAntenna().equals(delays.getAntenna())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getAntenna() == null) ? 0 : getAntenna().hashCode()); + return result; + } + + public Antenna getAntenna() { + return antenna; + } + + public void setAntenna(Antenna antenna) { + this.antenna = antenna; + } + + /** + * Implementation of Identifiable interface requires this method, + * which in our case is somewhat redundant (we already have the getAntennaId + * method; however the interface requires a naming convention to which this class + * did not already adhere. Easiest solution is simply a redundant method, however + * we could consider a refactoring to rename antennaId --> id, in the future. + */ + public Long getId() { + return getAntennaId(); + } + + public Long getAntennaId() { + return antennaId; + } + + public void setAntennaId(Long antennaId) { + this.antennaId = antennaId; + } + + public Double getDelayBbOne() { + return delayBbOne; + } + + public void setDelayBbOne(Double delay) { + this.delayBbOne = delay; + } + + public Double getDelayBbTwo() { + return delayBbTwo; + } + + public void setDelayBbTwo(Double delay) { + this.delayBbTwo = delay; + } + + public Double getDelayBbThree() { + return delayBbThree; + } + + public void setDelayBbThree(Double delay) { + this.delayBbThree = delay; + } + + public Double getDelayBbFour() { + return delayBbFour; + } + + public void setDelayBbFour(Double delay) { + this.delayBbFour = delay; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrSet.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrSet.java new file mode 100755 index 0000000000000000000000000000000000000000..a9679207831ae3ff828b91971d8b713eee6cf6fa --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AcaCorrSet.java @@ -0,0 +1,64 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AcaCorrSet.java,v 1.1 2012/08/20 23:55:01 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; +import java.util.HashSet; +import java.util.Set; + +import alma.acs.util.UTCUtility; +import alma.BasebandNameMod.BasebandName; + +public class AcaCorrSet extends BaseElement { + + private BasebandName baseband; + private String ip; + + public AcaCorrSet() {} + + public AcaCorrSet(String name, BasebandName baseband, String ip) + { + super(null, name, BaseElementType.AcaCorrSet); + this.baseband = baseband; + this.ip = ip; + } + + public String getIp() { + return this.ip; + } + + public void setIp(String ip) { + this.ip = ip; + } + + public BasebandName getBaseband() { + return baseband; + } + + public void setBaseband(BasebandName baseband) { + this.baseband = baseband; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AlmaStringEnumUserType.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AlmaStringEnumUserType.java new file mode 100755 index 0000000000000000000000000000000000000000..d5619b22a8f624256bc5a76dde51ea7a5812bd72 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AlmaStringEnumUserType.java @@ -0,0 +1,194 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AlmaStringEnumUserType.java,v 1.2 2010/10/15 01:14:44 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.io.Serializable; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.Properties; + +import org.hibernate.Hibernate; +import org.hibernate.HibernateException; +import org.hibernate.usertype.EnhancedUserType; +import org.hibernate.usertype.ParameterizedType; +import org.hibernate.util.ReflectHelper; + +/** + * Custom mapping type for string-backed enumerations. + * + * Taken from "Java Persistence with Hibernate", Christian Bauer and + * Gavin King, Manning, ISBN 1-932394-88-5. + * + * This class will probably be replace in the future to use ICD/HLA/Enumerations, + * which are not Java Enums. + */ +@SuppressWarnings("unchecked") +public class AlmaStringEnumUserType implements EnhancedUserType, ParameterizedType { + + private Class enumClass; + private Class corbaEnumClass; + private Method literalMethod; + private Method nameMethod; + + public void setParameterValues(Properties parameters) { + String enumClassName = + parameters.getProperty("enumClassName"); + String corbaEnumClassName = + parameters.getProperty("corbaEnumClassName"); + try { + enumClass = ReflectHelper.classForName(enumClassName); + corbaEnumClass = ReflectHelper.classForName(corbaEnumClassName); + literalMethod = enumClass.getMethod("literal", new Class[] {String.class}); + nameMethod = enumClass.getMethod("name", new Class[] {corbaEnumClass}); + } catch (ClassNotFoundException cnfe) { + throw new HibernateException("Enum class not found", cnfe); + } catch (SecurityException se) { + throw new HibernateException("Security exception", se); + } catch (NoSuchMethodException nsme) { + throw new HibernateException("Method not found", nsme); + } + } + + public Class returnedClass() { + return enumClass; + } + + public int[] sqlTypes() { + return new int[] { Hibernate.STRING.sqlType() }; + } + + public boolean isMutable() { + return false; + } + + public Object deepCopy(Object value) throws HibernateException { + return value; + } + + public Serializable disassemble(Object value) throws HibernateException { + return (Serializable) value; + } + + public Object assemble(Serializable cached, Object owner) + throws HibernateException { + return cached; + } + + public Object replace(Object original, Object target, Object owner) + throws HibernateException { + return original; + } + + public boolean equals(Object x, Object y) throws HibernateException { + if (x == y) + return true; + if (x == null || y == null) + return false; + return x.equals(y); + } + + public int hashCode(Object x) throws HibernateException { + return x.hashCode(); + } + + public Object fromXMLString(String xmlValue) { + try { + return literalMethod.invoke(null, xmlValue); + } catch (IllegalArgumentException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (IllegalAccessException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (InvocationTargetException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } + } + + public String objectToSQLString(Object value) { + String repr = null; + try { + repr = (String) nameMethod.invoke(null, value); + } catch (IllegalArgumentException e) { + throw new HibernateException("Illegal argument converting ALMA Enum to SQL", e); + } catch (IllegalAccessException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (InvocationTargetException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } + return '\'' + repr + '\''; + } + + public String toXMLString(Object value) { + String repr = null; + try { + repr = (String) nameMethod.invoke(null, value); + } catch (IllegalArgumentException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (IllegalAccessException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (InvocationTargetException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } + return repr; + } + + public Object nullSafeGet(ResultSet rs, String[] names, Object owner) + throws HibernateException, SQLException { + String name = rs.getString(names[0]); + Object literal = null; + try { + literal = literalMethod.invoke(null, name); + } catch (IllegalArgumentException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (IllegalAccessException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (InvocationTargetException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } + return rs.wasNull() ? null : literal; + } + + public void nullSafeSet(PreparedStatement st, Object value, int index) + throws HibernateException, SQLException { + String name = null; + try { + name = (String) nameMethod.invoke(null, value); + } catch (IllegalArgumentException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (IllegalAccessException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } catch (InvocationTargetException e) { + throw new HibernateException("ALMA Enum conversion error", e); + } + if (value == null) { + st.setNull(index, Hibernate.STRING.sqlType()); + } else { + st.setString(index, name); + } + } +} \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToFrontEnd.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToFrontEnd.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..ee5fa13ee2fea3a26bda959668820f61a75ed65d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToFrontEnd.hbm.xml @@ -0,0 +1,25 @@ + + + + + + + + AntennTFE_seq + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToFrontEnd.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToFrontEnd.java new file mode 100755 index 0000000000000000000000000000000000000000..90c879c008f4e0b63ff29179523034d00549bd12 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToFrontEnd.java @@ -0,0 +1,119 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AntennaToFrontEnd.java,v 1.11 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.io.Serializable; +import java.util.Date; + +import alma.acs.util.UTCUtility; + +public class AntennaToFrontEnd +{ + private Integer antennaToFrontEndId; + private Long startTime; + private Long endTime; + private Antenna antenna; + private FrontEnd frontEnd; + + public AntennaToFrontEnd() {} + + public AntennaToFrontEnd(Antenna antenna, FrontEnd frontEnd, Date startTime, Date endTime) { + this(antenna, frontEnd, UTCUtility.utcJavaToOmg(startTime.getTime()), + UTCUtility.utcJavaToOmg(endTime.getTime())); + } + + public AntennaToFrontEnd(Antenna antenna, FrontEnd frontEnd, Long startTime, Long endTime) { + this.antenna = antenna; + this.frontEnd = frontEnd; + this.startTime = startTime; + this.endTime = endTime; + this.frontEnd.getScheduledAntennaInstallations().add(this); + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof AntennaToFrontEnd)) + return false; + AntennaToFrontEnd a2fe = (AntennaToFrontEnd) o; + return (getAntenna() == null ? a2fe.getAntenna() == null : + getAntenna().equals(a2fe.getAntenna())) && + (getFrontEnd() == null ? a2fe.getFrontEnd() == null : + getFrontEnd().equals(a2fe.getFrontEnd())) && + (getStartTime() == null ? a2fe.getStartTime() == null : + getStartTime().equals(a2fe.getStartTime())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getAntenna() == null) ? 0 : getAntenna().hashCode()); + result = 31 * result + ((getFrontEnd() == null) ? 0 : getFrontEnd().hashCode()); + result = 31 * result + ((getStartTime() == null) ? 0 : getStartTime().hashCode()); + return result; + } + + public Long getStartTime() { + return startTime; + } + + public void setStartTime(Long startTime) { + this.startTime = startTime; + } + + public Long getEndTime() { + return endTime; + } + + public void setEndTime(Long endTime) { + this.endTime = endTime; + } + + public Antenna getAntenna() { + return antenna; + } + + public void setAntenna(Antenna antenna) { + this.antenna = antenna; + } + + public FrontEnd getFrontEnd() { + return frontEnd; + } + + public void setFrontEnd(FrontEnd frontEnd) { + this.frontEnd = frontEnd; + } + + public Integer getAntennaToFrontEndId() { + return antennaToFrontEndId; + } + + public void setAntennaToFrontEndId(Integer id) { + this.antennaToFrontEndId = id; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToPad.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToPad.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..c6442a765b7cf32b055fe61e62d0be21deda3c33 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToPad.hbm.xml @@ -0,0 +1,27 @@ + + + + + + + + AntennaToPad_seq + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToPad.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToPad.java new file mode 100755 index 0000000000000000000000000000000000000000..189060c18586a33c89a058f32911c5410c486a9d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AntennaToPad.java @@ -0,0 +1,167 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AntennaToPad.java,v 1.18 2012/08/08 22:47:07 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; + +import alma.tmcdb.history.Identifiable; +import alma.acs.util.UTCUtility; + +public class AntennaToPad implements Identifiable { + + private Integer antennaToPadId; + private Long startTime; + private Long endTime; + private Boolean planned; + private Double mountMetrologyAN0Coeff; + private Double mountMetrologyAW0Coeff; + + private Antenna antenna; + private Pad pad; + + public AntennaToPad() {} + + public AntennaToPad(Antenna antenna, Pad pad, Date startTime, Date endTime, boolean planned) { + this(antenna, + pad, + UTCUtility.utcJavaToOmg(startTime.getTime()), + (endTime != null ? UTCUtility.utcJavaToOmg(endTime.getTime()) : null), + planned); + } + + public AntennaToPad(Antenna antenna, Pad pad, Long startTime, Long endTime, boolean planned) { + + this.antenna = antenna; + this.pad = pad; + this.startTime = startTime; + this.endTime = endTime; + this.planned = planned; + + this.mountMetrologyAN0Coeff = 0.0; + this.mountMetrologyAW0Coeff = 0.0; + + this.pad.getScheduledAntennas().add(this); + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof AntennaToPad)) + return false; + AntennaToPad a2p = (AntennaToPad) o; + return (getAntenna() == null ? a2p.getAntenna() == null : + getAntenna().equals(a2p.getAntenna())) && + (getPad() == null ? a2p.getPad() == null : + getPad().equals(a2p.getPad())) && + (getStartTime() == null ? a2p.getStartTime() == null : + getStartTime().equals(a2p.getStartTime())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getAntenna() == null) ? 0 : getAntenna().hashCode()); + result = 31 * result + ((getPad() == null) ? 0 : getPad().hashCode()); + result = 31 * result + ((getStartTime() == null) ? 0 : getStartTime().hashCode()); + return result; + } + + /** + * Implementation of Identifiable interface requires this method, + * which in our case is somewhat redundant (we already have the getAntennaToPadId + * method; however the interface requires a naming convention to which this class + * did not already adhere. Easiest solution is simply a redundant method, however + * we could consider a refactoring to rename antennaToPadId --> id, in the future. + */ + public Long getId() { + return Long.valueOf(antennaToPadId); + } + + public Integer getAntennaToPadId() { + return antennaToPadId; + } + + public void setAntennaToPadId(Integer id) { + this.antennaToPadId = id; + } + + public Long getStartTime() { + return startTime; + } + + public void setStartTime(Long startTime) { + this.startTime = startTime; + } + + public Long getEndTime() { + return endTime; + } + + public void setEndTime(Long endTime) { + this.endTime = endTime; + } + + public Boolean getPlanned() { + return planned; + } + + public void setPlanned(Boolean planned) { + this.planned = planned; + } + + public Double getMountMetrologyAN0Coeff() { + return mountMetrologyAN0Coeff; + } + + public void setMountMetrologyAN0Coeff(Double mountMetrologyAN0Coeff) { + this.mountMetrologyAN0Coeff = mountMetrologyAN0Coeff; + } + + public Double getMountMetrologyAW0Coeff() { + return mountMetrologyAW0Coeff; + } + + public void setMountMetrologyAW0Coeff(Double mountMetrologyAW0Coeff) { + this.mountMetrologyAW0Coeff = mountMetrologyAW0Coeff; + } + + public Antenna getAntenna() { + return antenna; + } + + public void setAntenna(Antenna antenna) { + this.antenna = antenna; + } + + public Pad getPad() { + return pad; + } + + public void setPad(Pad pad) { + this.pad = pad; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/ArrayReference.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/ArrayReference.java new file mode 100755 index 0000000000000000000000000000000000000000..af6a6a011a4c2a79894580d524115d29bdfcd0dd --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/ArrayReference.java @@ -0,0 +1,65 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: ArrayReference.java,v 1.1 2010/04/26 21:08:18 rhiriart Exp $" + */ +package alma.tmcdb.domain; + +public class ArrayReference { + + private Double x; + private Double y; + private Double z; + + public ArrayReference() { } + + public ArrayReference(Double x, Double y, Double z) { + this.x = x; + this.y = y; + this.z = z; + } + + public Double getX() { + return x; + } + + public void setX(Double x) { + this.x = x; + } + + public Double getY() { + return y; + } + + public void setY(Double y) { + this.y = y; + } + + public Double getZ() { + return z; + } + + public void setZ(Double z) { + this.z = z; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Assembly.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Assembly.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..03122f6049f12dbc98a23be94e59af00febf7ab2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Assembly.hbm.xml @@ -0,0 +1,26 @@ + + + + + + + + Assembly_seq + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Assembly.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Assembly.java new file mode 100755 index 0000000000000000000000000000000000000000..42f8eb083c7ed046efc614f263fdad9b69168d1b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Assembly.java @@ -0,0 +1,104 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: Assembly.java,v 1.8 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +public class Assembly { + + private Long id; + private HwConfiguration configuration; + private String serialNumber; + private String data; + private AssemblyType assemblyType; + + public Assembly() {} + + public Assembly(String serialNumber, String data, AssemblyType assemblyType) { + this.serialNumber = serialNumber; + this.data = data; + this.assemblyType = assemblyType; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof Assembly)) + return false; + Assembly asm = (Assembly) o; + return (getConfiguration() == null ? asm.getConfiguration() == null : + getConfiguration().equals(asm.getConfiguration())) && + (getSerialNumber() == null ? asm.getSerialNumber() == null : + getSerialNumber().equals(asm.getSerialNumber())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getConfiguration() == null) ? 0 : getConfiguration().hashCode()); + result = 31 * result + ((getSerialNumber() == null) ? 0 : getSerialNumber().hashCode()); + return result; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public HwConfiguration getConfiguration() { + return configuration; + } + + public void setConfiguration(HwConfiguration configuration) { + this.configuration = configuration; + } + + public String getSerialNumber() { + return serialNumber; + } + + public void setSerialNumber(String serialNumber) { + this.serialNumber = serialNumber; + } + + public String getData() { + return data; + } + + public void setData(String data) { + this.data = data; + } + + public AssemblyType getAssemblyType() { + return assemblyType; + } + + public void setAssemblyType(AssemblyType assemblyType) { + this.assemblyType = assemblyType; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyOnline.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyOnline.java new file mode 100755 index 0000000000000000000000000000000000000000..70297990b29c7a9493cf7d771eff5b4971e9d17e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyOnline.java @@ -0,0 +1,128 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.domain; + +public class AssemblyOnline { + + private Long id; + + private Assembly assembly; + + private String roleName; + + private Long startTime; + + private Long endTime; + + private BaseElementOnline onlineBaseElement; + + public AssemblyOnline() { } + + public AssemblyOnline(Assembly assembly, String roleName, Long startTime) { + this.assembly = assembly; + this.roleName = roleName; + this.startTime = startTime; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((getAssembly() == null) ? 0 : getAssembly().hashCode()); + result = prime * result + + ((getStartTime() == null) ? 0 : getStartTime().hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + AssemblyOnline other = (AssemblyOnline) obj; + if (getAssembly() == null) { + if (other.getAssembly() != null) + return false; + } else if (!getAssembly().equals(other.getAssembly())) + return false; + if (getStartTime() == null) { + if (other.getStartTime() != null) + return false; + } else if (!getStartTime().equals(other.getStartTime())) + return false; + return true; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public Assembly getAssembly() { + return assembly; + } + + public void setAssembly(Assembly assembly) { + this.assembly = assembly; + } + + public String getRoleName() { + return roleName; + } + + public void setRoleName(String roleName) { + this.roleName = roleName; + } + + public Long getStartTime() { + return startTime; + } + + public void setStartTime(Long startTime) { + this.startTime = startTime; + } + + public Long getEndTime() { + return endTime; + } + + public void setEndTime(Long endTime) { + this.endTime = endTime; + } + + public BaseElementOnline getOnlineBaseElement() { + return onlineBaseElement; + } + + public void setOnlineBaseElement(BaseElementOnline onlineBaseElement) { + this.onlineBaseElement = onlineBaseElement; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyRole.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyRole.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..7006dfa36473f545e949b778f89a2d1e7a786461 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyRole.hbm.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyRole.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyRole.java new file mode 100755 index 0000000000000000000000000000000000000000..0a05a76790a0bfb63ca91cef40e04cfe744e2b3e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyRole.java @@ -0,0 +1,73 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AssemblyRole.java,v 1.5 2010/04/29 20:43:21 rhiriart Exp $" + */ +package alma.tmcdb.domain; + +public class AssemblyRole { + + private String name; + private AssemblyType assemblyType; + + public AssemblyRole() {} + + public AssemblyRole(String name) { + super(); + this.name = name; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof AssemblyRole)) + return false; + AssemblyRole asr = (AssemblyRole) o; + return this.getName().equals(asr.getName()); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + this.getName().hashCode(); + return result; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public AssemblyType getAssemblyType() { + return assemblyType; + } + + public void setAssemblyType(AssemblyType type) { + this.assemblyType = type; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyStartup.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyStartup.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..ecc66d72adb2b1c88f39e54136441d16986eb011 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyStartup.hbm.xml @@ -0,0 +1,18 @@ + + + + + + + AssembS_seq + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyStartup.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyStartup.java new file mode 100755 index 0000000000000000000000000000000000000000..4ca7cd18791fdfc424ac3cb9bcdfc50726c8802c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyStartup.java @@ -0,0 +1,99 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AssemblyStartup.java,v 1.14 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + + +public class AssemblyStartup { + + private Long id; + private BaseElementStartup baseElementStartup; + private AssemblyRole assemblyRole; + private Boolean simulated; + + public AssemblyStartup() {} + + public AssemblyStartup(BaseElementStartup baseElementStartup, + AssemblyRole assemblyRole) { + this.assemblyRole = assemblyRole; + + baseElementStartup.addAssemblyStartup(this); + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof AssemblyStartup)) + return false; + AssemblyStartup as = (AssemblyStartup) o; + return (getBaseElementStartup() == null ? as.getBaseElementStartup() == null : + getBaseElementStartup().equals(as.getBaseElementStartup())) && + (getAssemblyRole() == null ? as.getAssemblyRole() == null : + getAssemblyRole().equals(as.getAssemblyRole())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getBaseElementStartup() == null) ? 0 : + getBaseElementStartup().hashCode()); + result = 31 * result + ((getAssemblyRole() == null) ? 0 : + getAssemblyRole().hashCode()); + return result; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public AssemblyRole getAssemblyRole() { + return assemblyRole; + } + + public void setAssemblyRole(AssemblyRole assemblyRole) { + this.assemblyRole = assemblyRole; + } + + public BaseElementStartup getBaseElementStartup() { + return baseElementStartup; + } + + public void setBaseElementStartup(BaseElementStartup baseElementStartup) { + this.baseElementStartup = baseElementStartup; + } + + public Boolean getSimulated() { + return simulated; + } + + public void setSimulated(Boolean sim) { + this.simulated = sim; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyType.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyType.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..32c2db14c8fa684387a825f5205c882bdeb1778c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyType.hbm.xml @@ -0,0 +1,40 @@ + + + + + alma.tmcdb.domain.BaseElementType + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyType.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyType.java new file mode 100755 index 0000000000000000000000000000000000000000..e15c3e3863dda4e2724e862a189ef91a33d99862 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/AssemblyType.java @@ -0,0 +1,250 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AssemblyType.java,v 1.9 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.HashSet; +import java.util.Set; +import alma.acs.tmcdb.ComponentType; + +/** + * AssemblyType represents assemblies that are part of an LRU. + * All LRUs are made up of one or more assemblies. + * All monitored properties are tied to specific assemblies. + * AssemblyName is the unique key. + * This requires that names of assemblies be unique across all + * hardware devices and the entire database. + * + * @author rkurowsk, Dec 11, 2008 + * @version $Revision: 1.9 $ + */ +public class AssemblyType { + + private String name; + + private LruType lruType; + + private BaseElementType baseElementType; + + private String fullName; + + private String description; + + private String notes; + + private ComponentType componentType; + + private String productionCode; + + private String simulatedCode; + + private Set roles = new HashSet(); + + /** + * Zero-arg public constructor + */ + public AssemblyType() {} + + /** + * Public constructor. + * + * @param name + * @param fullName + * @param description + * @param notes + * @param componentType + */ + public AssemblyType(String name, String fullName, BaseElementType baseElementType, + String description, String notes, ComponentType componentType, String productionCode, String simulationCode) { + this(null, name, fullName, baseElementType, description, notes, componentType, productionCode, simulationCode); + } + + /** + * Public constructor + * + * This constructor adds the new AssemblyType into the collection + * maintained by its parent LruType, which is passed as parameter. + * + * @param lru LruType parent + * @param name Name. Must be unique. + * @param fullName Full name + * @param description Description + * @param notes Notes + * @param componentType ComponentType + */ + public AssemblyType(LruType lru, String name, String fullName, BaseElementType baseElementType, + String description, String notes, ComponentType componentType, String productionCode, String simulationCode) { + super(); + this.name = name; + this.baseElementType = baseElementType; + this.fullName = fullName; + this.description = description; + this.notes = notes; + this.componentType = componentType; + this.productionCode = productionCode; + this.simulatedCode = simulationCode; + if (lru != null) + lru.addAssemblyType(this); + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof AssemblyType)) + return false; + AssemblyType at = (AssemblyType) o; + return (getName() == null ? at.getName() == null : getName().equals(at.getName())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getName() == null) ? 0 : getName().hashCode()); + return result; + } + + /** + * @return the assemblyName + */ + public String getName() { + return name; + } + + /** + * @param assemblyName the assemblyName to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the lruType + */ + public LruType getLruType() { + return lruType; + } + + /** + * @param lruType the lruType to set + */ + public void setLruType(LruType lruType) { + this.lruType = lruType; + } + + /** + * @return the fullName + */ + public String getFullName() { + return fullName; + } + + /** + * @param fullName the fullName to set + */ + public void setFullName(String fullName) { + this.fullName = fullName; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @param description the description to set + */ + public void setDescription(String description) { + this.description = description; + } + + /** + * @return the notes + */ + public String getNotes() { + return notes; + } + + /** + * @param notes the notes to set + */ + public void setNotes(String notes) { + this.notes = notes; + } + + /** + * @return the componentType + */ + public ComponentType getComponentType() { + return componentType; + } + + /** + * @param componentType the componentType to set + */ + public void setComponentType(ComponentType componentType) { + this.componentType = componentType; + } + + public BaseElementType getBaseElementType() { + return baseElementType; + } + + public void setBaseElementType(BaseElementType baseElementType) { + this.baseElementType = baseElementType; + } + + public Set getRoles() { + return roles; + } + + public void setRoles(Set roles) { + this.roles = roles; + } + + public void addRole(AssemblyRole role) { + role.setAssemblyType(this); + roles.add(role); + } + + public String getProductionCode() { + return productionCode; + } + + public void setProductionCode(String productionCode) { + this.productionCode = productionCode; + } + + public String getSimulatedCode() { + return simulatedCode; + } + + public void setSimulatedCode(String simulatedCode) { + this.simulatedCode = simulatedCode; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElement.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElement.java new file mode 100755 index 0000000000000000000000000000000000000000..1333a597aa21e3898983a1981525afae34bddb75 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElement.java @@ -0,0 +1,104 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: BaseElement.java,v 1.11 2012/11/15 21:28:15 sharring Exp $" + */ +package alma.tmcdb.domain; + +public class BaseElement { + + protected Long id; + + protected String name; + + private HwConfiguration configuration; + + private BaseElementType type; + + public BaseElement() {} + + public BaseElement(HwConfiguration conf, String name, BaseElementType type) { + this.name = name; + this.type = type; + if (conf != null) + conf.addBaseElement(this); + } + + @Override + public boolean equals(Object o) { + if(o == null) + return false; + if (o == this) + return true; + if (!(o instanceof BaseElement)) + return false; + BaseElement be = (BaseElement) o; + return (getConfiguration() == null ? be.getConfiguration() == null : + getConfiguration().equals(be.getConfiguration())) && + (getName() == null ? be.getName() == null : getName().equals(be.getName())) && + (getType() == null ? be.getType() == null : getType().name().equals(be.getType().name())) ; + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getConfiguration() == null) ? 0 : + getConfiguration().hashCode()); + result = 31 * result + ((getName() == null) ? 0 : getName().hashCode()); + result = 31 * result + ((getType() == null) ? 0 : getType().name().hashCode()); + return result; + } + + public HwConfiguration getConfiguration() { + return configuration; + } + + public void setConfiguration(HwConfiguration configuration) { + this.configuration = configuration; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public BaseElementType getType() { + return type; + } + + public void setType(BaseElementType type) { + this.type = type; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementOnline.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementOnline.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..403d83fdb23db929c076ec043b0b1e1ee2d4128e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementOnline.hbm.xml @@ -0,0 +1,37 @@ + + + + + + BaseElO_seq + + + + + + + + + + + + + + AssembO_seq + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementOnline.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementOnline.java new file mode 100755 index 0000000000000000000000000000000000000000..96c2bd9dbd06cc1b8dc20cbadaf03abceaea26e5 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementOnline.java @@ -0,0 +1,142 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.domain; + +import java.util.HashSet; +import java.util.Set; + +public class BaseElementOnline { + + private Long id; + + private HwConfiguration hwConfiguration; + + private BaseElement baseElement; + + private Long startTime; + + private Long endTime; + + private Boolean normalTermination; + + private Set onlineAssemblies = new HashSet();; + + public BaseElementOnline() { } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((getBaseElement() == null) ? 0 : getBaseElement().hashCode()); + result = prime * result + + ((getHwConfiguration() == null) ? 0 : getHwConfiguration().hashCode()); + result = prime * result + + ((getStartTime() == null) ? 0 : getStartTime().hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + BaseElementOnline other = (BaseElementOnline) obj; + if (getBaseElement() == null) { + if (other.getBaseElement() != null) + return false; + } else if (!getBaseElement().equals(other.getBaseElement())) + return false; + if (getHwConfiguration() == null) { + if (other.getHwConfiguration() != null) + return false; + } else if (!getHwConfiguration().equals(other.getHwConfiguration())) + return false; + if (getStartTime() == null) { + if (other.getStartTime() != null) + return false; + } else if (!getStartTime().equals(other.getStartTime())) + return false; + return true; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public HwConfiguration getHwConfiguration() { + return hwConfiguration; + } + + public void setHwConfiguration(HwConfiguration hwConfiguration) { + this.hwConfiguration = hwConfiguration; + } + + public BaseElement getBaseElement() { + return baseElement; + } + + public void setBaseElement(BaseElement baseElement) { + this.baseElement = baseElement; + } + + public Long getStartTime() { + return startTime; + } + + public void setStartTime(Long startTime) { + this.startTime = startTime; + } + + public Long getEndTime() { + return endTime; + } + + public void setEndTime(Long endTime) { + this.endTime = endTime; + } + + public Boolean getNormalTermination() { + return normalTermination; + } + + public void setNormalTermination(Boolean normalTermination) { + this.normalTermination = normalTermination; + } + + public Set getOnlineAssemblies() { + return onlineAssemblies; + } + + public void setOnlineAssemblies(Set onlineAssemblies) { + this.onlineAssemblies = onlineAssemblies; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartup.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartup.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..0fadec17f1170d89a5b2ad2d2a40ab358758c8df --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartup.hbm.xml @@ -0,0 +1,45 @@ + + + + + alma.tmcdb.domain.BaseElementStartupType + + + + + BaseElS_seq + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartup.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartup.java new file mode 100755 index 0000000000000000000000000000000000000000..b18a9a91ad87fcd7577b56accf66ebe0ead47633 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartup.java @@ -0,0 +1,213 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: BaseElementStartup.java,v 1.17 2011/02/17 22:25:54 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.io.Serializable; +import java.security.InvalidParameterException; +import java.util.HashSet; +import java.util.Set; + +public class BaseElementStartup implements Serializable { + + private static final long serialVersionUID = -2950551800985491826L; + + private Long id; + private StartupScenario startup; + private BaseElement baseElement; + private BaseElementStartupType type; + private Set assemblyStartups = new HashSet(); + private Set children = new HashSet(); + private BaseElementStartup parent; + private String generic; + private Boolean simulated; + + public BaseElementStartup() {}; + + /** + * Creates a concrete BaseElementStartup. With a concrete BaseElementStartup + * the specific BaseElement that needs to be started is specified. These + * BaseElementStartups are always related with a StartupScenario. + * @param baseElement BaseElement to start + * @param startup Startup scenario + */ + public BaseElementStartup(BaseElement baseElement, StartupScenario startup) { + super(); + this.baseElement = baseElement; + this.startup = startup; + if ((baseElement.getType() != BaseElementType.PhotonicReference) && + (baseElement.getType() != BaseElementType.FrontEnd)) + this.type = BaseElementStartupType.valueOf(baseElement.getType().toString()); + else + throw new InvalidParameterException("BaseElement parameter must be non-generic"); + this.generic = "false"; + startup.addBaseElementStartup(this); + } + + /** + * Creates a generic BaseElementStartup. A generic BaseElementStartup doesn't + * specify the specific BaseElement to start. This is the case of the FrontEnds + * and the PhotonicReceivers. + * A generic BaseElementStartup always has a concrete BaseElementStartup as + * parent, and is not related directly with a StartupScenario. + * @param type + */ + public BaseElementStartup(BaseElementStartupType type) { + super(); + this.type = type; + this.generic = "true"; + } + + @Override + public boolean equals(Object o) + { + boolean retVal = false; + if (o == this) + return true; + + if (!(o instanceof BaseElementStartup)) + return false; + + BaseElementStartup bes = (BaseElementStartup) o; + + // handle generic baseelementstartups by comparing their types & parents + if(getBaseElement() == null && bes.getBaseElement() == null) + { + if(getType().equals(bes.getType())) + { + if(null == getParent() && null == bes.getParent()) + { + retVal = true; + } + else if(null != getParent() && getParent().equals(bes.getParent())) + { + retVal = true; + } + else { + retVal = false; + } + } + else + { + retVal = false; + } + } + else + { + retVal = (getBaseElement() == null ? bes.getBaseElement() == null : getBaseElement().equals(bes.getBaseElement())) && + (getStartup() == null ? bes.getStartup() == null : getStartup().equals(bes.getStartup())) && + (getType().name().equals(bes.getType().name())); + } + + return retVal; + } + + @Override + public int hashCode() + { + int result = 17; + result = 31 * result + ((getBaseElement() == null) ? ((getParent() == null) ? 0 : getParent().hashCode()) : getBaseElement().hashCode()); + result = 31 * result + ((getStartup() == null) ? 0 : getStartup().hashCode()); + result = 31 * result + ((getType() == null) ? 0 : getType().hashCode()); + return result; + } + + public StartupScenario getStartup() { + return startup; + } + + public void setStartup(StartupScenario startup) { + this.startup = startup; + } + + public BaseElement getBaseElement() { + return baseElement; + } + + public void setBaseElement(BaseElement baseElement) { + this.baseElement = baseElement; + } + + public Set getAssemblyStartups() { + return assemblyStartups; + } + + public void setAssemblyStartups(Set assemblyStartups) { + this.assemblyStartups = assemblyStartups; + } + + public void addAssemblyStartup(AssemblyStartup assemblyStartup) { + assemblyStartup.setBaseElementStartup(this); + assemblyStartups.add(assemblyStartup); + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public BaseElementStartupType getType() { + return type; + } + + public void setType(BaseElementStartupType type) { + this.type = type; + } + + public Set getChildren() { + return children; + } + + public void setChildren(Set children) { + this.children = children; + } + + public String isGeneric() { + return generic; + } + + public void setGeneric(String generic) { + this.generic = generic; + } + + public BaseElementStartup getParent() { + return parent; + } + + public void setParent(BaseElementStartup parent) { + this.parent = parent; + } + + public Boolean getSimulated() { + return simulated; + } + + public void setSimulated(Boolean sim) { + this.simulated = sim; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartupType.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartupType.java new file mode 100755 index 0000000000000000000000000000000000000000..454ad88437db8b4c6d8988db47c71e173f17e1cd --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementStartupType.java @@ -0,0 +1,43 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: BaseElementStartupType.java,v 1.4 2012/08/21 16:06:19 sharring Exp $" + */ +package alma.tmcdb.domain; + +public enum BaseElementStartupType { + Antenna, + Pad, + FrontEnd, + WeatherStationController, + CentralLO, + AOSTiming, + HolographyTower, + Array, + PhotonicReference1, + PhotonicReference2, + PhotonicReference3, + PhotonicReference4, + PhotonicReference5, + PhotonicReference6 +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementType.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementType.java new file mode 100755 index 0000000000000000000000000000000000000000..54623f9ac0c4604ef5d7fb460e0b44cdb510c458 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/BaseElementType.java @@ -0,0 +1,40 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: BaseElementType.java,v 1.6 2012/08/20 23:53:48 sharring Exp $" + */ +package alma.tmcdb.domain; + +public enum BaseElementType { + Antenna, + Pad, + FrontEnd, + WeatherStationController, + CentralLO, + AOSTiming, + HolographyTower, + Array, + PhotonicReference, + CorrQuadrant, + AcaCorrSet +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CentralLO.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CentralLO.java new file mode 100755 index 0000000000000000000000000000000000000000..f7dc9e3e4173757fdcb873de03e68265c8acb561 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CentralLO.java @@ -0,0 +1,75 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: CentralLO.java,v 1.3 2011/05/02 08:47:46 rtobar Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; + +import alma.acs.util.UTCUtility; + +/** + * This BaseElement should be renamed CentralLO. + * The CentralLO is a collection of devices that generate the Local Oscillator (LO) + * signals to be used in the antennas to downconvert the observing frequency to + * the intermediate frequencies (IF). A maximum of 6 independent central LO signals + * can be generated, and this sets the limit to the number of Arrays that can be + * tuned in the ALMA telescope. + * The CentralLO reference signals are used in the antennas to downconvert the + * observed signal twice. Two LO signals are generated, LO1 and LO2. The first + * downconversion uses the LO1, and is performed in the receivers. It converts + * the observed frequency to an IF signal in the range between 4 to 8 GHz. The second + * downconversion, which uses the LO2 generated frequency, converts the IF signal + * to a baseband signal, between 2 and 4 GHz. + * The generation of the reference signals in the CentralLO requires two + * devices: a Laser Synthesizer and a Central Variable Reference. This two devices + * can be seen as a group under the name Photonic Reference. In the complete CentralLO + * there are six of them. + * @author rhiriart + * + */ +public class CentralLO extends BaseElement { + + private Long commissionDate; + + public CentralLO() {} + + public CentralLO(String name, Date commissionDate) { + this(name, UTCUtility.utcJavaToOmg(commissionDate.getTime())); + } + + public CentralLO(String name, Long commissionDate) { + super(null, name, BaseElementType.CentralLO); + this.name = name; + this.commissionDate = commissionDate; + } + + public Long getCommissionDate() { + return commissionDate; + } + + public void setCommissionDate(Long commissionDate) { + this.commissionDate = commissionDate; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CoeffOffset.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CoeffOffset.java new file mode 100755 index 0000000000000000000000000000000000000000..a882105079b78d1533ac05c14a1f206920fa99ae --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CoeffOffset.java @@ -0,0 +1,53 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: CoeffOffset.java,v 1.1 2010/09/16 19:27:13 rhiriart Exp $" + */ +package alma.tmcdb.domain; + +public class CoeffOffset { + + private String band; + private Double offset; + + public CoeffOffset(String band, Double offset) { + this.band = band; + this.offset = offset; + } + + public String getBand() { + return band; + } + + public void setBand(String band) { + this.band = band; + } + + public Double getOffset() { + return offset; + } + + public void setOffset(Double offset) { + this.offset = offset; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/ConcreteBaseElementStartup.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/ConcreteBaseElementStartup.java new file mode 100755 index 0000000000000000000000000000000000000000..a76bdaacd50fdea94ea3f755b588740990bbfa79 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/ConcreteBaseElementStartup.java @@ -0,0 +1,61 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: ConcreteBaseElementStartup.java,v 1.1 2009/04/08 14:38:44 rhiriart Exp $" + */ +package alma.tmcdb.domain; + +public class ConcreteBaseElementStartup extends AbstractBaseElementStartup { + + private StartupScenario startup; + private BaseElement baseElement; + + public ConcreteBaseElementStartup(StartupScenario startup, + BaseElement baseElement) { + super(); + this.startup = startup; + this.baseElement = baseElement; + this.type = baseElement.getType(); + // TODO if (startup != null) startup.addBaseElementStartup(this); + } + + public ConcreteBaseElementStartup(BaseElement baseElement) { + this(null, baseElement); + } + + public StartupScenario getStartup() { + return startup; + } + + public void setStartup(StartupScenario startup) { + this.startup = startup; + } + + public BaseElement getBaseElement() { + return baseElement; + } + + public void setBaseElement(BaseElement baseElement) { + this.baseElement = baseElement; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CorrQuadrant.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CorrQuadrant.java new file mode 100755 index 0000000000000000000000000000000000000000..ed3ec0c0468f1671b181add6c5642016b4152d9e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/CorrQuadrant.java @@ -0,0 +1,74 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: CorrQuadrant.java,v 1.1 2012/08/20 23:55:01 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; +import java.util.HashSet; +import java.util.Set; + +import alma.acs.util.UTCUtility; +import alma.BasebandNameMod.BasebandName; + +public class CorrQuadrant extends BaseElement { + + private BasebandName baseband; + private Byte quadrant; + private Byte channelNumber; + + public CorrQuadrant() {} + + public CorrQuadrant(String corrName, BasebandName baseband, Byte quadrant, Byte channel) + { + super(null, corrName, BaseElementType.CorrQuadrant); + this.baseband = baseband; + this.quadrant = quadrant; + this.channelNumber = channel; + } + + public Byte getQuadrant() { + return this.quadrant; + } + + public void setQuadrant(Byte quadrant) { + this.quadrant = quadrant; + } + + public Byte getChannelNumber() { + return this.channelNumber; + } + + public void setChannelNumber(Byte channelNumber) { + this.channelNumber = channelNumber; + } + + public BasebandName getBaseband() { + return baseband; + } + + public void setBaseband(BasebandName baseband) { + this.baseband = baseband; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Delays.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Delays.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..8695160ba8acf28381d4767ddb5f35c63bc12f29 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Delays.hbm.xml @@ -0,0 +1,92 @@ + + + + + alma.hla.datamodel.enumeration.JBasebandName + alma.BasebandNameMod.BasebandName + + + alma.hla.datamodel.enumeration.JPolarizationType + alma.PolarizationTypeMod.PolarizationType + + + alma.hla.datamodel.enumeration.JNetSideband + alma.NetSidebandMod.NetSideband + + + alma.hla.datamodel.enumeration.JReceiverBand + alma.ReceiverBandMod.ReceiverBand + + + alma.tmcdb.domain.IFProcConnectionState + + + + + + FEDelay_seq + + + + + + + + + + + + IFDelay_seq + + + + + + + + + + + + LODelay_seq + + + + + + + + + + XPDelay_seq + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FEDelay.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FEDelay.java new file mode 100755 index 0000000000000000000000000000000000000000..7ae01bad26cac475b2220e84ce203656e1f9dba1 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FEDelay.java @@ -0,0 +1,135 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: FEDelay.java,v 1.6 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +import alma.NetSidebandMod.NetSideband; +import alma.PolarizationTypeMod.PolarizationType; +import alma.ReceiverBandMod.ReceiverBand; + +public class FEDelay { + + private Long id; + private ReceiverBand receiverBand; + private PolarizationType polarization; + private NetSideband sideband; + private Double delay; + + public FEDelay() {} + + public FEDelay(ReceiverBand receiverBand, PolarizationType polarization, NetSideband sideband, + double delay) { + this.receiverBand = receiverBand; + this.polarization = polarization; + this.sideband = sideband; + this.delay = delay; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + ((getDelay() == null) ? 0 : getDelay().hashCode()); + result = prime * result + + ((getPolarization() == null) ? 0 : getPolarization().hashCode()); + result = prime * result + + ((getReceiverBand() == null) ? 0 : getReceiverBand().hashCode()); + result = prime * result + + ((getSideband() == null) ? 0 : getSideband().hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + FEDelay other = (FEDelay) obj; + if (getDelay() == null) { + if (other.getDelay() != null) + return false; + } else if (!getDelay().equals(other.getDelay())) + return false; + if (getPolarization() == null) { + if (other.getPolarization() != null) + return false; + } else if (!getPolarization().equals(other.getPolarization())) + return false; + if (getReceiverBand() == null) { + if (other.getReceiverBand() != null) + return false; + } else if (!getReceiverBand().equals(other.getReceiverBand())) + return false; + if (getSideband() == null) { + if (other.getSideband() != null) + return false; + } else if (!getSideband().equals(other.getSideband())) + return false; + return true; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public ReceiverBand getReceiverBand() { + return receiverBand; + } + + public void setReceiverBand(ReceiverBand receiverBand) { + this.receiverBand = receiverBand; + } + + public PolarizationType getPolarization() { + return polarization; + } + + public void setPolarization(PolarizationType polarization) { + this.polarization = polarization; + } + + public NetSideband getSideband() { + return sideband; + } + + public void setSideband(NetSideband sideband) { + this.sideband = sideband; + } + + public Double getDelay() { + return delay; + } + + public void setDelay(Double delay) { + this.delay = delay; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModel.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModel.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..d86d108b047f3a302e2eb55764b68fcbfe08016c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModel.hbm.xml @@ -0,0 +1,41 @@ + + + + + alma.hla.datamodel.enumeration.JReceiverBand + alma.ReceiverBandMod.ReceiverBand + + + + + FocusMC_seq + + + + + + + + + + + + + FocusModel_seq + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModel.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModel.java new file mode 100755 index 0000000000000000000000000000000000000000..a24d87f13ed14bb9120e3ba00b85ca9364a2ad57 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModel.java @@ -0,0 +1,91 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: FocusModel.java,v 1.7 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.HashMap; +import java.util.Map; + +import alma.tmcdb.history.Identifiable; +import alma.tmcdb.history.Version; + +public class FocusModel implements Identifiable { + + private Long id; + private Antenna antenna; + private Map terms = new HashMap(); + + public FocusModel() {} + + public FocusModel(Antenna antenna) { + this.antenna = antenna; + antenna.getFocusModels().add(this); + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof FocusModel)) + return false; + FocusModel fm = (FocusModel) o; + return (getAntenna() == null ? fm.getAntenna() == null : getAntenna().equals(fm.getAntenna())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getAntenna() == null) ? 0 : getAntenna().hashCode()); + return result; + } + + public Antenna getAntenna() { + return antenna; + } + + public void setAntenna(Antenna antenna) { + this.antenna = antenna; + } + + public Map getTerms() { + return terms; + } + + public void setTerms(Map coeffs) { + this.terms = coeffs; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public FocusModelCoeff getTerm(String coeffname) { + return terms.get(coeffname); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModelCoeff.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModelCoeff.java new file mode 100755 index 0000000000000000000000000000000000000000..d6f102a08d861696862ff0bf55f95fa64efa3eb9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FocusModelCoeff.java @@ -0,0 +1,103 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: FocusModelCoeff.java,v 1.4 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.HashMap; +import java.util.Map; + +import alma.ReceiverBandMod.ReceiverBand; + +public class FocusModelCoeff { + + private Long id; + private float value; + private String name; + private Map offsets = new HashMap(); + + public FocusModelCoeff() { } + + public FocusModelCoeff(String name, float value) { + this.name = name; + this.value = value; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof FocusModelCoeff)) + return false; + FocusModelCoeff other = (FocusModelCoeff) o; + if (getName() == null) { + if (other.getName() != null) + return false; + } else if (!getName().equals(other.getName())) + return false; + if (!(Double.compare(getValue(), other.getValue()) == 0)) + return false; + return true; + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + getName().hashCode(); + result = 31 * result + Float.floatToIntBits(getValue()); + return result; + } + + public float getValue() { + return value; + } + + public void setValue(float value) { + this.value = value; + } + + public Map getOffsets() { + return offsets; + } + + public void setOffsets(Map offsets) { + this.offsets = offsets; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FrontEnd.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FrontEnd.java new file mode 100755 index 0000000000000000000000000000000000000000..d9debaec597f4edac405c0641ffc8df4171dd9ae --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/FrontEnd.java @@ -0,0 +1,66 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: FrontEnd.java,v 1.8 2011/05/02 08:47:46 rtobar Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; +import java.util.HashSet; +import java.util.Set; + +import alma.acs.util.UTCUtility; + +public class FrontEnd extends BaseElement { + + private Long commissionDate; + private Set scheduledAntennaInstallations = + new HashSet(); + + public FrontEnd() {} + + public FrontEnd(String name, Date commissionDate) { + this(name, UTCUtility.utcJavaToOmg(commissionDate.getTime())); + } + + public FrontEnd(String name, Long commissionDate) { + super(null, name, BaseElementType.FrontEnd); + this.commissionDate = commissionDate; + } + + public Long getCommissionDate() { + return commissionDate; + } + + public void setCommissionDate(Long commissionDate) { + this.commissionDate = commissionDate; + } + + public Set getScheduledAntennaInstallations() { + return scheduledAntennaInstallations; + } + + public void setScheduledAntennaInstallations(Set scheduledAntennaInstallations) { + this.scheduledAntennaInstallations = scheduledAntennaInstallations; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/GenericBaseElementStartup.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/GenericBaseElementStartup.java new file mode 100755 index 0000000000000000000000000000000000000000..9f2b0054808af7000a4362ecd32c660aec9cf6a3 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/GenericBaseElementStartup.java @@ -0,0 +1,35 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: GenericBaseElementStartup.java,v 1.1 2009/04/08 14:38:44 rhiriart Exp $" + */ +package alma.tmcdb.domain; + +public class GenericBaseElementStartup extends AbstractBaseElementStartup { + + public GenericBaseElementStartup(BaseElementType type) { + super(); + this.type = type; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTower.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTower.java new file mode 100755 index 0000000000000000000000000000000000000000..c49940d7fce631e01487037f0c64e9756fb2a8ef --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTower.java @@ -0,0 +1,75 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: HolographyTower.java,v 1.2 2011/05/02 08:47:46 rtobar Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; +import java.util.HashSet; +import java.util.Set; + +import alma.acs.util.UTCUtility; + +public class HolographyTower extends BaseElement { + + private Long commissionDate; + private Coordinate position; + private Set associatedPads = new HashSet(); + + public HolographyTower() {} + + public HolographyTower(String name, Coordinate position, Date commissionDate) { + this(name, position, UTCUtility.utcJavaToOmg(commissionDate.getTime())); + } + + public HolographyTower(String name, Coordinate position, Long commissionDate) { + super(null, name, BaseElementType.HolographyTower); + this.commissionDate = commissionDate; + this.position = position; + } + + public Long getCommissionDate() { + return commissionDate; + } + + public void setCommissionDate(Long commissionDate) { + this.commissionDate = commissionDate; + } + + public Coordinate getPosition() { + return position; + } + + public void setPosition(Coordinate position) { + this.position = position; + } + + public Set getAssociatedPads() { + return associatedPads; + } + + public void setAssociatedPads(Set associatedPads) { + this.associatedPads = associatedPads; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTowerToPad.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTowerToPad.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..ac24b21107d86cc006eda3da4dbea46df370b19a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTowerToPad.hbm.xml @@ -0,0 +1,25 @@ + + + + + + + + HologrTTP_seq + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTowerToPad.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTowerToPad.java new file mode 100755 index 0000000000000000000000000000000000000000..76492490c0c1c4cbeb7b5949e470f8adaf84d967 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HolographyTowerToPad.java @@ -0,0 +1,107 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: HolographyTowerToPad.java,v 1.3 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + + +public class HolographyTowerToPad { + + private HolographyTower holographyTower; + private Pad pad; + private Double azimuth; + private Double elevation; + private Integer holographyTowerToPadId; + + public HolographyTowerToPad() {} + + public HolographyTowerToPad(HolographyTower holographyTower, Pad pad) { + this.holographyTower = holographyTower; + this.pad = pad; + this.azimuth = 0.0; + this.elevation = 0.0; + this.holographyTower.getAssociatedPads().add(this); + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof HolographyTowerToPad)) + return false; + HolographyTowerToPad a2p = (HolographyTowerToPad) o; + return (getHolographyTower() == null ? a2p.getHolographyTower() == null : + getHolographyTower().equals(a2p.getHolographyTower())) && + (getPad() == null ? a2p.getPad() == null : + getPad().equals(a2p.getPad())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getHolographyTower() == null) ? 0 : getHolographyTower().hashCode()); + result = 31 * result + ((getPad() == null) ? 0 : getPad().hashCode()); + return result; + } + + public Integer getHolographyTowerToPadId() { + return holographyTowerToPadId; + } + + public void setHolographyTowerToPadId(Integer id) { + this.holographyTowerToPadId = id; + } + + public HolographyTower getHolographyTower() { + return holographyTower; + } + + public void setHolographyTower(HolographyTower holographyTower) { + this.holographyTower = holographyTower; + } + + public Pad getPad() { + return pad; + } + + public void setPad(Pad pad) { + this.pad = pad; + } + + public Double getAzimuth() { + return azimuth; + } + + public void setAzimuth(Double azimuth) { + this.azimuth = azimuth; + } + + public Double getElevation() { + return elevation; + } + + public void setElevation(Double elevation) { + this.elevation = elevation; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwConfiguration.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwConfiguration.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..8a60df4163b2f801af734558992d8abf771e8b8f --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwConfiguration.hbm.xml @@ -0,0 +1,71 @@ + + + + + + + HWConf_seq + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwConfiguration.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwConfiguration.java new file mode 100755 index 0000000000000000000000000000000000000000..a5d3506a0ef7704db69b08d719632700f5ea131b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwConfiguration.java @@ -0,0 +1,283 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: HwConfiguration.java,v 1.9 2011/10/14 00:08:15 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.io.Serializable; +import java.util.Date; +import java.util.HashSet; +import java.util.Set; + +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Schemas; +import alma.acs.tmcdb.Component; +import alma.tmcdb.history.Identifiable; +import alma.tmcdb.history.Version; + +public class HwConfiguration implements Serializable, Identifiable { + + private static final long serialVersionUID = -1805846186509252907L; + private Long id; + private Configuration swConfiguration; + private HwConfiguration globalConfiguration; + private String telescopeName; + private ArrayReference arrayReference; + private Set startupScenarios = new HashSet(); + private Set baseElements = new HashSet(); + private Set assemblies = new HashSet(); + private Set hwSchemas = new HashSet(); + private Set crossPolarizationDelays = new HashSet(); + + public HwConfiguration() {} + + public HwConfiguration(Configuration swConfiguration) { + this.swConfiguration = swConfiguration; + this.telescopeName = "OSF"; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof HwConfiguration)) + return false; + + HwConfiguration cnf = (HwConfiguration) o; + return ((getSwConfiguration() == null || getSwConfiguration().getConfigurationName() == null) + ? (cnf.getSwConfiguration() == null || cnf.getSwConfiguration().getConfigurationName() == null) + : getSwConfiguration().getConfigurationName().equals(cnf.getSwConfiguration().getConfigurationName())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getSwConfiguration() == null || getSwConfiguration().getConfigurationName() == null) ? 0 : getSwConfiguration().getConfigurationName().hashCode()); + return result; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public ArrayReference getArrayReference() { + return arrayReference; + } + + public void setArrayReference(ArrayReference arrayReference) { + this.arrayReference = arrayReference; + } + + public Set getStartupScenarios() { + return startupScenarios; + } + + public void setStartupScenarios(Set startupScenarios) { + this.startupScenarios = startupScenarios; + } + + public void addStartupScenario(StartupScenario startupScenario) { + startupScenario.setConfiguration(this); + startupScenarios.add(startupScenario); + } + + public Set getBaseElements() { + return baseElements; + } + + public void setBaseElements(Set baseElements) { + this.baseElements = baseElements; + } + + public void addBaseElement(BaseElement baseElement) { + baseElement.setConfiguration(this); + baseElements.add(baseElement); + } + + public Set getAssemblies() { + return assemblies; + } + + public void setAssemblies(Set assemblies) { + this.assemblies = assemblies; + } + + public void addAssembly(Assembly assembly) { + assembly.setConfiguration(this); + assemblies.add(assembly); + } + + public Set getHwSchemas() { + return hwSchemas; + } + + public void setHwSchemas(Set hwSchemas) { + this.hwSchemas = hwSchemas; + } + + public void addHwSchema(HwSchema schema) { + schema.setConfiguration(this); + hwSchemas.add(schema); + } + + public Configuration getSwConfiguration() { + return swConfiguration; + } + + public void setSwConfiguration(Configuration swConfiguration) { + this.swConfiguration = swConfiguration; + } + + public HwConfiguration getGlobalConfiguration() { + return globalConfiguration; + } + + public void setGlobalConfiguration(HwConfiguration globalConfiguration) { + this.globalConfiguration = globalConfiguration; + } + + /** + * Getter (pass-through as a facade to Configuration) for the schemas of the configuration. + */ + public Set getSchemas() + { + Set retVal = new HashSet(); + if(null != this.getSwConfiguration()) { + retVal = this.getSwConfiguration().getSchemases(); + } + return retVal; + } + + /** + * Getter (pass-through as a facade to Configuration) for the components of the configuration. + */ + public Set getComponents() + { + Set retVal = new HashSet(); + if(null != this.getSwConfiguration()) { + retVal = this.getSwConfiguration().getComponents(); + } + return retVal; + } + + /** + * Getter (pass-through as a facade to Configuration) for the full name of the configuration. + */ + public String getFullName() + { + String retVal = null; + if(null != this.getSwConfiguration()) { + retVal = this.getSwConfiguration().getFullName(); + } + return retVal; + } + + /** + * Getter (pass-through as a facade to Configuration) for the active flag of the configuration. + */ + public Boolean getActive() + { + Boolean retVal = null; + if(null != this.getSwConfiguration()) { + retVal = this.getSwConfiguration().getActive(); + } + return retVal; + } + + /** + * Getter (pass-through as a facade to Configuration) for the creation time of the configuration. + */ + public Date getCreationTime() + { + Date retVal = null; + if(null != this.getSwConfiguration()) { + retVal = this.getSwConfiguration().getCreationTime(); + } + return retVal; + } + + /** + * Getter (pass-through as a facade to Configuration) for the name of the configuration. + */ + public String getName() + { + String retVal = null; + if(null != this.getSwConfiguration()) { + retVal = this.getSwConfiguration().getConfigurationName(); + } + return retVal; + } + + /** + * Setter (pass-through as a facade to Configuration) for the name of the configuration. + */ + public void setName(String description) + { + if(null != this.getSwConfiguration()) { + this.getSwConfiguration().setConfigurationName(description); + } + } + + /** + * Getter (pass-through as a facade to Configuration) for the description of the configuration. + */ + public String getDescription() + { + String retVal = null; + if(null != this.getSwConfiguration()) { + retVal = this.getSwConfiguration().getDescription(); + } + return retVal; + } + + /** + * Setter (pass-through as a facade to Configuration) for the description of the configuration. + */ + public void setDescription(String description) + { + if(null != this.getSwConfiguration()) { + this.getSwConfiguration().setDescription(description); + } + } + + public String getTelescopeName() { + return telescopeName; + } + + public void setTelescopeName(String telescopeName) { + this.telescopeName = telescopeName; + } + + public Set getCrossPolarizationDelays() { + return crossPolarizationDelays; + } + + public void setCrossPolarizationDelays(Set crossPolarizationDelays) { + this.crossPolarizationDelays = crossPolarizationDelays; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwSchema.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwSchema.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..bad5c60e0678f36b0df336af1d7d028fd2844462 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwSchema.hbm.xml @@ -0,0 +1,25 @@ + + + + + + + + HwSchemas_seq + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwSchema.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwSchema.java new file mode 100755 index 0000000000000000000000000000000000000000..dff01cafc4d00e6bdce73b038167a9c9c1dee1c4 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/HwSchema.java @@ -0,0 +1,82 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: HwSchema.java,v 1.2 2010/08/31 09:45:25 rtobar Exp $" + */ +package alma.tmcdb.domain; + +public class HwSchema { + + private Long id; + private String urn; + private HwConfiguration configuration; + private AssemblyType assemblyType; + private String schema; + + public HwSchema() { } + + public HwSchema(String urn, String schema) { + this.urn = urn; + this.schema = schema; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getUrn() { + return urn; + } + + public void setUrn(String urn) { + this.urn = urn; + } + + public HwConfiguration getConfiguration() { + return configuration; + } + + public void setConfiguration(HwConfiguration configuration) { + this.configuration = configuration; + } + + public String getSchema() { + return schema; + } + + public void setSchema(String schema) { + this.schema = schema; + } + + public void setAssemblyType(AssemblyType assemblyType) { + this.assemblyType = assemblyType; + } + + public AssemblyType getAssemblyType() { + return assemblyType; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/IFDelay.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/IFDelay.java new file mode 100755 index 0000000000000000000000000000000000000000..08aba1533555421e7124d242e66f4ff0a26b47e0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/IFDelay.java @@ -0,0 +1,135 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: IFDelay.java,v 1.7 2012/02/16 01:39:10 sharring Exp $" + */ +package alma.tmcdb.domain; + +import alma.BasebandNameMod.BasebandName; +import alma.PolarizationTypeMod.PolarizationType; + +public class IFDelay { + + private Long id; + private BasebandName baseband; + private PolarizationType polarization; + private IFProcConnectionState ifSwitch; + private Double delay; + + public IFDelay() {} + + public IFDelay(BasebandName baseband, PolarizationType polarization, IFProcConnectionState ifSwitch, + double delay) { + this.baseband = baseband; + this.polarization = polarization; + this.ifSwitch = ifSwitch; + this.delay = delay; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((getBaseband() == null) ? 0 : getBaseband().hashCode()); + result = prime * result + + ((getIfSwitch() == null) ? 0 : getIfSwitch().hashCode()); + result = prime * result + + ((getPolarization() == null) ? 0 : getPolarization().hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + IFDelay other = (IFDelay) obj; + + // Baseband + if (getBaseband() == null) { + if (other.getBaseband() != null) + return false; + } else if (!getBaseband().equals(other.getBaseband())) + return false; + + // Ifswitch + if (getIfSwitch() == null) { + if (other.getIfSwitch() != null) + return false; + } else if (!getIfSwitch().equals(other.getIfSwitch())) + return false; + + // Polarization + if (getPolarization() == null) { + if (other.getPolarization() != null) + return false; + } else if (!getPolarization().equals(other.getPolarization())) + return false; + + return true; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public BasebandName getBaseband() { + return baseband; + } + + public void setBaseband(BasebandName baseband) { + this.baseband = baseband; + } + + public PolarizationType getPolarization() { + return polarization; + } + + public void setPolarization(PolarizationType polarization) { + this.polarization = polarization; + } + + public Double getDelay() { + return delay; + } + + public void setDelay(Double delay) { + this.delay = delay; + } + + public IFProcConnectionState getIfSwitch() { + return ifSwitch; + } + + public void setIfSwitch(IFProcConnectionState ifSwitch) { + this.ifSwitch = ifSwitch; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/IFProcConnectionState.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/IFProcConnectionState.java new file mode 100755 index 0000000000000000000000000000000000000000..a5c94c8ab2630f19303ad4003030b483ba2f0a5e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/IFProcConnectionState.java @@ -0,0 +1,30 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: IFProcConnectionState.java,v 1.1 2010/10/27 20:26:07 rhiriart Exp $" + */ +package alma.tmcdb.domain; + +public enum IFProcConnectionState { + USB_HIGH, USB_LOW, LSB_HIGH, LSB_LOW; +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LODelay.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LODelay.java new file mode 100755 index 0000000000000000000000000000000000000000..cda65b704e3cd037e1503e9733e646c369565e1b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LODelay.java @@ -0,0 +1,98 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: LODelay.java,v 1.5 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +import alma.BasebandNameMod.BasebandName; + +public class LODelay { + + private Long id; + private BasebandName baseband; + private Double delay; + + public LODelay() {} + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((getBaseband() == null) ? 0 : getBaseband().hashCode()); + result = prime * result + ((getDelay() == null) ? 0 : getDelay().hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + LODelay other = (LODelay) obj; + if (getBaseband() == null) { + if (other.getBaseband() != null) + return false; + } else if (!getBaseband().equals(other.getBaseband())) + return false; + if (getDelay() == null) { + if (other.getDelay() != null) + return false; + } else if (!getDelay().equals(other.getDelay())) + return false; + return true; + } + + public LODelay(BasebandName baseband, double delay) { + this.baseband = baseband; + this.delay = delay; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public BasebandName getBaseband() { + return baseband; + } + + public void setBaseband(BasebandName baseband) { + this.baseband = baseband; + } + + public Double getDelay() { + return delay; + } + + public void setDelay(Double delay) { + this.delay = delay; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LruType.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LruType.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..ee65600e03748b123d9ac31d5d534547e7b5a1ee --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LruType.hbm.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LruType.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LruType.java new file mode 100755 index 0000000000000000000000000000000000000000..eaa6fec878a56cd3932791b60986e2fb625dfdbf --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/LruType.java @@ -0,0 +1,201 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: LruType.java,v 1.3 2010/03/25 23:44:47 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.HashSet; +import java.util.Set; + +/** + * LRU Type represents the types of Line Replaceable Units (LRU). + * These are hardware units that are taken out of field, carried + * back to the lab, repaired or replaced and brought back to the field. + * All LRUs are made up of one or more assemblies. + * + * @author rkurowsk, Dec 11, 2008 + * @version $Revision: 1.3 $ + */ +public class LruType { + + private String name; + private String fullName; + private String icd; + private long icdDate; + private String description; + private String notes; + private Set assemblyTypes = new HashSet(); + + /** + * Zero-arg public constructor + */ + public LruType() { + } + + /** + * Public constructor + * + * @param lruName + * @param fullName + * @param icd + * @param icdDate + * @param description + * @param notes + */ + public LruType(String name, String fullName, String icd, long icdDate, + String description, String notes) { + super(); + this.name = name; + this.fullName = fullName; + this.icd = icd; + this.icdDate = icdDate; + this.description = description; + this.notes = notes; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof LruType)) + return false; + LruType lru = (LruType) o; + return (this.getName() == null ? lru.getName() == null : this.getName().equals(lru.getName())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((this.getName() == null) ? 0 : this.getName().hashCode()); + return result; + } + + /** + * @return the lruName + */ + public String getName() { + return this.name; + } + + /** + * @param lruName the lruName to set + */ + public void setName(String name) { + this.name = name; + } + + /** + * @return the fullName + */ + public String getFullName() { + return fullName; + } + + /** + * @param fullName the fullName to set + */ + public void setFullName(String fullName) { + this.fullName = fullName; + } + + /** + * @return the icd + */ + public String getIcd() { + return icd; + } + + /** + * @param icd the icd to set + */ + public void setIcd(String icd) { + this.icd = icd; + } + + /** + * @return the icdDate + */ + public long getIcdDate() { + return icdDate; + } + + /** + * @param icdDate the icdDate to set + */ + public void setIcdDate(long icdDate) { + this.icdDate = icdDate; + } + + /** + * @return the description + */ + public String getDescription() { + return description; + } + + /** + * @param description the description to set + */ + public void setDescription(String description) { + this.description = description; + } + + /** + * @return the notes + */ + public String getNotes() { + return notes; + } + + /** + * @param notes the notes to set + */ + public void setNotes(String notes) { + this.notes = notes; + } + + /** + * @return assembly type collection + */ + public Set getAssemblyTypes() { + return assemblyTypes; + } + + /** + * @param assemblyTypes assembly type collection to set + */ + public void setAssemblyTypes(Set assemblyTypes) { + this.assemblyTypes = assemblyTypes; + } + + /** + * Adds an AssemblyType to the collection. + * + * @param assemblyType assembly type to add + */ + public void addAssemblyType(AssemblyType assemblyType) { + assemblyType.setLruType(this); + assemblyTypes.add(assemblyType); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Pad.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Pad.java new file mode 100755 index 0000000000000000000000000000000000000000..ce7e4ebc9c80cfcea75fa3725062634192e2d9de --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Pad.java @@ -0,0 +1,109 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: Pad.java,v 1.11 2011/10/11 22:10:16 rhiriart Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; +import java.util.HashSet; +import java.util.Set; + +import alma.acs.util.UTCUtility; +import alma.tmcdb.history.Identifiable; + +public class Pad extends BaseElement implements Identifiable { + + private Long commissionDate; + private Coordinate position; + private Set scheduledAntennas = new HashSet(); + private Set holographyTowers = new HashSet(); + + /************************************************************************************** + * The delay model is computed as + * delay_total = delay_pad + delay_antenna + { baseband delays } + * + * The delay_pad is (here) in the Pad class, the delay_antenna is in the Antenna class. + * + * In other words, what it used to be the "cable delay" was divided in two components, + * one related with the pad which represent the path from the pad to the correelator; + * and the other related with the antenna which represents the path from the antenna + * reception to the pad. + * + * This design is based on ALMA-80.00.00.00-0015-A-SPE, "Instrumental Delay", by R. Sramek. + **/ + private Double avgDelay; + + public Pad() {} + + public Pad(String name, Coordinate position, Date commissionDate) { + this(name, position, UTCUtility.utcJavaToOmg(commissionDate.getTime())); + } + + public Pad(String name, Coordinate position, Long commissionDate) { + super(null, name, BaseElementType.Pad); + this.commissionDate = commissionDate; + this.position = position; + this.avgDelay = 0.0; + } + + public Long getCommissionDate() { + return commissionDate; + } + + public void setCommissionDate(Long commissionDate) { + this.commissionDate = commissionDate; + } + + public Coordinate getPosition() { + return position; + } + + public void setPosition(Coordinate position) { + this.position = position; + } + + public Set getScheduledAntennas() { + return scheduledAntennas; + } + + public void setScheduledAntennas(Set scheduledAntennas) { + this.scheduledAntennas = scheduledAntennas; + } + + public Double getAvgDelay() { + return avgDelay; + } + + public void setAvgDelay(Double avgDelay) { + this.avgDelay = avgDelay; + } + + public Set getHolographyTowers() { + return holographyTowers; + } + + public void setHolographyTowers(Set holographyTowers) { + this.holographyTowers = holographyTowers; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PhotonicReference.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PhotonicReference.java new file mode 100755 index 0000000000000000000000000000000000000000..301099086438147661237de71d3c323e6570a31b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PhotonicReference.java @@ -0,0 +1,54 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: PhotonicReference.java,v 1.3 2011/05/02 08:47:46 rtobar Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; + +import alma.acs.util.UTCUtility; + +public class PhotonicReference extends BaseElement { + + private Long commissionDate; + + public PhotonicReference() {} + + public PhotonicReference(String name, Date commissionDate) { + this(name, UTCUtility.utcJavaToOmg(commissionDate.getTime())); + } + + public PhotonicReference(String name, Long commissionDate) { + super(null, name, BaseElementType.PhotonicReference); + this.commissionDate = commissionDate; + } + + public Long getCommissionDate() { + return commissionDate; + } + + public void setCommissionDate(Long commissionDate) { + this.commissionDate = commissionDate; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModel.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModel.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..c4530b717feb07aba769673e5006ecf2d8a993cd --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModel.hbm.xml @@ -0,0 +1,43 @@ + + + + + alma.hla.datamodel.enumeration.JReceiverBand + alma.ReceiverBandMod.ReceiverBand + + + + + PointiMC_seq + + + + + + + + + + + + + + PointiM_seq + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModel.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModel.java new file mode 100755 index 0000000000000000000000000000000000000000..fd327dea05d1261ed7894adc1511ef292084fae6 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModel.java @@ -0,0 +1,114 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: PointingModel.java,v 1.11 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.HashMap; +import java.util.Map; + +import alma.ReceiverBandMod.ReceiverBand; +import alma.tmcdb.history.Identifiable; + +public class PointingModel implements Identifiable { + + private Long id; + private Antenna antenna; + private Map terms = new HashMap(); + + public PointingModel() {} + + public PointingModel(Antenna antenna) { + this.antenna = antenna; + antenna.getPointingModels().add(this); + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof PointingModel)) + return false; + PointingModel pm = (PointingModel) o; + return (getAntenna() == null ? pm.getAntenna() == null : getAntenna().equals(pm.getAntenna())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getAntenna() == null) ? 0 : getAntenna().hashCode()); + return result; + } + + public Antenna getAntenna() { + return antenna; + } + + public void setAntenna(Antenna antenna) { + this.antenna = antenna; + } + + public Map getTerms() { + return terms; + } + + public void setTerms(Map coeffs) { + this.terms = coeffs; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public void addTerm(String coeffname, PointingModelCoeff coeff) { + coeff.setPointingModel(this); + coeff.setName(coeffname); + terms.put(coeffname, coeff); + } + + public PointingModelCoeff getTerm(String coeffname) { + return terms.get(coeffname); + } + + @Override + public String toString() { + String repr = "PointingModel {\n"; + repr += "\tTerms {\n"; + for (String name : terms.keySet()) { + repr += "\t\t" + name + ": " + terms.get(name).getValue() + "\n"; + repr += "\t\tOffsets {\n"; + for (ReceiverBand band : terms.get(name).getOffsets().keySet()) { + repr += "\t\t\t" + band.toString() + ": " + terms.get(name).getOffsets().get(band) + "\n"; + } + repr += "\t\t}\n"; + } + repr += "\t}\n"; + repr += "}\n"; + return repr; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModelCoeff.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModelCoeff.java new file mode 100755 index 0000000000000000000000000000000000000000..f117dc9a4075b9a22764d059bc8332c6e9b8b952 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/PointingModelCoeff.java @@ -0,0 +1,125 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: PointingModelCoeff.java,v 1.6 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.util.HashMap; +import java.util.Map; + +import alma.ReceiverBandMod.ReceiverBand; +import alma.tmcdb.history.interceptor.PointingModelCoeffVersionKeeper; +import alma.tmcdb.history.interceptor.Versionable; + +public class PointingModelCoeff extends Versionable { + + private Long id; + private PointingModel pointingModel; + private String name; + private float value; + private Map offsets = new HashMap(); + + public PointingModelCoeff() { } + + public PointingModelCoeff(String name, float value) { + this.name = name; + this.value = value; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof PointingModelCoeff)) + return false; + PointingModelCoeff other = (PointingModelCoeff) o; + if (getPointingModel() == null) { + if (other.getPointingModel() != null) + return false; + } else if (!getPointingModel().equals(other.getPointingModel())) + return false; + if (getName() == null) { + if (other.getName() != null) + return false; + } else if (!getName().equals(other.getName())) + return false; + if (!(Double.compare(getValue(), other.getValue()) == 0)) + return false; + return true; + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + getPointingModel().hashCode(); + result = 31 * result + getName().hashCode(); + result = 31 * result + Float.floatToIntBits(getValue()); + return result; + } + + public float getValue() { + return value; + } + + public void setValue(float value) { + this.value = value; + } + + public Map getOffsets() { + return offsets; + } + + public void setOffsets(Map offsets) { + this.offsets = offsets; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + @Override + public Class getVersionWriterClass() { + return PointingModelCoeffVersionKeeper.class; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public PointingModel getPointingModel() { + return pointingModel; + } + + public void setPointingModel(PointingModel pointingModel) { + this.pointingModel = pointingModel; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StartupScenario.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StartupScenario.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..856b565b1e5fd6c167fa47d4a3a1aa3137843a68 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StartupScenario.hbm.xml @@ -0,0 +1,24 @@ + + + + + + + Startup_seq + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StartupScenario.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StartupScenario.java new file mode 100755 index 0000000000000000000000000000000000000000..640d47b9e39a4644f44ea0bdde996798d1fde83b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StartupScenario.java @@ -0,0 +1,110 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: StartupScenario.java,v 1.8 2010/09/03 17:13:48 sharring Exp $" + */ +package alma.tmcdb.domain; + +import java.io.Serializable; +import java.util.HashSet; +import java.util.Set; + +public class StartupScenario implements Serializable { + + private static final long serialVersionUID = -1256689525882415794L; + private Long id; + private String name; + private HwConfiguration configuration; + private Set baseElementStartups = new HashSet(); + private Set assemblyStartups = new HashSet(); + + public StartupScenario() {} + + public StartupScenario(String name) { + this.name = name; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof StartupScenario)) + return false; + StartupScenario startup = (StartupScenario) o; + return (getConfiguration() == null ? startup.getConfiguration() == null : getConfiguration().equals(startup.getConfiguration())) && + (getName() == null ? startup.getName() == null : getName().equals(startup.getName())); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + ((getConfiguration() == null) ? 0 : getConfiguration().hashCode()); + result = 31 * result + ((getName() == null) ? 0 : getName().hashCode()); + return result; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public HwConfiguration getConfiguration() { + return configuration; + } + + public void setConfiguration(HwConfiguration configuration) { + this.configuration = configuration; + } + + public Set getBaseElementStartups() { + return baseElementStartups; + } + + public void setBaseElementStartups(Set baseElementStartup) { + this.baseElementStartups = baseElementStartup; + } + + public void addBaseElementStartup(BaseElementStartup baseElementStartup) { + baseElementStartup.setStartup(this); + baseElementStartups.add(baseElementStartup); + } + + public Set getAssemblyStartups() { + return assemblyStartups; + } + + public void setAssemblyStartups(Set assemblyStartups) { + this.assemblyStartups = assemblyStartups; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StringEnumUserType.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StringEnumUserType.java new file mode 100755 index 0000000000000000000000000000000000000000..e1b4dd375b04ddb00723829465e02675e988e511 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/StringEnumUserType.java @@ -0,0 +1,132 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: StringEnumUserType.java,v 1.2 2010/08/05 09:43:54 rtobar Exp $" + */ +package alma.tmcdb.domain; + +import java.io.Serializable; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.Properties; + +import org.hibernate.Hibernate; +import org.hibernate.HibernateException; +import org.hibernate.usertype.EnhancedUserType; +import org.hibernate.usertype.ParameterizedType; +import org.hibernate.util.ReflectHelper; + +/** + * Custom mapping type for string-backed enumerations. + * + * Taken from "Java Persistence with Hibernate", Christian Bauer and + * Gavin King, Manning, ISBN 1-932394-88-5. + * + * This class will probably be replace in the future to use ICD/HLA/Enumerations, + * which are not Java Enums. + */ +@SuppressWarnings("unchecked") +public class StringEnumUserType implements EnhancedUserType, ParameterizedType { + + private Class enumClass; + + public void setParameterValues(Properties parameters) { + String enumClassName = + parameters.getProperty("enumClassName"); + try { + enumClass = ReflectHelper.classForName(enumClassName); + } catch (ClassNotFoundException cnfe) { + throw new HibernateException("Enum class not found", cnfe); + } + } + + public Class returnedClass() { + return enumClass; + } + + public int[] sqlTypes() { + return new int[] { Hibernate.STRING.sqlType() }; + } + + public boolean isMutable() { + return false; + } + + public Object deepCopy(Object value) throws HibernateException { + return value; + } + + public Serializable disassemble(Object value) throws HibernateException { + return (Serializable) value; + } + + public Object assemble(Serializable cached, Object owner) + throws HibernateException { + return cached; + } + + public Object replace(Object original, Object target, Object owner) + throws HibernateException { + return original; + } + + public boolean equals(Object x, Object y) throws HibernateException { + if (x == y) + return true; + if (x == null || y == null) + return false; + return x.equals(y); + } + + public int hashCode(Object x) throws HibernateException { + return x.hashCode(); + } + + public Object fromXMLString(String xmlValue) { + return Enum.valueOf(enumClass, xmlValue); + } + + public String objectToSQLString(Object value) { + return '\'' + ((Enum) value).name() + '\''; + } + + public String toXMLString(Object value) { + return ((Enum) value).name(); + } + + public Object nullSafeGet(ResultSet rs, String[] names, Object owner) + throws HibernateException, SQLException { + String name = rs.getString(names[0]); + return rs.wasNull() ? null : Enum.valueOf(enumClass, name); + } + + public void nullSafeSet(PreparedStatement st, Object value, int index) + throws HibernateException, SQLException { + if (value == null) { + st.setNull(index, Hibernate.STRING.sqlType()); + } else { + st.setString(index, ((Enum) value).name()); + } + } +} \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Term.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Term.java new file mode 100755 index 0000000000000000000000000000000000000000..eead626c0c2f5d9bfb1e53151c7e9a97c48cefac --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/Term.java @@ -0,0 +1,78 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: Term.java,v 1.3 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.domain; + +public class Term { + private float value; + private float error; + + public Term() { + } + + public Term(float value) { + this(value, 0.0f); + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof Term)) + return false; + Term term = (Term) o; + return (Double.compare(getValue(), term.getValue()) == 0) && + (Double.compare(getError(), term.getError()) == 0); + } + + @Override + public int hashCode() { + int result = 17; + result = 31 * result + Float.floatToIntBits(getValue()); + result = 31 * result + Float.floatToIntBits(getError()); + return result; + } + + public Term(float value, float error) { + this.value = value; + this.error = error; + } + + public float getValue() { + return value; + } + + public void setValue(float value) { + this.value = value; + } + + public float getError() { + return error; + } + + public void setError(float error) { + this.error = error; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/WeatherStationController.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/WeatherStationController.java new file mode 100755 index 0000000000000000000000000000000000000000..232c1ad434d2dc9ef601c20f44ffc992924c825a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/WeatherStationController.java @@ -0,0 +1,54 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: WeatherStationController.java,v 1.3 2011/05/02 08:47:46 rtobar Exp $" + */ +package alma.tmcdb.domain; + +import java.util.Date; + +import alma.acs.util.UTCUtility; + +public class WeatherStationController extends BaseElement +{ + private Long commissionDate; + + public WeatherStationController() {} + + public WeatherStationController(String name, Date commissionDate) { + this(name, UTCUtility.utcJavaToOmg(commissionDate.getTime())); + } + + public WeatherStationController(String name, Long commissionDate) { + super(null, name, BaseElementType.WeatherStationController); + this.commissionDate = commissionDate; + } + + public Long getCommissionDate() { + return commissionDate; + } + + public void setCommissionDate(Long commissionDate) { + this.commissionDate = commissionDate; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/XPDelay.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/XPDelay.java new file mode 100755 index 0000000000000000000000000000000000000000..2c26ff64a90ed2db09f7c97bc5c3189329a28b34 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/domain/XPDelay.java @@ -0,0 +1,164 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: XPDelay.java,v 1.8 2012/02/16 01:39:10 sharring Exp $" + */ +package alma.tmcdb.domain; + +import alma.BasebandNameMod.BasebandName; +import alma.NetSidebandMod.NetSideband; +import alma.ReceiverBandMod.ReceiverBand; + +public class XPDelay { + + private HwConfiguration configuration; + private Long id; + private ReceiverBand receiverBand; + private BasebandName baseband; + private NetSideband sideband; + private Double delay; + + public XPDelay() {} + + public XPDelay(ReceiverBand receiverBand, BasebandName baseband, NetSideband sideband, + double delay, HwConfiguration config) + { + this.receiverBand = receiverBand; + this.baseband = baseband; + this.sideband = sideband; + this.delay = delay; + this.configuration = config; + } + + @Override + public int hashCode() + { + final int prime = 31; + int result = 1; + + result = prime * result + ((getReceiverBand() == null) ? 0 : getReceiverBand().hashCode()); + result = prime * result + ((getBaseband() == null) ? 0 : getBaseband().hashCode()); + result = prime * result + ((getSideband() == null) ? 0 : getSideband().hashCode()); + return result; + } + + @Override + public boolean equals(Object obj) + { + if (this == obj) + { + return true; + } + if (obj == null) + { + return false; + } + if (getClass() != obj.getClass()) + { + return false; + } + XPDelay other = (XPDelay) obj; + if (getBaseband() == null) + { + if (other.getBaseband() != null) + { + return false; + } + } + else if (!getBaseband().equals(other.getBaseband())) + { + return false; + } + if (getReceiverBand() == null) + { + if (other.getReceiverBand() != null) + { + return false; + } + } + else if (!getReceiverBand().equals(other.getReceiverBand())) + { + return false; + } + if (getSideband() == null) + { + if (other.getSideband() != null) + { + return false; + } + } + else if (!getSideband().equals(other.getSideband())) + { + return false; + } + return true; + } + + public HwConfiguration getConfiguration() { + return configuration; + } + + public void setConfiguration(HwConfiguration configuration) { + this.configuration = configuration; + } + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public BasebandName getBaseband() { + return baseband; + } + + public void setBaseband(BasebandName baseband) { + this.baseband = baseband; + } + + public NetSideband getSideband() { + return sideband; + } + + public void setSideband(NetSideband sideband) { + this.sideband = sideband; + } + + public Double getDelay() { + return delay; + } + + public void setDelay(Double delay) { + this.delay = delay; + } + + public ReceiverBand getReceiverBand() { + return receiverBand; + } + + public void setReceiverBand(ReceiverBand receiverBand) { + this.receiverBand = receiverBand; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaBackLog.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaBackLog.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..b6f164a585ce91d3b1be4e71b8ee591c7aaf11a3 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaBackLog.hbm.xml @@ -0,0 +1,38 @@ + + + + + alma.acs.tmcdb.AntennaTypeEnum + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaBackLog.hbm.xml.orig b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaBackLog.hbm.xml.orig new file mode 100755 index 0000000000000000000000000000000000000000..2ada956a0764a2bebac9f81f9310b8841f1682a9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaBackLog.hbm.xml.orig @@ -0,0 +1,38 @@ + + + + + alma.acs.tmcdb.AntennaType + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaToPadBackLog.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaToPadBackLog.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..4796ae851328271f8a48a3c7d1e21fcadbdabad9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/AntennaToPadBackLog.hbm.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/BackLogComparator.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/BackLogComparator.java new file mode 100755 index 0000000000000000000000000000000000000000..1d997f7c6f59d4e61ae93ea21e55c1b59d638705 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/BackLogComparator.java @@ -0,0 +1,58 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history; + +import java.security.InvalidParameterException; +import java.util.Comparator; + +import alma.acs.tmcdb.OperationEnum; + +public class BackLogComparator implements Comparator { + @Override + public int compare(Backloggable o1, Backloggable o2) { + long modTime1, modTime2; + if ((o1 instanceof Backloggable) && (o1 instanceof Backloggable)) { + modTime1 = ((Backloggable)o1).getModTime(); + modTime2 = ((Backloggable)o2).getModTime(); + } else { + throw new InvalidParameterException(); + } + int retVal = 0; + if (modTime1 > modTime2) { + retVal = -1; + } else if (modTime1 < modTime2) { + retVal = 1; + } else if (modTime1 == modTime2) { + // When a record is inserted, Hibernate will first generate an insert closely + // followed by an insert. They will have the same timestamp. In this case, + // reverting back should revert back the update first and the insert second. + if (o1.getOperation() == OperationEnum.U) { + retVal = -1; + } else if (o2.getOperation() == OperationEnum.U) { + retVal = 1; + } + } + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/FocusModelBackLog.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/FocusModelBackLog.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..2df21cb2423e541de7cff89963a92789bf79c79c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/FocusModelBackLog.hbm.xml @@ -0,0 +1,37 @@ + + + + + alma.hla.datamodel.enumeration.JReceiverBand + alma.ReceiverBandMod.ReceiverBand + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/FocusModelHistorian.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/FocusModelHistorian.java new file mode 100755 index 0000000000000000000000000000000000000000..9f7f1ee89c4f236f1c9aff1875ffcf8af92331a0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/FocusModelHistorian.java @@ -0,0 +1,190 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.Set; + +import org.hibernate.Hibernate; +import org.hibernate.Query; +import org.hibernate.Session; + +import alma.acs.tmcdb.BL_FocusModelCoeff; +import alma.acs.tmcdb.FocusModel; +import alma.acs.tmcdb.FocusModelCoeff; +import alma.acs.tmcdb.OperationEnum; +import alma.tmcdb.utils.DomainEntityFactory; + +public class FocusModelHistorian extends Historian { + + public FocusModelHistorian(Session session) { + super(session); + } + + public boolean prepareSave(Identifiable ent, String who, String description) { + session.createSQLQuery("update focusmodel set increaseversion = '1' where focusmodelid = " + ent.getId()).executeUpdate(); + session.createSQLQuery("update focusmodel set who = '" + who + "' where focusmodelid = " + ent.getId()).executeUpdate(); + String nonNullDescription = (description == null || description.trim().equals("") ) ? "null" : description; + session.createSQLQuery("update focusmodel set changedesc = :changeDescription where focusmodelid = " + ent.getId()). + setString("changeDescription", nonNullDescription).executeUpdate(); + return true; + } + + public void endSave(Identifiable ent) { + session.createSQLQuery("update focusmodel set increaseversion = '0' where focusmodelid = " + ent.getId()).executeUpdate(); + } + + @Override + public List getBackLogRecordsAsOf(long modtime, Long fmId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_FocusModelCoeff c where c.modTime > :modtime and focusModelId = :fmId"); + query.setParameter("modtime", modtime, Hibernate.LONG); + query.setParameter("fmId", fmId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_FocusModelCoeff r : records) + list.add(r); + + query = session.createQuery("from BL_FocusModelCoeffOffsetB o where o.modTime > :modtime and focusModelId = :fmId"); + query.setParameter("modtime", modtime, Hibernate.LONG); + query.setParameter("fmId", fmId, Hibernate.LONG); + + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + public List getBackLogRecords(long version, Long fmId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_FocusModelCoeff c where c.version > :version and focusModelId = :fmId"); + query.setParameter("version", version, Hibernate.LONG); + query.setParameter("fmId", fmId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_FocusModelCoeff r : records) + list.add(r); + + query = session.createQuery("from BL_FocusModelCoeffOffset o where o.version > :version and focusModelId = :fmId"); + query.setParameter("version", version, Hibernate.LONG); + query.setParameter("fmId", fmId, Hibernate.LONG); + + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + protected void reverse(Backloggable change, FocusModel focusModel) { + if (change instanceof BL_FocusModelCoeff) { + reverse((BL_FocusModelCoeff)change, focusModel); + } + + } + + @Override + protected FocusModel clone(FocusModel fm) { + FocusModel retVal = new FocusModel(); + Map coeffMap = new HashMap(); + for (FocusModelCoeff fmc : fm.getFocusModelCoeffs()) { + coeffMap.put(fmc.getCoeffName(),fmc); + } + for (String coeffName : coeffMap.keySet()) { + FocusModelCoeff coeff = coeffMap.get(coeffName); + FocusModelCoeff newCoeff = DomainEntityFactory.createFocusModelCoeff(coeffName, coeff.getCoeffValue()); + } + return retVal; + } + + private void reverse(BL_FocusModelCoeff change, FocusModel fm) { + OperationEnum op = change.getOperation(); + Map coeffMap = new HashMap(); + for (FocusModelCoeff fmc : fm.getFocusModelCoeffs()) { + coeffMap.put(fmc.getCoeffName(),fmc); + } + if (op == OperationEnum.D) { + FocusModelCoeff coeff = DomainEntityFactory.createFocusModelCoeff(change.getCoeffName(), change.getCoeffValue()); + Set coeffs = fm.getFocusModelCoeffs(); + for (FocusModelCoeff oldCoeff : coeffs) { + if (oldCoeff.getCoeffName().equals(change.getCoeffName())) { + coeffs.remove(oldCoeff); + break; + } + } + coeffs.add(coeff); + } else if (op == OperationEnum.I) { + coeffMap.remove(change.getCoeffName()); + } else if (op == OperationEnum.U) { + FocusModelCoeff coeff = coeffMap.get(change.getCoeffName()); + if (coeff != null) { + coeff.setCoeffValue(new Double(change.getCoeffValue())); + } + } + } + + + @Override + public Long getCurrentVersion(Long entityId) { + Query query = session.createQuery("select max(version) " + + "from BL_FocusModelCoeff c where focusModelId = :fmId"); + query.setParameter("fmId", entityId, Hibernate.LONG); + Long v1 = (Long) query.uniqueResult(); + if (v1 == null) { + v1 = new Long(0); + } + query = session.createQuery("select max(version) " + + "from BL_FocusModelCoeffOffset c where focusModelId = :fmId"); + query.setParameter("fmId", entityId, Hibernate.LONG); + Long v2 = (Long) query.uniqueResult(); + if (v2 == null) { + v2 = new Long(0); + } + return Math.max(v1, v2); + } + + @Override + public Long getVersionAsOf(long modtime, Long entityId) { + Query query = session.createQuery("select max(version) " + + "from BL_FocusModelCoeff c " + + "where c.modTime < :modtime and focusModelId = :fmId"); + query.setParameter("fmId", entityId, Hibernate.LONG); + query.setParameter("modtime", modtime, Hibernate.LONG); + Long v1 = (Long) query.uniqueResult(); + if (v1 == null) { + v1 = new Long(0); + } + query = session.createQuery("select max(version) " + + "from BL_FocusModelCoeffOffset c " + + "where c.modTime < :modtime and focusModelId = :fmId"); + query.setParameter("fmId", entityId, Hibernate.LONG); + query.setParameter("modtime", modtime, Hibernate.LONG); + Long v2 = (Long) query.uniqueResult(); + if (v2 == null) { + v2 = new Long(0); + } + return Math.max(v1, v2); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Historian.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Historian.java new file mode 100755 index 0000000000000000000000000000000000000000..272e12e6ec056c28a200694a751f8f68ac99044b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Historian.java @@ -0,0 +1,85 @@ +package alma.tmcdb.history; + +import java.security.InvalidParameterException; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +import org.hibernate.Session; + +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Telescope; + +public abstract class Historian { + + protected Session session; + + public Historian(Session session) { + this.session = session; + } + + public Entity recreate(long version, Entity currentAntenna) { + if (version > getCurrentVersion(currentAntenna.getId())) { + throw new InvalidParameterException("requested version cannot be greater than current version"); + } + Entity retVal = clone(currentAntenna); + List records = getBackLogRecords(version, currentAntenna.getId()); + for (Object record : records) { + reverse((BackLogType)record, retVal); + } + return retVal; + } + + public Entity recreateAsOf(long modtime, Entity currentAntenna) { + Entity retVal = clone(currentAntenna); + List records = getBackLogRecordsAsOf(modtime, currentAntenna.getId()); + for (Object record : records) { + reverse((BackLogType)record, retVal); + } + return retVal; + } + + public List getHistory(Entity antenna) + { + List retVal = new ArrayList(); + List records = getBackLogRecords(-1, antenna.getId()); // get all records + Integer version = Integer.MAX_VALUE; + Integer recVersion = new Integer(0); + Date recModTime = null; + String who = null; + String description = null; + for (Backloggable record : records) { + Backloggable bl = (Backloggable)record; + recVersion = bl.getVersion(); + recModTime = new Date(bl.getModTime() * 1000); + who = bl.getWho(); + description = bl.getChangeDesc(); + if (recVersion < version) { + version = recVersion; + HistoryRecord hr = new HistoryRecord(); + hr.setVersion(version); + hr.setTimestamp(recModTime); + hr.setModifier(who); + hr.setDescription(description); + retVal.add(hr); + } + } + // Add the original version, for which there is no Backloggable record. + HistoryRecord hr = new HistoryRecord(); + hr.setVersion(new Integer(0)); + hr.setTimestamp(null); + hr.setModifier("unknown"); + hr.setDescription("Original Version"); + retVal.add(hr); + return retVal; + } + + protected abstract List getBackLogRecords(long version, Long entityId); + protected abstract List getBackLogRecordsAsOf(long modtime, Long entityId); + protected abstract void reverse(BackLogType change, Entity antenna); + protected abstract Entity clone(Entity entity); + + public abstract Long getCurrentVersion(Long entityId); + public abstract Long getVersionAsOf(long modtime, Long entityId); + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/HistoryRecord.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/HistoryRecord.java new file mode 100755 index 0000000000000000000000000000000000000000..4f41a99b6a529133c48822c58c76a1d70ffed02b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/HistoryRecord.java @@ -0,0 +1,72 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history; + +import java.util.Date; + +public class HistoryRecord { + + Integer version; + Date timestamp; + String modifier; + String description; + + public Integer getVersion() { + return version; + } + + public void setVersion(Integer version2) { + this.version = version2; + } + + public Date getTimestamp() { + return timestamp; + } + + public void setTimestamp(Date timestamp) { + this.timestamp = timestamp; + } + + public String getModifier() { + return modifier; + } + + public void setModifier(String modifier) { + this.modifier = modifier; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + @Override + public String toString() { + String ts = timestamp == null ? "unknown" : timestamp.toString(); + return String.format("%d / %s / %s / %s", version, ts, modifier, description); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Identifiable.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Identifiable.java new file mode 100755 index 0000000000000000000000000000000000000000..90feb01f63e553f9f5df85d1621984010fdef328 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Identifiable.java @@ -0,0 +1,7 @@ +package alma.tmcdb.history; + +public interface Identifiable { + Long getId(); +// Version getVersion(); +// void setVersion(Version version); +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PadBackLog.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PadBackLog.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..17f06b84159a758975dc6037da22ef8d7eacdfe3 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PadBackLog.hbm.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PadHistorian.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PadHistorian.java new file mode 100755 index 0000000000000000000000000000000000000000..f3d1600968d9538a6e772c62804b31298757e227 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PadHistorian.java @@ -0,0 +1,106 @@ +package alma.tmcdb.history; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.hibernate.Hibernate; +import org.hibernate.Query; +import org.hibernate.Session; + +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.acs.tmcdb.BL_Pad; +import alma.acs.tmcdb.OperationEnum; +import alma.acs.tmcdb.Pad; + +public class PadHistorian extends Historian{ + + public PadHistorian(Session session) { + super(session); + } + + public boolean prepareSave(Identifiable ent, String who, String description) { + session.createSQLQuery("update pad set increaseversion = '1' where baseelementid = " + ent.getId()).executeUpdate(); + session.createSQLQuery("update pad set who = '" + who + "' where baseelementid = " + ent.getId()).executeUpdate(); + String nonNullDescription = (description == null || description.trim().equals("") ) ? "null" : description; + session.createSQLQuery("update pad set changedesc = :changeDescription where baseelementid = " + ent.getId()). + setString("changeDescription", nonNullDescription).executeUpdate(); + return true; + } + + public void endSave(Identifiable ent) { + session.createSQLQuery("update pad set increaseversion = '0' where baseelementid = " + ent.getId()).executeUpdate(); + } + + @Override + protected List getBackLogRecordsAsOf(long modtime, Long entityId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_Pad c where c.modTime > :modtime and baseElementId = :baseElementId"); + query.setParameter("modtime", modtime, Hibernate.LONG); + query.setParameter("baseElementId", entityId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_Pad r : records) + list.add(r); + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + protected List getBackLogRecords(long version, Long entityId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_Pad c where c.version > :version and baseElementId = :baseElementId"); + query.setParameter("version", version, Hibernate.LONG); + query.setParameter("baseElementId", entityId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_Pad r : records) + list.add(r); + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + public Long getCurrentVersion(Long entityId) { + Query query = session.createQuery("select max(version) " + + "from BL_Pad c where baseElementId = :baseElementId"); + query.setParameter("baseElementId", entityId, Hibernate.LONG); + Long v = (Long) query.uniqueResult(); + if (v == null) { + v = new Long(0); + } + return v; + } + + @Override + public Long getVersionAsOf(long modtime, Long entityId) { + Query query = session.createQuery("select max(version) " + + "from BL_Pad c where c.modTime < :modtime and baseElementId = :baseElementId"); + query.setParameter("baseElementId", entityId, Hibernate.LONG); + query.setParameter("modtime", modtime, Hibernate.LONG); + Long v = (Long) query.uniqueResult(); + if (v == null) { + v = new Long(0); + } + return v; + } + + @Override + protected void reverse(BL_Pad change, Pad pad) { + OperationEnum op = change.getOperation(); + if (op == OperationEnum.U) { + pad.setCommissionDate(change.getCommissionDate()); + pad.setXPosition(change.getXPosition()); + pad.setYPosition(change.getYPosition()); + pad.setZPosition(change.getZPosition()); + } + } + + @Override + protected Pad clone(Pad entity) { + Pad retVal = DomainEntityFactory.createPad(entity.getBaseElementName(), new Coordinate(entity.getXPosition(), + entity.getYPosition(), entity.getZPosition()), entity.getCommissionDate()); + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PointingModelBackLog.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PointingModelBackLog.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..61f470aaa074ae298241e34cd493ff5ae5f296f7 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PointingModelBackLog.hbm.xml @@ -0,0 +1,37 @@ + + + + + alma.hla.datamodel.enumeration.JReceiverBand + alma.ReceiverBandMod.ReceiverBand + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PointingModelHistorian.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PointingModelHistorian.java new file mode 100755 index 0000000000000000000000000000000000000000..2767c64b9f7c7ef3746a9dc48c07b01af50dfe2a --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/PointingModelHistorian.java @@ -0,0 +1,176 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; +import java.util.Map; + +import org.hibernate.Hibernate; +import org.hibernate.Query; +import org.hibernate.Session; + +import alma.ReceiverBandMod.ReceiverBand; +import alma.acs.tmcdb.OperationEnum; +import alma.acs.tmcdb.BL_PointingModelCoeff; +import alma.acs.tmcdb.PointingModel; +import alma.acs.tmcdb.PointingModelCoeff; +import alma.tmcdb.utils.DomainEntityFactory; + +public class PointingModelHistorian extends Historian { + + public boolean prepareSave(Identifiable ent, String who, String description) { + session.createSQLQuery("update pointingmodel set increaseversion = '1' where pointingmodelid = " + ent.getId()).executeUpdate(); + session.createSQLQuery("update pointingmodel set who = '" + who + "' where pointingmodelid = " + ent.getId()).executeUpdate(); + String nonNullDescription = (description == null || description.trim().equals("") ) ? "null" : description; + session.createSQLQuery("update pointingmodel set changedesc = :changeDescription where pointingmodelid = " + ent.getId()). + setString("changeDescription", nonNullDescription).executeUpdate(); + return true; + } + + public void endSave(Identifiable ent) { + session.createSQLQuery("update pointingmodel set increaseversion = '0' where pointingmodelid = " + ent.getId()).executeUpdate(); + } + + public PointingModelHistorian(Session session) { + super(session); + } + + public List getBackLogRecordsAsOf(long modtime, Long pmId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_PointingModelCoeff c where c.modTime > :modtime and pointingModelId = :pmId"); + query.setParameter("modtime", modtime, Hibernate.LONG); + query.setParameter("pmId", pmId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_PointingModelCoeff r : records) + list.add(r); + + query = session.createQuery("from BL_PointingModelCoeffOffset o where o.modTime > :modtime and pointingModelId = :pmId"); + query.setParameter("modtime", modtime, Hibernate.LONG); + query.setParameter("pmId", pmId, Hibernate.LONG); + + Collections.sort(list, new BackLogComparator()); + return list; + } + + public List getBackLogRecords(long version, Long pmId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_PointingModelCoeff c where c.version > :version and pointingModelId = :pmId"); + query.setParameter("version", version, Hibernate.LONG); + query.setParameter("pmId", pmId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_PointingModelCoeff r : records) + list.add(r); + + query = session.createQuery("from BL_PointingModelCoeffOffset o where o.version > :version and pointingModelId = :pmId"); + query.setParameter("version", version, Hibernate.LONG); + query.setParameter("pmId", pmId, Hibernate.LONG); + + + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + public Long getCurrentVersion(Long pmId) { + Query query = session.createQuery("select max(version) " + + "from BL_PointingModelCoeff c where pointingModelId = :pmId"); + query.setParameter("pmId", pmId, Hibernate.LONG); + Long v1 = (Long) query.uniqueResult(); + if (v1 == null) { + v1 = new Long(0); + } + query = session.createQuery("select max(version) " + + "from BL_PointingModelCoeffOffset c where pointingModelId = :pmId"); + query.setParameter("pmId", pmId, Hibernate.LONG); + Long v2 = (Long) query.uniqueResult(); + if (v2 == null) { + v2 = new Long(0); + } + return Math.max(v1, v2); + } + + @Override + public Long getVersionAsOf(long modtime, Long pmId) { + Query query = session.createQuery("select max(version) " + + "from BL_PointingModelCoeff c " + + "where c.modTime < :modtime and pointingModelId = :pmId"); + query.setParameter("pmId", pmId, Hibernate.LONG); + query.setParameter("modtime", modtime, Hibernate.LONG); + Long v1 = (Long) query.uniqueResult(); + if (v1 == null) { + v1 = new Long(0); + } + query = session.createQuery("select max(version) " + + "from BL_PointingModelCoeffOffset c " + + "where c.modTime < :modtime and pointingModelId = :pmId"); + query.setParameter("pmId", pmId, Hibernate.LONG); + query.setParameter("modtime", modtime, Hibernate.LONG); + Long v2 = (Long) query.uniqueResult(); + if (v2 == null) { + v2 = new Long(0); + } + return Math.max(v1, v2); + } + + @Override + protected void reverse(Backloggable change, PointingModel antenna) { + if (change instanceof BL_PointingModelCoeff) { + reverse((BL_PointingModelCoeff)change, antenna); + } + + } + + @Override + protected PointingModel clone(PointingModel pm) { + PointingModel retVal = new PointingModel(); + for (PointingModelCoeff coeff : pm.getPointingModelCoeffs()) { + PointingModelCoeff newCoeff = DomainEntityFactory.createPointingModelCoeff(coeff.getCoeffName(), coeff.getCoeffValue()); + retVal.addPointingModelCoeffToPointingModelCoeffs(newCoeff); + + } + return retVal; + } + + private void reverse(BL_PointingModelCoeff change, PointingModel pm) { + OperationEnum op = change.getOperation(); + Map pmcs = alma.tmcdb.utils.TmcdbMapMaker.createPmCoeffMap(pm.getPointingModelCoeffs()); + if (op == OperationEnum.D) { + PointingModelCoeff coeff = DomainEntityFactory.createPointingModelCoeff(change.getCoeffName(), change.getCoeffValue()); + pm.addPointingModelCoeffToPointingModelCoeffs(coeff); + } else if (op == OperationEnum.I) { + pmcs.remove(change.getCoeffName()); + } else if (op == OperationEnum.U) { + PointingModelCoeff coeff = pmcs.get(change.getCoeffName()); + if (coeff != null) { + coeff.setCoeffValue(change.getCoeffValue()); + } + } + } + + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/TelescopeHistorian.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/TelescopeHistorian.java new file mode 100755 index 0000000000000000000000000000000000000000..1a7e710de43d746633601b83fce57de096d5c22e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/TelescopeHistorian.java @@ -0,0 +1,111 @@ +package alma.tmcdb.history; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.hibernate.Hibernate; +import org.hibernate.Query; +import org.hibernate.Session; + +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeTypeEnum; +import alma.acs.tmcdb.BL_Telescope; +import alma.acs.tmcdb.OperationEnum; + +public class TelescopeHistorian extends Historian{ + + public TelescopeHistorian(Session session) { + super(session); + } + + public boolean prepareSave(Identifiable ent, String who, String description) { + session.createSQLQuery("update antenna set increaseversion = '1' where baseelementid = " + ent.getId()).executeUpdate(); + session.createSQLQuery("update antenna set who = '" + who + "' where baseelementid = " + ent.getId()).executeUpdate(); + String nonNullDescription = (description == null || description.trim().equals("") ) ? "null" : description; + session.createSQLQuery("update antenna set changedesc = :changeDescription where baseelementid = " + ent.getId()). + setString("changeDescription", nonNullDescription).executeUpdate(); + return true; + } + + public void endSave(Identifiable ent) { + session.createSQLQuery("update antenna set increaseversion = '0' where baseelementid = " + ent.getId()).executeUpdate(); + } + + @Override + protected List getBackLogRecordsAsOf(long modtime, Long entityId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_Telescope c where c.modTime > :modtime and baseElementId = :baseElementId"); + query.setParameter("modtime", modtime, Hibernate.LONG); + query.setParameter("baseElementId", entityId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_Telescope r : records) + list.add(r); + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + protected List getBackLogRecords(long version, Long entityId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_Telescope c where c.version > :version and baseElementId = :baseElementId"); + query.setParameter("version", version, Hibernate.LONG); + query.setParameter("baseElementId", entityId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_Telescope r : records) + list.add(r); + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + public Long getCurrentVersion(Long entityId) { + Query query = session.createQuery("select max(version) " + + "from BL_Telescope c where baseElementId = :baseElementId"); + query.setParameter("baseElementId", entityId, Hibernate.LONG); + Long v = (Long) query.uniqueResult(); + if (v == null) { + v = new Long(0); + } + return v; + } + + @Override + public Long getVersionAsOf(long modtime, Long entityId) { + Query query = session.createQuery("select max(version) " + + "from BL_Telescope c where c.modTime < :modtime and baseElementId = :baseElementId"); + query.setParameter("baseElementId", entityId, Hibernate.LONG); + query.setParameter("modtime", modtime, Hibernate.LONG); + Long v = (Long) query.uniqueResult(); + if (v == null) { + v = new Long(0); + } + return v; + } + + @Override + protected void reverse(BL_Telescope change, Telescope antenna) { + OperationEnum op = change.getOperation(); + if (op == OperationEnum.U) { + antenna.setCommissionDate(change.getCommissionDate()); + antenna.setDishDiameter(change.getDishDiameter()); + antenna.setTelescopeType(TelescopeTypeEnum.valueOf(change.getTelescopeType().toString())); + antenna.setLatitude(change.getXPosition()); + antenna.setLongitude(change.getYPosition()); + antenna.setAltitude(change.getZPosition()); + + } + } + + @Override + protected Telescope clone(Telescope entity) { + Coordinate pos = new Coordinate(entity.getLatitude(), + entity.getLongitude(), entity.getAltitude()); + Telescope retVal = DomainEntityFactory.createTelescope(entity.getBaseElementName(), entity.getTelescopeType(), pos, entity.getDishDiameter(), entity.getCommissionDate()); + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/TelescopeToPadHistorian.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/TelescopeToPadHistorian.java new file mode 100755 index 0000000000000000000000000000000000000000..ab01a766940aa6970075be58e2b3a1bc68ad44d7 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/TelescopeToPadHistorian.java @@ -0,0 +1,106 @@ +package alma.tmcdb.history; + +import java.util.ArrayList; +import java.util.Collections; +import java.util.List; + +import org.hibernate.Hibernate; +import org.hibernate.Query; +import org.hibernate.Session; + +import alma.acs.tmcdb.TelescopeToPadTest; +import alma.acs.tmcdb.BL_TelescopeToPad; +import alma.acs.tmcdb.OperationEnum; +import alma.acs.tmcdb.TelescopeToPad; + +public class TelescopeToPadHistorian extends Historian{ + + public TelescopeToPadHistorian(Session session) { + super(session); + } + + public boolean prepareSave(Identifiable ent, String who, String description) { + session.createSQLQuery("update antennatopad set increaseversion = '1' where antennatopadid = " + ent.getId()).executeUpdate(); + session.createSQLQuery("update antennatopad set who = '" + who + "' where antennatopadid = " + ent.getId()).executeUpdate(); + String nonNullDescription = (description == null || description.trim().equals("") ) ? "null" : description; + session.createSQLQuery("update antennatopad set changedesc = :changeDescription where antennatopadid = " + ent.getId()). + setString("changeDescription", nonNullDescription).executeUpdate(); + return true; + } + + public void endSave(Identifiable ent) { + session.createSQLQuery("update antennatopad set increaseversion = '0' where antennatopadid = " + ent.getId()).executeUpdate(); + } + + @Override + protected List getBackLogRecordsAsOf(long modtime, Long entityId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_TelescopeToPad c where c.modTime > :modtime and antennaToPadId = :antennaToPadId"); + query.setParameter("modtime", modtime, Hibernate.LONG); + query.setParameter("antennaToPadId", entityId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_TelescopeToPad r : records) + list.add(r); + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + protected List getBackLogRecords(long version, Long entityId) { + List list = new ArrayList(); + Query query = + session.createQuery("from BL_TelescopeToPad c where c.version > :version and antennaToPadId = :antennaToPadId"); + query.setParameter("version", version, Hibernate.LONG); + query.setParameter("antennaToPadId", entityId, Hibernate.LONG); + List records = (List) query.list(); + for (BL_TelescopeToPad r : records) + list.add(r); + Collections.sort(list, new BackLogComparator()); + return list; + } + + @Override + public Long getCurrentVersion(Long entityId) { + Query query = session.createQuery("select max(version) " + + "from BL_TelescopeToPad c where antennaToPadId = :entityId"); + query.setParameter("entityId", entityId, Hibernate.LONG); + Long v = (Long) query.uniqueResult(); + if (v == null) { + v = new Long(0); + } + return v; + } + + @Override + public Long getVersionAsOf(long modtime, Long entityId) { + Query query = session.createQuery("select max(version) " + + "from BL_TelescopeToPad c where c.modTime < :modtime and antennaToPadId = :entityId"); + query.setParameter("entityId", entityId, Hibernate.LONG); + query.setParameter("modtime", modtime, Hibernate.LONG); + Long v = (Long) query.uniqueResult(); + if (v == null) { + v = new Long(0); + } + return v; + } + + @Override + protected void reverse(BL_TelescopeToPad change, TelescopeToPad antennatopad) { + OperationEnum op = change.getOperation(); +// if (op == OperationEnum.U) { +// antennatopad.setMountMetrologyAN0Coeff(change.getMountMetrologyAN0Coeff()); +// antennatopad.setMountMetrologyAW0Coeff(change.getMountMetrologyAW0Coeff()); +// } + } + + @Override + protected TelescopeToPad clone(TelescopeToPad entity) { + TelescopeToPad retVal = new TelescopeToPad(); + retVal.setTelescope(entity.getTelescope()); + retVal.setPad(entity.getPad()); +// retVal.setMountMetrologyAN0Coeff(entity.getMountMetrologyAN0Coeff()); +// retVal.setMountMetrologyAW0Coeff(entity.getMountMetrologyAW0Coeff()); + return retVal; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Version.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Version.java new file mode 100755 index 0000000000000000000000000000000000000000..1df42b4cd8d672365611320034fe5e31a1176ebc --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/Version.java @@ -0,0 +1,107 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history; + +import java.io.Serializable; + +/** + * This persistent class maintains several fields necessary to control versions + * on tables under version control. + */ +public class Version implements Serializable { + + private static final long serialVersionUID = 2490989175075850072L; + + /** + * Whether to increase the version number in the next transactions committed + * in a table under version control. + * Setting this field to True will make the database triggers to increase the + * version number in the BackLog tables. + */ + private Boolean increaseVersion; + + /** + * The current version for a table under version control. + * This field will be managed by the database triggers. + */ + private Integer currentVersion; + + /** + * The name of the person who is about to commit modifications in this table. + * This field should be set before committing changes in the corresponding + * entity. + */ + private String modifier; + + /** + * A description for a set of modifications committed in an entity. + * This field should be set before committing changes in the corresponding + * entity. + */ + private String description; + + private Boolean lock; + + public Version() { } + + public Boolean getIncreaseVersion() { + return increaseVersion; + } + + public void setIncreaseVersion(Boolean increaseVersion) { + this.increaseVersion = increaseVersion; + } + + public Integer getCurrentVersion() { + return currentVersion; + } + + public void setCurrentVersion(Integer currentVersion) { + this.currentVersion = currentVersion; + } + + public String getModifier() { + return modifier; + } + + public void setModifier(String modifier) { + this.modifier = modifier; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public Boolean getLock() { + return lock; + } + + public void setLock(Boolean lock) { + this.lock = lock; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/VersionInfo.hbm.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/VersionInfo.hbm.xml new file mode 100755 index 0000000000000000000000000000000000000000..a1b1cba8fb42fc768a7e8c875500af88a8364941 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/VersionInfo.hbm.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/VersionInfo.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/VersionInfo.java new file mode 100755 index 0000000000000000000000000000000000000000..334f39919bd7daf3171192cc6b216796f7191961 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/VersionInfo.java @@ -0,0 +1,148 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history; + +import java.io.Serializable; + +/** + * This persistent class maintains several fields necessary to control versions + * on tables under version control. + */ +public class VersionInfo implements Serializable { + + private static final long serialVersionUID = 2490989175075850072L; + + /** + * The name of the entity type which is under version control. + * This field must be the name of a table in the TMCDB database as it will + * be used by the database history triggers to manage version numbers. + */ + private String name; + + /** + * Configuration identifier. + */ + private Integer configurationId; + + /** + * Entity identifier. + */ + private Long entityId; + + /** + * Whether to increase the version number in the next transactions committed + * in a table under version control. + * Setting this field to True will make the database triggers to increase the + * version number in the BackLog tables. + */ + private Boolean increaseVersion; + + /** + * The current version for a table under version control. + * This field will be managed by the database triggers. + */ + private Integer currentVersion; + + /** + * The name of the person who is about to commit modifications in this table. + * This field should be set before committing changes in the corresponding + * entity. + */ + private String modifier; + + /** + * A description for a set of modifications committed in an entity. + * This field should be set before committing changes in the corresponding + * entity. + */ + private String description; + + private Boolean lock; + + public VersionInfo() { } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Boolean getIncreaseVersion() { + return increaseVersion; + } + + public void setIncreaseVersion(Boolean increaseVersion) { + this.increaseVersion = increaseVersion; + } + + public Integer getCurrentVersion() { + return currentVersion; + } + + public void setCurrentVersion(Integer currentVersion) { + this.currentVersion = currentVersion; + } + + public String getModifier() { + return modifier; + } + + public void setModifier(String modifier) { + this.modifier = modifier; + } + + public String getDescription() { + return description; + } + + public void setDescription(String description) { + this.description = description; + } + + public Integer getConfigurationId() { + return configurationId; + } + + public void setConfigurationId(Integer configurationId) { + this.configurationId = configurationId; + } + + public Long getEntityId() { + return entityId; + } + + public void setEntityId(Long entityId) { + this.entityId = entityId; + } + + public Boolean getLock() { + return lock; + } + + public void setLock(Boolean lock) { + this.lock = lock; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/PointingModelCoeffVersionKeeper.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/PointingModelCoeffVersionKeeper.java new file mode 100755 index 0000000000000000000000000000000000000000..09c73661ffe090d5dcadae5fed4e5010d83029c6 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/PointingModelCoeffVersionKeeper.java @@ -0,0 +1,247 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history.interceptor; + +import java.sql.Connection; +import java.util.HashMap; +import java.util.Map; + +import org.hibernate.Query; +import org.hibernate.Session; + +import alma.ReceiverBandMod.ReceiverBand; +import alma.acs.tmcdb.BL_PointingModelCoeff; +import alma.acs.tmcdb.BL_PointingModelCoeffOffset; +import alma.acs.tmcdb.PointingModelCoeff; +import alma.acs.tmcdb.OperationEnum; +import alma.acs.tmcdb.ReceiverBandEnum; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor.CollectionUpdate; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor.Delete; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor.Insert; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor.Update; +import alma.tmcdb.utils.HibernateUtil; + +public class PointingModelCoeffVersionKeeper implements VersionKeeper { + + public void onInsert(Connection connection, Insert insert, VersionKeeperInterceptor interceptor) { + PointingModelCoeff coeff = (PointingModelCoeff) insert.getEntity(); + Session tempSession = + HibernateUtil.getSessionFactory().openSession(connection); + try { + Integer version = getLatestVersion(tempSession); + BL_PointingModelCoeff blPMCoeff = new BL_PointingModelCoeff(); + blPMCoeff.setCoeffName(coeff.getCoeffName()); + blPMCoeff.setModTime(insert.getTimestamp()); + blPMCoeff.setPointingModelId(coeff.getPointingModel().getPointingModelId()); + blPMCoeff.setVersion(version); + blPMCoeff.setWho(VersionKeeperInterceptor.getModifier()); + blPMCoeff.setCoeffValue(coeff.getCoeffValue()); + blPMCoeff.setOperation(OperationEnum.I); + blPMCoeff.setChangeDesc(VersionKeeperInterceptor.getChangeDesc()); + tempSession.save(blPMCoeff); + for (ReceiverBandEnum band : coeff.getPointingModelCoeffOffsets().keySet()) { + Double offset = coeff.getPointingModelCoeffOffsets().get(band); + BL_PointingModelCoeffOffset blPMCoeffOff = new BL_PointingModelCoeffOffset(); + blPMCoeffOff.setCoeffName(coeff.getCoeffName()); + blPMCoeffOff.setModTime(insert.getTimestamp()); + blPMCoeffOff.setPointingModelId(coeff.getPointingModel().getPointingModelId()); + blPMCoeffOff.setReceiverBand(band); + blPMCoeffOff.setVersion(version); + blPMCoeffOff.setOperation(OperationEnum.I); + blPMCoeffOff.setWho(VersionKeeperInterceptor.getModifier()); + blPMCoeffOff.setChangeDesc(VersionKeeperInterceptor.getChangeDesc()); + blPMCoeffOff.setOffset(offset); + tempSession.save(blPMCoeffOff); + } + tempSession.flush(); + } finally { + tempSession.close(); + } + } + + public void onDelete(Connection connection, Delete delete, + VersionKeeperInterceptor interceptor) { + PointingModelCoeff coeff = (PointingModelCoeff) delete.getEntity(); + Session tempSession = + HibernateUtil.getSessionFactory().openSession(connection); + try { + Integer pointingModelId = coeff.getPointingModel().getPointingModelId(); + Integer version = getLatestVersion(tempSession); + BL_PointingModelCoeff blPMCoeff = new BL_PointingModelCoeff(); + blPMCoeff.setCoeffName(coeff.getCoeffName()); + blPMCoeff.setModTime(delete.getTimestamp()); + blPMCoeff.setPointingModelId(pointingModelId); + blPMCoeff.setVersion(version); + blPMCoeff.setWho(VersionKeeperInterceptor.getModifier()); + blPMCoeff.setCoeffValue(coeff.getCoeffValue()); + blPMCoeff.setOperation(OperationEnum.D); + blPMCoeff.setChangeDesc(VersionKeeperInterceptor.getChangeDesc()); + tempSession.save(blPMCoeff); + for (ReceiverBandEnum band : coeff.getPointingModelCoeffOffsets().keySet()) { + Double offset = coeff.getPointingModelCoeffOffsets().get(band); + BL_PointingModelCoeffOffset blPMCoeffOff = new BL_PointingModelCoeffOffset(); + blPMCoeffOff.setCoeffName(coeff.getCoeffName()); + blPMCoeffOff.setModTime(delete.getTimestamp()); + blPMCoeffOff.setPointingModelId(pointingModelId); + blPMCoeffOff.setReceiverBand(band); + blPMCoeffOff.setVersion(version); + blPMCoeffOff.setOperation(OperationEnum.D); + blPMCoeffOff.setWho(VersionKeeperInterceptor.getModifier()); + blPMCoeffOff.setChangeDesc(VersionKeeperInterceptor.getChangeDesc()); + blPMCoeffOff.setOffset(offset); + tempSession.save(blPMCoeffOff); + } + tempSession.flush(); + } finally { + tempSession.close(); + } + } + + @Override + public void onUpdate(Connection connection, Update update, + VersionKeeperInterceptor interceptor) { + Map previousState = new HashMap(); + for (int i = 0; i < update.getPropertyNames().length; i++) { + previousState.put(update.getPropertyNames()[i], update.getPreviousState()[i]); + } + Session tempSession = + HibernateUtil.getSessionFactory().openSession(connection); + try { + PointingModelCoeff coeff = + (PointingModelCoeff)tempSession.get(PointingModelCoeff.class, update.getId()); + Integer pointingModelId = coeff.getPointingModel().getPointingModelId(); + Integer version = getLatestVersion(tempSession); + BL_PointingModelCoeff blPMCoeff = new BL_PointingModelCoeff(); + blPMCoeff.setCoeffName((String)previousState.get("name")); + blPMCoeff.setModTime(update.getTimestamp()); + blPMCoeff.setPointingModelId(pointingModelId); + blPMCoeff.setVersion(version); + blPMCoeff.setWho(VersionKeeperInterceptor.getModifier()); + blPMCoeff.setCoeffValue((Double) previousState.get("value")); + blPMCoeff.setOperation(OperationEnum.U); + blPMCoeff.setChangeDesc(VersionKeeperInterceptor.getChangeDesc()); + tempSession.save(blPMCoeff); + tempSession.flush(); + } finally { + tempSession.close(); + } + } + + public void onCollectionChange(Connection connection, CollectionUpdate update, + VersionKeeperInterceptor interceptor) { + if (update.getPropertyName().equals("alma.tmcdb.domain.PointingModelCoeff.offsets")) { + PointingModelCoeff coeff = (PointingModelCoeff)update.getOwner(); + // find all objects that were added or updated + for (Object newValue : update.getNewValues().keySet()) { + if (!update.getPreviousValues().keySet().contains(newValue)) { + // A newValue was added + Double value = (Double)update.getNewValues().get(newValue); + Session tempSession = + HibernateUtil.getSessionFactory().openSession(connection); + try { + Integer pointingModelId = coeff.getPointingModel().getPointingModelId(); + BL_PointingModelCoeffOffset blPMCoeffOff = new BL_PointingModelCoeffOffset(); + blPMCoeffOff.setCoeffName(coeff.getCoeffName()); + blPMCoeffOff.setModTime(update.getTimestamp()); + blPMCoeffOff.setPointingModelId(pointingModelId); + blPMCoeffOff.setReceiverBand((ReceiverBandEnum)newValue); + blPMCoeffOff.setVersion(getLatestVersion(tempSession)); + blPMCoeffOff.setOperation(OperationEnum.I); + blPMCoeffOff.setWho(VersionKeeperInterceptor.getModifier()); + blPMCoeffOff.setChangeDesc(VersionKeeperInterceptor.getChangeDesc()); + blPMCoeffOff.setOffset(value); + tempSession.save(blPMCoeffOff); + tempSession.flush(); + } finally { + tempSession.close(); + } + } else { + // Value with key newValue was updated + Double value = (Double)update.getPreviousValues().get(newValue); + Session tempSession = + HibernateUtil.getSessionFactory().openSession(connection); + try { + Integer pointingModelId = coeff.getPointingModel().getPointingModelId(); + BL_PointingModelCoeffOffset blPMCoeffOff = new BL_PointingModelCoeffOffset(); + blPMCoeffOff.setCoeffName(coeff.getCoeffName()); + blPMCoeffOff.setModTime(update.getTimestamp()); + blPMCoeffOff.setPointingModelId(pointingModelId); + blPMCoeffOff.setReceiverBand((ReceiverBandEnum)newValue); + blPMCoeffOff.setVersion(getLatestVersion(tempSession)); + blPMCoeffOff.setOperation(OperationEnum.U); + blPMCoeffOff.setWho(VersionKeeperInterceptor.getModifier()); + blPMCoeffOff.setChangeDesc(VersionKeeperInterceptor.getChangeDesc()); + blPMCoeffOff.setOffset(value); + tempSession.save(blPMCoeffOff); + tempSession.flush(); + } finally { + tempSession.close(); + } + } + } + // find all objects that were deleted + for (Object oldValue : update.getPreviousValues().keySet()) { + if (!update.getNewValues().keySet().contains(oldValue)) { + Double value = (Double)update.getPreviousValues().get(oldValue); + Session tempSession = + HibernateUtil.getSessionFactory().openSession(connection); + try { + Integer pointingModelId = coeff.getPointingModel().getPointingModelId(); + BL_PointingModelCoeffOffset blPMCoeffOff = new BL_PointingModelCoeffOffset(); + blPMCoeffOff.setCoeffName(coeff.getCoeffName()); + blPMCoeffOff.setModTime(update.getTimestamp()); + blPMCoeffOff.setPointingModelId(pointingModelId); + blPMCoeffOff.setReceiverBand((ReceiverBandEnum)oldValue); + blPMCoeffOff.setVersion(getLatestVersion(tempSession)); + blPMCoeffOff.setOperation(OperationEnum.D); + blPMCoeffOff.setWho(VersionKeeperInterceptor.getModifier()); + blPMCoeffOff.setChangeDesc(VersionKeeperInterceptor.getChangeDesc()); + blPMCoeffOff.setOffset(value); + tempSession.save(blPMCoeffOff); + tempSession.flush(); + } finally { + tempSession.close(); + } + + } + } + } + } + + private Integer getLatestVersion(Session session) { + Integer version; + Query query = + session.createQuery("select max(coeff.version) from BL_PointingModelCoeff coeff"); + Object tmp = query.uniqueResult(); + if (tmp != null) + version = (Integer)tmp; + else + version = 0; + if (VersionKeeperInterceptor.getInitiateNewVersion()) { + version++; + VersionKeeperInterceptor.setInitiateNewVersion(false); + } + return version; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/VersionKeeper.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/VersionKeeper.java new file mode 100755 index 0000000000000000000000000000000000000000..a64f69b4330985eaa50c11125ed74ae3ca4dc513 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/VersionKeeper.java @@ -0,0 +1,42 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history.interceptor; + +import java.sql.Connection; + +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor.CollectionUpdate; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor.Delete; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor.Insert; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor.Update; + + +public interface VersionKeeper { + + public void onInsert(Connection connection, Insert insert, VersionKeeperInterceptor interceptor); + public void onDelete(Connection connection, Delete delete, VersionKeeperInterceptor interceptor); + public void onUpdate(Connection connection, Update update, VersionKeeperInterceptor interceptor); + public void onCollectionChange(Connection connection, CollectionUpdate collUpdate, + VersionKeeperInterceptor interceptor); + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/VersionKeeperInterceptor.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/VersionKeeperInterceptor.java new file mode 100755 index 0000000000000000000000000000000000000000..2dcc89088bc27395cb2c085c8338f9a14e4e43c0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/VersionKeeperInterceptor.java @@ -0,0 +1,512 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: VersionKeeperInterceptor.java,v 1.1 2010/12/16 21:56:05 rhiriart Exp $" + */ +package alma.tmcdb.history.interceptor; + +import java.io.Serializable; +import java.util.Arrays; +import java.util.HashSet; +import java.util.Iterator; +import java.util.Map; +import java.util.Set; + +import org.hibernate.CallbackException; +import org.hibernate.EmptyInterceptor; +import org.hibernate.Session; +import org.hibernate.collection.PersistentMap; +import org.hibernate.collection.PersistentSet; +import org.hibernate.type.Type; + + +public class VersionKeeperInterceptor extends EmptyInterceptor { + + protected class Insert { + private long timestamp; + private Versionable entity; + public long getTimestamp() { + return timestamp; + } + public void setTimestamp(long timestamp) { + this.timestamp = timestamp; + } + public Versionable getEntity() { + return entity; + } + public void setEntity(Versionable entity) { + this.entity = entity; + } + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((entity == null) ? 0 : entity.hashCode()); + result = prime * result + (int) (timestamp ^ (timestamp >>> 32)); + return result; + } + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + Insert other = (Insert) obj; + if (entity == null) { + if (other.entity != null) + return false; + } else if (!entity.equals(other.entity)) + return false; + if (timestamp != other.timestamp) + return false; + return true; + } + } + + protected class Delete { + private long timestamp; + private Versionable entity; + public long getTimestamp() { + return timestamp; + } + public void setTimestamp(long timestamp) { + this.timestamp = timestamp; + } + public Versionable getEntity() { + return entity; + } + public void setEntity(Versionable entity) { + this.entity = entity; + } + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((entity == null) ? 0 : entity.hashCode()); + result = prime * result + (int) (timestamp ^ (timestamp >>> 32)); + return result; + } + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + Delete other = (Delete) obj; + if (entity == null) { + if (other.entity != null) + return false; + } else if (!entity.equals(other.entity)) + return false; + if (timestamp != other.timestamp) + return false; + return true; + } + } + + protected class Update { + private Serializable id; + private Versionable entity; + private Object[] currentState; + private Object[] previousState; + private String[] propertyNames; + private Type[] propertyTypes; + long timestamp; + + public Serializable getId() { + return id; + } + + public void setId(Serializable id) { + this.id = id; + } + + public Versionable getEntity() { + return entity; + } + + public void setEntity(Versionable entity) { + this.entity = entity; + } + + public Object[] getCurrentState() { + return currentState; + } + + public void setCurrentState(Object[] currentState) { + this.currentState = currentState; + } + + public Object[] getPreviousState() { + return previousState; + } + + public void setPreviousState(Object[] previousState) { + this.previousState = previousState; + } + + public String[] getPropertyNames() { + return propertyNames; + } + + public void setPropertyNames(String[] propertyNames) { + this.propertyNames = propertyNames; + } + + public Type[] getPropertyTypes() { + return propertyTypes; + } + + public void setPropertyTypes(Type[] propertyTypes) { + this.propertyTypes = propertyTypes; + } + + public long getTimestamp() { + return timestamp; + } + + public void setTimestamp(long timestamp) { + this.timestamp = timestamp; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((entity == null) ? 0 : entity.hashCode()); + result = prime * result + (int) (timestamp ^ (timestamp >>> 32)); + result = prime * result + ((id == null) ? 0 : id.hashCode()); + result = prime * result + Arrays.hashCode(currentState); + result = prime * result + Arrays.hashCode(previousState); + result = prime * result + Arrays.hashCode(propertyNames); + result = prime * result + Arrays.hashCode(propertyTypes); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + Update other = (Update) obj; + if (entity == null) { + if (other.entity != null) + return false; + } else if (!entity.equals(other.entity)) + return false; + if (timestamp != other.timestamp) + return false; + if (id == null) { + if (other.id != null) + return false; + } else if (!id.equals(other.id)) + return false; + if (!Arrays.equals(currentState, other.currentState)) + return false; + if (!Arrays.equals(previousState, other.previousState)) + return false; + if (!Arrays.equals(propertyNames, other.propertyNames)) + return false; + if (!Arrays.equals(propertyTypes, other.propertyTypes)) + return false; + return true; + } + } + + protected class CollectionUpdate { + Versionable owner; + String propertyName; + Map newValues; + Map previousValues; + long timestamp; + + public Versionable getOwner() { + return owner; + } + + public void setOwner(Versionable owner) { + this.owner = owner; + } + + public String getPropertyName() { + return propertyName; + } + + public void setPropertyName(String propertyName) { + this.propertyName = propertyName; + } + + public Map getNewValues() { + return newValues; + } + + public void setNewValues(Map newValues) { + this.newValues = newValues; + } + + public Map getPreviousValues() { + return previousValues; + } + + public void setPreviousValues(Map previousValues) { + this.previousValues = previousValues; + } + + public long getTimestamp() { + return timestamp; + } + + public void setTimestamp(long timestamp) { + this.timestamp = timestamp; + } + + @Override + public int hashCode() { + final int prime = 31; + int result = 1; + result = prime * result + + ((newValues == null) ? 0 : newValues.hashCode()); + result = prime * result + ((owner == null) ? 0 : owner.hashCode()); + result = prime + * result + + ((previousValues == null) ? 0 : previousValues.hashCode()); + result = prime * result + + ((propertyName == null) ? 0 : propertyName.hashCode()); + result = prime * result + (int) (timestamp ^ (timestamp >>> 32)); + return result; + } + + @Override + public boolean equals(Object obj) { + if (this == obj) + return true; + if (obj == null) + return false; + if (getClass() != obj.getClass()) + return false; + CollectionUpdate other = (CollectionUpdate) obj; + if (newValues == null) { + if (other.newValues != null) + return false; + } else if (!newValues.equals(other.newValues)) + return false; + if (owner == null) { + if (other.owner != null) + return false; + } else if (!owner.equals(other.owner)) + return false; + if (previousValues == null) { + if (other.previousValues != null) + return false; + } else if (!previousValues.equals(other.previousValues)) + return false; + if (propertyName == null) { + if (other.propertyName != null) + return false; + } else if (!propertyName.equals(other.propertyName)) + return false; + if (timestamp != other.timestamp) + return false; + return true; + } + } + + private static final long serialVersionUID = -1758564208183208352L; + + private static String modifier = "unknown"; + private static String changeDesc = "unknown"; + private static boolean initiateNewVersion; + + private Session session; + + private Set inserts = new HashSet(); + private Set updates = new HashSet(); + private Set deletes = new HashSet(); + private Set collUpdates = new HashSet(); + + public void setSession(Session session) { + this.session = session; + } + + public static void setModifier(String userModifier) { + modifier = userModifier; + } + + public static String getModifier() { + return modifier; + } + + public static void setChangeDesc(String description) { + changeDesc = description; + } + + public static String getChangeDesc() { + return changeDesc; + } + + public static void setInitiateNewVersion(boolean newVersion) { + initiateNewVersion = newVersion; + } + + public static boolean getInitiateNewVersion() { + return initiateNewVersion; + } + + public static void createNewVersion(String who, String description) { + setInitiateNewVersion(true); + setModifier(who); + setChangeDesc(description); + } + + @Override + public boolean onSave(Object entity, Serializable id, Object[] state, + String[] propertyNames, Type[] types) { + if (entity instanceof Versionable) { + Insert insert = new Insert(); + insert.setTimestamp(System.currentTimeMillis()); + insert.setEntity((Versionable)entity); + inserts.add(insert); + } + return false; + } + + @Override + public boolean onFlushDirty(Object entity, Serializable id, + Object[] currentState, Object[] previousState, + String[] propertyNames, Type[] types) { + if (entity instanceof Versionable) { + Update upd = new Update(); + upd.setId(id); + upd.setEntity((Versionable)entity); + upd.setCurrentState(currentState); + upd.setPreviousState(previousState); + upd.setPropertyNames(propertyNames); + upd.setPropertyTypes(types); + upd.setTimestamp(System.currentTimeMillis()); + updates.add(upd); + } + return false; + } + + @Override + public void onDelete(Object entity, Serializable id, Object[] state, + String[] propertyNames, Type[] types) { + if (entity instanceof Versionable) { + Delete delete = new Delete(); + delete.setTimestamp(System.currentTimeMillis()); + delete.setEntity((Versionable)entity); + deletes.add(delete); + } + } + + @Override + public void onCollectionUpdate(Object collection, Serializable key) + throws CallbackException { + if (collection instanceof PersistentMap) { + PersistentMap newValues = (PersistentMap) collection; + Object owner = newValues.getOwner(); + if (owner instanceof Versionable) { + Versionable entity = (Versionable) owner; + Class writerClass = entity.getVersionWriterClass(); + Map oldValues = (Map)newValues.getStoredSnapshot(); + CollectionUpdate upd = new CollectionUpdate(); + upd.setOwner(entity); + upd.setPropertyName(newValues.getRole()); + upd.setPreviousValues(oldValues); + upd.setNewValues(newValues); + upd.setTimestamp(System.currentTimeMillis()); + collUpdates.add(upd); + } + } + } + + @Override + public void postFlush(Iterator entities) { + try { + for (Iterator it = inserts.iterator(); it.hasNext();) { + Insert insert = (Insert) it.next(); + Class writerClass = insert.getEntity().getVersionWriterClass(); + try { + VersionKeeper writer = (VersionKeeper) writerClass.newInstance(); + writer.onInsert(session.connection(), insert, this); + } catch (InstantiationException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + for (Iterator it = updates.iterator(); it.hasNext();) { + Update update = (Update) it.next(); + Class writerClass = update.getEntity().getVersionWriterClass(); + try { + VersionKeeper writer = (VersionKeeper) writerClass.newInstance(); + writer.onUpdate(session.connection(), update, this); + } catch (InstantiationException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + for (Iterator it = deletes.iterator(); it.hasNext();) { + Delete delete = (Delete) it.next(); + Class writerClass = delete.getEntity().getVersionWriterClass(); + try { + VersionKeeper writer = (VersionKeeper) writerClass.newInstance(); + writer.onDelete(session.connection(), delete, this); + } catch (InstantiationException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + for (Iterator it = collUpdates.iterator(); it.hasNext();) { + CollectionUpdate update = (CollectionUpdate) it.next(); + Class writerClass = update.getOwner().getVersionWriterClass(); + try { + VersionKeeper writer = (VersionKeeper) writerClass.newInstance(); + writer.onCollectionChange(session.connection(), update, this); + } catch (InstantiationException e) { + e.printStackTrace(); + } catch (IllegalAccessException e) { + e.printStackTrace(); + } + } + + } finally { + inserts.clear(); + updates.clear(); + deletes.clear(); + collUpdates.clear(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/Versionable.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/Versionable.java new file mode 100755 index 0000000000000000000000000000000000000000..af9ef4c8621aa64f90f920256a9864813b4838a9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/history/interceptor/Versionable.java @@ -0,0 +1,28 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ +package alma.tmcdb.history.interceptor; + +public abstract class Versionable { + public abstract Class getVersionWriterClass(); +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/CompositeIdentifierInterceptor.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/CompositeIdentifierInterceptor.java new file mode 100755 index 0000000000000000000000000000000000000000..f984c71e3d608f5f3be446a47066e63d88214075 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/CompositeIdentifierInterceptor.java @@ -0,0 +1,58 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: CompositeIdentifierInterceptor.java,v 1.2 2009/03/30 16:48:46 rhiriart Exp $" + */ +package alma.tmcdb.utils; + +import java.io.Serializable; + +import org.hibernate.EmptyInterceptor; +import org.hibernate.type.Type; + +/** + * A simple Hibernate Interceptor that will request persistent objects + * that implement CompositeIdentifierUpdateable to update their composite + * identifiers just before persisting them. + * + * @author rhiriart + * @see CompositeIdentifierUpdateable + */ +public class CompositeIdentifierInterceptor extends EmptyInterceptor { + + private static final long serialVersionUID = -1758564208183208352L; + + @Override + public boolean onSave(Object entity, + Serializable id, + Object[] state, + String[] propertyNames, + Type[] types) { + if (entity instanceof CompositeIdentifierUpdateable) { + ((CompositeIdentifierUpdateable) entity).updateId(); + } + return false; + } + + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/CompositeIdentifierUpdateable.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/CompositeIdentifierUpdateable.java new file mode 100755 index 0000000000000000000000000000000000000000..64d646e0e44e4ed99051698e2a17965e6b129bdc --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/CompositeIdentifierUpdateable.java @@ -0,0 +1,55 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: CompositeIdentifierUpdateable.java,v 1.3 2009/03/30 16:51:58 rhiriart Exp $" + */ +package alma.tmcdb.utils; + +/** + * This interface must be implemented by Hibernate persistent classes that + * define a composite identifier class to map a composite primary key in the + * database model. This is the case of association tables with attributes, where + * their primary keys are composed from the primary keys of the tables they associate. + * As the mapping for these tables also provide navigation to the associated tables, + * the persistent objects duplicate these ID's: they participate in their composite id and + * as a navigation field. + * + * If objects of these classes are constructed from objects that hasn't been persisted + * yet, then when they are persisted their identifiers are null even though the navigation + * attributes have been persisted and contain a valid identifier, causing the persist + * operation to fail. + * + * This interface allows these classes to update the composite identifier just before + * saving them to the database, by means of an Hibernate Interceptor. + * + * @author rhiriart + * @see CompositeIdentifierInterceptor + * + */ +public interface CompositeIdentifierUpdateable { + + /** + * Update the composite identifier fields corresponding to associated objects. + */ + void updateId(); +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/Coordinate.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/Coordinate.java new file mode 100755 index 0000000000000000000000000000000000000000..bb8302371ca02587dfbb8c2378344e9c9621eb79 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/Coordinate.java @@ -0,0 +1,90 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: Coordinate.java,v 1.3 2012/01/11 23:44:17 sharring Exp $" + */ +package alma.tmcdb.utils; + +public class Coordinate { + + private double x; + private double y; + private double z; + + public Coordinate() {} + + public Coordinate(double x, double y, double z) { + this.x = x; + this.y = y; + this.z = z; + } + + @Override + public boolean equals(Object o) { + if (o == this) + return true; + if (!(o instanceof Coordinate)) + return false; + Coordinate coord = (Coordinate) o; + return (Double.compare(getX(), coord.getX()) == 0) && + (Double.compare(getY(), coord.getY()) == 0) && + (Double.compare(getZ(), coord.getZ()) == 0); + } + + @Override + public int hashCode() { + int result = 17; + long f; + f = Double.doubleToLongBits(getX()); + result = 31 * result + (int) (f ^ f >>> 32); + f = Double.doubleToLongBits(getY()); + result = 31 * result + (int) (f ^ f >>> 32); + f = Double.doubleToLongBits(getZ()); + result = 31 * result + (int) (f ^ f >>> 32); + return result; + } + + public double getX() { + return x; + } + + public void setX(double x) { + this.x = x; + } + + public double getY() { + return y; + } + + public void setY(double y) { + this.y = y; + } + + public double getZ() { + return z; + } + + public void setZ(double z) { + this.z = z; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/DomainEntityFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/DomainEntityFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..18778e31e7e50fcff679bee93e4bd249f0396358 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/DomainEntityFactory.java @@ -0,0 +1,242 @@ +package alma.tmcdb.utils; + +import java.security.InvalidParameterException; +import java.util.Date; + +import alma.BasebandNameMod.BasebandName; +import alma.NetSidebandMod.NetSideband; +import alma.PolarizationTypeMod.PolarizationType; +import alma.ReceiverBandMod.ReceiverBand; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeToCamera; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.TelescopeTypeEnum; +import alma.acs.tmcdb.Assembly; +import alma.acs.tmcdb.AssemblyOnline; +import alma.acs.tmcdb.AssemblyRole; +import alma.acs.tmcdb.AssemblyStartup; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.BEType; +import alma.acs.tmcdb.BEStartupBEType; +import alma.acs.tmcdb.BEType; +import alma.acs.tmcdb.BaseElement; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.Camera; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.FocusModel; +import alma.acs.tmcdb.FocusModelCoeff; +import alma.acs.tmcdb.HWConfiguration; + +import alma.acs.tmcdb.LRUType; +import alma.acs.tmcdb.Pad; +import alma.acs.tmcdb.PointingModel; +import alma.acs.tmcdb.PointingModelCoeff; +import alma.acs.tmcdb.Startup; +import alma.acs.tmcdb.WeatherStationController; + + +public class DomainEntityFactory { + public static Telescope createTelescope(String name, TelescopeTypeEnum type, Coordinate position, + double diameter, long commissionDate) { + Telescope telescope = new Telescope(); + telescope.setBaseElementName(name); + telescope.setBaseType(BEType.TELESCOPE); + telescope.setTelescopeName(name); + telescope.setTelescopeType(type); + telescope.setLatitude(position.getX()); + telescope.setLongitude(position.getY()); + telescope.setAltitude(position.getZ()); + + telescope.setDishDiameter(diameter); + telescope.setCommissionDate(commissionDate); + return telescope; + } + + + + public static Pad createPad(String padName, Coordinate pos, Long commissionDate) { + Pad pad = new Pad(); + pad.setBaseElementName(padName); + pad.setBaseType(BEType.PAD); + pad.setPadName(padName); + pad.setXPosition(pos.getX()); + pad.setYPosition(pos.getY()); + pad.setZPosition(pos.getZ()); + pad.setCommissionDate(commissionDate); + return pad; + } + + public static Camera createCamera(String name, Long commissionDate) { + Camera camera = new Camera(); + camera.setBaseElementName(name); + camera.setBaseType(BEType.CAMERA); + camera.setCommissionDate(commissionDate); + return camera; + } + + + + public static TelescopeToCamera createTelescopeToCamera(Telescope telescope, Camera camera, Long long1, + Long long2) { + TelescopeToCamera t2c = new TelescopeToCamera(); + t2c.setTelescope(telescope); + t2c.setCamera(camera); + // TODO Auto-generated method stub + return t2c; + } + + public static WeatherStationController createWeatherStationController(String name) { + WeatherStationController wsc = new WeatherStationController(); + wsc.setBaseElementName(name); + wsc.setBaseType(BEType.WEATHERSTATIONCONTROLLER); + return wsc; + } + + + public static TelescopeToPad createTelescopeToPad(Telescope telescope, Pad pad, + Long startTime, Long endTime, boolean planned) { + TelescopeToPad a2p = new TelescopeToPad(); + a2p.setTelescope(telescope); + a2p.setPad(pad); + a2p.setStartTime(startTime); + a2p.setEndTime(endTime); + a2p.setPlanned(planned); + pad.addTelescopeToPadToTelescopeToPads(a2p); + telescope.addTelescopeToPadToTelescopeToPads(a2p); +// a2p.setMountMetrologyAN0Coeff(0.0); +// a2p.setMountMetrologyAW0Coeff(0.0); + return a2p; + } + + public static AssemblyType createAssemblyType(LRUType lru, String name, + String fullName, BEType type, String description, String notes, + ComponentType componentType, String productionCode, String simulationCode) { + AssemblyType at = new AssemblyType(); + at.setAssemblyTypeName(name); + at.setFullName(fullName); + at.setBaseElementType(type); + at.setDescription(description); + at.setNotes(notes); + at.setComponentType(componentType); + at.setProductionCode(productionCode); + at.setSimulatedCode(simulationCode); + if (lru != null) { + lru.addAssemblyTypeToAssemblyTypes(at); + at.setLRUType(lru); + } + return at; + } + + public static AssemblyType createAssemblyType(String name, + String fullName, BEType type, String description, String notes, + ComponentType componentType, String productionCode, String simulationCode) { + return createAssemblyType(null, name, fullName, type, description, notes, componentType, productionCode, simulationCode); + } + + public static LRUType createLRUType(String name, String fullName, + String icd, long icdDate, String description, String notes) { + LRUType ltype = new LRUType(); + ltype.setLRUName(name); + ltype.setFullName(fullName); + ltype.setICD(icd); + ltype.setICDDate(icdDate); + ltype.setDescription(description); + ltype.setNotes(notes); + return ltype; + } + + + public static AssemblyRole createAssemblyRole(String roleName) { + AssemblyRole ar = new AssemblyRole(); + ar.setRoleName(roleName); + return ar; + } + + public static AssemblyStartup createAssemblyStartup(BaseElementStartup bes, AssemblyRole role) { + AssemblyStartup as = new AssemblyStartup(); + as.setBaseElementStartup(bes); + as.setAssemblyRole(role); + bes.addAssemblyStartupToAssemblyStartups(as); + return as; + } + + public static BaseElementStartup createBaseElementStartup(BaseElement baseElement,Startup stup) { + BaseElementStartup bes = new BaseElementStartup(); + bes.setBaseElement(baseElement); + bes.setStartup(stup); +// if ((baseElement.getBaseType() != BEType.PHOTONICREFERENCE) && +// (baseElement.getBaseType() != BEType.FRONTEND)) + bes.setBaseElementType(BEType.valueOf(baseElement.getBaseType().name())); +// else +// throw new InvalidParameterException("BaseElement parameter must be non-generic"); + bes.setIsGeneric("false"); + stup.addBaseElementStartupToBaseElementStartups(bes); + + return bes; + } + + public static Startup createStartup(String startupName) { + Startup stup = new Startup(); + stup.setStartupName(startupName); + return stup; + } + + public static Assembly createAssembly(String serialNumber, String data, + AssemblyType assemblyType) { + Assembly assy = new Assembly(); + assy.setSerialNumber(serialNumber); + assy.setData(data); + assy.setAssemblyType(assemblyType); + return assy; + } + + public static AssemblyOnline createAssemblyOnline(Assembly assy, String roleName, Long time) { + AssemblyOnline online = new AssemblyOnline(); + online.setAssembly(assy); + online.setRoleName(roleName); + online.setStartTime(time); + return online; + } + + public static BaseElementStartup createBaseElementStartup( + BEType type) { + BaseElementStartup bes = new BaseElementStartup(); + bes.setBaseElementType(type); + bes.setIsGeneric("True"); + return bes; + } + + public static FocusModel createFocusModel(Telescope antenna) { + FocusModel fm = new FocusModel(); + fm.setTelescope(antenna); + antenna.addFocusModelToFocusModels(fm); + return fm; + } + + public static PointingModel createPointingModel(Telescope antenna) { + PointingModel pm = new PointingModel(); + pm.setTelescope(antenna); + antenna.addPointingModelToPointingModels(pm); + return pm; + } + + + public static FocusModelCoeff createFocusModelCoeff(String coeffName, double coeffValue) { + FocusModelCoeff fmc = new FocusModelCoeff(); + fmc.setCoeffName(coeffName); + fmc.setCoeffValue(coeffValue); + return fmc; + } + + public static PointingModelCoeff createPointingModelCoeff(String coeffName, + Double coeffValue) { + PointingModelCoeff pmc = new PointingModelCoeff(); + pmc.setCoeffName(coeffName); + pmc.setCoeffValue(coeffValue); + return pmc; + } + + + + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/EntityFactory.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/EntityFactory.java new file mode 100755 index 0000000000000000000000000000000000000000..5b1a7b762228a4898ef3272dc0f56592e17958ee --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/EntityFactory.java @@ -0,0 +1,7 @@ +package alma.tmcdb.utils; + + +public class EntityFactory { + + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/HibernateUtil.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/HibernateUtil.java new file mode 100755 index 0000000000000000000000000000000000000000..44055f34ce029253a2f9eea63eda2ed549c18aac --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/HibernateUtil.java @@ -0,0 +1,116 @@ +package alma.tmcdb.utils; + +import java.util.Properties; +import alma.archive.database.helpers.wrappers.TmcdbDbConfig; + +import org.hibernate.*; +import org.hibernate.cfg.*; + +public class HibernateUtil { + + private static Configuration configuration; + private static SessionFactory sessionFactory; + + public static SessionFactory getSessionFactory() { + // Alternatively, you could look up in JNDI here + if (sessionFactory == null) + createTestConfiguration(); + return sessionFactory; + } + + public static void shutdown() { + // Close caches and connection pools + getSessionFactory().close(); + sessionFactory = null; + } + + /** + * Creates a configuration exclusively from hibernate.cfg.xml file. + * This function is provided for unit tests, where hibernate.cfg.xml + * is installed in the directory from which tests are run. + */ + private static void createTestConfiguration() { + try { + configuration = new Configuration(); + sessionFactory = configuration.configure().buildSessionFactory(); + } catch (Throwable ex) { + throw new ExceptionInInitializerError(ex); + } + } + + /** + * Creates an Hibernate configuration adding properties to the default + * configuration. A session factory is created from the combined configuration. + * + * @param properties Extra properties. + */ + public static void createConfigurationWithProperties(Properties properties) { + if (sessionFactory == null) { + try { + Configuration cnf = new Configuration(); + cnf.configure("tmcdb.hibernate.cfg.xml"); + cnf.addProperties(properties); + configuration = cnf; + sessionFactory = configuration.buildSessionFactory(); + } catch (Throwable ex) { + throw new ExceptionInInitializerError(ex); + } + } + } + + public static void createAcsConfigurationWithProperties(Properties properties) { + if (sessionFactory == null) { + try { + Configuration cnf = new Configuration(); + cnf.configure("cdb_rdb-hibernate.cfg.xml"); + cnf.addProperties(properties); + configuration = cnf; + sessionFactory = configuration.buildSessionFactory(); + } catch (Throwable ex) { + throw new ExceptionInInitializerError(ex); + } + } + } + + /** + * Creates an Hibernate configuration setting the connection and + * dialect properties from the TmcdbDbConfig configurator object, + * which in turns reads the file DbConfig.properties. + * + * @param conf TMCDB DbConfig Configurator object + */ + public static void createConfigurationFromDbConfig(TmcdbDbConfig conf) { + final Properties props = new Properties(); + props.setProperty("hibernate.dialect", + conf.getDialect()); + props.setProperty("hibernate.connection.driver_class", + conf.getDriver()); + props.setProperty("hibernate.connection.url", + conf.getConnectionUrl()); + props.setProperty("hibernate.connection.username", + conf.getUsername()); + props.setProperty("hibernate.connection.password", + conf.getPassword()); + props.setProperty("hibernate.current_session_context_class", + "thread"); + createConfigurationWithProperties(props); + } + + public static void createAcsConfigurationFromDbConfig(TmcdbDbConfig conf) { + final Properties props = new Properties(); + props.setProperty("hibernate.dialect", + conf.getDialect()); + props.setProperty("hibernate.connection.driver_class", + conf.getDriver()); + props.setProperty("hibernate.connection.url", + conf.getConnectionUrl()); + props.setProperty("hibernate.connection.username", + conf.getUsername()); + props.setProperty("hibernate.connection.password", + conf.getPassword()); + props.setProperty("hibernate.current_session_context_class", + "thread"); + createAcsConfigurationWithProperties(props); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/TmcdbMapMaker.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/TmcdbMapMaker.java new file mode 100755 index 0000000000000000000000000000000000000000..4715b84481499b2899cf637bdb7c9ea0a693480e --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/TmcdbMapMaker.java @@ -0,0 +1,22 @@ +package alma.tmcdb.utils; + +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +import alma.ReceiverBandMod.ReceiverBand; +import alma.acs.tmcdb.PointingModel; +import alma.acs.tmcdb.PointingModelCoeff; + + +public class TmcdbMapMaker { + + public static HashMap createPmCoeffMap(Set pmcs) { + HashMap pmcmap = new HashMap(); + for (PointingModelCoeff coeff : pmcs) { + pmcmap.put(coeff.getCoeffName(), coeff); + } + return pmcmap; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/TmcdbUtils.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/TmcdbUtils.java new file mode 100755 index 0000000000000000000000000000000000000000..06b27aeab9719966eab7083307b63f1d20985adf --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/utils/TmcdbUtils.java @@ -0,0 +1,226 @@ +package alma.tmcdb.utils; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.util.jar.JarInputStream; +import java.util.zip.ZipEntry; + +public class TmcdbUtils { + + /** Password for connecting to the HSQLDB server */ + public static final String HSQLDB_PASSWORD = ""; + + /** Username for connecting to the HSQLDB server */ + public static final String HSQLDB_USER = "sa"; + + /** Basic URL for an HSQLDB file-based database */ + public static final String HSQLDB_FILE_URL = "jdbc:hsqldb:file:"; + + /** Basic URL for an HSQLDB in-memory database */ + public static final String HSQLDB_MEMORY_URL = "jdbc:hsqldb:mem:ignored"; + + /** JDBC driver for HSQLDB */ + public static final String HSQLDB_JDBC_DRIVER = "org.hsqldb.jdbcDriver"; + + /** TMCDB Jar library file */ + public static final String TMCDB_JAR_FILE = "TMCDB.jar"; + + /** HSQLDB DDL scripts. */ + public static final String HSQLDB_SWCONFIGCORE_CREATE_SQL_SCRIPT = "TMCDB_swconfigcore/CreateHsqldbTables.sql"; + public static final String HSQLDB_SWCONFIGEXT_CREATE_SQL_SCRIPT = "TMCDB_swconfigext/CreateHsqldbTables.sql"; + public static final String HSQLDB_HWCONFIGMONITORING_CREATE_SQL_SCRIPT = "TMCDB_hwconfigmonitoring/CreateHsqldbTables.sql"; + public static final String HSQLDB_HWCONFIGMONITORING_CREATE_TRIGGERS_SQL_SCRIPT = "TMCDB_hwconfigmonitoring/CreateHsqldbTriggers.sql"; + + /** HSQLDB DB cleaning scripts. */ + public static final String HSQLDB_SWCONFIGCORE_DELETE_SQL_SCRIPT = "TMCDB_swconfigcore/DropAllTables.sql"; + public static final String HSQLDB_SWCONFIGEXT_DELETE_SQL_SCRIPT = "TMCDB_swconfigext/DropAllTables.sql"; + public static final String HSQLDB_HWCONFIGMONITORING_DELETE_SQL_SCRIPT = "TMCDB_hwconfigmonitoring/DropAllTables.sql"; + public static final String HSQLDB_HWCONFIGMONITORING_DELETE_TRIGGERS_SQL_SCRIPT = "TMCDB_hwconfigmonitoring/DropHsqldbTriggers.sql"; + + + public static void createTables(String url, String user, String password) throws Exception { + Class.forName(HSQLDB_JDBC_DRIVER); + String ddl; + Connection conn; + ddl = readTmcdbDDLFile(HSQLDB_SWCONFIGCORE_CREATE_SQL_SCRIPT); + conn = DriverManager.getConnection(url, user, password); + runScript(ddl, conn); + ddl = readTmcdbDDLFile(HSQLDB_SWCONFIGEXT_CREATE_SQL_SCRIPT); + conn = DriverManager.getConnection(url, user, password); + runScript(ddl, conn); + ddl = readTmcdbDDLFile(HSQLDB_HWCONFIGMONITORING_CREATE_SQL_SCRIPT); + conn = DriverManager.getConnection(url, user, password); + runScript(ddl, conn); +// try { +// ddl = readTmcdbDDLFile(HSQLDB_HWCONFIGMONITORING_CREATE_TRIGGERS_SQL_SCRIPT); +// conn = DriverManager.getConnection(url, user, password); +// runScript(ddl, conn); +// } catch (IOException ex) { +// ex.printStackTrace(); +// } + conn.close(); + } + + public static void dropTables(String url, String user, String password) throws Exception { + Class.forName(HSQLDB_JDBC_DRIVER); + String ddl; + Connection conn; +// try { +// ddl = readTmcdbDDLFile(HSQLDB_HWCONFIGMONITORING_DELETE_TRIGGERS_SQL_SCRIPT); +// conn = DriverManager.getConnection(url, user, password); +// runScript(ddl, conn); +// } catch (IOException ex) { +// ex.printStackTrace(); +// } + ddl = readTmcdbDDLFile(HSQLDB_HWCONFIGMONITORING_DELETE_SQL_SCRIPT); + conn = DriverManager.getConnection(url, user, password); + runScript(ddl, conn); + ddl = readTmcdbDDLFile(HSQLDB_SWCONFIGEXT_DELETE_SQL_SCRIPT); + conn = DriverManager.getConnection(url, user, password); + runScript(ddl, conn); + ddl = readTmcdbDDLFile(HSQLDB_SWCONFIGCORE_DELETE_SQL_SCRIPT); + conn = DriverManager.getConnection(url, user, password); + runScript(ddl, conn); + conn.close(); + } + + /** + * Execute an SQL script. + * @param script The SQL script, as a single string + * @param conn Connection to the DB server + * @throws SQLException + */ + protected static void runScript( String script, Connection conn ) + throws SQLException { + + Statement stmt = conn.createStatement(); + String[] statements = script.split( ";", -1 ); + for( int i = 0; i < statements.length; i++ ) { + String statement = statements[i].trim(); + if( statement.length() == 0 ) { + // skip empty lines + continue; + } + stmt.execute( statement ); + } + } + + /** + * Searches for a library file in ACS library locations, first in ACSROOT + * and second in INTROOT. + * @param lib Library name + * @return File path to the library, null if it is not in ACS library locations + */ + protected static String findAcsLibrary(String lib) { + String[] acsDirs = new String[] {"ACSROOT", "INTROOT"}; + for (String d : acsDirs) { + String dir = System.getenv(d); + if (dir != null) { + String jar = dir + "/lib/" + lib; + File f = new File(jar); + if (f.exists()) return jar; + } + } + return null; + } + + /** + * Searches for a library file in ACS config locations, first in INTROOT + * and second in ACSROOT. + * @param file Configuration file name + * @return File path to the configuration file, null if it is not in + * ACS configuration locations + */ + protected static String findAcsConfigFile(String file) { + String[] acsDirs = new String[] {"INTROOT", "ACSROOT"}; + for (String d : acsDirs) { + String dir = System.getenv(d); + if (dir != null) { + String cfgf = dir + "/config/" + file; + File f = new File(cfgf); + if (f.exists()) return cfgf; + } + } + return null; + } + + /** + * Extracts a text file from a Jar library. Returns its contents as a string. + * + * @param jar Jar library + * @param file File to read from the Jar file + * @return file contents + * @throws IOException + */ + protected static String readFileFromJar(String jar, String file) + throws IOException { + FileInputStream in = new FileInputStream(findAcsLibrary(jar)); + JarInputStream jarin = new JarInputStream(in); + ZipEntry ze = jarin.getNextEntry(); + while (ze != null) { + if (ze.getName().equals(file)) + break; + ze = jarin.getNextEntry(); + } + InputStreamReader converter = new InputStreamReader(jarin); + BufferedReader reader = new BufferedReader(converter); + + StringBuffer ddlbuff = new StringBuffer(); + String line = reader.readLine(); + while (line != null) { + ddlbuff.append(line + "\n"); + line = reader.readLine(); + } + reader.close(); + return new String(ddlbuff); + } + + /** + * Read a configuration file from ACS standard configuration locations. + * Returns the file contents as a String. + * + * @param file Configuratio file name + * @return file contents + * @throws IOException + */ + protected static String readConfigFile(String file) + throws IOException { + FileInputStream in = new FileInputStream(findAcsConfigFile(file)); + InputStreamReader converter = new InputStreamReader(in); + BufferedReader reader = new BufferedReader(converter); + + StringBuffer ddlbuff = new StringBuffer(); + String line = reader.readLine(); + while (line != null) { + ddlbuff.append(line + "\n"); + line = reader.readLine(); + } + reader.close(); + return new String(ddlbuff); + } + + protected static String readTmcdbDDLFile(String relativeFilePathName) + throws IOException { + String acsDataDir = System.getenv("ACSDATA"); + String ddlDataDir = acsDataDir + "/config/DDL/hsqldb/"; + FileInputStream in = new FileInputStream(ddlDataDir + relativeFilePathName); + InputStreamReader converter = new InputStreamReader(in); + BufferedReader reader = new BufferedReader(converter); + + StringBuffer ddlbuff = new StringBuffer(); + String line = reader.readLine(); + while (line != null) { + ddlbuff.append(line + "\n"); + line = reader.readLine(); + } + reader.close(); + return new String(ddlbuff); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/xmlmapping/ConfigurationXMLClassDescriptor.java b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/xmlmapping/ConfigurationXMLClassDescriptor.java new file mode 100755 index 0000000000000000000000000000000000000000..748d760f040ff357524a08e0782fa706b39c7468 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/alma/tmcdb/xmlmapping/ConfigurationXMLClassDescriptor.java @@ -0,0 +1,100 @@ +/** + * + */ +package alma.tmcdb.xmlmapping; + +import com.sun.org.apache.xalan.internal.xsltc.compiler.util.NodeType; +import com.sun.org.apache.xerces.internal.impl.dv.xs.TypeValidator; + +/** + * @author rhiriart + * + */ +public class ConfigurationXMLClassDescriptor implements XMLClassDescriptor { + + @Override + public boolean canAccept(String name, String namespace, Object object) { + // TODO Auto-generated method stub + return false; + } + + @Override + public XMLFieldDescriptor[] getAttributeDescriptors() { + // TODO Auto-generated method stub + return null; + } + + @Override + public XMLFieldDescriptor getContentDescriptor() { + // TODO Auto-generated method stub + return null; + } + + @Override + public XMLFieldDescriptor[] getElementDescriptors() { + // TODO Auto-generated method stub + return null; + } + + @Override + public XMLFieldDescriptor getFieldDescriptor(String name, String namespace, + NodeType nodeType) { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getNameSpacePrefix() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getNameSpaceURI() { + // TODO Auto-generated method stub + return null; + } + + @Override + public TypeValidator getValidator() { + // TODO Auto-generated method stub + return null; + } + + @Override + public String getXMLName() { + // TODO Auto-generated method stub + return null; + } + + @Override + public AccessMode getAccessMode() { + // TODO Auto-generated method stub + return null; + } + + @Override + public ClassDescriptor getExtends() { + // TODO Auto-generated method stub + return null; + } + + @Override + public FieldDescriptor[] getFields() { + // TODO Auto-generated method stub + return null; + } + + @Override + public FieldDescriptor getIdentity() { + // TODO Auto-generated method stub + return null; + } + + @Override + public Class getJavaClass() { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/log4j.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/log4j.xml new file mode 100755 index 0000000000000000000000000000000000000000..9d6c88a18b21d701155a095871239e64bf6f9afd --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/log4j.xml @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/src/tmcdb.hibernate.cfg.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/src/tmcdb.hibernate.cfg.xml new file mode 100755 index 0000000000000000000000000000000000000000..d590cec767ffdc7558044a05833509fb719d14df --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/src/tmcdb.hibernate.cfg.xml @@ -0,0 +1,128 @@ + + + + + + + org.hsqldb.jdbcDriver + + + jdbc:hsqldb:hsql://localhost:8090 + + + sa + + + + org.hibernate.dialect.HSQLDialect + + + + 5 + 20 + 300 + 50 + 3000 + + + false + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/CloneAndPersistBaseElementTest.launch b/ARCHIVE/SharedCode/TMCDB/Persistence/test/CloneAndPersistBaseElementTest.launch new file mode 100755 index 0000000000000000000000000000000000000000..4baa56f634974b2f877654677c3fa31beddeb574 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/CloneAndPersistBaseElementTest.launch @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/Makefile b/ARCHIVE/SharedCode/TMCDB/Persistence/test/Makefile new file mode 100755 index 0000000000000000000000000000000000000000..c73c91426587c18fd8b315f67a86ecd85d6c8993 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/Makefile @@ -0,0 +1,211 @@ +#******************************************************************************* +# PPPPPPPP +# +# "@(#) $Id: Makefile,v 1.6 2011/05/09 11:33:34 rtobar Exp $" +# +# Makefile of ........ +# +# who when what +# -------- -------- ---------------------------------------------- +# rhiriart 11/03/09 created +# + +#******************************************************************************* +# This Makefile follows VLT Standards (see Makefile(5) for more). +#******************************************************************************* +# REMARKS +# None +#------------------------------------------------------------------------ + +# +# user definable C-compilation flags +#USER_CFLAGS = + +# +# additional include and library search paths +#USER_INC = +#USER_LIB = + +# +# MODULE CODE DESCRIPTION: +# ------------------------ +# As a general rule: public file are "cleaned" and "installed" +# local (_L) are not "installed". + +# +# C programs (public and local) +# ----------------------------- +EXECUTABLES = +EXECUTABLES_L = + +# +# +xxxxx_OBJECTS = +xxxxx_LDFLAGS = +xxxxx_LIBS = + +# +# special compilation flags for single c sources +#yyyyy_CFLAGS = + +# +# Includes (.h) files (public only) +# --------------------------------- +INCLUDES = + +# +# Libraries (public and local) +# ---------------------------- +LIBRARIES = +LIBRARIES_L = + +# +# +lllll_OBJECTS = + +# +# Scripts (public and local) +# ---------------------------- +SCRIPTS = +SCRIPTS_L = + +# +# TCL scripts (public and local) +# ------------------------------ +TCL_SCRIPTS = +TCL_SCRIPTS_L = + +# +# Python stuff (public and local) +# ---------------------------- +PY_SCRIPTS = +PY_SCRIPTS_L = + +PY_MODULES = +PY_MODULES_L = + +PY_PACKAGES = +PY_PACKAGES_L = +pppppp_MODULES = + +# +# +tttttt_OBJECTS = +tttttt_TCLSH = +tttttt_LIBS = + +# +# TCL libraries (public and local) +# ------------------------------ +TCL_LIBRARIES = +TCL_LIBRARIES_L = + +# +# +tttlll_OBJECTS = + +# +# Configuration Database Files +# ---------------------------- +CDB_SCHEMAS = + +# +# IDL Files and flags +# +IDL_FILES = +TAO_IDLFLAGS = +USER_IDL = +# +# Jarfiles and their directories +# +JARFILES=TMCDBPersistenceTest +TMCDBPersistenceTest_DIRS=alma/tmcdb alma/acs/tmcdb +TMCDBPersistenceTest_EXTRAS= +# +# java sources in Jarfile on/off +DEBUG=ON +# +# ACS XmlIdl generation on/off +# +XML_IDL= +# +# Java Component Helper Classes generation on/off +# +COMPONENT_HELPERS= +# +# Java Entity Classes generation on/off +# +XSDBIND= +# +# Schema Config files for the above +# +XSDBIND_INCLUDE= +# man pages to be done +# -------------------- +MANSECTIONS = +MAN1 = +MAN3 = +MAN5 = +MAN7 = +MAN8 = + +# +# local man pages +# --------------- +MANl = + +# +# ASCII file to be converted into Framemaker-MIF +# -------------------- +ASCII_TO_MIF = + +# +# other files to be installed +#---------------------------- +INSTALL_FILES = + +# +# list of all possible C-sources (used to create automatic dependencies) +# ------------------------------ +CSOURCENAMES = \ + $(foreach exe, $(EXECUTABLES) $(EXECUTABLES_L), $($(exe)_OBJECTS)) \ + $(foreach rtos, $(RTAI_MODULES) , $($(rtos)_OBJECTS)) \ + $(foreach lib, $(LIBRARIES) $(LIBRARIES_L), $($(lib)_OBJECTS)) + +# +#>>>>> END OF standard rules + +# +# INCLUDE STANDARDS +# ----------------- + +MAKEDIRTMP := $(shell searchFile include/acsMakefile) +ifneq ($(MAKEDIRTMP),\#error\#) + MAKEDIR := $(MAKEDIRTMP)/include + include $(MAKEDIR)/acsMakefile +endif + +# +# TARGETS +# ------- +all: do_all + @echo " . . . 'all' done" + +clean : clean_all + @echo " . . . clean done" + @rm -f tmp/AllTests.log + +clean_dist : clean_all clean_dist_all + @echo " . . . clean_dist done" + +man : do_man + @echo " . . . man page(s) done" + +install : install_all + @echo " . . . installation done" + +test: clean all + @./runAllTests.sh tmp/AllTests.log + @echo " . . . 'test' done" + +#___oOo___ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AbstractBaseElementStartupTest.java.save b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AbstractBaseElementStartupTest.java.save new file mode 100755 index 0000000000000000000000000000000000000000..aae0dc3d9da3a3a59b0a524a39280a4c763eb7fb --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AbstractBaseElementStartupTest.java.save @@ -0,0 +1,152 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AbstractBaseElementStartupTest.java,v 1.5 2011/10/05 00:32:40 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ContainerImplLang; +import alma.acs.tmcdb.LoggingConfig; +import alma.acs.tmcdb.Antenna; +import alma.acs.tmcdb.AntennaType; +import alma.acs.tmcdb.BEType; +//import alma.acs.tmcdb.ConcreteBaseElementStartup; +import alma.acs.tmcdb.HWConfiguration; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.Startup; +import alma.tmcdb.utils.HibernateUtil; + +public class AbstractBaseElementStartupTest extends TmcdbTestCase { + + private Session session; + + public AbstractBaseElementStartupTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAddBaseElementStartup() { + Transaction creationTransaction = null; + HWConfiguration config = null; + Configuration swCfg = null; + Antenna antenna = null; + Startup startup = null; + ConcreteBaseElementStartup bes1 = null; + try { + creationTransaction = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ContainerImplLang.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + // --- end SW scaffolding --- + + config = new HWConfiguration(); + config.setConfiguration(swCfg); + antenna = DomainEntityFactory.createAntenna("DV01", + AntennaType.VA, + new Coordinate(0.0, 0.0, 0.0), + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L, + 0, + 0); + config.addBaseElementToBaseElements(antenna); + startup = new Startup(); + startup.setStartupName("startup"); + config.addStartupToStartups(startup); + session.save(config); + session.flush(); + + bes1 = DomainEntityFactory.createBaseElementStartup(antenna); + session.save(bes1); + + GenericBaseElementStartup bes2 = + new GenericBaseElementStartup(BEType.FRONTEND); + bes1.getChildren().add(bes2); + session.save(bes1); + + creationTransaction.commit(); + } catch (RuntimeException ex) { + ex.printStackTrace(); + creationTransaction.rollback(); + fail(); + } + + try { + System.out.println("Test something here..."); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + session.delete(bes1); + session.delete(startup); + session.delete(antenna); + session.delete(config); + cleaningTransaction.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AllTests.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AllTests.java new file mode 100755 index 0000000000000000000000000000000000000000..c46281d3cbea81e1f9cfda1f3061cad1b3bcbbfe --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AllTests.java @@ -0,0 +1,24 @@ +package alma.acs.tmcdb; + +import junit.framework.Test; +import junit.framework.TestSuite; + +public class AllTests { + + public static Test suite() { + TestSuite suite = new TestSuite("Test for alma.acs.tmcdb generated POJOs"); + suite.addTestSuite(TelescopeTest.class); + suite.addTestSuite(TelescopeToPadTest.class); + suite.addTestSuite(AssemblyStartupTest.class); + suite.addTestSuite(AssemblyTest.class); + suite.addTestSuite(AssemblyTypeTest.class); + suite.addTestSuite(BaseElementStartupTest.class); + suite.addTestSuite(ConfigurationTest.class); + suite.addTestSuite(FocusModelTest.class); + suite.addTestSuite(LruTypeTest.class); + suite.addTestSuite(PadTest.class); + //suite.addTestSuite(PointingModelTest.class); + // suite.addTestSuite(PointingModelTestWithDetachedObjects.class); + return suite; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyStartupTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyStartupTest.java new file mode 100755 index 0000000000000000000000000000000000000000..48b4206d12a979dfd19ced5b15aef729a160ce6f --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyStartupTest.java @@ -0,0 +1,211 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AssemblyStartupTest.java,v 1.11 2011/10/05 00:32:41 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; +import java.util.Iterator; +import java.util.Set; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.cloning.CloningTestUtils; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeTypeEnum; +import alma.acs.tmcdb.AssemblyRole; +import alma.acs.tmcdb.AssemblyStartup; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.BEType; +import alma.acs.tmcdb.HWConfiguration; +import alma.tmcdb.utils.Coordinate; +import alma.acs.tmcdb.LRUType; +import alma.acs.tmcdb.Startup; +import alma.tmcdb.utils.CompositeIdentifierInterceptor; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class AssemblyStartupTest extends TmcdbTestCase { + + public AssemblyStartupTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + } + + protected void tearDown() throws Exception { + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testCreateAssemblyStartup() { + Transaction tx = null; + LRUType lru = null; + HWConfiguration config = null; + Configuration swCfg = null; + Startup startup = null; + Telescope antenna = null; + AssemblyStartup assemblyStartup3 = null; + BaseElementStartup baseElementStartup = null; + AssemblyRole assemblyRole = null; + AssemblyRole assemblyRole2 = null; + AssemblyRole assemblyRole3 = null; + + // Preliminaries, some global objects are needed + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + Session session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + // --- end SW scaffolding --- + + session.save(config); + + lru = DomainEntityFactory.createLRUType("lru", "lru", "icd", 0L, "", ""); + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("test", + "test", + BEType.TELESCOPE, + "", + "", + compType, + "", "simcode"); + assemblyRole = DomainEntityFactory.createAssemblyRole("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + assemblyRole2 = DomainEntityFactory.createAssemblyRole("aRole2"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole2); + assemblyRole2.setAssemblyType(assemblyType); + assemblyRole3 = DomainEntityFactory.createAssemblyRole("aRole3"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole3); + assemblyRole3.setAssemblyType(assemblyType); + lru.addAssemblyTypeToAssemblyTypes(assemblyType); + assemblyType.setLRUType(lru); + session.save(lru); + + tx.commit(); + session.close(); + + interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + antenna = DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(antenna); + antenna.setHWConfiguration(config); + startup = DomainEntityFactory.createStartup("startup"); + config.addStartupToStartups(startup); + startup.setHWConfiguration(config); + baseElementStartup = DomainEntityFactory.createBaseElementStartup(antenna, startup); + baseElementStartup.setSimulated(false); + startup.addBaseElementStartupToBaseElementStartups(baseElementStartup); + baseElementStartup.setStartup(startup); + AssemblyStartup as1 = DomainEntityFactory.createAssemblyStartup(baseElementStartup, assemblyRole); + as1.setSimulated(false); + AssemblyStartup as2 = DomainEntityFactory.createAssemblyStartup(baseElementStartup, assemblyRole2); + as2.setSimulated(false); + assemblyStartup3 = DomainEntityFactory.createAssemblyStartup(baseElementStartup, assemblyRole3); + assemblyStartup3.setSimulated(false); + assertEquals(3, baseElementStartup.getAssemblyStartups().size()); + baseElementStartup.getAssemblyStartups().remove(assemblyStartup3); + assertEquals(2, baseElementStartup.getAssemblyStartups().size()); + assemblyStartup3 = DomainEntityFactory.createAssemblyStartup(baseElementStartup, assemblyRole3); + assemblyStartup3.setSimulated(false); + assertEquals(3, baseElementStartup.getAssemblyStartups().size()); + baseElementStartup.getAssemblyStartups().remove(assemblyStartup3); + assertEquals(2, baseElementStartup.getAssemblyStartups().size()); + session.saveOrUpdate(config); + tx.commit(); + session.close(); + + try { + // Iterate through + System.out.println("Iterating through..."); + Set baseElementStartups = startup.getBaseElementStartups(); + System.out.println(baseElementStartups.size() + " base element startup(s) found."); + for (Iterator iter = baseElementStartups.iterator(); iter.hasNext(); ) { + BaseElementStartup bes = iter.next(); + Set startupAssemblies = bes.getAssemblyStartups(); + System.out.println(startupAssemblies.size() + " startup assemblies found."); + for (Iterator iter2 = startupAssemblies.iterator(); iter2.hasNext(); ) { + AssemblyStartup as = iter2.next(); + System.out.println("Assembly Role: " + as.getAssemblyRole().getRoleName()); + } + } + } finally { + // Cleaning + session = HibernateUtil.getSessionFactory().openSession(); + Transaction ctx = session.beginTransaction(); + session.delete(baseElementStartup); // <-- Necessary to break a circular dependency: + // AssemblyType needs ComponentType + // AssemblyStartup needs AssemblyRole + session.delete(lru); + session.delete(antenna); + session.delete(config); + ctx.commit(); + session.close(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyTest.java new file mode 100755 index 0000000000000000000000000000000000000000..6ed4faf3310f7587a16826b86346eb81b3137e30 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyTest.java @@ -0,0 +1,149 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AssemblyTest.java,v 1.7 2011/10/05 00:32:41 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.cloning.CloningTestUtils; +import alma.acs.tmcdb.Assembly; +import alma.acs.tmcdb.AssemblyRole; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.BEType; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.LRUType; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class AssemblyTest extends TmcdbTestCase { + + private Session session; + + public AssemblyTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAssembly() { + + Transaction creationTransaction = null; + LRUType lru = null; + Configuration swCfg = null; + HWConfiguration config = null; + Assembly newAssembly = null; + creationTransaction = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + Component comp = CloningTestUtils.createComponent("FOO", "/FOO", compType, config.getConfiguration()); + swCfg.getComponents().add(comp); + session.save(comp); + + // --- end SW scaffolding --- + + lru = DomainEntityFactory.createLRUType("TestLRU", "TestLRU", "ICD XXX", 0L, "La donna e mobile", + "Qual piuma al vento"); + + session.save(config); + + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("Test", "Test", BEType.TELESCOPE, + "Muta d'accento - e di pensiero.", "Sempre un amabile,", + compType, "code", "simcode"); + + AssemblyRole assemblyRole = DomainEntityFactory.createAssemblyRole("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + + lru.addAssemblyTypeToAssemblyTypes(assemblyType); + assemblyType.setLRUType(lru); + + session.save(lru); + + newAssembly = DomainEntityFactory.createAssembly("0x001", "", assemblyType); + config.addAssemblyToAssemblies(newAssembly); + newAssembly.setHWConfiguration(config); + session.save(config); + + creationTransaction.commit(); + + try { + System.out.println("Test something here..."); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + session.delete(newAssembly); + session.delete(lru); + session.delete(config); + cleaningTransaction.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyTypeTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyTypeTest.java new file mode 100755 index 0000000000000000000000000000000000000000..ac7acfa1fb9837a8744bf098e479825bf55002db --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/AssemblyTypeTest.java @@ -0,0 +1,117 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: AssemblyTypeTest.java,v 1.7 2010/09/28 11:01:17 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class AssemblyTypeTest extends TmcdbTestCase { + + private Session session; + + public AssemblyTypeTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAssemblyType() { + + Transaction creationTransaction = null; + LRUType lru = null; + HWConfiguration hwCfg = null; + Configuration swCfg = null; + try { + creationTransaction = session.beginTransaction(); + + swCfg = new Configuration(); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + lru = DomainEntityFactory.createLRUType("TestLRU", "TestLRU", "ICD XXX", 0L, "La donna e mobile", + "Qual piuma al vento"); + + hwCfg = new HWConfiguration(); + hwCfg.setConfiguration(swCfg); + hwCfg.setTelescopeName("OSF"); + session.save(hwCfg); + + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("Test", "Test", BEType.TELESCOPE, + "Muta d'accento - e di pensiero.", "Sempre un amabile,", + compType, "code", "simcode"); + + AssemblyRole assemblyRole = DomainEntityFactory.createAssemblyRole("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + + + DomainEntityFactory.createAssemblyType(lru, "Test2", + "Test2", BEType.TELESCOPE, "", "", compType, "code", "simcode"); + + session.save(lru); + creationTransaction.commit(); + } catch (RuntimeException ex) { + ex.printStackTrace(); + creationTransaction.rollback(); + fail("An exception has been thrown so the transaction has been rolled back"); + } + + try { + System.out.println("Test something here..."); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + session.delete(lru); + session.delete(hwCfg); + cleaningTransaction.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/BaseElementStartupTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/BaseElementStartupTest.java new file mode 100755 index 0000000000000000000000000000000000000000..10150be81a463520dc472eb9ec074cc88d1ca8a1 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/BaseElementStartupTest.java @@ -0,0 +1,203 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: BaseElementStartupTest.java,v 1.7 2011/10/05 00:32:41 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; +import java.util.Iterator; +import java.util.List; +import java.util.Set; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.cloning.CloningTestUtils; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class BaseElementStartupTest extends TmcdbTestCase { + + private Session session; + + public BaseElementStartupTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + @SuppressWarnings("unchecked") + public void notestNavigateBaseElementStartup() { + Transaction newTransaction = session.beginTransaction(); + + // Get a Configuration. The first found is fine. + List configurations = session.createQuery("from HWConfiguration").list(); + System.out.println(configurations.size() + " configuration(s) found."); + HWConfiguration config = (HWConfiguration) configurations.get(0); + + Set startupConfigs = config.getStartups(); + System.out.println(startupConfigs.size() + " startup configuration(s) found:"); + for (Iterator iter = startupConfigs.iterator(); iter.hasNext(); ) { + Startup sc = (Startup) iter.next(); + System.out.println(sc.getStartupName()); + Set bss = sc.getBaseElementStartups(); + System.out.println(bss.size() + " base element startup found:"); + for (Iterator iter2 = bss.iterator(); iter2.hasNext(); ) { + BaseElementStartup baseElementStartup = (BaseElementStartup) + iter2.next(); + System.out.println(baseElementStartup.getBaseElement().getBaseElementName()); + } + } + + newTransaction.commit(); + } + + @SuppressWarnings("unchecked") + public void notestNavigateToAssemblyStartup() { + Transaction newTransaction = session.beginTransaction(); + + // Get a Configuration. The first found is fine. + List configurations = session.createQuery("from Configuration").list(); + System.out.println(configurations.size() + " configuration(s) found."); + HWConfiguration config = (HWConfiguration) configurations.get(0); + + Set startupConfigs = config.getStartups(); + System.out.println(startupConfigs.size() + " startup configuration(s) found:"); + for (Iterator iter = startupConfigs.iterator(); iter.hasNext(); ) { + Startup sc = iter.next(); + System.out.println(sc.getStartupName()); + Set bss = sc.getBaseElementStartups(); + System.out.println(bss.size() + " base element startup found:"); + for (Iterator iter2 = bss.iterator(); iter2.hasNext(); ) { + BaseElementStartup baseElementStartup = iter2.next(); + System.out.println(baseElementStartup.getBaseElement().getBaseElementName()); + Set assemblyStartups = baseElementStartup.getAssemblyStartups(); + System.out.println(assemblyStartups.size() + " assembly startups found."); + } + } + + newTransaction.commit(); + } + + public void testAddBaseElementStartup() { + Transaction creationTransaction = null; + HWConfiguration config = null; + Configuration swCfg = null; + Telescope antenna = null; + Startup startup = null; + BaseElementStartup beStartup = null; + creationTransaction = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + Component comp = CloningTestUtils.createComponent("FOO", "/FOO", compType, config.getConfiguration()); + swCfg.getComponents().add(comp); + session.save(comp); + + // --- end SW scaffolding --- + + antenna = DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(antenna); + antenna.setHWConfiguration(config); + startup = DomainEntityFactory.createStartup("StartupConfigurationTest"); + config.addStartupToStartups(startup); + startup.setHWConfiguration(config); + beStartup = DomainEntityFactory.createBaseElementStartup(antenna, startup); + beStartup.setSimulated(false); + + // Add a generic front-end base element startup to the antenna + // base element startup. + BaseElementStartup child = + DomainEntityFactory.createBaseElementStartup(BEType.CAMERA); + child.setBaseElementStartup(beStartup); + child.setSimulated(false); + beStartup.addBaseElementStartupToBaseElementStartups(child);; + + session.save(config); + creationTransaction.commit(); + + try { + System.out.println("Test something here..."); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + // Care needs to be taken with unidireccional many-to-one associations. + // The many side needs to be deleted first. + // In this test we have this problem with Antenna to Component; and + // Component to ComponentType. + session.delete(startup); + session.delete(antenna); + session.delete(config); + cleaningTransaction.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/ConfigurationTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/ConfigurationTest.java new file mode 100755 index 0000000000000000000000000000000000000000..e1185a5f80a3ec79386381707b5498d1a480b638 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/ConfigurationTest.java @@ -0,0 +1,259 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: ConfigurationTest.java,v 1.10 2011/10/05 00:32:41 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; +import java.util.List; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.cloning.CloningTestUtils; +import alma.tmcdb.utils.CompositeIdentifierInterceptor; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class ConfigurationTest extends TmcdbTestCase { + + private Session session; + + public ConfigurationTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + } + + protected void tearDown() throws Exception { + super.tearDown(); + } + + @SuppressWarnings("unchecked") + public void testAddStartupScenario() { + session = HibernateUtil.getSessionFactory().openSession(); + try { + + Transaction transaction = session.beginTransaction(); + + // --- SW scaffolding --- + Configuration swCfg; + swCfg = new Configuration(); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + Component comp = CloningTestUtils.createComponent("FOO", "/FOO", compType, swCfg); + swCfg.getComponents().add(comp); + session.save(comp); + + // --- end SW scaffolding --- + + HWConfiguration config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + Startup startup = new Startup(); + startup.setStartupName("StartupConfigurationTest"); + config.addStartupToStartups(startup); + startup.setHWConfiguration(config); + session.save(config); + transaction.commit(); + + } finally { + + Transaction transaction = session.beginTransaction(); + List confs = session.createQuery( + "from HWConfiguration where configuration.configurationName = 'ConfigurationTest'").list(); + if (confs.size() > 0) { + HWConfiguration c = confs.get(0); + session.delete(c); + } + transaction.commit(); + } + + session.close(); + HibernateUtil.shutdown(); + } + + public void testCompleteConfiguration() { + Transaction tx = null; + LRUType lru = null; + HWConfiguration config = null; + Configuration swCfg = null; + Startup startup = null; + Telescope telescope = null; + Pad pad = null; + BaseElementStartup baseElementStartup = null; + AssemblyRole assemblyRole = null; + TelescopeToPad a2p = null; + Camera camera = null; + TelescopeToCamera a2fe = null; + + // Preliminaries, some global objects are needed + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + Session session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + + // --- SW scaffolding --- + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + Component comp = CloningTestUtils.createComponent("FOO", "/FOO", compType, config.getConfiguration()); + swCfg.getComponents().add(comp); + session.save(comp); + + // --- end SW scaffolding --- + + lru = DomainEntityFactory.createLRUType("lru", "lru", "icd", 0L, "", ""); + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("test", + "test", + BEType.TELESCOPE, + "", + "", + compType, + "", "simcode"); + assemblyRole = DomainEntityFactory.createAssemblyRole("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + lru.addAssemblyTypeToAssemblyTypes(assemblyType); + assemblyType.setLRUType(lru); + session.save(lru); + + tx.commit(); + session.close(); + + try { + interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + telescope = DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(telescope); + telescope.setHWConfiguration(config); + pad = DomainEntityFactory.createPad("PAD01", new Coordinate(0.0, 0.0, 0.0), new Long(0)); + config.addBaseElementToBaseElements(pad); + pad.setHWConfiguration(config); + session.save(config); + a2p = DomainEntityFactory.createTelescopeToPad(telescope, pad, new Long(0), new Long(0), true); + long commissionDate = 0l; + camera = DomainEntityFactory.createCamera("ACamera", commissionDate); + config.addBaseElementToBaseElements(camera); + camera.setHWConfiguration(config); + session.save(config); + a2fe = DomainEntityFactory.createTelescopeToCamera(telescope, camera, new Long(0), new Long(0)); + startup = DomainEntityFactory.createStartup("startup"); + config.addStartupToStartups(startup); + startup.setHWConfiguration(config); + baseElementStartup = DomainEntityFactory.createBaseElementStartup(telescope, startup); + baseElementStartup.setSimulated(true); + startup.addBaseElementStartupToBaseElementStartups(baseElementStartup); + AssemblyStartup as = DomainEntityFactory.createAssemblyStartup(baseElementStartup, assemblyRole); + as.setSimulated(true); + session.saveOrUpdate(config); + tx.commit(); + session.close(); + } catch (RuntimeException ex) { + ex.printStackTrace(); + tx.rollback(); + fail(); + } + + try { + // test something here + } finally { + // Cleaning + session = HibernateUtil.getSessionFactory().openSession(); + Transaction ctx = session.beginTransaction(); + session.delete(baseElementStartup); // <-- Necessary to break a circular dependency: + // AssemblyType needs ComponentType + // AssemblyStartup needs AssemblyRole + session.delete(lru); + session.delete(a2p); + session.delete(a2fe); + session.delete(telescope); + session.delete(camera); + session.delete(pad); + session.delete(config); + ctx.commit(); + session.close(); + } + } +} + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/FocusModelTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/FocusModelTest.java new file mode 100755 index 0000000000000000000000000000000000000000..2cf60248ba7bc31af5d9f5f3c94ceed75fcdd2ef --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/FocusModelTest.java @@ -0,0 +1,135 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: FocusModelTest.java,v 1.8 2012/01/12 00:44:36 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.cloning.CloningTestUtils; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class FocusModelTest extends TmcdbTestCase { + private Session session; + + public FocusModelTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAddFocusModel() { + Transaction creationTransaction = null; + HWConfiguration config = null; + Configuration swCfg = null; + Telescope newAntenna = null; + FocusModel fm = null; + creationTransaction = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + Component comp = CloningTestUtils.createComponent("FOO", "/FOO", compType, config.getConfiguration()); + swCfg.getComponents().add(comp); + session.save(comp); + + // --- end SW scaffolding --- + + newAntenna = DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), 4.5, 0L); + config.addBaseElementToBaseElements(newAntenna); + newAntenna.setHWConfiguration(config); + session.save(config); + session.flush(); + fm = DomainEntityFactory.createFocusModel(newAntenna); + FocusModelCoeff fmc = DomainEntityFactory.createFocusModelCoeff("FOO", 1.2341f); + fm.addFocusModelCoeffToFocusModelCoeffs(fmc); + fmc.setFocusModel(fm); + //session.save(config); + session.save(fm); + + creationTransaction.commit(); + + try { + // Iterate through + System.out.println("Test something here..."); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + newAntenna.getFocusModels().remove(fm); + session.delete(fm); + session.delete(newAntenna); + session.delete(config); + cleaningTransaction.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/LruTypeTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/LruTypeTest.java new file mode 100755 index 0000000000000000000000000000000000000000..7e2af352990c36bf66217a7ad73b45f1d8414ebf --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/LruTypeTest.java @@ -0,0 +1,80 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: LruTypeTest.java,v 1.1 2009/04/08 20:34:55 rhiriart Exp $" + */ +package alma.acs.tmcdb; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.LRUType; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class LruTypeTest extends TmcdbTestCase { + + private Session session; + + public LruTypeTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testLruType() { + + Transaction creationTransaction = null; + LRUType lru = null; + try { + creationTransaction = session.beginTransaction(); + lru = DomainEntityFactory.createLRUType("TestLRU", "TestLRU", "ICD XXX", 0L, "La donna e mobile", + "Qual piuma al vento"); + session.save(lru); + creationTransaction.commit(); + } catch (RuntimeException ex) { + ex.printStackTrace(); + creationTransaction.rollback(); + fail("An exception has been thrown so the transaction has been rolled back"); + } + + try { + System.out.println("Test something here..."); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + session.delete(lru); + cleaningTransaction.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/NewAntennaTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/NewAntennaTest.java new file mode 100755 index 0000000000000000000000000000000000000000..de553171af0247c6e2b96eba9a069c8acb064f24 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/NewAntennaTest.java @@ -0,0 +1,128 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: NewAntennaTest.java,v 1.6 2011/10/05 00:32:41 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class NewAntennaTest extends TmcdbTestCase { + + private Session session; + + public NewAntennaTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAddAntenna() { + Transaction transaction = null; + Configuration cfg = null; + HWConfiguration hwCfg = null; + Telescope antenna = null; + try { + transaction = session.beginTransaction(); + + cfg = new Configuration(); + cfg.setConfigurationName("Test"); + cfg.setFullName(""); + cfg.setActive(true); + cfg.setCreationTime(new Date()); + cfg.setDescription(""); + session.save(cfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(cfg); + cfg.getContainers().add(cont); + session.save(cont); + + hwCfg = new HWConfiguration(); + hwCfg.setConfiguration(cfg); + + antenna = DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + hwCfg.addBaseElementToBaseElements(antenna); + session.save(hwCfg); + + transaction.commit(); + } catch (RuntimeException ex) { + ex.printStackTrace(); + transaction.rollback(); + fail("An exception has been thrown so the transaction has been rolled back"); + } + + try { + logger.info("something here"); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + // Care needs to be taken with unidireccional many-to-one associations. + // The many side needs to be deleted first. + // In this test we have this problem with Telescope to Component; and + // Component to ComponentType. +// session.delete(antenna); +// session.delete(component); + session.delete(hwCfg); + cleaningTransaction.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PadTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PadTest.java new file mode 100755 index 0000000000000000000000000000000000000000..50c64b9b3a836415d57097a6205dd0d70c564fba --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PadTest.java @@ -0,0 +1,95 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: PadTest.java,v 1.2 2010/03/26 00:01:43 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; +import java.util.List; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.HWConfiguration; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.acs.tmcdb.Pad; +import alma.tmcdb.utils.HibernateUtil; + +public class PadTest extends TmcdbTestCase { + + private Session session; + + public PadTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + @SuppressWarnings("unchecked") + protected void tearDown() throws Exception { + Transaction transaction = session.beginTransaction(); + List confs = session.createQuery( + "from HWConfiguration where configuration.configurationName = 'ConfigurationTest'").list(); + if (confs.size() > 0) { + HWConfiguration c = confs.get(0); + session.delete(c); + } + transaction.commit(); + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testCreatePad() { + Transaction transaction = session.beginTransaction(); + + // --- SW scaffolding --- + Configuration swCfg; + swCfg = new Configuration(); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + // --- end SW scaffolding --- + + + HWConfiguration config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + Pad newPad = DomainEntityFactory.createPad("Pad01", new Coordinate(0.0, 0.0, 0.0), new Long(0)); + config.addBaseElementToBaseElements(newPad); + newPad.setHWConfiguration(config); + session.save(config); + + transaction.commit(); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PointingModelTest.java.save b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PointingModelTest.java.save new file mode 100755 index 0000000000000000000000000000000000000000..6c0efca1e743afbe3c9a9eef807a4ffcd1c70c11 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PointingModelTest.java.save @@ -0,0 +1,206 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: PointingModelTest.java,v 1.14 2012/01/12 00:44:54 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; +import java.util.List; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.ReceiverBandMod.ReceiverBand; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ContainerImplLang; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.history.BackLog; +import alma.tmcdb.history.HistoryRecord; +import alma.tmcdb.history.PointingModelCoeffBackLog; +import alma.tmcdb.history.PointingModelCoeffOffsetBackLog; +import alma.tmcdb.history.PointingModelHistorian; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class PointingModelTest extends TmcdbTestCase { + + private Session session; + private VersionKeeperInterceptor interceptor = new VersionKeeperInterceptor(); + + public PointingModelTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); +// session = HibernateUtil.getSessionFactory().openSession(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + interceptor.setSession(session); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAddPointingModel() { + Transaction tx = null; + HWConfiguration config = null; + Configuration swCfg = null; + Antenna antenna = null; + PointingModel pm = null; + + PointingModelHistorian historian = new PointingModelHistorian(session); + + tx = session.beginTransaction(); + + // --- SW scaffolding --- + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ContainerImplLang.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + // --- end SW scaffolding --- + + interceptor.createNewVersion("lala", "Original version"); + + antenna = DomainEntityFactory.createAntenna("DV01", + AntennaType.VA, + new Coordinate(0.0, 0.0, 0.0), + new Coordinate(0.0, 0.0, 0.0), 4.5, 0L, 0, 0); + config.addBaseElementToBaseElements(antenna); + session.save(config); + session.flush(); + pm = DomainEntityFactory.createPointingModel(antenna); + pm.addTerm("FOO", new PointingModelCoeff("FOO", 1.2341f)); + pm.addTerm("BAR", new PointingModelCoeff("BAR", 2.3f)); + pm.getTerms().get("FOO").getOffsets().put(ReceiverBand.ALMA_RB_02, 0.3); + pm.getTerm("FOO").setValue(3.14f); + session.save(pm); + tx.commit(); + session.flush(); + +// tx = session.beginTransaction(); +// PointingModelCoeff coeff = pm.getTerms().remove("BAR"); +// session.delete(coeff); +// session.save(pm); +// tx.commit(); +// session.flush(); + + interceptor.createNewVersion("lalo", "Several updates"); + + tx = session.beginTransaction(); + pm.getTerms().get("FOO").setValue(6.32f); + session.saveOrUpdate(pm); + tx.commit(); + session.flush(); + + tx = session.beginTransaction(); + pm.getTerm("FOO").getOffsets().remove(ReceiverBand.ALMA_RB_02); + session.saveOrUpdate(pm); + tx.commit(); + session.flush(); + + tx = session.beginTransaction(); + pm.getTerms().get("FOO").getOffsets().put(ReceiverBand.ALMA_RB_02, 0.4); + tx.commit(); + + interceptor.createNewVersion("gaga", "Even more updates"); + + tx = session.beginTransaction(); + pm.addTerm("HACA", new PointingModelCoeff("HACA", 1.0f)); + pm.addTerm("HACA1", new PointingModelCoeff("HACA1", 2.0f)); + pm.addTerm("IEC", DomainEntityFactory.createPointingModelCoeff("IEC", 3.0f)); + PointingModelCoeff coeff = pm.getTerms().remove("FOO"); + session.delete(coeff); + session.save(pm); + tx.commit(); + + try { + System.out.println("full backlog table -------------------"); + List backlogs = historian.getBackLogRecords(0, pm.getPointingModelId()); + for (BackLog bl : backlogs) { + System.out.print("" + bl.getVersion() + " " + bl.getModTime() + " " + + bl.getOperation() + " " + bl.getWho() + " " + bl.getDescription() + " "); + if (bl instanceof PointingModelCoeffBackLog) { + PointingModelCoeffBackLog pmcbl = (PointingModelCoeffBackLog)bl; + System.out.println(pmcbl.getName() + " " + pmcbl.getValue()); + } else if (bl instanceof PointingModelCoeffOffsetBackLog) { + PointingModelCoeffOffsetBackLog pmcobl = (PointingModelCoeffOffsetBackLog)bl; + System.out.println(pmcobl.getName() + " " + pmcobl.getReceiverBand() + " " + + pmcobl.getOffset()); + } + } + + System.out.println("historical record table ---------------"); + List histRecords = historian.getHistory(pm); + for (HistoryRecord hr : histRecords) { + System.out.println("" + hr.getVersion() + " " + hr.getTimestamp() + " " + + hr.getModifier() + " " + hr.getDescription()); + } + + System.out.println("recreating previous version -----------"); + PointingModel pastPointingModel = historian.recreate(1, pm); + System.out.println(pastPointingModel.toString()); + + } finally { + // Cleaning + tx = session.beginTransaction(); + session.delete(pm); + session.delete(antenna); + session.delete(config); + tx.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PointingModelTestWithDetachedObjects.java.save b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PointingModelTestWithDetachedObjects.java.save new file mode 100755 index 0000000000000000000000000000000000000000..55c2c19dd22dc8827349d3127371df7c99065ce2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/PointingModelTestWithDetachedObjects.java.save @@ -0,0 +1,182 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + */ +package alma.acs.tmcdb; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ContainerImplLang; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.cloning.CloningTestUtils; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class PointingModelTestWithDetachedObjects extends TmcdbTestCase { + + private Session session; + + public PointingModelTestWithDetachedObjects(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAddPointingModel() + { + Transaction creationTransaction = null; + HWConfiguration config = null; + Configuration swCfg = null; + Antenna antenna = null; + Pad newPad = null; + AntennaToPad a2p = null; + // save some things into the DB + creationTransaction = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ContainerImplLang.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + // --- end SW scaffolding --- + + config = new HWConfiguration(); + config.setConfiguration(swCfg); + antenna = DomainEntityFactory.createAntenna("DV01", + AntennaType.VA, + new Coordinate(0.0, 0.0, 0.0), + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L, + 0, + 0); + config.addBaseElementToBaseElements(antenna); + newPad = DomainEntityFactory.createPad("PAD01", new Coordinate(0.0, 0.0, 0.0), new Long(0)); + config.addBaseElementToBaseElements(newPad); + session.save(config); + session.flush(); + + a2p = DomainEntityFactory.createAntennaToPad(antenna, newPad, new Long(0), null, true); + +// pm = new PointingModel("band6", new Long(0), new Long(0), +// "uid://X0/X0/X0"); +// pm.getTerms().put("IAC", new Term(1.2341f, 0.00001f)); +// pm.getTerms().put("IAC0", new Term(1.2341f, 0.00001f)); +// pm.getTerms().put("IAC1", new Term(1.2341f, 0.00001f)); +// pm.getTerms().put("IAC2", new Term(1.2341f, 0.00001f)); +// pm.getTerms().put("IAC3", new Term(1.2341f, 0.00001f)); +// a2p.addPointingModel(pm); +// +// // save, commit, and close the session; after the session is closed the objects +// // are in "detached" state from hibernate's perspective +// session.save(a2p); +// creationTransaction.commit(); +// session.close(); +// +// // start a new session, working with (initially) detached objects +// session = HibernateUtil.getSessionFactory().openSession(); +// creationTransaction = session.beginTransaction(); +// +// // session.update will reattach the detached objects +// // (as well as schedule an update to the db) +// session.update(a2p); +// +// // now, add a new pointing model to the reattached AntennaToPad object +// pm2 = new PointingModel("band1", +// new Date(), +// null, +// "uid://X0/X0/X0"); +// pm2.getTerms().put("IAC2", new Term(1.2341f, 0.00001f)); +// pm2.getTerms().put("IAC3", new Term(1.2341f, 0.00001f)); +// pm2.setA2p(a2p); +// a2p.addPointingModel(pm2); + + // update the configuration, which should cascade down the hierarchy + session.update(config); + + creationTransaction.commit(); + + try { + Pad pad = antenna.getCurrentPad(); + assertNotNull(pad); + + session.close(); + session = HibernateUtil.getSessionFactory().openSession(); + + // verify that the new pointing model was saved + Transaction verificationTransaction = session.beginTransaction(); + AntennaToPad antToPad = (AntennaToPad)session.load(AntennaToPad.class, a2p.getAntennaToPadId()); + assertNotNull(antToPad); + + verificationTransaction.commit(); + session.close(); + } finally { + // Cleaning + session = HibernateUtil.getSessionFactory().openSession(); + Transaction cleaningTransaction = session.beginTransaction(); + session.delete(a2p); + session.delete(antenna); + session.delete(config); + cleaningTransaction.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/TelescopeTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/TelescopeTest.java new file mode 100755 index 0000000000000000000000000000000000000000..bb8cb30d33d7bf65b340a1fec0f8b886c8d05064 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/TelescopeTest.java @@ -0,0 +1,198 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: TelescopeTest.java,v 1.10 2011/10/05 00:32:40 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.BasebandNameMod.BasebandName; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class TelescopeTest extends TmcdbTestCase { + + private Session session; + + public TelescopeTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAddTelescope() { + Transaction transaction = null; + HWConfiguration config = null; + Configuration swCfg = null; + Telescope telescope = null; + transaction = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + // --- end SW scaffolding --- + + telescope = DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(telescope); + telescope.setHWConfiguration(config); + + session.save(config); + + transaction.commit(); + + + try { + logger.info("something here"); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + // Care needs to be taken with unidireccional many-to-one associations. + // The many side needs to be deleted first. + // In this test we have this problem with Telescope to Component; and + // Component to ComponentType. + session.delete(telescope); + session.delete(config); + cleaningTransaction.commit(); + } + } + + public void notestAddMultipleAntennas() { + Transaction transaction = null; + Configuration swCfg = null; + HWConfiguration config = null; + Telescope antenna1 = null; + Telescope antenna2 = null; + transaction = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + // --- end SW scaffolding --- + + antenna1 = DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(antenna1); + antenna1.setHWConfiguration(config); + antenna2 = DomainEntityFactory.createTelescope("DA41", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(antenna2); + antenna2.setHWConfiguration(config); + session.save(config); + transaction.commit(); + + try { + transaction = session.beginTransaction(); + assertEquals(2, session.createQuery("from Telescope").list().size()); + String query = "from Telescope telescope " + + "where telescope.baseElementName like '%DV01%' " + + "order by telescope.id"; + assertEquals(1, session.createQuery(query).list().size()); + transaction.commit(); + } finally { + // Cleaning + Transaction cleaningTransaction = session.beginTransaction(); + session.delete(antenna1); + session.delete(antenna2); + session.delete(config); + cleaningTransaction.commit(); + } + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/TelescopeToPadTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/TelescopeToPadTest.java new file mode 100755 index 0000000000000000000000000000000000000000..e87be308eec9b5e9412650a7acfb0a2b280b34e8 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/acs/tmcdb/TelescopeToPadTest.java @@ -0,0 +1,245 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: TelescopeToPadTest.java,v 1.9 2011/10/05 00:32:40 sharring Exp $" + */ +package alma.acs.tmcdb; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Container; +import alma.acs.tmcdb.ImplLangEnum; +import alma.acs.tmcdb.LoggingConfig; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.cloning.CloningTestUtils; +import alma.tmcdb.utils.CompositeIdentifierInterceptor; +import alma.tmcdb.utils.Coordinate; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +public class TelescopeToPadTest extends TmcdbTestCase { + + private Session session; + + public TelescopeToPadTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + } + + protected void tearDown() throws Exception { + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAssociateTelescopeToPad() { + Transaction tx = null; + HWConfiguration config = null; + Configuration swCfg = null; + Telescope telescope = null; + Pad pad = null; + TelescopeToPad t2p = null; + tx = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("Serra La Nave"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + // --- end SW scaffolding --- + + telescope = DomainEntityFactory.createTelescope("ASTRI", TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), 4.5, 0L); + config.addBaseElementToBaseElements(telescope); + telescope.setHWConfiguration(config); + pad = DomainEntityFactory.createPad("PAD01", new Coordinate(0.0, 0.0, 0.0), new Long(0)); + config.addBaseElementToBaseElements(pad); + pad.setHWConfiguration(config); + session.save(config); // TODO: Why do I need this (cascading doesn't seem to work, or we haven't got the spec ri + t2p = DomainEntityFactory.createTelescopeToPad(telescope, pad, new Long(0), new Long(0), true); + session.save(config); + tx.commit(); + session.close(); + + try { + // Test something here + } finally { + // Deleting the a2p, just to be sure it can be deleted alone + session = HibernateUtil.getSessionFactory().openSession(); + Transaction ctx = session.beginTransaction(); + telescope.getTelescopeToPads().remove(t2p); + pad.getTelescopeToPads().remove(t2p); + session.delete(t2p); + ctx.commit(); + // Deleting the rest + ctx = session.beginTransaction(); + session.delete(telescope); + session.delete(pad); + session.delete(config); + ctx.commit(); + session.close(); + } + } + + public void testAssociateTelescopeToPadAndUpdateEndTime() + { + Transaction tx = null; + Configuration swCfg = null; + HWConfiguration config = null; + Telescope telescope = null; + Pad pad = null; + TelescopeToPad t2p = null; + tx = session.beginTransaction(); + + // --- SW scaffolding --- + + swCfg = new Configuration(); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + session.save(swCfg); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Dodo/Foo:1.0"); + session.save(compType); + + LoggingConfig logCfg = new LoggingConfig(); + session.save(logCfg); + + Container cont = new Container(); + cont.setLoggingConfig(logCfg); + cont.setContainerName("javaContainer"); + cont.setPath("foo/bar"); + cont.setImplLang(ImplLangEnum.valueOfForEnum("java")); + cont.setConfiguration(swCfg); + swCfg.getContainers().add(cont); + session.save(cont); + + Component comp = CloningTestUtils.createComponent("FOO", "/FOO", compType, config.getConfiguration()); + swCfg.getComponents().add(comp); + session.save(comp); + + // --- end SW scaffolding --- + + telescope = DomainEntityFactory.createTelescope("DV01", TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), 4.5, 0L); + config.addBaseElementToBaseElements(telescope); + telescope.setHWConfiguration(config); + pad = DomainEntityFactory.createPad("PAD01", new Coordinate(0.0, 0.0, 0.0), new Long(0)); + config.addBaseElementToBaseElements(pad); + pad.setHWConfiguration(config); + session.save(config); // As usual, need this as long as we can't get cascading to work + t2p = DomainEntityFactory.createTelescopeToPad(telescope, pad, new Long(0), new Long(0), true); + session.save(config); + tx.commit(); + session.close(); + + try { + // now let's update the antenna to pad end time, persist it, and see if it worked. + session = HibernateUtil.getSessionFactory().openSession(); + Transaction ctx = session.beginTransaction(); + + System.out.println("original a2p end time for a2p with antenna id of: " + t2p.getTelescope().getBaseElementId() + + " and pad id of: " + t2p.getPad().getBaseElementId() + " is: " + t2p.getEndTime()); + + session.update(t2p); + + t2p.setEndTime(System.currentTimeMillis()); + + System.out.println("updated a2p end time for a2p with antenna id of: " + t2p.getTelescope().getBaseElementId() + + " and pad id of: " + t2p.getPad().getBaseElementId() + " is: " + t2p.getEndTime()); + + // commit transaction, flush session, close session; new end time should be persisted! + ctx.commit(); + session.flush(); + session.close(); + + // verify that the end time was properly persisted + Session session2 = HibernateUtil.getSessionFactory().openSession(); + ctx = session2.beginTransaction(); + Telescope antennaRead = (Telescope)session2.get(Telescope.class, telescope.getBaseElementId()); + TelescopeToPad a2pRead = antennaRead.getTelescopeToPads().iterator().next(); + + System.out.println("after re-reading from db, a2p end time for a2p with antenna id of: " + t2p.getTelescope().getBaseElementId() + + " and pad id of: " + t2p.getPad().getBaseElementId() + " is: " + t2p.getEndTime()); + + assertEquals(a2pRead.getEndTime(), t2p.getEndTime()); + ctx.commit(); + session2.close(); + } finally { + // Deleting the a2p, just to be sure it can be deleted alone + session = HibernateUtil.getSessionFactory().openSession(); + Transaction ctx = session.beginTransaction(); + telescope.getTelescopeToPads().remove(t2p); + pad.getTelescopeToPads().remove(t2p); + session.delete(t2p); + ctx.commit(); + // Deleting the rest + ctx = session.beginTransaction(); + session.delete(telescope); + session.delete(pad); + session.delete(config); + ctx.commit(); + session.close(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/AllTests.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/AllTests.java new file mode 100755 index 0000000000000000000000000000000000000000..cf633eb9c925816be327dc3d3e52a16fedbe2709 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/AllTests.java @@ -0,0 +1,14 @@ +package alma.tmcdb; + +import junit.framework.Test; +import junit.framework.TestSuite; + +public class AllTests { + + public static Test suite() { + TestSuite suite = new TestSuite("Test for alma.acs.tmcdb"); + suite.addTest(alma.acs.tmcdb.AllTests.suite()); + suite.addTest(alma.tmcdb.cloning.AllTests.suite()); + return suite; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/TmcdbTestCase.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/TmcdbTestCase.java new file mode 100755 index 0000000000000000000000000000000000000000..3bc980cc886f8539e7e34f56845e6a3f2dd04675 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/TmcdbTestCase.java @@ -0,0 +1,227 @@ +package alma.tmcdb; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStreamReader; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.SQLException; +import java.sql.Statement; +import java.util.jar.JarInputStream; +import java.util.logging.Logger; +import java.util.zip.ZipEntry; + +import alma.acs.logging.ClientLogManager; + +import junit.framework.TestCase; + +public class TmcdbTestCase extends TestCase { + + /** Password for connecting to the HSQLDB server */ + public static final String HSQLDB_PASSWORD = ""; + + /** Username for connecting to the HSQLDB server */ + public static final String HSQLDB_USER = "sa"; + + /** Basic URL for an HSQLDB file-based database */ + public static final String HSQLDB_FILE_URL = "jdbc:hsqldb:file:TMCDB/TMCDB"; + + /** Basic URL for an HSQLDB in-memory database */ + public static final String HSQLDB_MEMORY_URL = "jdbc:hsqldb:mem:ignored"; + + /** JDBC driver for HSQLDB */ + public static final String HSQLDB_JDBC_DRIVER = "org.hsqldb.jdbcDriver"; + + /** TMCDB Jar library file */ + public static final String TMCDB_JAR_FILE = "TMCDB.jar"; + + /** HSQLDB DDL script. It should be in TMCDB_JAR_FILE. */ + public static final String HSQLDB_CREATE_SQL_SCRIPT = "CreateHsqldbTables.sql"; + + /** HSQLDB DB cleaning script. It should be in TMCDB_JAR_FILE. */ + public static final String HSQLDB_DELETE_SQL_SCRIPT = "DropAllTables.sql"; + + /* --- new DDL scripts --- */ + + /** Base path, relative to $ACSDATA, for the DDL SQL scripts */ + public static final String HSQLDB_DDL_BASE_PATH = "/config/DDL/hsqldb/"; + + public static final String HSQLDB_SWCORE_CREATE_SQL_SCRIPT = "TMCDB_swconfigcore/CreateHsqldbTables.sql"; + public static final String HSQLDB_SWEXT_CREATE_SQL_SCRIPT = "TMCDB_swconfigext/CreateHsqldbTables.sql"; + public static final String HSQLDB_HWMON_CREATE_SQL_SCRIPT = "TMCDB_hwconfigmonitoring/CreateHsqldbTables.sql"; + + public static final String HSQLDB_SWCORE_DELETE_SQL_SCRIPT = "TMCDB_swconfigcore/DropAllTables.sql"; + public static final String HSQLDB_SWEXT_DELETE_SQL_SCRIPT = "TMCDB_swconfigext/DropAllTables.sql"; + public static final String HSQLDB_HWMON_DELETE_SQL_SCRIPT = "TMCDB_hwconfigmonitoring/DropAllTables.sql"; + + protected Logger logger = ClientLogManager.getAcsLogManager().getLoggerForApplication(this.getClass().getSimpleName(), false); + + public TmcdbTestCase(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + Class.forName(HSQLDB_JDBC_DRIVER); + String ddl1 = readConfigFile(findAcsDataConfigFile(HSQLDB_SWCORE_CREATE_SQL_SCRIPT)); + String ddl2 = readConfigFile(findAcsDataConfigFile(HSQLDB_SWEXT_CREATE_SQL_SCRIPT)); + String ddl3 = readConfigFile(findAcsDataConfigFile(HSQLDB_HWMON_CREATE_SQL_SCRIPT)); + String del1 = readConfigFile(findAcsDataConfigFile(HSQLDB_HWMON_DELETE_SQL_SCRIPT)); + String del2 = readConfigFile(findAcsDataConfigFile(HSQLDB_SWEXT_DELETE_SQL_SCRIPT)); + String del3 = readConfigFile(findAcsDataConfigFile(HSQLDB_SWCORE_DELETE_SQL_SCRIPT)); + + Connection conn = DriverManager.getConnection(HSQLDB_MEMORY_URL, + HSQLDB_USER, + HSQLDB_PASSWORD); + try { + runScript(del1, conn); + runScript(del2, conn); + runScript(del3, conn); + } catch ( Exception ex ) {} // fine, tables have not been constructed yet + runScript(ddl1, conn); + runScript(ddl2, conn); + runScript(ddl3, conn); + conn.close(); + } + + protected void tearDown() throws Exception { + String del1 = readConfigFile(findAcsDataConfigFile(HSQLDB_HWMON_DELETE_SQL_SCRIPT)); + String del2 = readConfigFile(findAcsDataConfigFile(HSQLDB_SWEXT_DELETE_SQL_SCRIPT)); + String del3 = readConfigFile(findAcsDataConfigFile(HSQLDB_SWCORE_DELETE_SQL_SCRIPT)); + Connection conn = DriverManager.getConnection(HSQLDB_MEMORY_URL, + HSQLDB_USER, + HSQLDB_PASSWORD); + runScript(del1, conn); + runScript(del2, conn); + runScript(del3, conn); + conn.close(); + super.tearDown(); + } + + /** + * Execute an SQL script. + * @param script The SQL script, as a single string + * @param conn Connection to the DB server + * @throws SQLException + */ + protected void runScript( String script, Connection conn ) + throws SQLException { + + Statement stmt = conn.createStatement(); + String[] statements = script.split( ";", -1 ); + for( int i = 0; i < statements.length; i++ ) { + String statement = statements[i].trim(); + if( statement.length() == 0 ) { + // skip empty lines + continue; + } + stmt.execute( statement ); + } + } + + /** + * Searches for a library file in ACS library locations, first in ACSROOT + * and second in INTROOT. + * @param lib Library name + * @return File path to the library, null if it is not in ACS library locations + */ + protected String findAcsLibrary(String lib) { + String[] acsDirs = new String[] {"INTROOT", "ACSROOT"}; + for (String d : acsDirs) { + String dir = System.getenv(d); + if (dir != null) { + String jar = dir + "/lib/" + lib; + File f = new File(jar); + if (f.exists()) return jar; + } + } + return null; + } + + /** + * Extracts a text file from a Jar library. Returns its contents as a string. + * + * @param jar Jar library + * @param file File to read from the Jar file + * @return file contents + * @throws IOException + */ + protected String readFileFromJar(String jar, String file) + throws IOException { + FileInputStream in = new FileInputStream(findAcsLibrary(jar)); + JarInputStream jarin = new JarInputStream(in); + ZipEntry ze = jarin.getNextEntry(); + while (ze != null) { + if (ze.getName().equals(file)) + break; + ze = jarin.getNextEntry(); + } + InputStreamReader converter = new InputStreamReader(jarin); + BufferedReader reader = new BufferedReader(converter); + + StringBuffer ddlbuff = new StringBuffer(); + String line = reader.readLine(); + while (line != null) { + ddlbuff.append(line + "\n"); + line = reader.readLine(); + } + reader.close(); + return new String(ddlbuff); + } + + /** + * Searches for a library file in ACS config locations, first in INTROOT + * and second in ACSROOT. + * @param file Configuration file name + * @return File path to the configuration file, null if it is not in + * ACS configuration locations + */ + protected String findAcsConfigFile(String file) { + String[] acsDirs = new String[] {"INTROOT", "ACSROOT"}; + for (String d : acsDirs) { + String dir = System.getenv(d); + if (dir != null) { + String cfgf = dir + "/config/" + file; + File f = new File(cfgf); + if (f.exists()) return cfgf; + } + } + return null; + } + + protected String findAcsDataConfigFile(String file) { + String dir = System.getenv("ACSDATA"); + if (dir != null) { + String cfgf = dir + HSQLDB_DDL_BASE_PATH + file; + File f = new File(cfgf); + if (f.exists()) return cfgf; + } + return null; + } + + /** + * Read a configuration file from ACS standard configuration locations. + * Returns the file contents as a String. + * + * @param file Configuratio file name + * @return file contents + * @throws IOException + */ + protected String readConfigFile(String file) + throws IOException { + FileInputStream in = new FileInputStream(file); + InputStreamReader converter = new InputStreamReader(in); + BufferedReader reader = new BufferedReader(converter); + + StringBuffer ddlbuff = new StringBuffer(); + String line = reader.readLine(); + while (line != null) { + ddlbuff.append(line + "\n"); + line = reader.readLine(); + } + reader.close(); + return new String(ddlbuff); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/AllTests.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/AllTests.java new file mode 100755 index 0000000000000000000000000000000000000000..3325b55ef0fd28155fb51950e8dbaa77d533469d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/AllTests.java @@ -0,0 +1,15 @@ +package alma.tmcdb.cloning; + +import junit.framework.Test; +import junit.framework.TestSuite; + +public class AllTests { + + public static Test suite() { + TestSuite suite = new TestSuite("Test for alma.tmcdb.cloning"); + suite.addTestSuite(CloneAndPersistConfigurationTest.class); + suite.addTestSuite(CloneAndPersistStartupScenarioTest.class); + suite.addTestSuite(CloneAndPersistBaseElementTest.class); + return suite; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistBaseElementTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistBaseElementTest.java new file mode 100755 index 0000000000000000000000000000000000000000..fda1f4e45f3f193e3066fa99b9c26dbc9843d718 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistBaseElementTest.java @@ -0,0 +1,120 @@ +package alma.tmcdb.cloning; + +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.HashSet; +import java.util.Set; + +import org.exolab.castor.mapping.MappingException; +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeToCamera; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.TelescopeTypeEnum; +import alma.acs.tmcdb.BaseElement; +import alma.acs.tmcdb.BEType; +import alma.tmcdb.utils.Coordinate; +import alma.acs.tmcdb.FocusModel; +import alma.acs.tmcdb.HWConfiguration; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.CompositeIdentifierInterceptor; +import alma.tmcdb.utils.HibernateUtil; + +/** + * Test for cloning of base elements. + * @author sharring + */ +public class CloneAndPersistBaseElementTest extends TmcdbTestCase +{ + /** + * Constructor. + * @param name the name of the test + */ + public CloneAndPersistBaseElementTest(String name) { + super(name); + } + + public void testCloningBaseElement() throws FileNotFoundException, IOException, MappingException + { + BaseElement originalBaseElement = createBaseElementForCloning(); + + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + Session session = HibernateUtil.getSessionFactory().openSession(interceptor); + Transaction transaction = session.beginTransaction(); + + BaseElement clonedBaseElement = CloningUtils.cloneBaseElement(HibernateUtil.getSessionFactory(), originalBaseElement, originalBaseElement.getBaseElementName()); + + if(originalBaseElement == clonedBaseElement) { + fail();; // shouldn't happen; object identities == means it's the same object (no actual clone)! + } + + System.out.println("originalBaseElement id: " + originalBaseElement.getBaseElementId() + " name: " + originalBaseElement.getBaseElementName() + " and config id: " + originalBaseElement.getHWConfiguration().getConfigurationId()); + System.out.println("clonedBaseElement id: " + clonedBaseElement.getBaseElementId() + " name: " + clonedBaseElement.getBaseElementName() + " and config id: " + clonedBaseElement.getHWConfiguration().getConfigurationId()); + System.out.println("--------------------------------------"); + System.out.println("orig: " + originalBaseElement); + System.out.println("--------------------------------------"); + System.out.println("clone: " + clonedBaseElement); + + assertEquals(true, CloningTestUtils.safeEquals(originalBaseElement, clonedBaseElement)); + assertEquals(null, clonedBaseElement.getBaseElementId()); + + // now, change the name to avoid uniqueness constraints on name (which don't seem to be working?) + clonedBaseElement.setBaseElementName("Copy of: " + clonedBaseElement.getBaseElementName()); + + session.saveOrUpdate(originalBaseElement.getHWConfiguration()); + + transaction.commit(); + session.close(); + } + + private BaseElement createBaseElementForCloning() + { + HWConfiguration config = CloningTestUtils.createConfiguration("test"); + Telescope newBaseElement = new Telescope(); + + newBaseElement.setTelescopeType(TelescopeTypeEnum.SST2M); + newBaseElement.setCommissionDate(System.currentTimeMillis()); + newBaseElement.setDishDiameter(12.0); + newBaseElement.setTelescopeName("ASTRI"); + newBaseElement.setBaseElementName("ASTRI"); + newBaseElement.setLatitude(37.68); + newBaseElement.setLongitude(14.97); + newBaseElement.setAltitude(1735.0); + newBaseElement.setBaseType(BEType.TELESCOPE); + Set focusModels = new HashSet(); + newBaseElement.setFocusModels(focusModels); + Set scheduledFrontEnds = new HashSet(); + newBaseElement.setTelescopeToCameras(scheduledFrontEnds); + Set scheduledPadLocations = new HashSet(); + newBaseElement.setTelescopeToPads(scheduledPadLocations); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL://www.www.www"); + + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + Session session = HibernateUtil.getSessionFactory().openSession(interceptor); + Transaction transaction = session.beginTransaction(); + session.saveOrUpdate(compType); + transaction.commit(); + session.close(); + + config.addBaseElementToBaseElements(newBaseElement); + newBaseElement.setHWConfiguration(config); // In Rafael's code, this is part of the method on the previous line. + + interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + transaction = session.beginTransaction(); + + session.saveOrUpdate(newBaseElement.getHWConfiguration().getConfiguration()); + config = newBaseElement.getHWConfiguration(); +// config.setConfigurationId(config.getConfiguration().getConfigurationId()); // Otherwise, this foreign key will be null when inserted, until I figure out how to convince Hibernate otherwise + session.saveOrUpdate(config); + transaction.commit(); + session.close(); + + return newBaseElement; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistConfigurationTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistConfigurationTest.java new file mode 100755 index 0000000000000000000000000000000000000000..f228fa6eb4d6c043af85cc6a712169c7c09ef527 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistConfigurationTest.java @@ -0,0 +1,678 @@ +package alma.tmcdb.cloning; +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.Date; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; + +import org.exolab.castor.mapping.MappingException; +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.BEType; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeToCamera; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.TelescopeTypeEnum; +import alma.acs.tmcdb.Assembly; +import alma.acs.tmcdb.AssemblyRole; +import alma.acs.tmcdb.AssemblyStartup; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.BaseElement; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.BEType; +import alma.tmcdb.utils.Coordinate; +import alma.acs.tmcdb.Camera; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.LRUType; +import alma.acs.tmcdb.Pad; +import alma.acs.tmcdb.Startup; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.CompositeIdentifierInterceptor; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +/** + * Tests for cloning (and saving) a configuration. + * @author sharrington + */ +public class CloneAndPersistConfigurationTest extends TmcdbTestCase +{ + public CloneAndPersistConfigurationTest(String name) { + super(name); + } + + public void testCloneSimpleHWConfiguration() throws FileNotFoundException, IOException, MappingException + { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction transaction = session.beginTransaction(); + + Configuration swCfg = new Configuration(); + swCfg.setConfigurationName("Test-1"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + HWConfiguration config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + session.save(swCfg); + session.save(config); + + // ------------------------------------------------------------------ + // now that we have a configuration persisted, let's test the cloning + // ------------------------------------------------------------------ + HWConfiguration clonedConfig = CloningUtils.cloneConfiguration(HibernateUtil.getSessionFactory(), + config, config.getConfiguration().getConfigurationName()); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + assertEquals(null, clonedConfig.getConfigurationId()); + + clonedConfig.getConfiguration().setConfigurationName("Copy of: " + config.getConfiguration().getConfigurationName()); + clonedConfig.getConfiguration().setCreationTime(new Date()); + session.save(clonedConfig.getConfiguration()); + session.save(clonedConfig); + + transaction.commit(); + session.close(); + } + + public void testCloneHWConfigurationWithComponentType() throws FileNotFoundException, IOException, MappingException + { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction transaction = session.beginTransaction(); + + Configuration swCfg = new Configuration(); + swCfg.setConfigurationName("Test-2"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + HWConfiguration config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + + ComponentType assCompType = new ComponentType(); + assCompType.setIDL("IDL:alma/Control/SecondLO:1.0"); + session.save(assCompType); + + // ------------------------------------------------------------------ + // now that we have a configuration persisted, let's test the cloning + // ------------------------------------------------------------------ + HWConfiguration clonedConfig = CloningUtils.cloneConfiguration(HibernateUtil.getSessionFactory(), + config, config.getConfiguration().getConfigurationName()); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + assertEquals(null, clonedConfig.getConfigurationId()); + + clonedConfig.getConfiguration().setConfigurationName("Copy2 of: " + config.getConfiguration().getConfigurationName()); + clonedConfig.getConfiguration().setCreationTime(new Date()); + session.save(clonedConfig.getConfiguration()); + session.save(clonedConfig); + + transaction.commit(); + session.close(); + } + + public void testCloneHWConfigurationWithComponentTypeAndAssembly() throws FileNotFoundException, IOException, MappingException + { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction transaction = session.beginTransaction(); + + Configuration swCfg = new Configuration(); + swCfg.setConfigurationName("Test-3"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + HWConfiguration config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + + ComponentType assCompType = new ComponentType(); + assCompType.setIDL("IDL:alma/Control/SecondLO:1.0"); + session.save(assCompType); + + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("TestAssemblyType", "TestAssemblyTypeFullName", BEType.TELESCOPE, + "Muta d'accento - e di pensiero.", "Sempre un amabile,", + assCompType, "", "simcode"); + + AssemblyRole assemblyRole = new AssemblyRole(); + assemblyRole.setRoleName("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + + LRUType lru = DomainEntityFactory.createLRUType("TestLRU", "TestLRU", "ICD XXX", 0L, "La donna e mobile", + "Qual piuma al vento"); + + lru.addAssemblyTypeToAssemblyTypes(assemblyType); + assemblyType.setLRUType(lru); + session.save(lru); + + Assembly assembly = new Assembly(); + assembly.setSerialNumber("0x001"); + assembly.setData(""); + assembly.setAssemblyType(assemblyType); + config.addAssemblyToAssemblies(assembly); + assembly.setHWConfiguration(config); + session.saveOrUpdate(config.getConfiguration()); + session.saveOrUpdate(config); + transaction.commit(); + session.close(); + + session = HibernateUtil.getSessionFactory().openSession(); + transaction = session.beginTransaction(); + + // ------------------------------------------------------------------ + // now that we have a configuration persisted, let's test the cloning + // ------------------------------------------------------------------ + HWConfiguration clonedConfig = CloningUtils.cloneConfiguration(HibernateUtil.getSessionFactory(), config, + config.getConfiguration().getConfigurationName()); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + assertEquals(null, clonedConfig.getConfigurationId()); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareAssemblies(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + clonedConfig.getConfiguration().setConfigurationName("Copy3 of: " + config.getConfiguration().getConfigurationName()); + clonedConfig.getConfiguration().setCreationTime(new Date()); + + session.saveOrUpdate(clonedConfig.getConfiguration()); + session.saveOrUpdate(clonedConfig); + session.flush(); + + assertEquals(config.getConfiguration().getDescription(), clonedConfig.getConfiguration().getDescription()); + assertEquals(config.getConfiguration().getFullName(), clonedConfig.getConfiguration().getFullName()); + assertEquals(clonedConfig.getConfiguration().getConfigurationName(), clonedConfig.getConfiguration().getConfigurationName()); + assertEquals(config.getConfiguration().getActive(), clonedConfig.getConfiguration().getActive()); + assertEquals(clonedConfig.getConfiguration().getCreationTime(), clonedConfig.getConfiguration().getCreationTime()); + assertNotSame(null, clonedConfig.getConfigurationId()); + assertNotSame(config.getConfigurationId(), clonedConfig.getConfigurationId()); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareAssemblies(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + + transaction.commit(); + session.close(); + } + + public void testCloneHWConfigurationWithComponentAndAssembly() throws FileNotFoundException, IOException, MappingException + { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction transaction = session.beginTransaction(); + + Configuration swCfg = new Configuration(); + swCfg.setConfigurationName("Test-5"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + HWConfiguration config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + + ComponentType assCompType = new ComponentType(); + assCompType.setIDL("IDL:alma/Control/SecondLO:1.0"); + session.save(assCompType); + + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("Test", "Test", BEType.TELESCOPE, + "Muta d'accento - e di pensiero.", "Sempre un amabile,", + assCompType, "", "simcode"); + + AssemblyRole assemblyRole = new AssemblyRole(); + assemblyRole.setRoleName("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + + LRUType lru = DomainEntityFactory.createLRUType("TestLRU", "TestLRU", "ICD XXX", 0L, "La donna e mobile", + "Qual piuma al vento"); + + lru.addAssemblyTypeToAssemblyTypes(assemblyType); + assemblyType.setLRUType(lru); + session.save(lru); + + Assembly assembly = new Assembly(); + assembly.setSerialNumber("0x001"); + assembly.setData(""); + assembly.setAssemblyType(assemblyType); + config.addAssemblyToAssemblies(assembly); + assembly.setHWConfiguration(config); + session.saveOrUpdate(config.getConfiguration()); + session.saveOrUpdate(config); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Control/Telescope:1.0"); + session.save(compType); + + Component component = CloningTestUtils.createComponent("DV01", "CONTROL", compType, swCfg); + config.getConfiguration().getComponents().add(component); + component.setConfiguration(config.getConfiguration()); + + session.update(config); + session.flush(); + transaction.commit(); + session.close(); + + session = HibernateUtil.getSessionFactory().openSession(); + transaction = session.beginTransaction(); + + // ------------------------------------------------------------------ + // now that we have a configuration persisted, let's test the cloning + // ------------------------------------------------------------------ + HWConfiguration clonedConfig = CloningUtils.cloneConfiguration(HibernateUtil.getSessionFactory(), + config, config.getConfiguration().getConfigurationName()); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + assertEquals(null, clonedConfig.getConfigurationId()); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareAssemblies(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareComponentsForHw(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + clonedConfig.getConfiguration().setConfigurationName("Copy4 of: " + config.getConfiguration().getConfigurationName()); + clonedConfig.getConfiguration().setCreationTime(new Date()); + + session.saveOrUpdate(clonedConfig.getConfiguration()); + session.saveOrUpdate(clonedConfig); + + assertEquals(config.getConfiguration().getDescription(), clonedConfig.getConfiguration().getDescription()); + assertEquals(config.getConfiguration().getFullName(), clonedConfig.getConfiguration().getFullName()); + assertEquals(clonedConfig.getConfiguration().getConfigurationName(), clonedConfig.getConfiguration().getConfigurationName()); + assertEquals(config.getConfiguration().getActive(), clonedConfig.getConfiguration().getActive()); + assertNotSame(null, clonedConfig.getConfigurationId()); + assertNotSame(config.getConfigurationId(), clonedConfig.getConfigurationId()); + assertNotSame(config.getConfiguration().getConfigurationId(), clonedConfig.getConfiguration().getConfigurationId()); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareComponentsForHw(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareAssemblies(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + transaction.commit(); + session.close(); + } + + public void testCloneHWConfigurationWithComponentAndAssemblyAndAntenna() throws FileNotFoundException, IOException, MappingException + { + Session session = HibernateUtil.getSessionFactory().openSession(); + Transaction transaction = session.beginTransaction(); + + Configuration swCfg = new Configuration(); + swCfg.setConfigurationName("Test-7"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + HWConfiguration config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + + ComponentType assCompType = new ComponentType(); + assCompType.setIDL("IDL:alma/Control/SecondLO:1.0"); + session.save(assCompType); + + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("Test", "Test", BEType.TELESCOPE, + "Muta d'accento - e di pensiero.", "Sempre un amabile,", + assCompType, "", "simcode"); + + AssemblyRole assemblyRole = new AssemblyRole(); + assemblyRole.setRoleName("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + + LRUType lru = DomainEntityFactory.createLRUType("TestLRU", "TestLRU", "ICD XXX", 0L, "La donna e mobile", + "Qual piuma al vento"); + + lru.addAssemblyTypeToAssemblyTypes(assemblyType); + assemblyType.setLRUType(lru); + session.save(lru); + + Assembly assembly = new Assembly(); + assembly.setSerialNumber("0x001"); + assembly.setData(""); + assembly.setAssemblyType(assemblyType); + config.addAssemblyToAssemblies(assembly); + assembly.setHWConfiguration(config); + session.saveOrUpdate(config.getConfiguration()); + session.saveOrUpdate(config); + + ComponentType compType = new ComponentType(); + compType.setIDL("IDL:alma/Control/Telescope:1.0"); + session.save(compType); + + Component component = CloningTestUtils.createComponent("DV01", "CONTROL", compType, swCfg); + session.save(component); + session.saveOrUpdate(swCfg); + session.update(config); + session.flush(); + + Telescope antenna = alma.tmcdb.utils.DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(antenna); + antenna.setHWConfiguration(config); + Telescope antenna2 = DomainEntityFactory.createTelescope("DV02", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(antenna2); + antenna2.setHWConfiguration(config); + Pad pad = DomainEntityFactory.createPad("Pad01", new Coordinate(0.0, 0.0, 0.0), new Long(0)); + config.addBaseElementToBaseElements(pad); + pad.setHWConfiguration(config); + session.update(config); + transaction.commit(); + session.flush(); + session.close(); + + session = HibernateUtil.getSessionFactory().openSession(); + transaction = session.beginTransaction(); + + // ------------------------------------------------------------------ + // now that we have a configuration persisted, let's test the cloning + // ------------------------------------------------------------------ + HWConfiguration clonedConfig = CloningUtils.cloneConfiguration(HibernateUtil.getSessionFactory(), + config, config.getConfiguration().getConfigurationName()); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + assertEquals(null, clonedConfig.getConfigurationId()); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareAssemblies(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareComponentsForHw(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareBaseElements(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + clonedConfig.getConfiguration().setConfigurationName("Copy5 of: " + config.getConfiguration().getConfigurationName()); + clonedConfig.getConfiguration().setCreationTime(new Date()); + + // now jump through some hoops to actually persist the cloned config; hoops necessary because + // we cannot at present save a fully populated configuration with cascading in hibernate; + // this requires intermediate saves, as in the following code. + swCfg = new Configuration(); + swCfg.setConfigurationName("Test-8"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + HWConfiguration toSaveClonedConfig = new HWConfiguration(); + toSaveClonedConfig.setConfiguration(swCfg); + toSaveClonedConfig.setTelescopeName("OSF"); + session.save(toSaveClonedConfig.getConfiguration()); + session.save(toSaveClonedConfig); + + for(Component compToAdd : clonedConfig.getConfiguration().getComponents()) { + compToAdd.setConfiguration(toSaveClonedConfig.getConfiguration()); + toSaveClonedConfig.getConfiguration().getComponents().add(compToAdd); + session.saveOrUpdate(compToAdd); + } + session.update(toSaveClonedConfig); + session.flush(); + + Set assembliesToSave = clonedConfig.getAssemblies(); + for(Assembly assemblyToSave: assembliesToSave) { + toSaveClonedConfig.addAssemblyToAssemblies(assemblyToSave); + assemblyToSave.setHWConfiguration(toSaveClonedConfig); + } + session.update(toSaveClonedConfig); + session.flush(); + + Set baseElementsToSave = clonedConfig.getBaseElements(); + for(BaseElement baseElementToSave : baseElementsToSave) { + toSaveClonedConfig.addBaseElementToBaseElements(baseElementToSave); + baseElementToSave.setHWConfiguration(toSaveClonedConfig); + } + session.update(toSaveClonedConfig); + session.flush(); + + assertNotSame(null, toSaveClonedConfig.getConfigurationId()); + assertNotSame(config.getConfigurationId(), toSaveClonedConfig.getConfigurationId()); + + // revert name && creation time for comparison, else comparison will fail. + String cloneName = toSaveClonedConfig.getConfiguration().getConfigurationName(); + toSaveClonedConfig.getConfiguration().setConfigurationName(config.getConfiguration().getConfigurationName()); + toSaveClonedConfig.getConfiguration().setCreationTime(config.getConfiguration().getCreationTime()); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, toSaveClonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + toSaveClonedConfig.getConfiguration().setConfigurationName(cloneName); + + transaction.commit(); + session.close(); + } + + public void testCloneHWConfigurationWithComponentAndAssemblyAndAntennaAndStartup() + { + Transaction tx = null; + LRUType lru = null; + HWConfiguration config = null; + Startup startup = null; + ComponentType compType = null; + Component component = null; + Telescope telescope = null; + Pad pad = null; + BaseElementStartup baseElementStartup = null; + AssemblyRole assemblyRole = null; + Camera camera = null; + Configuration swCfg = null; + + // Preliminaries, some global objects are needed + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + Session session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + + swCfg = new Configuration(); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + config = new HWConfiguration(); + config.setConfiguration(swCfg); + config.setTelescopeName("OSF"); + session.save(config.getConfiguration()); + session.save(config); + compType = new ComponentType(); + compType.setIDL("IDL:alma/Control/FOO:1.0"); + session.save(compType); + + lru = DomainEntityFactory.createLRUType("lru", "lru", "icd", 0L, "", ""); + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("test", + "test", + BEType.TELESCOPE, + "", + "", + compType, + "", "simcode"); + assemblyRole = new AssemblyRole(); + assemblyRole.setRoleName("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + lru.addAssemblyTypeToAssemblyTypes(assemblyType); + assemblyType.setLRUType(lru); + session.save(lru); + + tx.commit(); + session.close(); + + session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + component = CloningTestUtils.createComponent("FOO", "BAR", compType, swCfg); + config.getConfiguration().getComponents().add(component); + component.setConfiguration(config.getConfiguration()); + + telescope = DomainEntityFactory.createTelescope("ASTRI", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(telescope); + telescope.setHWConfiguration(config); + + pad = DomainEntityFactory.createPad("PAD01", new Coordinate(1.0, 2.0, 3.0), new Long(0)); + config.addBaseElementToBaseElements(pad); + pad.setHWConfiguration(config); + + session.saveOrUpdate(config.getConfiguration()); + session.saveOrUpdate(config); + + @SuppressWarnings("unused") // actually used in persistence under the covers... + TelescopeToPad a2p = DomainEntityFactory.createTelescopeToPad(telescope, pad, new Long(0), new Long(0), true); + + camera = DomainEntityFactory.createCamera("ACamera", new Long(0)); + config.addBaseElementToBaseElements(camera); + camera.setHWConfiguration(config); + + session.saveOrUpdate(config); + + @SuppressWarnings("unused") // actually used in persistence under the covers... + TelescopeToCamera a2fe = DomainEntityFactory.createTelescopeToCamera(telescope, camera, new Long(0), new Long(0)); + + startup = new Startup(); + startup.setStartupName("startup"); + config.addStartupToStartups(startup); + startup.setHWConfiguration(config); + baseElementStartup = new BaseElementStartup(); + baseElementStartup.setBaseElement(telescope); + baseElementStartup.setStartup(startup); + baseElementStartup.setSimulated(false); + startup.addBaseElementStartupToBaseElementStartups(baseElementStartup); + baseElementStartup.setStartup(startup); + + @SuppressWarnings("unused") // actually used in persistence under the covers... + AssemblyStartup assemblyStartup = new AssemblyStartup(); + assemblyStartup.setBaseElementStartup(baseElementStartup); + baseElementStartup.addAssemblyStartupToAssemblyStartups(assemblyStartup); + assemblyStartup.setAssemblyRole(assemblyRole); + assemblyStartup.setSimulated(false); + + session.saveOrUpdate(config.getConfiguration()); + session.saveOrUpdate(config); + session.flush(); + tx.commit(); + session.close(); + + System.out.println("SLH >>>>>>>>>>>>>>> Original: " + config.toString()); + + // ------------------------------------------------------------------ + // now that we have a configuration persisted, let's test the cloning + // ------------------------------------------------------------------ + interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + HWConfiguration clonedConfig = CloningUtils.cloneConfiguration(HibernateUtil.getSessionFactory(), + config, config.getConfiguration().getConfigurationName()); + + assertEquals(null, clonedConfig.getConfigurationId()); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + clonedConfig.getConfiguration().setConfigurationName("Copy6 of: " + config.getConfiguration().getConfigurationName()); + clonedConfig.getConfiguration().setCreationTime(new Date()); + +// for(BaseElement baseElement : clonedConfig.getBaseElements()) { +// if(baseElement instanceof Telescope) { +// for(TelescopeToPad ant2pad: ((Telescope)baseElement).getScheduledPadLocations()) { +// a2p.setId(new TelescopeToPad.Id(null, null, ant2pad.getEndTime())); +// } +// } +// } + +// for(Startup scenarioToFix: clonedConfig.getStartupScenarios()) { +// for(AssemblyStartup assStartupToFix : scenarioToFix.getAssemblyStartups()) { +// assStartupToFix.setId(new AssemblyStartup.Id(null, null, assStartupToFix.getAssemblyRole().getName())); +// } +// for(BaseElementStartup beStartupToFix : scenarioToFix.getBaseElementStartups()) { +// for(AssemblyStartup assemblyStartupToFix : beStartupToFix.getAssemblyStartups()) { +// assemblyStartupToFix.setId(new AssemblyStartup.Id(null, null, assemblyStartupToFix.getAssemblyRole().getName())); +// } +// } +// } + + System.out.println("SLH <<<<<<<<<<<<<<<<<<<, Clone: " + clonedConfig.toString()); + + /* + * The following sequence of steps follows the comments for CloningUtils#removeAntennaToPadMappings + * I still don't understand why I can't find a cascade specification that would make this unnecessary. + * JS -- 4 September 2014 + */ + session.saveOrUpdate(clonedConfig.getConfiguration()); + Map > savedAntennaToPadMappings = CloningUtils.removeAntennaToPadMappings(clonedConfig); + session.saveOrUpdate(clonedConfig); + CloningUtils.restoreTelescopeToPadMappings(clonedConfig, savedAntennaToPadMappings); + session.saveOrUpdate(clonedConfig); + session.flush(); + + assertEquals(config.getConfiguration().getDescription(), clonedConfig.getConfiguration().getDescription()); + assertEquals(config.getConfiguration().getFullName(), clonedConfig.getConfiguration().getFullName()); + assertNotSame(config.getConfiguration().getConfigurationName(), clonedConfig.getConfiguration().getConfigurationName()); + assertEquals(config.getConfiguration().getActive(), clonedConfig.getConfiguration().getActive()); + assertEquals(clonedConfig.getConfiguration().getCreationTime(), clonedConfig.getConfiguration().getCreationTime()); + assertNotSame(null, clonedConfig.getConfigurationId()); + assertNotSame(config.getConfigurationId(), clonedConfig.getConfigurationId()); + + System.out.println("orig: " + config); + System.out.println("--------------------"); + System.out.println("clone: " + clonedConfig); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareComponentsForHw(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareAssemblies(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareBaseElements(config, clonedConfig); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareStartups(config.getStartups(), clonedConfig.getStartups()); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + tx.commit(); + session.close(); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistStartupScenarioTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistStartupScenarioTest.java new file mode 100755 index 0000000000000000000000000000000000000000..e8f5fda4531b4e3aedbede80ced76ff63a349d7d --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneAndPersistStartupScenarioTest.java @@ -0,0 +1,245 @@ +package alma.tmcdb.cloning; + +import java.io.FileNotFoundException; +import java.io.IOException; +import java.util.Date; +import java.util.HashSet; + +import org.exolab.castor.mapping.MappingException; +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.BEType; +import alma.acs.tmcdb.BEStartupBEType; +import alma.acs.tmcdb.Component; +import alma.acs.tmcdb.ComponentType; +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.Telescope; +import alma.acs.tmcdb.TelescopeToCamera; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.TelescopeTypeEnum; +import alma.acs.tmcdb.AssemblyRole; +import alma.acs.tmcdb.AssemblyStartup; +import alma.acs.tmcdb.AssemblyType; +import alma.acs.tmcdb.BaseElementStartup; +import alma.acs.tmcdb.BEType; +import alma.tmcdb.utils.Coordinate; +import alma.acs.tmcdb.Camera; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.LRUType; +import alma.acs.tmcdb.Pad; +import alma.acs.tmcdb.Startup; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.CompositeIdentifierInterceptor; +import alma.tmcdb.utils.DomainEntityFactory; +import alma.tmcdb.utils.HibernateUtil; + +/** + * Tests the cloning (and persisting) of a startup scenario within an existing configuration. + * @author sharrington + */ +public class CloneAndPersistStartupScenarioTest extends TmcdbTestCase +{ + /** + * Constructor + * @param name the name of the test + */ + public CloneAndPersistStartupScenarioTest(String name) { + super(name); + } + + /* + public void testCloningStartupScenarioWithoutBeanlib() throws FileNotFoundException, IOException, MappingException + { + StartupScenario startup = createStartupForCloning(); + + // ---------------------------------------------------------------------------------------- + // now that we have a configuration persisted, let's test the cloning of a startup scenario + // ---------------------------------------------------------------------------------------- + + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + Session session = HibernateUtil.getSessionFactory().openSession(interceptor); + Transaction transaction = session.beginTransaction(); + + StartupScenario clonedStartup = CloningUtils.cloneStartupScenario(startup, startup.getName()); + + if(startup == clonedStartup) { + fail();; // shouldn't happen; object identities == means it's the same object (no actual clone)! + } + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.safeEquals(startup, clonedStartup); + if(CloningTestUtils.getListOfProblems().length > 0) { + System.out.println("Probs: "); + for(String prob : CloningTestUtils.getListOfProblems()) { + System.out.println(prob); + } + } + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + assertEquals(null, clonedStartup.getId()); + + System.out.println("orig startup id: " + startup.getId() + " name: " + startup.getName() + " and config id: " + startup.getConfiguration().getId()); + System.out.println("cloned startup id: " + clonedStartup.getId() + " name: " + clonedStartup.getName() + " and config id: " + clonedStartup.getConfiguration().getId()); + + // change the name to avoid uniqueness constraints on name + clonedStartup.setName("Copy of: " + clonedStartup.getName()); + + System.out.println("--------------------------------------"); + System.out.println("orig: " + startup); + System.out.println("--------------------------------------"); + System.out.println("clone: " + clonedStartup); + + session.saveOrUpdate(startup.getConfiguration()); + + transaction.commit(); + session.close(); + } + */ + + public void testCloningStartupScenarioWithBeanlib() throws FileNotFoundException, IOException, MappingException + { + Startup startup = createStartupForCloning(); + + // ---------------------------------------------------------------------------------------- + // now that we have a configuration persisted, let's test the cloning of a startup scenario + // ---------------------------------------------------------------------------------------- + + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + Session session = HibernateUtil.getSessionFactory().openSession(interceptor); + Transaction transaction = session.beginTransaction(); + + Startup clonedStartup = CloningUtils.cloneStartupWithBeanlib(HibernateUtil.getSessionFactory(), startup, startup.getStartupName()); + + if(startup == clonedStartup) { + fail();; // shouldn't happen; object identities == means it's the same object (no actual clone)! + } + + System.out.println("orig startup id: " + startup.getStartupId() + " name: " + startup.getStartupName() + " and config id: " + startup.getHWConfiguration().getConfigurationId()); + System.out.println("cloned startup id: " + clonedStartup.getStartupId() + " name: " + clonedStartup.getStartupName() + " and config id: " + clonedStartup.getHWConfiguration().getConfigurationId()); + System.out.println("--------------------------------------"); + System.out.println("orig: " + startup); + System.out.println("--------------------------------------"); + System.out.println("clone: " + clonedStartup); + + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.safeEquals(startup, clonedStartup); + assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + assertEquals(null, clonedStartup.getStartupId()); + + // change the name to avoid uniqueness constraints on name + clonedStartup.setStartupName("Copy of: " + clonedStartup.getStartupName()); + + session.saveOrUpdate(startup.getHWConfiguration()); + + transaction.commit(); + session.close(); + } + + private Startup createStartupForCloning() + { + Transaction tx = null; + LRUType lru = null; + HWConfiguration config = null; + Startup startup = null; + ComponentType compType = null; + Telescope antenna = null; + Pad pad = null; + BaseElementStartup baseElementStartup = null; + AssemblyRole assemblyRole = null; + Camera frontEnd = null; + Configuration swCfg = null; + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + Session session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + + swCfg = new Configuration(); + swCfg.setConfigurationName("Test"); + swCfg.setFullName(""); + swCfg.setActive(true); + swCfg.setCreationTime(new Date()); + swCfg.setDescription(""); + config = new HWConfiguration(); + config.setTelescopeName("OSF"); + config.setConfiguration(swCfg); + session.save(swCfg); + session.save(config); + compType = new ComponentType(); + compType.setIDL("IDL:alma/Control/FOO:1.0"); + session.save(compType); + + lru = DomainEntityFactory.createLRUType("lru", "lru", "icd", 0L, "", ""); + AssemblyType assemblyType = DomainEntityFactory.createAssemblyType("test", + "test", + BEType.TELESCOPE, + "", + "", + compType, + "", "simcode"); + assemblyRole = new AssemblyRole(); + assemblyRole.setRoleName("aRole"); + assemblyType.addAssemblyRoleToAssemblyRoles(assemblyRole); + assemblyRole.setAssemblyType(assemblyType); + lru.addAssemblyTypeToAssemblyTypes(assemblyType); + assemblyType.setLRUType(lru); // Again, this should be handled in the above method... + session.save(lru); + + tx.commit(); + session.close(); + + interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + antenna = DomainEntityFactory.createTelescope("DV01", + TelescopeTypeEnum.SST2M, + new Coordinate(0.0, 0.0, 0.0), + 4.5, + 0L); + config.addBaseElementToBaseElements(antenna); + antenna.setHWConfiguration(config); + pad = DomainEntityFactory.createPad("PAD01", new Coordinate(0.0, 0.0, 0.0), new Long(0)); + config.addBaseElementToBaseElements(pad); + pad.setHWConfiguration(config); //TODO: Another case where this should be subsumed in the above method + + session.saveOrUpdate(config.getConfiguration()); + session.saveOrUpdate(config); + + @SuppressWarnings("unused") // actually used in persistence under the covers... + TelescopeToPad a2p = DomainEntityFactory.createTelescopeToPad(antenna, pad, new Long(0), new Long(0), true); + + + + frontEnd = DomainEntityFactory.createCamera("ACamera", new Long(0)); + config.addBaseElementToBaseElements(frontEnd); + frontEnd.setHWConfiguration(config); // TODO: Should be in above method! + + @SuppressWarnings("unused") // actually used in persistence under the covers... + TelescopeToCamera a2fe = DomainEntityFactory.createTelescopeToCamera(antenna, frontEnd, new Long(0), new Long(0)); + + startup = new Startup(); + startup.setStartupName("startup"); + startup.setHWConfiguration(config); + config.addStartupToStartups(startup); + baseElementStartup = new BaseElementStartup(); + baseElementStartup.setBaseElement(antenna); + baseElementStartup.setBaseElementType(BEType.TELESCOPE); + baseElementStartup.setStartup(startup); + baseElementStartup.setSimulated(false); + startup.addBaseElementStartupToBaseElementStartups(baseElementStartup); + + AssemblyStartup assemblyStartup = new AssemblyStartup(); + assemblyStartup.setBaseElementStartup(baseElementStartup); + assemblyStartup.setAssemblyRole(assemblyRole); + assemblyStartup.setSimulated(false); + HashSet startups = new HashSet(); + startups.add(assemblyStartup); + baseElementStartup.setAssemblyStartups(startups); // TODO: Verify that this is essentially what Rafael does + + session.saveOrUpdate(config.getConfiguration()); + session.saveOrUpdate(config); + tx.commit(); + session.close(); + + return startup; + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneWithSampleDatabaseTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneWithSampleDatabaseTest.java new file mode 100755 index 0000000000000000000000000000000000000000..8578b323c52f4e151da74d6276411c25ddb70ec4 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/cloning/CloneWithSampleDatabaseTest.java @@ -0,0 +1,171 @@ +package alma.tmcdb.cloning; + +import java.io.FileNotFoundException; +import java.io.IOException; +import java.sql.Connection; +import java.sql.DriverManager; +import java.util.List; +import java.util.Set; +import java.util.Map; +import java.util.logging.Logger; + +import junit.framework.TestCase; + +import org.exolab.castor.mapping.MappingException; +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.archive.database.helpers.wrappers.DbConfigException; +import alma.archive.database.helpers.wrappers.TmcdbDbConfig; +import alma.acs.tmcdb.TelescopeToPad; +import alma.acs.tmcdb.HWConfiguration; +import alma.acs.tmcdb.Startup; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.utils.CompositeIdentifierInterceptor; +import alma.tmcdb.utils.HibernateUtil; + +public class CloneWithSampleDatabaseTest extends TestCase +{ + private Session session; + private Connection conn; + + public CloneWithSampleDatabaseTest(String name) { + super(name); + } + + public void testCloneStartupScenario() throws FileNotFoundException, IOException, MappingException, DbConfigException + { + TmcdbDbConfig dbconf = new TmcdbDbConfig(Logger.getAnonymousLogger()); + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + Transaction tx = session.beginTransaction(); + + List hwConfigs = session.createCriteria(HWConfiguration.class).list(); + assertNotNull(hwConfigs); + assertTrue(hwConfigs.size() != 0); + HWConfiguration config = (HWConfiguration) hwConfigs.get(0); + assertNotNull(config); + + Set scenarios = config.getStartups(); + assertNotNull(scenarios); + assertFalse(0 == scenarios.size()); + Startup scenarioToClone = scenarios.iterator().next(); + assertNotNull(scenarioToClone); + scenarioToClone = (Startup) session.get(Startup.class, scenarioToClone.getStartupId()); + Startup clonedStartup = CloningUtils.cloneStartupWithBeanlib(HibernateUtil.getSessionFactory(), scenarioToClone, scenarioToClone.getStartupName()); + assertTrue(CloningTestUtils.safeEquals(scenarioToClone, clonedStartup)); + assertEquals(null, clonedStartup.getStartupId()); + + clonedStartup.setStartupName("Copy of: " + clonedStartup.getStartupName()); + clonedStartup.setHWConfiguration(scenarioToClone.getHWConfiguration()); + scenarioToClone.getHWConfiguration().addStartupToStartups(clonedStartup); + session.update(scenarioToClone.getHWConfiguration()); + + tx.commit(); + session.close(); + } + + public void testCloneStartupScenarioWithBeanLib() throws FileNotFoundException, IOException, MappingException, DbConfigException + { + TmcdbDbConfig dbconf = new TmcdbDbConfig(Logger.getAnonymousLogger()); + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + Transaction tx = session.beginTransaction(); + + List hwConfigs = session.createCriteria(HWConfiguration.class).list(); + assertNotNull(hwConfigs); + assertTrue(hwConfigs.size() != 0); + HWConfiguration config = (HWConfiguration) hwConfigs.get(0); + assertNotNull(config); + + Set scenarios = config.getStartups(); + assertNotNull(scenarios); + assertFalse(0 == scenarios.size()); + Startup scenarioToClone = scenarios.iterator().next(); + assertNotNull(scenarioToClone); + Startup clonedStartup = CloningUtils.cloneStartupWithBeanlib(session.getSessionFactory(), scenarioToClone, scenarioToClone.getStartupName()); + assertTrue(CloningTestUtils.safeEquals(scenarioToClone, clonedStartup)); + assertEquals(null, clonedStartup.getStartupId()); + + clonedStartup.setStartupName("Copy of: " + clonedStartup.getStartupName()); + clonedStartup.setHWConfiguration(scenarioToClone.getHWConfiguration()); + scenarioToClone.getHWConfiguration().addStartupToStartups(clonedStartup); + session.update(scenarioToClone.getHWConfiguration()); + + tx.commit(); + session.close(); + } + + public void testCloneFullHWConfiguration() throws FileNotFoundException, IOException, MappingException, DbConfigException + { + TmcdbDbConfig dbconf = new TmcdbDbConfig(Logger.getAnonymousLogger()); + CompositeIdentifierInterceptor interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + Transaction tx = session.beginTransaction(); + + List hwConfigs = session.createCriteria(HWConfiguration.class).list(); + assertNotNull(hwConfigs); + assertTrue(hwConfigs.size() != 0); + HWConfiguration config = (HWConfiguration) hwConfigs.get(0); + assertNotNull(config); + HWConfiguration clonedConfig = CloningUtils.cloneConfiguration(HibernateUtil.getSessionFactory(), + config, config.getConfiguration().getConfigurationName()); + + assertEquals(null, clonedConfig.getConfigurationId()); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, clonedConfig); + TestCase.assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + + clonedConfig.getConfiguration().setConfigurationName("Clone of: " + config.getConfiguration().getConfigurationName()); + + // save sw side + session.save(clonedConfig.getConfiguration()); + tx.commit(); + session.close(); + + // save hw side, minus antennatopad and holographytowertopad mappings + Map > savedA2pMappings = CloningUtils.removeAntennaToPadMappings(clonedConfig); + interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + session.save(clonedConfig); + tx.commit(); + session.close(); + + // save hw side, with antennatopad mappings + CloningUtils.restoreTelescopeToPadMappings(clonedConfig, savedA2pMappings); + interceptor = new CompositeIdentifierInterceptor(); + session = HibernateUtil.getSessionFactory().openSession(interceptor); + tx = session.beginTransaction(); + session.saveOrUpdate(clonedConfig); + tx.commit(); + session.close(); + + assertFalse(null == clonedConfig.getConfigurationId()); + CloningTestUtils.clearListOfProblems(); + CloningTestUtils.compareConfigurations(config, clonedConfig); + TestCase.assertEquals(0, CloningTestUtils.getListOfProblems().length); + CloningTestUtils.clearListOfProblems(); + } + + protected void setUp() throws Exception { + CloningTestUtils.unzipSampleTmcdbDatabase(); + CloningTestUtils.untarSampleTmcdbDatabase(); + + Class.forName(TmcdbTestCase.HSQLDB_JDBC_DRIVER); + conn = DriverManager.getConnection(TmcdbTestCase.HSQLDB_FILE_URL, + TmcdbTestCase.HSQLDB_USER, + TmcdbTestCase.HSQLDB_PASSWORD); + //conn.close(); + } + + protected void tearDown() throws Exception { + conn = DriverManager.getConnection(TmcdbTestCase.HSQLDB_FILE_URL, + TmcdbTestCase.HSQLDB_USER, + TmcdbTestCase.HSQLDB_PASSWORD); + + conn.close(); + CloningTestUtils.removeSampleTmcdbDatabase(); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/history/PointingModelTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/history/PointingModelTest.java new file mode 100755 index 0000000000000000000000000000000000000000..f7bf765743f879e83417db279be6a0680b543d08 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/history/PointingModelTest.java @@ -0,0 +1,92 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: PointingModelTest.java,v 1.2 2010/12/16 21:56:24 rhiriart Exp $" + */ +package alma.tmcdb.history; + +import java.util.List; + +import org.hibernate.Query; +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.ReceiverBandMod.ReceiverBand; +import alma.acs.tmcdb.BL_PointingModelCoeff; +import alma.acs.tmcdb.OperationEnum; +import alma.tmcdb.TmcdbTestCase; +import alma.tmcdb.history.interceptor.VersionKeeperInterceptor; +import alma.tmcdb.utils.HibernateUtil; + +public class PointingModelTest extends TmcdbTestCase { + + private Session session; + private VersionKeeperInterceptor interceptor = new VersionKeeperInterceptor(); + + public PointingModelTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + interceptor.setSession(session); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testAddPointingModel() { + Transaction tx = null; + BL_PointingModelCoeff pmbl = null; + try { + tx = session.beginTransaction(); + pmbl = new BL_PointingModelCoeff(); + pmbl.setPointingModelId(0); + pmbl.setVersion(0); + pmbl.setModTime(new Long(System.currentTimeMillis())); + pmbl.setOperation(OperationEnum.I); + pmbl.setWho("rhiriart"); + pmbl.setChangeDesc("tests"); + pmbl.setCoeffName("IACA"); + pmbl.setCoeffValue(0.0); + session.save(pmbl); + tx.commit(); + tx = session.beginTransaction(); + Query query = session.createQuery("from BL_PointingModelCoeff"); + List records = + (List) query.list(); + assertEquals(1, records.size()); + query = session.createQuery("from BL_PointingModelCoeffOffset"); + tx.commit(); + } finally { + // Cleaning + tx = session.beginTransaction(); + session.delete(pmbl); + tx.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/history/VersionInfoTest.java.save b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/history/VersionInfoTest.java.save new file mode 100755 index 0000000000000000000000000000000000000000..422fd8d85ffdd6dff383aeb45f0ea0e2fef921e2 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/history/VersionInfoTest.java.save @@ -0,0 +1,92 @@ +/* + * ALMA - Atacama Large Millimeter Array + * (c) European Southern Observatory, 2002 + * (c) Associated Universities Inc., 2002 + * Copyright by ESO (in the framework of the ALMA collaboration), + * Copyright by AUI (in the framework of the ALMA collaboration), + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY, without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + * + * "@(#) $Id: VersionInfoTest.java,v 1.2 2010/12/21 22:20:13 rhiriart Exp $" + */ +package alma.tmcdb.history; + +import java.util.Date; + +import org.hibernate.Session; +import org.hibernate.Transaction; + +import alma.acs.tmcdb.Configuration; +import alma.acs.tmcdb.TmcdbTestCase; +import alma.tmcdb.history.VersionInfo; +import alma.tmcdb.utils.HibernateUtil; + +public class VersionInfoTest extends TmcdbTestCase { + + private Session session; + + public VersionInfoTest(String name) { + super(name); + } + + protected void setUp() throws Exception { + super.setUp(); + session = HibernateUtil.getSessionFactory().openSession(); + } + + protected void tearDown() throws Exception { + session.close(); + HibernateUtil.shutdown(); + super.tearDown(); + } + + public void testVersionInfo() { + Transaction tx = null; + + tx = session.beginTransaction(); + Configuration swc; + swc = new Configuration(); + swc.setConfigurationName("Test"); + swc.setFullName(""); + swc.setActive(true); + swc.setCreationTime(new Date()); + swc.setDescription(""); + session.save(swc); + tx.commit(); + + tx = session.beginTransaction(); + VersionInfo vi = new VersionInfo(); + vi.setName("PointingModel"); + vi.setConfigurationId(swc.getConfigurationId()); + vi.setEntityId(new Long(0)); + vi.setLock(true); + vi.setIncreaseVersion(true); + vi.setCurrentVersion(0); + vi.setModifier("rhiriart"); + vi.setDescription("Setting new calibration values."); + session.save(vi); + tx.commit(); + try { + // nothing here yet + } finally { + // Cleaning + tx = session.beginTransaction(); + session.delete(vi); + tx.commit(); + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/xmlmapping/XmlMappingTest.java b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/xmlmapping/XmlMappingTest.java new file mode 100755 index 0000000000000000000000000000000000000000..2ac3b1e9cd5ae89ed52f04bc1a544e178e231632 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/alma/tmcdb/xmlmapping/XmlMappingTest.java @@ -0,0 +1,224 @@ +package alma.tmcdb.xmlmapping; + +import alma.tmcdb.TmcdbTestCase; + +public class XmlMappingTest extends TmcdbTestCase { + + public XmlMappingTest(String name) { + super(name); + } + +// protected void setUp() throws Exception { +// super.setUp(); +// } +// +// protected void tearDown() throws Exception { +// super.tearDown(); +// } +// +// public void testSerializationWithMappingFile() throws Exception { +// +// String introot = System.getenv("INTROOT"); +// Mapping mapping = new Mapping(); +// String mf; +// mf = introot + "/config/Configuration.mapping.xml"; +// mapping.loadMapping(new InputSource(new FileReader(mf))); +// +// Session session = HibernateUtil.getSessionFactory().openSession(); +// Transaction transaction = session.beginTransaction(); +// +// LruType lru = new LruType("SecondLO", "2nd LO generator", "ICD XXX", +// 0L, "Generates LO signals for second down conversion", "Notes..."); +// +// Configuration config = new Configuration("Test", "XML Mapping Test Configuration", +// "Configuration for XML mapping testing"); +// +// +// ComponentType assCompType = new ComponentType("IDL:alma/Control/SecondLO:1.0"); +// session.save(assCompType); +// session.save(config); +// +// AssemblyType assemblyType = new AssemblyType("SecondLO", "2nd LO generator", +// BaseElementType.Antenna, +// "Generates LO signals for second down conversion", +// "Hard to lock", +// assCompType); +// +// AssemblyRole assemblyRole = new AssemblyRole("SecondLOBBpr0", +// new CANParameters(0, "0x0", "0x1")); +// assemblyType.addRole(assemblyRole); +// +// lru.addAssemblyType(assemblyType); +// +// session.save(lru); +// +// Assembly assembly = new Assembly("0x001", "", assemblyType); +// config.addAssembly(assembly); +// session.save(config); +// +// ComponentType compType = new ComponentType("IDL:alma/Control/Antenna:1.0"); +// session.save(compType); +// Component component = new Component("DV01", "CONTROL", compType); +// config.addComponent(component); +// session.save(config); +// session.flush(); +// Antenna antenna = new Antenna("DV01", +// AntennaType.VA, +// new Coordinate(0.0, 0.0, 0.0), +// new Coordinate(0.0, 0.0, 0.0), +// 4.5, +// 0L, +// component); +// config.addBaseElement(antenna); +// Antenna antenna2 = new Antenna("DV02", +// AntennaType.VA, +// new Coordinate(0.0, 0.0, 0.0), +// new Coordinate(0.0, 0.0, 0.0), +// 4.5, +// 0L, +// component); +// config.addBaseElement(antenna2); +// Pad pad = new Pad("Pad01", new Coordinate(0.0, 0.0, 0.0), new Long(0)); +// config.addBaseElement(pad); +// session.save(config); +// session.flush(); +// +// StartupScenario startup = new StartupScenario("StartupConfigurationTest"); +// config.addStartupScenario(startup); +// session.save(config); +// session.flush(); +// +// BaseElementStartup baseElementStartup = new BaseElementStartup(antenna, startup); +// AssemblyStartup assemblyStartup = new AssemblyStartup(baseElementStartup, +// assemblyRole, component); +// baseElementStartup.addAssemblyStartup(assemblyStartup); +// session.save(startup); +// +// transaction.commit(); +// session.close(); +// +// String xml = null; +// Writer writer = new StringWriter(); +// Marshaller marshaller = new Marshaller(writer); +// marshaller.setMapping(mapping); +// marshaller.marshal(config); +// xml = writer.toString(); +// System.out.println(writer.toString()); +// +// session = HibernateUtil.getSessionFactory().openSession(); +// transaction = session.beginTransaction(); +// session.delete(assemblyStartup); +// session.delete(baseElementStartup); +// session.delete(startup); +// session.delete(antenna); +// session.delete(antenna2); +// session.delete(pad); +// session.delete(component); +// session.delete(compType); +// session.delete(assembly); +// session.delete(assemblyType); +// session.delete(assCompType); +// session.delete(config); +// session.delete(lru); +// transaction.commit(); +// session.close(); +// +//// Writer w = new StringWriter(); +//// Marshaller marsh = new Marshaller(w); +//// marsh.setMapping(mapping); +//// marsh.marshal(antenna); +//// xml = w.toString(); +//// System.out.println(xml); +// +//// Reader reader = new StringReader(xml); +//// Unmarshaller unmarshaller = new Unmarshaller(); +//// unmarshaller.setMapping(mapping); +//// Antenna unmAnt = (Antenna) +//// unmarshaller.unmarshal(reader); +//// System.out.println(unmAnt.getName()); +//// System.out.println(unmAnt.getAntennaType()); +//// System.out.println(unmAnt.getComponent().getId()); +// +// Reader reader = new StringReader(xml); +// Unmarshaller unmarshaller = new Unmarshaller(); +// unmarshaller.setMapping(mapping); +// Configuration cfg = (Configuration) +// unmarshaller.unmarshal(reader); +// System.out.println(cfg.getName()); +// System.out.println(cfg.getName()); +// System.out.println(cfg.getActive()); +// System.out.println(cfg.getBaseElements().size()); +// System.out.println(cfg.getStartupScenarios().size()); +// +// session = HibernateUtil.getSessionFactory().openSession(); +// transaction = session.beginTransaction(); +// +// +// Set baseElementStartups = new HashSet(); +// for (Iterator iter = cfg.getStartupScenarios().iterator(); iter.hasNext(); ) { +// StartupScenario ss = iter.next(); +// ss.setId(null); +// } +// Map assemblies = new HashMap(); +// for (Iterator iter = cfg.getAssemblies().iterator(); iter.hasNext(); ) { +// Assembly as = iter.next(); +// assemblies.put(as.getId(), as); +// } +// Map baseElements = new HashMap(); +// for (Iterator iter = cfg.getBaseElements().iterator(); iter.hasNext(); ) { +// BaseElement be = iter.next(); +// baseElements.put(be.getId(), be); +// } +// cfg.getStartupScenarios().clear(); +// cfg.getBaseElements().clear(); +// cfg.getAssemblies().clear(); +// session.save(cfg); +// // Add some preliminaries that are not in the XML string +// // In the real program we would have to look for the componenttype +// // and component name in the database +// ComponentType ct = new ComponentType("IDL:alma/Control/Antenna:1.0"); +// session.save(ct); +// Component comp = new Component("DV01", "CONTROL", ct); +// cfg.addComponent(comp); +// session.save(cfg); +// session.flush(); +// for (Iterator iter = baseElements.keySet().iterator(); iter.hasNext(); ) { +// BaseElement be = baseElements.get(iter.next()); +// be.setId(null); +// be.setConfiguration(cfg); +// if (be instanceof Antenna) +// ((Antenna)be).setComponent(comp); +// cfg.addBaseElement(be); +// } +// session.save(cfg); +// +// // More preliminaries +// lru = new LruType("SecondLO", "2nd LO generator", "ICD XXX", +// 0L, "Generates LO signals for second down conversion", "Notes..."); +// ComponentType act = new ComponentType("IDL:alma/Control/SecondLO:1.0"); +// session.save(act); +// session.save(cfg); +// session.flush(); +// AssemblyType at = new AssemblyType("SecondLO", "2nd LO generator", +// BaseElementType.Antenna, +// "Generates LO signals for second down conversion", +// "Hard to lock", +// act); +// AssemblyRole ar = new AssemblyRole("SecondLOBBpr0", +// new CANParameters(0, "0x0", "0x1")); +// at.addRole(ar); +// lru.addAssemblyType(at); +// session.save(lru); +// for (Iterator iter = assemblies.keySet().iterator(); iter.hasNext(); ) { +// Assembly as = assemblies.get(iter.next()); +// as.setId(null); +// as.setConfiguration(cfg); +// as.setAssemblyType(at); +// cfg.addAssembly(as); +// } +// session.save(cfg); +// +// transaction.commit(); +// session.close(); +// } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/archiveConfig.properties b/ARCHIVE/SharedCode/TMCDB/Persistence/test/archiveConfig.properties new file mode 100755 index 0000000000000000000000000000000000000000..d9ba11819c5f51f1ca783c7ea9bb391e0dc2a7af --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/archiveConfig.properties @@ -0,0 +1,54 @@ +# dbConfig.properties file development & testing +# +# A M Chavan, ESO, 12-Oct-2006 +# +# $Id: archiveConfig.properties,v 1.2 2010/05/06 01:07:41 sharring Exp $ + +archive.db.backend=xmldb +archive.db.mode=test + +# Setup for Exist +#---------------------------------------------------- +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +#archive.xmldb.location=xmldb:exist://its01.aoc.nrao.edu:8180/exist/xmlrpc +#archive.xmldb.location=xmldb:exist://almadev5.hq.eso.org:8180/exist/xmlrpc +archive.xmldb.location=xmldb:exist://localhost:8180/exist/xmlrpc +archive.xmldb.name=db +archive.xmldb.cache=100 + +# Oracle setup (relational side) +#---------------------------------------------------- +archive.oracle.name=alma1 +archive.oracle.user=almatest +archive.oracle.location=almadev1.hq.eso.org:1521 + +# Shiftlog-specific stuff +#--------------------------------------------------- +archive.shiftlog.backend=hsqldb + +archive.oracle.shiftlog.dbname=alma1 +archive.oracle.shiftlog.user=operlogtest +archive.oracle.shiftlog.user.passwd=alma$dba + +archive.hsqldb.shiftlog.dbname=shiftlog +archive.hsqldb.shiftlog.user=sa +archive.hsqldb.shiftlog.passwd= +archive.hsqldb.shiftlog.location=ignored +archive.hsqldb.shiftlog.mode=mem + +# Tmcdb-specific stuff +#--------------------------------------------------- +archive.tmcdb.configuration=Test +archive.tmcdb.startup=Test + +archive.tmcdb.backend=hsqldb + +archive.oracle.tmcdb.dbname=alma1 +archive.oracle.tmcdb.user=operlogtest +archive.oracle.tmcdb.user.passwd=alma$dba + +archive.hsqldb.tmcdb.dbname=tmcdb +archive.hsqldb.tmcdb.user=sa +archive.hsqldb.tmcdb.passwd= +archive.hsqldb.tmcdb.location=ignored +archive.hsqldb.tmcdb.mode=mem \ No newline at end of file diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/archiveConfig.properties.sampleTmcdb b/ARCHIVE/SharedCode/TMCDB/Persistence/test/archiveConfig.properties.sampleTmcdb new file mode 100755 index 0000000000000000000000000000000000000000..b52fdc6e9ff78f8956bf61b6083b9cc3ad689eea --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/archiveConfig.properties.sampleTmcdb @@ -0,0 +1,69 @@ +# dbConfig.properties file development & testing +# +# A M Chavan, ESO, 12-Oct-2006 +# +# $Id: archiveConfig.properties.sampleTmcdb,v 1.2 2010/05/06 01:07:41 sharring Exp $ + +############## +# general section +archive.db.tnsFileDirectory=${ACS.data}/config +archive.db.connection=jdbc:oracle:thin:@ALMA +archive.db.backend=xmldb +archive.db.mode=test + +# Setup for Exist +#---------------------------------------------------- +archive.xmldb.driver=org.exist.xmldb.DatabaseImpl +#archive.xmldb.location=xmldb:exist://its01.aoc.nrao.edu:8180/exist/xmlrpc +#archive.xmldb.location=xmldb:exist://almadev5.hq.eso.org:8180/exist/xmlrpc +archive.xmldb.location=xmldb:exist://localhost:8180/exist/xmlrpc +archive.xmldb.name=db +archive.xmldb.cache=100 + +# Oracle setup (relational side) +#---------------------------------------------------- +archive.oracle.name=alma1 +archive.oracle.user=almatest +archive.oracle.location=almadev1.hq.eso.org:1521 + +# Shiftlog-specific stuff +#--------------------------------------------------- +archive.shiftlog.backend=hsqldb + +archive.oracle.shiftlog.dbname=alma1 +archive.oracle.shiftlog.user=operlogtest +archive.oracle.shiftlog.user.passwd=alma$dba + +archive.hsqldb.shiftlog.dbname=shiftlog +archive.hsqldb.shiftlog.user=sa +archive.hsqldb.shiftlog.passwd= +archive.hsqldb.shiftlog.location=ignored +archive.hsqldb.shiftlog.mode=mem + +############### +#schemas +archive.bulkstore.schema=ASDMBinaryTable +archive.bulkreceiver.schema=sdmDataHeader + +############### +#NGAS +archive.ngast.servers=arch01:7777 +archive.ngast.bufferDir=/archiverd +archive.ngast.interface=ngamsArchiveClient -mimeType "multialma/related" -pollTime 0 -cleanUpTimeOut 0 -streams 16 -v 1 + +############### +#bulkreceiver +archive.bulkreceiver.debug=True +archive.bulkreceiver.DataBufferRetry=30 +archive.bulkreceiver.DataBufferMax=10240000 +archive.bulkreceiver.BufferThreadNumber=8 +archive.bulkreceiver.BufferThreadWaitSleep=2000 +archive.bulkreceiver.FetchThreadRetry=100 +archive.bulkreceiver.FetchThreadRetrySleep=400000 + +############### +#tmcdb +archive.tmcdb.user=sa +archive.tmcdb.passwd= +archive.tmcdb.connection=jdbc:hsqldb:file:TMCDB/TMCDB +archive.tmcdb.backend=hsqldb diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/config/testEnv b/ARCHIVE/SharedCode/TMCDB/Persistence/test/config/testEnv new file mode 100755 index 0000000000000000000000000000000000000000..bf1ea2c8f4b28741b7136e9950cb046d1384f820 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/config/testEnv @@ -0,0 +1 @@ +JAVA_OPTIONS="-DACS.log.minlevel.namedloggers=hibernateSQL@PointingModelTest=1,1" diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/hibernate.cfg.xml b/ARCHIVE/SharedCode/TMCDB/Persistence/test/hibernate.cfg.xml new file mode 100755 index 0000000000000000000000000000000000000000..a8586a14c49c65d9e07cdc8623f820b4597bfd35 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/hibernate.cfg.xml @@ -0,0 +1,122 @@ + + + + + + + org.hsqldb.jdbcDriver + + + jdbc:hsqldb:mem:ignored + + + sa + + + + org.hibernate.dialect.HSQLDialect + + + + 5 + 20 + 1800 + 50 + 3000 + + + true + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/hibernate.cfg.xml.sampletmcdb b/ARCHIVE/SharedCode/TMCDB/Persistence/test/hibernate.cfg.xml.sampletmcdb new file mode 100755 index 0000000000000000000000000000000000000000..47bae39920f1ce5a3b37e6bd5f058c800fdc8919 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/hibernate.cfg.xml.sampletmcdb @@ -0,0 +1,134 @@ + + + + + + + org.hsqldb.jdbcDriver + + + jdbc:hsqldb:file:TMCDB/TMCDB + + + sa + + + + org.hibernate.dialect.HSQLDialect + + + + 5 + 20 + 300 + 50 + 3000 + + + false + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/runAllTests.sh b/ARCHIVE/SharedCode/TMCDB/Persistence/test/runAllTests.sh new file mode 100755 index 0000000000000000000000000000000000000000..a4375b73f5c1f831e2a9a56cff355d096591e7b9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/runAllTests.sh @@ -0,0 +1,75 @@ +#!/bin/bash + +############################################################################## +# ALMA - Atacama Large Millimiter Array +# (c) European Southern Observatory, 2002 +# Copyright by ESO (in the framework of the ALMA collaboration), +# All rights reserved +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# $Id: runAllTests.sh,v 1.13 2011/05/09 11:33:34 rtobar Exp $ +# + +# Documentation about the test goes here. +# +# + +declare TEST_CLASS=alma.tmcdb.AllTests +declare TEST_LOG=/dev/stdout +declare ACS_TMP=`pwd`/tmp + +if test $# -ge 1; then + TEST_LOG=$1 +fi + +if [ -e $ACS_TMP ]; then + rm -rf $ACS_TMP &> /dev/null +fi +mkdir $ACS_TMP + +acsStartJava -Darchive.configFile=./archiveConfig.properties -endorsed junit.textui.TestRunner "$TEST_CLASS" &> "$TEST_LOG" +RESULT=$? + +if [ "$RESULT" = "0" ]; then + echo "TEST1 $TEST_CLASS PASSED" | tee -a $TEST_LOG +else + echo "TEST1 $TEST_CLASS FAILED" | tee -a $TEST_LOG +fi + +cp hibernate.cfg.xml hibernate.cfg.xml.orig +cp hibernate.cfg.xml.sampletmcdb hibernate.cfg.xml + +TEST_CLASS=alma.tmcdb.cloning.CloneWithSampleDatabaseTest +acsStartJava -Darchive.configFile=./archiveConfig.properties.sampleTmcdb -endorsed junit.textui.TestRunner "$TEST_CLASS" >> "$TEST_LOG" 2>&1 +RESULT=$? + +cp hibernate.cfg.xml.orig hibernate.cfg.xml + +if [ "$RESULT" = "0" ]; then + echo "TEST2 $TEST_CLASS PASSED" | tee -a $TEST_LOG +else + echo "TEST2 $TEST_CLASS FAILED" | tee -a $TEST_LOG +fi + +NUM_OK=`grep "PASSED" $TEST_LOG | wc -l` +if [ "$NUM_OK" = "2" ]; then + echo "PASSED" +else + echo "FAIL" +fi + +# __oOo__ diff --git a/ARCHIVE/SharedCode/TMCDB/Persistence/test/runDomainTests.sh b/ARCHIVE/SharedCode/TMCDB/Persistence/test/runDomainTests.sh new file mode 100755 index 0000000000000000000000000000000000000000..1a3d460147a7d72fc5393e7743d80d3dbc70b31f --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Persistence/test/runDomainTests.sh @@ -0,0 +1,50 @@ +#!/bin/bash + +############################################################################## +# ALMA - Atacama Large Millimiter Array +# (c) European Southern Observatory, 2002 +# Copyright by ESO (in the framework of the ALMA collaboration), +# All rights reserved +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, +# MA 02111-1307 USA +# +# $Id: runDomainTests.sh,v 1.1 2011/08/09 15:47:34 rhiriart Exp $ +# + +# Documentation about the test goes here. +# +# + +CLASSPATH=../lib/TMCDBPersistenceTest.jar:$CLASSPATH + +declare TEST_CLASS=alma.tmcdb.AllTests +declare TEST_LOG=/dev/stdout +declare ACS_TMP=`pwd`/tmp + +if test $# -ge 1; then + TEST_LOG=$1 +fi + +if [ -e $ACS_TMP ]; then + rm -rf $ACS_TMP &> /dev/null +fi +mkdir $ACS_TMP + +acsStartJava -Darchive.configFile=./archiveConfig.properties -endorsed junit.textui.TestRunner "$TEST_CLASS" &> "$TEST_LOG" +RESULT=$? +exit "$RESULT" + +# __oOo__ diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/.DS_Store b/ARCHIVE/SharedCode/TMCDB/Tools/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..2176be15def1122496961bf31442ab705f372204 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Tools/.DS_Store differ diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/.classpath b/ARCHIVE/SharedCode/TMCDB/Tools/.classpath new file mode 100755 index 0000000000000000000000000000000000000000..61e628a7bc3dba090123fc9cc9eb33666417cfa8 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/.classpath @@ -0,0 +1,10 @@ + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/.project b/ARCHIVE/SharedCode/TMCDB/Tools/.project new file mode 100755 index 0000000000000000000000000000000000000000..5ea2178b040c6a034d621cf461ea9252fd33f892 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/.project @@ -0,0 +1,17 @@ + + + Tools + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/.DS_Store b/ARCHIVE/SharedCode/TMCDB/Tools/src/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..a5a8a14be0b728c0cceba472bf8271bfd5c095ae Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Tools/src/.DS_Store differ diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/Makefile b/ARCHIVE/SharedCode/TMCDB/Tools/src/Makefile new file mode 100755 index 0000000000000000000000000000000000000000..add448fdddc78b788ea51c770788bafa55f8b697 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/Makefile @@ -0,0 +1,246 @@ +#******************************************************************************* +# ALMA - Atacama Large Millimeter Array +# Copyright (c) ESO - European Southern Observatory, 2011 +# (in the framework of the ALMA collaboration). +# All rights reserved. +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +#******************************************************************************* +#******************************************************************************* +# PPPPPPPP +# +# "@(#) $Id: Makefile,v 1.3 2012/05/04 10:38:08 rtobar Exp $" +# +# Makefile of ........ +# +# who when what +# -------- -------- ---------------------------------------------- +# rsoto 22/05/08 created +# + +#******************************************************************************* +# This Makefile follows VLT Standards (see Makefile(5) for more). +#******************************************************************************* +# REMARKS +# None +#------------------------------------------------------------------------ + +# +# user definable C-compilation flags +#USER_CFLAGS = + +# +# additional include and library search paths +#USER_INC = +#USER_LIB = + +# +# MODULE CODE DESCRIPTION: +# ------------------------ +# As a general rule: public file are "cleaned" and "installed" +# local (_L) are not "installed". + +# +# C programs (public and local) +# ----------------------------- +EXECUTABLES = +EXECUTABLES_L = + +# +# +xxxxx_OBJECTS = +xxxxx_LDFLAGS = +xxxxx_LIBS = + +# +# special compilation flags for single c sources +#yyyyy_CFLAGS = + +# +# Includes (.h) files (public only) +# --------------------------------- +INCLUDES = + +# +# Libraries (public and local) +# ---------------------------- +LIBRARIES = +LIBRARIES_L = + +# +# +lllll_OBJECTS = + +# +# Scripts (public and local) +# ---------------------------- +SCRIPTS = +SCRIPTS_L = + +# +# TCL scripts (public and local) +# ------------------------------ +TCL_SCRIPTS = +TCL_SCRIPTS_L = + +# +# Python stuff (public and local) +# ---------------------------- +PY_SCRIPTS_L = + +PY_MODULES = +PY_MODULES_L = + +PY_PACKAGES = +PY_PACKAGES_L = +pppppp_MODULES = + +# +# +tttttt_OBJECTS = +tttttt_TCLSH = +tttttt_LIBS = + +# +# TCL libraries (public and local) +# ------------------------------ +TCL_LIBRARIES = +TCL_LIBRARIES_L = + +# +# +tttlll_OBJECTS = + +# +# Configuration Database Files +# ---------------------------- +CDB_SCHEMAS = + +# +# IDL Files and flags +# +IDL_FILES = +IDL_TAO_FLAGS = +USER_IDL = +# +# Jarfiles and their directories +# +JARFILES = tmcdbtools + +tmcdbtools_DIRS=alma +tmcdbtools_EXTRAS= config/antennaClonerAppContext.xml config/configurationExporterAppContext.xml config/Pads.xsd + +# +# java sources in Jarfile on/off +DEBUG= +# +# ACS XmlIdl generation on/off +# +XML_IDL= +# +# Java Component Helper Classes generation on/off +# +COMPONENT_HELPERS= +# +# Java Entity Classes generation on/off +# +XSDBIND= +# +# Schema Config files for the above +# +XSDBIND_INCLUDE= +# man pages to be done +# -------------------- +MANSECTIONS = +MAN1 = +MAN3 = +MAN5 = +MAN7 = +MAN8 = + +# +# local man pages +# --------------- +MANl = + +# +# ASCII file to be converted into Framemaker-MIF +# -------------------- +ASCII_TO_MIF = + +# +# other files to be installed +#---------------------------- +INSTALL_FILES = + +# +# list of all possible C-sources (used to create automatic dependencies) +# ------------------------------ +CSOURCENAMES = \ + $(foreach exe, $(EXECUTABLES) $(EXECUTABLES_L), $($(exe)_OBJECTS)) \ + $(foreach rtos, $(RTAI_MODULES) , $($(rtos)_OBJECTS)) \ + $(foreach lib, $(LIBRARIES) $(LIBRARIES_L), $($(lib)_OBJECTS)) + +# +#>>>>> END OF standard rules + +# +# INCLUDE STANDARDS +# ----------------- + +MAKEDIRTMP := $(shell searchFile include/acsMakefile) +ifneq ($(MAKEDIRTMP),\#error\#) + MAKEDIR := $(MAKEDIRTMP)/include + include $(MAKEDIR)/acsMakefile +endif + +# +# 3rd party Install files +# +# --> Note that many jarfiles are installed by other modules +# +INSTALL_JARS = + + +# Accommodate STE and standard environments -- they define no INTROOT +ifdef INTROOT + INSTALL_DIR = $(INTROOT) +else + ifdef INTLIST + INSTALL_DIR := $(shell echo $(INTLIST) | awk -F: '{print $$1}') + else + INSTALL_DIR = $(ACSROOT) + endif +endif +# +# TARGETS +# ------- +all: do_all + @echo " . . . 'all' done" + +clean : clean_all + @echo " . . . clean done" + +clean_dist : clean_all clean_dist_all + @echo " . . . clean_dist done" + +man : do_man + @echo " . . . man page(s) done" + +install : install_all + @echo " . . . installation done" + + +#___oOo___ diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/PadData.csv b/ARCHIVE/SharedCode/TMCDB/Tools/src/PadData.csv new file mode 100755 index 0000000000000000000000000000000000000000..63640c8206227b41e94fdff0d360c6d23c192d6c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/PadData.csv @@ -0,0 +1,193 @@ +BASEELEMENTNAME,ROUND(P.XPOSITION,2),ROUND(P.YPOSITION,2),ROUND(P.ZPOSITION,2) +A019,2225052.5,-5440067.57,-2481672.79 +A041,2225067.71,-5440032.88,-2481734.84 +J509,2225068.39,-5440126.96,-2481529.32 +W203,2219338.21,-5442590.38,-2480450.39 +A005,2225117.51,-5440026.94,-2481703.37 +A103,2225566.63,-5439973.49,-2481384.54 +P408,2229428.07,-5439729.01,-2478052.7 +S301,2226262.61,-5438426.43,-2484135.07 +A079,2225120.09,-5439944.74,-2481883.56 +A117,2224141.6,-5440472.38,-2481569.92 +A042,2225093.38,-5440028.33,-2481720.53 +A018,2225058.69,-5440058.8,-2481686.37 +W204,2220841.7,-5442386.74,-2479889.29 +A004,2225092.18,-5440046.02,-2481684.36 +A104,2224582.95,-5440342.51,-2481488.82 +P407,2229564.08,-5439527.72,-2478328.33 +A118,2225666.62,-5439439.61,-2482514.88 +A017,2225096.73,-5440060.57,-2481648.63 +W201,2217992.99,-5442743.4,-2481000.86 +A007,2225115.37,-5440046.31,-2481663.08 +A131,2226198.66,-5439129.43,-2482768.62 +A067,2225178.45,-5440019.89,-2481660.06 +A100,2225447.58,-5439788.64,-2481910.85 +A048,2225085.97,-5440020.55,-2481744.16 +A129,2226327.17,-5440026.46,-2480528.38 +A119,2225174.62,-5440520.87,-2480580.54 +A099,2224616.46,-5440198.15,-2481767.29 +A016,2225091.35,-5440084.14,-2481601.58 +A040,2225050,-5440040.44,-2481734.15 +W202,2219249.27,-5442883.93,-2479846.84 +A102,2224823.27,-5439912.69,-2482221.74 +A030,2225037.56,-5440079.08,-2481661.09 +A006,2225116.93,-5440036.91,-2481682.25 +A069,2224940.55,-5440082.45,-2481745.66 +A130,2223499.47,-5440629.58,-2481762.91 +A068,2224978.48,-5440124.86,-2481618.15 +P409,2229232.6,-5440043.54,-2477586.81 +A101,2224960.41,-5440331.4,-2481187.33 +A049,2225117.52,-5440013.5,-2481730.13 +A107,2224593.57,-5440002.04,-2482197.19 +A133,2223829.49,-5440048.66,-2482717.1 +A045,2225029.44,-5440046.03,-2481742.74 +A009,2225096.84,-5440069.06,-2481629.03 +A055,2225081.63,-5440010.91,-2481770.28 +A112,2224311.64,-5440239.21,-2481942.73 +N601,2225088.38,-5440120.2,-2481526.22 +A070,2225190.83,-5439987.37,-2481719.62 +A113,2225759.18,-5439620.76,-2481972.18 +P404,2228200.83,-5439780.08,-2479178.76 +A097,2225042.46,-5439863.65,-2482137.78 +J511,2225070.65,-5440112.48,-2481558.83 +A080,2225159.99,-5440119.85,-2481460.09 +A029,2225041.62,-5440095.63,-2481621.89 +A127,2224470.48,-5440844.74,-2480525.66 +A108,2225716.02,-5439801.68,-2481611.04 +A132,2224984.11,-5440962.67,-2479796.9 +A046,2225057.59,-5440043.95,-2481719.68 +A008,2225111.27,-5440053.34,-2481650.4 +A056,2225095.79,-5440008.29,-2481762.37 +A114,2224792.71,-5440534.11,-2480893.08 +T701,2225043.38,-5440142.75,-2481517.2 +A098,2225373.24,-5440105.95,-2481289.1 +P403,2228694.42,-5439552.69,-2479195.69 +A047,2225068.52,-5440025.8,-2481749.55 +A028,2225056.07,-5440094.13,-2481612.36 +A128,2224747.04,-5439516.39,-2483126.4 +J510,2225063.93,-5440117.01,-2481554.95 +N602,2225077.74,-5440126.56,-2481521.87 +A105,2225432.42,-5439695.99,-2482130.64 +A043,2225106.53,-5440021.59,-2481723.5 +A057,2225024.94,-5440027.67,-2481786.97 +A095,2225486.14,-5439866.96,-2481696.56 +A058,2225037.24,-5440017.16,-2481797.41 +A115,2224799.24,-5439780.17,-2482536.39 +N603,2225069.54,-5440129.9,-2481521.87 +A082,2225285.15,-5439946.28,-2481715.88 +A125,2223799.95,-5440242.52,-2482325.09 +P406,2229162.37,-5439600,-2478624.48 +A136,2224597.46,-5440371.91,-2481412.42 +A044,2225015.06,-5440054.67,-2481736.86 +A134,2224893.71,-5439900.66,-2482187.45 +A106,2225259.03,-5440313.53,-2480957.07 +A096,2224778.86,-5440336.05,-2481333.38 +A059,2225082.61,-5440002.27,-2481788.23 +P405,2228953.67,-5439465.69,-2479129.1 +A116,2225868.85,-5439979.23,-2481085.89 +A081,2224861.26,-5440081.62,-2481811.61 +A126,2226183.6,-5439420.14,-2482000.73 +N604,2225062.82,-5440114.04,-2481562.4 +A135,2225502.75,-5440019.09,-2481352.66 +A093,2225185.68,-5440183.98,-2481299.1 +A138,2225033.83,-5439991.89,-2481867.55 +A025,2225021.92,-5440083.14,-2481667.12 +A074,2225174.04,-5439957.85,-2481797.81 +N605,2225071.45,-5440108.85,-2481566.03 +A010,2225088.26,-5440077.29,-2481619.72 +A084,2225024.69,-5439956.88,-2481955.62 +A039,2225030.91,-5440051.48,-2481728.13 +A064,2225107.37,-5439996.02,-2481779.71 +A122,2224146.54,-5440725.7,-2481002.29 +A054,2225064.79,-5440018.3,-2481770.39 +A024,2225034.12,-5440086.49,-2481648.44 +S309,2229977.19,-5435351.79,-2486828.46 +A137,2225133.19,-5440097.51,-2481533.04 +N606,2225081.63,-5440108.6,-2481557.49 +P413,2232259.29,-5440511.19,-2473664.7 +A073,2224908.08,-5440123.51,-2481686.21 +A124,2225712.01,-5440363.09,-2480420.33 +T704,2225110.43,-5440116.43,-2481514.81 +A083,2224944.44,-5440203.09,-2481487.47 +J501,2225076.31,-5440119.69,-2481538.1 +A094,2224756.76,-5440063.6,-2481941.93 +A038,2225016.7,-5440059.82,-2481722.55 +A063,2225069.07,-5440005.58,-2481794.27 +A123,2225276.99,-5439463.02,-2482830.28 +A023,2225050.61,-5440086.97,-2481632.71 +S308,2229193.44,-5435841.39,-2486523.83 +A053,2225040.67,-5440025.92,-2481775.27 +J512,2225081.13,-5440112.17,-2481550.18 +P412,2231066.37,-5440910.82,-2473976.69 +A072,2225196.81,-5440052.19,-2481569.08 +A027,2225007.84,-5440071.56,-2481704.95 +A091,2224772.16,-5440229.24,-2481574.93 +P402,2228786.97,-5439339.94,-2479516.92 +A037,2225046.29,-5440055.12,-2481705.42 +W209,2224114.85,-5442156.43,-2477928.98 +J502,2225068.34,-5440121.27,-2481541.74 +A086,2224796.39,-5440155.32,-2481723.32 +T703,2225102.08,-5440096.07,-2481565.77 +A110,2225145.35,-5439668.7,-2482442.63 +A066,2225062.37,-5440103.27,-2481585.73 +W210,2224522.59,-5441797.96,-2478425.53 +A052,2225025.17,-5440036.09,-2481767.02 +S307,2229214.54,-5437528.94,-2483347.83 +A120,2224233.59,-5439963.45,-2482603.45 +P411,2230493.44,-5440378.31,-2475616.25 +A026,2225015.66,-5440074.13,-2481692.32 +A092,2225194.15,-5439859.69,-2482000.51 +A036,2225079.6,-5440041.65,-2481705.16 +J503,2225074.12,-5440116.53,-2481546.91 +T702,2225039.66,-5440119.12,-2481571.98 +P401,2227499.02,-5439891.48,-2479588.52 +A071,2225008.7,-5440141.6,-2481555.13 +A085,2225268.14,-5440066.74,-2481468.53 +A111,2225520.72,-5440191.33,-2480972.37 +A065,2225111.28,-5440082.42,-2481585.53 +A035,2225072.74,-5440052.97,-2481686.56 +S306,2228433.85,-5437817.95,-2483419.01 +A051,2225014.18,-5440044.39,-2481760.01 +A109,2224636.82,-5440404.59,-2481307.35 +A121,2226160.43,-5439676.32,-2481419.07 +W207,2222792.29,-5441825.72,-2479693.09 +A088,2225075.81,-5440179.67,-2481412.23 +J504,2225086.82,-5440113.38,-2481542.48 +A078,2224904,-5440166.5,-2481596.28 +P410,2229254.25,-5440456.83,-2476683.03 +S305,2227357.22,-5436304.77,-2487169.05 +A020,2225040.98,-5440067.77,-2481683.61 +A060,2225071.98,-5439996.29,-2481812.65 +A050,2225077.26,-5440034.98,-2481721.68 +A034,2225026.98,-5440075.45,-2481679.36 +A015,2225116.51,-5440062.82,-2481625.09 +W208,2223885.76,-5442256.16,-2477872.67 +A013,2225101.24,-5440051.26,-2481664.91 +A087,2225267.23,-5439902.32,-2481829.48 +J505,2225060.92,-5440127.74,-2481534.29 +A090,2225374.08,-5439985.5,-2481540.53 +A077,2225252.82,-5440003.02,-2481620.63 +S304,2227960.66,-5437885.89,-2483573.67 +A033,2224995.22,-5440073.17,-2481713.35 +A014,2225119.7,-5440055.59,-2481638 +J506,2225060.93,-5440121.81,-2481547.16 +A012,2225131.54,-5440030.88,-2481681.33 +A002,2225083.15,-5440055.7,-2481671.32 +A076,2224945.98,-5440033.67,-2481849.71 +A022,2225067.33,-5440086.24,-2481619 +A003,2225081.03,-5440064.01,-2481655.11 +S303,2227320.27,-5436657.78,-2486450.61 +W205,2221247.37,-5442301.63,-2479822.11 +A062,2225008.37,-5440036.9,-2481781.54 +A032,2225002.33,-5440084.89,-2481680.85 +J507,2225087.26,-5440117.26,-2481533.65 +A089,2224941.25,-5439968.36,-2482011.64 +A011,2225130.37,-5440025.15,-2481695.42 +A075,2225069.81,-5440142.46,-2481496.26 +A001,2225067.46,-5440060.79,-2481674.21 +A021,2225061.36,-5440071.99,-2481655.28 +S302,2226617.26,-5437438.93,-2485546.16 +W206,2222534.77,-5441895.98,-2479739.82 +A031,2225012.86,-5440091.07,-2481657.91 +J508,2225076.59,-5440123.61,-2481529.3 +A061,2225024.01,-5440016.57,-2481811.94 diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/README b/ARCHIVE/SharedCode/TMCDB/Tools/src/README new file mode 100755 index 0000000000000000000000000000000000000000..65e43105362e58bf71ff18d96901195a04651155 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/README @@ -0,0 +1,61 @@ +There are 3 tmcdb-related utilities in this module: + +1) AntennaCloner, which clones antennas + +Example usage: + +acsStartJava -noDirectory alma.obops.tmcdb.cloning.AntennaCloner DV03 DV01,DV04,DV05,DV06,DV07,DV08,DV09,DV14,DV15,DV16,DV17,DV18,DV19,DV20,DV21,DV22,DV23,DV24 +acsStartJava -noDirectory alma.obops.tmcdb.cloning.AntennaCloner CM01 CM02,CM03,CM04,CM05,CM06,CM07,CM08,CM09,CM10,CM11,CM12 +acsStartJava -noDirectory alma.obops.tmcdb.cloning.AntennaCloner PM01 PM02 +acsStartJava -noDirectory alma.obops.tmcdb.cloning.AntennaCloner DA41 DA42,DA43,DA44,DA45,DA46,DA47,DA48,DA49,DA50,DA51,DA52,DA53,DA54,DA55,DA56,DA57,DA58,DA59,DA60,DA61,DA62,DA63,DA64,DA65 + +2) PadImporter, which imports pads into a configuration + +Example usage: + +acsStartJava -noDirectory -DACS.logstdout=6 alma.obops.tmcdb.padimport.PadImporter + +where: + + is the name of the configuration in which you wish to import the pads + is an xml file defining the pads. This file must adhere to the schema config/Pads.xsd found in this module + +Running this utility does the following: + +If a pad specified in the XML file does *not* exist in the specified configuration, it will be created. +If a pad specified in the XML file *already exists* in the specified configuration, it will be updated. + +3) TmcdbDiff, which compares 2 configurations (directly in the database _not_ using exported XML files!) for differences + +Example usage: + +acsStartJava -maxHeapSize 2g -noDirectory -DACS.logstdout=6 alma.obops.tmcdb.diff.TmcdbDiff [-swOnly?] + +Running this utility will compare the 2 configurations for differences. It is a fairly long-running process. After it finishes, it will print (to stdout) a list of the differences found. + +NOTE: if you wish to compare only the sw side, you can add the -swOnly flag + +DISCLAIMER AND KNOWN BUGS: this tool is currently experimental; it has the following known quirks/limitations: + + * in some cases, diffing config-A against config-B may detect differences but not report _all_ of the details; for example + in collections, it may state that there are a different number of (where X is containers, components, baseelements, + or anything else in a collection) in the two configs, but it may not always state _what_ is missing. This is because + the tool is using a single pass and comparing A's collection(s) against B's collection(s). If A has an item that is + missing in B, it will be noted clearly; whereas if B's collection(s) have an item that is missing in A, the details + may not be denoted (it may only say that the two collections have a different number of entries). We may refine the tool + to make a single pass do both of these (A->B and B->A), but a simple workaround - if necessary - is to run the tool + twice: 1) compare A, B; and then, 2) compare B, A. + + * it's possible I've missed some things in the diff; there are 87(!!) database tables with many, many inter-relationships. + if you diff two configurations that are _known_ to have a difference, and the tool doesn't report a difference, please + open a Jira ticket or contact me (Steve). + + +4) SQL query to obtain PAD DATA. Notice that SWCONFIGURATIONID could change. Save the data in csv file and use parseTMC.py to obtain a xml for padimport +et linesize 200 +%SELECT CONFIGURATIONID FROM CONFIGURATION WHERE CONFIGURATIONNAME='CURRENT.AOS'; +%SELECT CONFIGURATIONID FROM HWCONFIGURATION WHERE SWCONFIGURATIONID = 1349; + +SELECT b.baseelementname, round(p.xposition,2), round(p.yposition,2), round(p.zposition,2) FROM pad p, baseelement b WHERE p.baseelementid in (SELECT baseelementid FROM baseelement WHERE configurationid=1110 AND basetype='Pad') AND b.baseelementid = p.baseelementid; + + diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/.DS_Store b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..fbd49ed42729d91436dc86403bd8e1e7509a8154 Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/.DS_Store differ diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/.DS_Store b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..26102478605da2b808daf427a37b02241dacba5b Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/.DS_Store differ diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/.DS_Store b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/.DS_Store new file mode 100755 index 0000000000000000000000000000000000000000..9d3d8ae8f804aa26637f8bc003543b78127346bc Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/.DS_Store differ diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/cloning/AntennaCloner.java b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/cloning/AntennaCloner.java new file mode 100755 index 0000000000000000000000000000000000000000..9fa37119f6e6718715fdbca8496d0705eec2353b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/cloning/AntennaCloner.java @@ -0,0 +1,112 @@ +/******************************************************************************* + * ALMA - Atacama Large Millimeter Array + * Copyright (c) AUI - Associated Universities Inc., 2011 + * (in the framework of the ALMA collaboration). + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + *******************************************************************************/ +package alma.obops.tmcdb.cloning; + +import java.util.Arrays; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.logging.Level; +import java.util.logging.Logger; + +import org.hibernate.criterion.MatchMode; + +import alma.acs.logging.ClientLogManager; +import alma.obops.dam.config.TmcdbContextFactory; +import alma.obops.dam.tmcdb.service.ConfigurationService; +import alma.obops.dam.utils.ConversationInterceptor; +import alma.obops.dam.utils.ConversationTokenProvider; +import alma.obops.dam.utils.ConversationTokenProvider.ConversationToken; +import alma.obops.dam.utils.ConversationTokenProviderAdapter; +import alma.tmcdb.domain.Antenna; +import alma.tmcdb.domain.BaseElement; +import alma.tmcdb.domain.BaseElementType; +import alma.tmcdb.domain.HwConfiguration; + +public class AntennaCloner { + + private String originalAntenna; + private Set newAntennas; + + public void clone(String []args) throws Exception { + parseArgs(args); + connectToTMCDB(); + cloneAntennas(); + } + + private void parseArgs(String[] args) { + if( args.length < 2 ) { + System.out.println("Usage: AntennaClonner originalAntennaName newAntenna1,newAntenna2,..."); + System.exit(1); + } + + originalAntenna = args[0]; + String []names = args[1].split(","); + newAntennas = new HashSet(Arrays.asList(names)); + } + + private void connectToTMCDB() throws Exception { + Logger logger = ClientLogManager.getAcsLogManager().getLoggerForApplication("AntennaCloner", false); + Level level = logger.getLevel(); + logger.setLevel(Level.INFO); + TmcdbContextFactory.INSTANCE.init("config/antennaClonerAppContext.xml", logger, AntennaCloner.class.getClassLoader()); + logger.setLevel(level); + } + + private void cloneAntennas() throws Exception { + + ConversationInterceptor conversationInterceptor = TmcdbContextFactory.INSTANCE.getConversationInterceptor(); + conversationInterceptor.invoke(AntennaCloner.class.getMethod("privateCloneAntennas"), this, null); + } + + public ConversationTokenProvider privateCloneAntennas() { + + ConfigurationService service = TmcdbContextFactory.INSTANCE.getConfigurationService(); + List configs = service.findByName(System.getenv("TMCDB_CONFIGURATION_NAME"), MatchMode.EXACT); + HwConfiguration hwConfig = configs.get(0); + + service.hydrateBaseElements(hwConfig); + Set baseElements = hwConfig.getBaseElements(); + Antenna antenna = null; + for(BaseElement baseElement: baseElements) + if( baseElement.getName().equals(originalAntenna) && baseElement.getType().equals(BaseElementType.Antenna) ) { + antenna = (Antenna)baseElement; + break; + } + for(String newAntennaName: newAntennas) { + System.out.print("Cloning to antenna " + newAntennaName + "..."); + service.cloneBaseElement(antenna, newAntennaName); + System.out.println(" Done!"); + } + + return new ConversationTokenProviderAdapter(ConversationToken.CONVERSATION_COMPLETED); + } + + /** + * @param args + */ + public static void main(String[] args) throws Exception { + + AntennaCloner cloner = new AntennaCloner(); + cloner.clone(args); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/diff/TmcdbDiff.java b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/diff/TmcdbDiff.java new file mode 100755 index 0000000000000000000000000000000000000000..81c4331bbb303824db16e303ef4e2773daec6a8f --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/diff/TmcdbDiff.java @@ -0,0 +1,208 @@ +/******************************************************************************* + * ALMA - Atacama Large Millimeter Array + * Copyright (c) ESO - European Southern Observatory, 2011 + * (in the framework of the ALMA collaboration). + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + *******************************************************************************/ +package alma.obops.tmcdb.diff; + +import java.util.List; +import java.util.logging.Level; + +import org.hibernate.criterion.MatchMode; + +import alma.acs.logging.AcsLogger; +import alma.acs.logging.ClientLogManager; +import alma.obops.dam.config.TmcdbContextFactory; +import alma.obops.dam.tmcdb.service.ConfigurationService; +import alma.obops.dam.utils.ConversationInterceptor; +import alma.obops.dam.utils.ConversationTokenProvider; +import alma.obops.dam.utils.ConversationTokenProviderAdapter; +import alma.tmcdb.cloning.CloningTestUtils; +import alma.tmcdb.domain.HwConfiguration; + +/** + * Utility to diff 2 configurations. + * @author sharring + */ +public class TmcdbDiff +{ + private String config1Name; + private String config2Name; + private boolean swOnly; + private Thread updateThread; + private MyRunnable updateRunnable; + + public void diffConfigs(String[] paramArrayOfString) + throws Exception + { + parseArgs(paramArrayOfString); + connectToTMCDB(); + + updateRunnable = new MyRunnable(); + updateThread = new Thread(updateRunnable); + updateThread.start(); + + compareConfigs(); + } + + private void parseArgs(String[] paramArrayOfString) + { + if (paramArrayOfString.length < 2) + { + System.out.println("\nUsage: tmcdbDiff -swOnly?"); + System.exit(1); + } + + if (paramArrayOfString.length > 2) { + this.swOnly = true; + } + else { + this.swOnly = false; + } + this.config1Name = paramArrayOfString[0]; + this.config2Name = paramArrayOfString[1]; + } + + private void connectToTMCDB() throws Exception + { + AcsLogger localAcsLogger = ClientLogManager.getAcsLogManager().getLoggerForApplication("tmcdbDiff", false); + Level localLevel = localAcsLogger.getLevel(); + localAcsLogger.setLevel(Level.INFO); + TmcdbContextFactory.INSTANCE.init("config/antennaClonerAppContext.xml", localAcsLogger, TmcdbDiff.class.getClassLoader()); + localAcsLogger.setLevel(localLevel); + } + + private void compareConfigs() throws Exception + { + ConversationInterceptor localConversationInterceptor = TmcdbContextFactory.INSTANCE.getConversationInterceptor(); + localConversationInterceptor.invoke(TmcdbDiff.class.getMethod("privateCompareConfigs", new Class[0]), this, null); + } + + public ConversationTokenProvider privateCompareConfigs() + { + ConfigurationService localConfigurationService = TmcdbContextFactory.INSTANCE.getConfigurationService(); + List localList1 = localConfigurationService.findByName(this.config1Name, MatchMode.EXACT); + + if ((localList1 == null) || (localList1.size() == 0)) { + System.out.println(new StringBuilder().append("\nThere are no configurations named '").append(this.config1Name).append("' in the database. Please correct and try again.").toString()); + System.exit(1); + } + else if (localList1.size() > 1) + { + System.out.println(new StringBuilder().append("\nThe name '").append(this.config1Name).append("' matches more than one configuration. Please correct and try again.").toString()); + System.exit(1); + } + + List localList2 = localConfigurationService.findByName(this.config2Name, MatchMode.EXACT); + + if ((localList2 == null) || (localList2.size() == 0)) { + System.out.println(new StringBuilder().append("\nThere are no configurations named '").append(this.config2Name).append("' in the database. Please correct and try again.").toString()); + System.exit(1); + } + else if (localList2.size() > 1) + { + System.out.println(new StringBuilder().append("\nThe name '").append(this.config2Name).append("' matches more than one configuration. Please correct and try again.").toString()); + System.exit(1); + } + + HwConfiguration localHwConfiguration1 = (HwConfiguration)localList1.get(0); + localConfigurationService.hydrateConfigurationForCloning(localHwConfiguration1); + + HwConfiguration localHwConfiguration2 = (HwConfiguration)localList2.get(0); + localConfigurationService.hydrateConfigurationForCloning(localHwConfiguration2); + + if (!(this.swOnly)) + CloningTestUtils.compareConfigurations(localHwConfiguration1, localHwConfiguration2); + else { + CloningTestUtils.compareSwConfigurations(localHwConfiguration1.getSwConfiguration(), localHwConfiguration2.getSwConfiguration()); + } + updateRunnable.setDone(true); + try { + updateThread.join(); + } catch(InterruptedException ex) { + // noop + } + String[] arrayOfString1 = CloningTestUtils.getListOfProblems(); + if ((arrayOfString1 == null) || (arrayOfString1.length == 0)) { + System.out.println(new StringBuilder().append("\n************** NO differences found in ").append((true == this.swOnly) ? " software " : " hardware or software").append(" configs ****************").toString()); + } else { + System.out.println(new StringBuilder().append("\n************** Differences found in ").append((true == this.swOnly) ? " software " : " hardware or software").append(" configs ****************").toString()); + for (String str : arrayOfString1) { + System.out.println(str); + } + } + + return new ConversationTokenProviderAdapter(ConversationTokenProvider.ConversationToken.CONVERSATION_COMPLETED); + } + + public static void main(String[] paramArrayOfString) + throws Exception + { + TmcdbDiff localTmcdbDiff = new TmcdbDiff(); + localTmcdbDiff.diffConfigs(paramArrayOfString); + } + + private class MyRunnable + implements Runnable + { + private boolean done; + + private MyRunnable() + { + this.done = false; } + + private String updateStatus(String paramString) { + String str = ""; + if (paramString.equals("|")) + str = "/"; + else if (paramString.equals("/")) + str = "-"; + else if (paramString.equals("\\")) + str = "|"; + else if (paramString.equals("-")) { + str = "\\"; + } + return str; + } + + public void run() + { + System.out.println("Comparing configurations "); + String str = "-"; + int i = 1; + while (!(this.done)) { + if (i != 0) { + System.out.print(str); + i = 0; + } else { + System.out.print("\b" + str); + } + try { + Thread.sleep(500L); + } catch (InterruptedException localInterruptedException) { + this.done = true; + } + str = updateStatus(str); + } + } + + public void setDone(boolean paramBoolean) { + this.done = paramBoolean; + } + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/export/ConfigurationXMLExporter.java b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/export/ConfigurationXMLExporter.java new file mode 100755 index 0000000000000000000000000000000000000000..5f60668413bd69b8c7fb3d839654aec44295cec0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/export/ConfigurationXMLExporter.java @@ -0,0 +1,113 @@ +/* + * ALMA - Atacama Large Millimiter Array (c) European Southern Observatory, 2011 + * + * This library is free software; you can redistribute it and/or modify it under + * the terms of the GNU Lesser General Public License as published by the Free + * Software Foundation; either version 2.1 of the License, or (at your option) + * any later version. + * + * This library is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + * details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ +package alma.obops.tmcdb.export; + +import java.io.File; +import java.io.FileWriter; +import java.io.IOException; +import java.util.List; +import java.util.logging.Level; +import java.util.logging.Logger; + +import org.hibernate.criterion.MatchMode; + +import alma.acs.logging.AcsLogLevel; +import alma.acs.logging.ClientLogManager; +import alma.obops.dam.config.TmcdbContextFactory; +import alma.obops.dam.tmcdb.service.ConfigurationService; +import alma.obops.dam.utils.ConversationInterceptor; +import alma.obops.dam.utils.ConversationTokenProvider; +import alma.obops.dam.utils.ConversationTokenProvider.ConversationToken; +import alma.obops.dam.utils.ConversationTokenProviderAdapter; +import alma.tmcdb.domain.HwConfiguration; + +public class ConfigurationXMLExporter { + + private String configurationName; + private File outputFile; + private Logger m_logger; + + public void clone(String []args) throws Exception { + parseArgs(args); + connectToTMCDB(); + exportConfiguration(); + } + + private void parseArgs(String[] args) { + if( args.length < 2 ) { + System.out.println("Usage: ConfigurationXMLExporter configurationName outputFile.xml"); + System.exit(1); + } + + configurationName = args[0]; + outputFile = new File(args[1]); + + if( outputFile.exists() ) { + System.err.println("File '" + outputFile.getAbsolutePath() + "' already exist, won't overwrite it"); + System.exit(2); + } + + } + + private void connectToTMCDB() throws Exception { + m_logger = ClientLogManager.getAcsLogManager().getLoggerForApplication("ConfigurationXMLExporter", false); + Level level = m_logger.getLevel(); + m_logger.setLevel(Level.INFO); + TmcdbContextFactory.INSTANCE.init("config/configurationExporterAppContext.xml", m_logger, ConfigurationXMLExporter.class.getClassLoader()); + m_logger.setLevel(level); + } + + private void exportConfiguration() throws Exception { + ConversationInterceptor conversationInterceptor = TmcdbContextFactory.INSTANCE.getConversationInterceptor(); + conversationInterceptor.invoke(ConfigurationXMLExporter.class.getMethod("privateExportConfiguration"), this, null); + } + + public ConversationTokenProvider privateExportConfiguration() { + + ConfigurationService service = TmcdbContextFactory.INSTANCE.getConfigurationService(); + List configs = service.findByName(configurationName, MatchMode.EXACT); + if( configs.size() == 0 ) { + m_logger.log(AcsLogLevel.ERROR, "Configuration '" + configurationName + "' not found, cannot proceed"); + return new ConversationTokenProviderAdapter(ConversationToken.CONVERSATION_COMPLETED); + } + + m_logger.info("Exporting configuration '" + configurationName + "' as XML"); + String exportedConfig = service.exportConfigurationAsXml(configs.get(0)); + m_logger.info("Done exporting configuration, saving it into '" + outputFile.getAbsolutePath() + "'"); + + try { + FileWriter writer = new FileWriter(outputFile); + writer.write(exportedConfig); + writer.close(); + m_logger.info("Finished writing XML data to '" + outputFile.getAbsolutePath() + "', exiting now"); + } catch (IOException e) { + m_logger.log(AcsLogLevel.SEVERE, "Problem while writing configuration XML data to file", e); + } + + return new ConversationTokenProviderAdapter(ConversationToken.CONVERSATION_COMPLETED); + } + + /** + * @param args + */ + public static void main(String[] args) throws Exception { + ConfigurationXMLExporter exporter = new ConfigurationXMLExporter(); + exporter.clone(args); + } + +} diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/padimport/PadImporter.java b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/padimport/PadImporter.java new file mode 100755 index 0000000000000000000000000000000000000000..5b252a9befcc39fed4121bf4e8a2c51a830be4de --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/alma/obops/tmcdb/padimport/PadImporter.java @@ -0,0 +1,280 @@ +/******************************************************************************* + * ALMA - Atacama Large Millimeter Array + * Copyright (c) ESO - European Southern Observatory, 2011 + * (in the framework of the ALMA collaboration). + * All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + *******************************************************************************/ +package alma.obops.tmcdb.padimport; + +import java.io.File; +import java.io.IOException; +import java.io.InputStream; +import java.util.Date; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.logging.Level; +import java.util.logging.Logger; + +import javax.xml.XMLConstants; +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; +import javax.xml.parsers.ParserConfigurationException; +import javax.xml.transform.Source; +import javax.xml.transform.dom.DOMSource; +import javax.xml.transform.stream.StreamSource; +import javax.xml.validation.Schema; +import javax.xml.validation.SchemaFactory; +import javax.xml.validation.Validator; + +import org.hibernate.criterion.MatchMode; +import org.w3c.dom.Document; +import org.w3c.dom.NamedNodeMap; +import org.w3c.dom.Node; +import org.w3c.dom.NodeList; +import org.xml.sax.SAXException; + +import alma.acs.logging.ClientLogManager; +import alma.obops.dam.config.TmcdbContextFactory; +import alma.obops.dam.tmcdb.service.ConfigurationService; +import alma.obops.dam.tmcdb.service.PadService; +import alma.obops.dam.utils.ConversationInterceptor; +import alma.obops.dam.utils.ConversationTokenProvider; +import alma.obops.dam.utils.ConversationTokenProvider.ConversationToken; +import alma.obops.dam.utils.ConversationTokenProviderAdapter; +import alma.tmcdb.domain.BaseElement; +import alma.tmcdb.domain.BaseElementType; +import alma.tmcdb.domain.Coordinate; +import alma.tmcdb.domain.HwConfiguration; +import alma.tmcdb.domain.Pad; + +/** + * Tool to import pads from an xml file. + * @author sharring + */ +public class PadImporter +{ + private String configurationName; + private String padXmlFile; + private Set pads = new HashSet(); + + public void doImport(String []args) throws Exception + { + parseArgs(args); + processPadXmlFile(padXmlFile); + connectToTMCDB(); + importPads(); + } + + private void parseArgs(String[] args) + { + if( args.length != 2 ) + { + System.out.println("\nUsage: PadImporter "); + System.exit(1); + } + + configurationName = args[0]; + padXmlFile = args[1]; + } + + private void processPadXmlFile(String padXmlFile) + { + // parse the XML document into a DOM document + DocumentBuilder parser = null; + Document document = null; + try { + parser = DocumentBuilderFactory.newInstance().newDocumentBuilder(); + document = parser.parse(new File(padXmlFile)); + } catch (SAXException ex) { + System.out.println("\nUnable to parse the XML file; please see stack trace and correct the problem."); + ex.printStackTrace(); + System.exit(1); + } catch (IOException ex) { + System.out.println("\nI/O problem while parsing XML; please see stack trace and correct the problem."); + ex.printStackTrace(); + System.exit(1); + } catch (ParserConfigurationException ex) { + System.out.println("\nXML parser config problem; please see stack trace and correct the problem."); + ex.printStackTrace(); + System.exit(1); + } + + // create a SchemaFactory + SchemaFactory factory = SchemaFactory.newInstance(XMLConstants.W3C_XML_SCHEMA_NS_URI); + + // load the schema, represented by a Schema instance + InputStream streamForSchema = getClass().getClassLoader().getResourceAsStream("config/Pads.xsd"); + Source schemaSource = new StreamSource(streamForSchema); + Schema schema = null; + try { + schema = factory.newSchema(schemaSource); + } catch (SAXException ex) { + System.out.println("\nUnable to create a schema; please see stack trace and correct the problem."); + ex.printStackTrace(); + System.exit(1); + } + + // create a Validator instance, which can be used to validate an instance document + Validator validator = schema.newValidator(); + + // validate the DOM tree + try { + validator.validate(new DOMSource(document)); + } catch (SAXException ex) { + System.out.println("\nUnable to validate the document; please see stack trace and correct the problem."); + ex.printStackTrace(); + System.exit(1); + } catch (IOException ex) { + System.out.println("\nI/O problem while validating document; please see stack trace and correct the problem."); + ex.printStackTrace(); + System.exit(1); + } + + // If we've gotten this far, the document is valid. So, populate the collection of pads found in the DOM document. + populatePadCollection(document); + } + + private void populatePadCollection(Document document) + { + NodeList padNodes = document.getElementsByTagName("Pad"); + for(int i = 0; i < padNodes.getLength(); i++) + { + Node node = padNodes.item(i); + NamedNodeMap attributesMap = node.getAttributes(); + Node xAttr = attributesMap.getNamedItem("x"); + String xStrVal = xAttr.getNodeValue(); + Double x = Double.parseDouble(xStrVal); + + Node yAttr = attributesMap.getNamedItem("y"); + String yStrVal = yAttr.getNodeValue(); + Double y = Double.parseDouble(yStrVal); + + Node zAttr = attributesMap.getNamedItem("z"); + String zStrVal = zAttr.getNodeValue(); + Double z = Double.parseDouble(zStrVal); + + Node nameAttr = attributesMap.getNamedItem("name"); + String nameStrVal = nameAttr.getNodeValue(); + + Node cableDelayAttr = attributesMap.getNamedItem("cableDelay"); + Double cableDelay = 0.0; + if(null != cableDelayAttr) { + String cableDelayStrVal = cableDelayAttr.getNodeValue(); + cableDelay = Double.parseDouble(cableDelayStrVal); + } + + Pad pad = new Pad(); + Coordinate coords = new Coordinate(x, y, z); + pad.setPosition(coords); + pad.setAvgDelay(cableDelay); + pad.setCommissionDate(new Date().getTime()); + pad.setName(nameStrVal); + pad.setType(BaseElementType.Pad); + pads.add(pad); + } + } + + private void connectToTMCDB() throws Exception + { + Logger logger = ClientLogManager.getAcsLogManager().getLoggerForApplication("padImporter", false); + Level level = logger.getLevel(); + logger.setLevel(Level.INFO); + TmcdbContextFactory.INSTANCE.init("config/antennaClonerAppContext.xml", logger, PadImporter.class.getClassLoader()); + logger.setLevel(level); + } + + private void importPads() throws Exception + { + ConversationInterceptor conversationInterceptor = TmcdbContextFactory.INSTANCE.getConversationInterceptor(); + conversationInterceptor.invoke(PadImporter.class.getMethod("privateImportPads"), this, null); + } + + /** + * This method is public so that the interceptor can invoke it; it is actually + * not intended for public consumption. + */ + public ConversationTokenProvider privateImportPads() + { + ConfigurationService service = TmcdbContextFactory.INSTANCE.getConfigurationService(); + List configs = service.findByName(configurationName, MatchMode.EXACT); + + if(configs == null || configs.size() == 0) { + System.out.println("\nThere are no configurations named '" + configurationName + "' in the database. Please correct and try again."); + System.exit(1); + } + else if(configs.size() > 1) + { + System.out.println("\nThe name '" + configurationName + "' matches more than one configuration. Please correct and try again."); + System.exit(1); + } + + HwConfiguration hwConfig = configs.get(0); + service.hydrateBaseElements(hwConfig); + Set baseElements = hwConfig.getBaseElements(); + + PadService padService = TmcdbContextFactory.INSTANCE.getPadService(); + for(Pad pad: pads) + { + pad.setConfiguration(hwConfig); + if(!baseElements.contains(pad)) { + hwConfig.addBaseElement(pad); + padService.create(pad); + System.out.println("Creating pad: " + pad.getName()); + } else { + String userId = System.getProperty("user.name"); + for(BaseElement be: hwConfig.getBaseElements()) { + if(be.getType().equals(BaseElementType.Pad)) { + Pad existingPad = (Pad) be; + if(existingPad.getName().equals(pad.getName())) + { + try { + boolean canSave = padService.prepareSave(existingPad, userId, "bulk import/modify of pads by padImporter utility"); + // if the new version preparation was successful, we can then perform the save + if(canSave) + { + existingPad.setAvgDelay(pad.getAvgDelay()); + existingPad.setPosition(pad.getPosition()); + System.out.println("Updating pad: " + existingPad.getName()); + padService.update(existingPad); + } + } + finally { + padService.endSave(pad); + } + } + } + } + + } + + } + + service.update(hwConfig); + System.out.println("************* Successfully processed pads *****************"); + return new ConversationTokenProviderAdapter(ConversationToken.CONVERSATION_COMPLETED); + } + + /** + * @param args + */ + public static void main(String[] args) throws Exception + { + PadImporter importer = new PadImporter(); + importer.doImport(args); + } +} diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/config/Pads.xsd b/ARCHIVE/SharedCode/TMCDB/Tools/src/config/Pads.xsd new file mode 100755 index 0000000000000000000000000000000000000000..a90272dd767c269f6f55f5432936d547317510b0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/config/Pads.xsd @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/config/antennaClonerAppContext.xml b/ARCHIVE/SharedCode/TMCDB/Tools/src/config/antennaClonerAppContext.xml new file mode 100755 index 0000000000000000000000000000000000000000..8ea2aa5e3a5bd518569da8937b702fab28928e2f --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/config/antennaClonerAppContext.xml @@ -0,0 +1,146 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + tmcdb.hibernate.cfg.xml + + + + + + + + + false + true + + org.hibernate.transaction.JDBCTransactionFactory + + 0 + false + false + false + false + org.hibernate.cache.NoCacheProvider + managed + false + false + + #{dbConfig.dialect} + #{dbConfig.driver} + #{dbConfig.username} + #{dbConfig.password} + #{dbConfig.connectionUrl} + + + org.hibernate.connection.C3P0ConnectionProvider + 1 + 5 + 300 + 0 + 3000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/config/configurationExporterAppContext.xml b/ARCHIVE/SharedCode/TMCDB/Tools/src/config/configurationExporterAppContext.xml new file mode 100755 index 0000000000000000000000000000000000000000..0c25849b8d79e049a91e48ce066592a8fed9f1c0 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/config/configurationExporterAppContext.xml @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + tmcdb.hibernate.cfg.xml + + + + + + + + + false + true + + org.hibernate.transaction.JDBCTransactionFactory + + 0 + false + false + false + false + org.hibernate.cache.NoCacheProvider + managed + false + false + + + org.hibernate.connection.C3P0ConnectionProvider + 1 + 5 + 300 + 0 + 3000 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Tools/src/parseTMC.py b/ARCHIVE/SharedCode/TMCDB/Tools/src/parseTMC.py new file mode 100755 index 0000000000000000000000000000000000000000..46c1549d4c56be60ad12c81174873351ec8d68b3 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Tools/src/parseTMC.py @@ -0,0 +1,19 @@ +f = open('PadData.csv','r') +filehandler = open('PadData.xml','w') +l = f.readlines() +filehandler.write('\n') +for i in l: + data = i.rstrip('\n').rstrip('\r') +# + d_l = data.split(',') + pad = d_l[0] + x = d_l[1] + y = d_l[2] + z = d_l[3] + if pad.__contains__('BASE'): + pass + else: + filehandler.write(' \n' % (pad, x, y, x)) +filehandler.write('\n') +filehandler.close() +f.close() diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/.classpath b/ARCHIVE/SharedCode/TMCDB/Utils/.classpath new file mode 100755 index 0000000000000000000000000000000000000000..012619fc94e3dfd362d7608ad05f799515cc1c4c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/.classpath @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/.classpath_old b/ARCHIVE/SharedCode/TMCDB/Utils/.classpath_old new file mode 100755 index 0000000000000000000000000000000000000000..3eb8aa8e6df30f1c05fcc999c87a1827b7b239bb --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/.classpath_old @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/.project b/ARCHIVE/SharedCode/TMCDB/Utils/.project new file mode 100755 index 0000000000000000000000000000000000000000..6cbcd1b15bc2f4675ef508dc1d21d66c06cd594f --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/.project @@ -0,0 +1,18 @@ + + + Utils + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + org.python.pydev.pythonNature + + diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/.pydevproject b/ARCHIVE/SharedCode/TMCDB/Utils/.pydevproject new file mode 100755 index 0000000000000000000000000000000000000000..f8c0075c76525e705c9b23f7d6a1b3cf304d2704 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/.pydevproject @@ -0,0 +1,7 @@ + + + + +Default +python 2.6 + diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/AssemblyCatalog.xml b/ARCHIVE/SharedCode/TMCDB/Utils/bin/AssemblyCatalog.xml new file mode 100755 index 0000000000000000000000000000000000000000..1827ba93d084a75136341cd58fcbb80177a71a4b --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/bin/AssemblyCatalog.xml @@ -0,0 +1,14 @@ + + + + 0x00000000000109c8.xml + 0x00000000000109c8.xsd + + + CONTROL_DV01_Mount.xml + + diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/Configuration.xml b/ARCHIVE/SharedCode/TMCDB/Utils/bin/Configuration.xml new file mode 100755 index 0000000000000000000000000000000000000000..9f24aeb6e00352b25414e2d578ebb08720c0bba9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/bin/Configuration.xml @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/ExportArrayConfiguration.py b/ARCHIVE/SharedCode/TMCDB/Utils/bin/ExportArrayConfiguration.py new file mode 100755 index 0000000000000000000000000000000000000000..dae5ff6337758dc1ec6d7afc91e5cc1dcdf30074 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/bin/ExportArrayConfiguration.py @@ -0,0 +1,110 @@ +#! /usr/bin/env python +# +# ALMA - Atacama Large Millimiter Array +# (c) Associated Universities Inc., 2009 +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# +# + +from optparse import OptionParser +import commands +import sys +import os + +if __name__ == "__main__": + parser = OptionParser() + parser.add_option("-c", "--configuration", dest="tmcdb", + help="TMCDB configuration to export the pointing model from.", metavar="TMCDB") + parser.add_option("-f", "--file", dest="filename", + help="output XML file to store the pointing model.", metavar="FILE") + parser.add_option("-a", "--antenna", dest="antenna", + help="antenna to export the pointing model from.", metavar="ANTENNA") + parser.add_option("-t", "--time", dest="time", + help="export the pointing model as it existed at the given time.", metavar="TIME") + parser.add_option("-v", "--version", dest="version", + help="export the pointing model of given version; this option requires an antenna to be provided as well", metavar="VERSION") + parser.add_option("-y", "--history", dest="history", action="store_true", + help="export version history for each antenna") + parser.add_option("-g", "--debug", dest="debug", action="store_true", + help="adds clumsy ACS Java options to get Hibernate detailed logs") + + (options, args) = parser.parse_args() + + if os.environ.has_key('LOCATION') is True: + if os.environ['LOCATION'] == 'AOS2': + options.tmcdb = 'CURRENT.AOS' + + + if options.tmcdb is None: + tmcdb = str(commands.getoutput("echo $TMCDB_CONFIGURATION_NAME")) + else: + tmcdb = str(options.tmcdb) + + if tmcdb is None or len(tmcdb) == 0: + print "configuration was not specified; nor is TMCDB_CONFIGURATION_NAME environment variable set" + exit(-1) + + if options.filename is None: + pid = str(commands.getoutput("echo $$")) + filename = "ArrayConfiguration-" + pid + ".xml" + else: + filename = str(options.filename) + filename = filename.rstrip(".xml") + ".xml" + + if options.antenna is None: + message = "Array configuration for all antennas in configuration '" + tmcdb + "' saved in " + filename + else: + antenna = options.antenna + message = "Array configuration for antenna " + antenna + " from configuration '" + tmcdb + "' saved in " + filename + + if options.time is None: + time = None + else: + time = options.time + + if options.version is None: + version = None + else: + version = options.version + + instruction = "acsStartJava -endorsed " + if options.debug: + instruction += "-DACS.log.minlevel.namedloggers='hibernateSQL=1,1:hibernate=4,4' " + instruction += "alma.tmcdb.utils.ArrayConfigurationsExporter " + + + if options.tmcdb is not None: + instruction = instruction + " -c " + tmcdb + if options.time is not None: + instruction = instruction + " -t " + time + if options.version is not None: + instruction = instruction + " -v " + version + if filename is not None: + instruction = instruction + " -o " + filename + if options.antenna is not None: + instruction = instruction + " -a " + antenna + if options.history: + instruction = instruction + " -y " + + instruction += " >& exportArrayConfiguration.log" + + commands.getoutput(instruction) + + if os.path.exists(filename): + print message + else: + print "FAILED: check exportArrayConfiguration.log file for details" diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/ImportPointingModel b/ARCHIVE/SharedCode/TMCDB/Utils/bin/ImportPointingModel new file mode 100755 index 0000000000000000000000000000000000000000..f7fdfd36113b1fc25e6b6381cbfd8630e8ac9df4 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/bin/ImportPointingModel @@ -0,0 +1,18 @@ +#!/bin/bash + +if test $# -lt 2; then + printf "Usage: ImportPointingModel \n" + exit -1 +fi + +INPUT_FILE=$1 +COMMENT=$2 +LOG_FILE=importPointingModel.out + +if test $# -ge 3; then + TMCDB_CONFIGURATION_NAME=$3 +fi + +acsStartJava -endorsed alma.tmcdb.utils.PointingModelImporter $TMCDB_CONFIGURATION_NAME $INPUT_FILE \"$COMMENT\" &> $LOG_FILE + +# __oOo__ diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/LRUSample.xml b/ARCHIVE/SharedCode/TMCDB/Utils/bin/LRUSample.xml new file mode 100755 index 0000000000000000000000000000000000000000..1c85b3c1db2403f0fc61c7fd8b46cfee3d28d8d9 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/bin/LRUSample.xml @@ -0,0 +1,1753 @@ + + + WeatherStationController + WeatherStationController + ALMA-52.00.00.00-70.35.30.00-C-ICD + 4715712000000000000 + Define the interface between the prototype and production IF Downconverter (IFDC) and the Computing Monitor and Control software. + + + WeatherStationController + WSOSF + Define the interface between the prototype and production IF Downconverter (IFDC) and the Computing Monitor and Control software. + + WSOSF + none + 0 + + + STATUS + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + STATUS + + 0x00001 + 0 + ubyte + unsigned char + none + 1.0 + 0.0 + 0 + 0 + Status bits and FIFO Depths. The voltage reference bits indicate that there is a voltage reference to the relative digitizer, but not on the correctness of the voltage. The power voltages will indicate that the voltage is within +/- 5%. FIFO Depths are uint16. Unless otherwise noted, a 1 in a bit indicates the described condition is true, a 0 indicates the condition is false. + + + + + diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/Makefile b/ARCHIVE/SharedCode/TMCDB/Utils/bin/Makefile new file mode 100755 index 0000000000000000000000000000000000000000..08ad0c5cfe88ffa4883674adf46de58e1650018c --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/bin/Makefile @@ -0,0 +1,229 @@ +#******************************************************************************* +# PPPPPPPP +# +# "@(#) $Id: Makefile,v 1.14 2011/12/21 21:54:06 mmora Exp $" +# +# Makefile of ........ +# +# who when what +# -------- -------- ---------------------------------------------- +# rhiriart 19/03/09 created +# + +#******************************************************************************* +# This Makefile follows VLT Standards (see Makefile(5) for more). +#******************************************************************************* +# REMARKS +# None +#------------------------------------------------------------------------ + +# +# user definable C-compilation flags +#USER_CFLAGS = + +# +# additional include and library search paths +#USER_INC = +#USER_LIB = + +# +# MODULE CODE DESCRIPTION: +# ------------------------ +# As a general rule: public file are "cleaned" and "installed" +# local (_L) are not "installed". + +# +# C programs (public and local) +# ----------------------------- +EXECUTABLES = +EXECUTABLES_L = + +# +# +xxxxx_OBJECTS = +xxxxx_LDFLAGS = +xxxxx_LIBS = + +# +# special compilation flags for single c sources +#yyyyy_CFLAGS = + +# +# Includes (.h) files (public only) +# --------------------------------- +INCLUDES = + +# +# Libraries (public and local) +# ---------------------------- +LIBRARIES = +LIBRARIES_L = + +# +# +lllll_OBJECTS = + +# +# Scripts (public and local) +# ---------------------------- +SCRIPTS = startHSQLDB MonitoringSyncTool +SCRIPTS_L = + +# +# TCL scripts (public and local) +# ------------------------------ +TCL_SCRIPTS = +TCL_SCRIPTS_L = + +# +# Python stuff (public and local) +# ---------------------------- +PY_SCRIPTS = ExportFocusModel.py ImportFocusModel.py \ + ExportPointingModel.py ImportPointingModel.py \ + ExportPositionModel.py ImportPositionModel.py +PY_SCRIPTS_L = + +PY_MODULES = +PY_MODULES_L = + +PY_PACKAGES = +PY_PACKAGES_L = +pppppp_MODULES = + +# +# +tttttt_OBJECTS = +tttttt_TCLSH = +tttttt_LIBS = + +# +# TCL libraries (public and local) +# ------------------------------ +TCL_LIBRARIES = +TCL_LIBRARIES_L = + +# +# +tttlll_OBJECTS = + +# +# Configuration Database Files +# ---------------------------- +CDB_SCHEMAS = + +# +# IDL Files and flags +# +IDL_FILES = +TAO_IDLFLAGS = +USER_IDL = +# +# Jarfiles and their directories +# +JARFILES=TMCDBUtils +TMCDBUtils_DIRS= alma/tmcdb/generated alma/tmcdb/utils alma/tmcdb/translation +jjj_EXTRAS= +# +# java sources in Jarfile on/off +DEBUG=on +# +# ACS XmlIdl generation on/off +# +XML_IDL= +# +# Java Component Helper Classes generation on/off +# +COMPONENT_HELPERS= +# +# Java Entity Classes generation on/off +# +XSDBIND= +# +# Schema Config files for the above +# +XSDBIND_INCLUDE= +# man pages to be done +# -------------------- +MANSECTIONS = +MAN1 = +MAN3 = +MAN5 = +MAN7 = +MAN8 = + +# +# local man pages +# --------------- +MANl = + +# +# ASCII file to be converted into Framemaker-MIF +# -------------------- +ASCII_TO_MIF = + +# +# other files to be installed +#---------------------------- +INSTALL_FILES = ../config/TMCDBSample.tar.gz + +# +# list of all possible C-sources (used to create automatic dependencies) +# ------------------------------ +CSOURCENAMES = \ + $(foreach exe, $(EXECUTABLES) $(EXECUTABLES_L), $($(exe)_OBJECTS)) \ + $(foreach rtos, $(RTAI_MODULES) , $($(rtos)_OBJECTS)) \ + $(foreach lib, $(LIBRARIES) $(LIBRARIES_L), $($(lib)_OBJECTS)) + +# +#>>>>> END OF standard rules + +# +# INCLUDE STANDARDS +# ----------------- + +MAKEDIRTMP := $(shell searchFile include/acsMakefile) +ifneq ($(MAKEDIRTMP),\#error\#) + MAKEDIR := $(MAKEDIRTMP)/include + include $(MAKEDIR)/acsMakefile +endif + +# +# TARGETS +# ------- +gen: + rm -rf alma/tmcdb/generated + acsStartJava -endorsed org.exolab.castor.builder.SourceGenerator \ + -i ../config/Configuration.xsd -package alma.tmcdb.generated.configuration + acsStartJava -endorsed org.exolab.castor.builder.SourceGenerator \ + -f -i ../config/PointingModel.xsd -package alma.tmcdb.generated.configuration + acsStartJava -endorsed org.exolab.castor.builder.SourceGenerator \ + -f -i ../config/FocusModel.xsd -package alma.tmcdb.generated.configuration + acsStartJava -endorsed org.exolab.castor.builder.SourceGenerator \ + -f -i ../config/PositionModel.xsd -package alma.tmcdb.generated.configuration + acsStartJava -endorsed org.exolab.castor.builder.SourceGenerator \ + -f -i ../config/AntennaToPad.xsd -package alma.tmcdb.generated.configuration + acsStartJava -endorsed org.exolab.castor.builder.SourceGenerator \ + -i ../config/LRU.xsd -package alma.tmcdb.generated.lrutype + acsStartJava -endorsed org.exolab.castor.builder.SourceGenerator \ + -i ../config/AssemblyDataCatalog.xsd -package alma.tmcdb.generated.assemblydata + @echo " . . . 'gen' done" + +do_all: gen + +all: gen do_all + @echo " . . . 'all' done" + +clean : clean_all + @echo " . . . clean done" + +clean_dist : clean_all clean_dist_all + @echo " . . . clean_dist done" + +man : do_man + @echo " . . . man page(s) done" + +install : install_all + @echo " . . . installation done" + + +#___oOo___ diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB.tar.gz b/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB.tar.gz new file mode 100755 index 0000000000000000000000000000000000000000..170265c29d5df6e56967503199d14592b8d3d9da Binary files /dev/null and b/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB.tar.gz differ diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB/TMCDB/TMCDB.properties b/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB/TMCDB/TMCDB.properties new file mode 100755 index 0000000000000000000000000000000000000000..df41c282331c4f19ad36ff8e5aa7a915f3377222 --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB/TMCDB/TMCDB.properties @@ -0,0 +1,4 @@ +#HSQL Database Engine 2.3.0 +#Thu Feb 13 18:00:35 UTC 2014 +version=2.3.0 +modified=no diff --git a/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB/TMCDB/TMCDB.script b/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB/TMCDB/TMCDB.script new file mode 100755 index 0000000000000000000000000000000000000000..766b328050bfb0e39ca3d12039e03e3517da8bbf --- /dev/null +++ b/ARCHIVE/SharedCode/TMCDB/Utils/bin/TMCDB/TMCDB/TMCDB.script @@ -0,0 +1,20744 @@ +SET DATABASE UNIQUE NAME HSQLDB442BF1A192 +SET DATABASE GC 0 +SET DATABASE DEFAULT RESULT MEMORY ROWS 0 +SET DATABASE EVENT LOG LEVEL 0 +SET DATABASE SQL NAMES FALSE +SET DATABASE SQL REFERENCES FALSE +SET DATABASE SQL SIZE TRUE +SET DATABASE SQL TYPES FALSE +SET DATABASE SQL TDC DELETE TRUE +SET DATABASE SQL TDC UPDATE TRUE +SET DATABASE SQL TRANSLATE TTI TYPES TRUE +SET DATABASE SQL CONCAT NULLS TRUE +SET DATABASE SQL UNIQUE NULLS TRUE +SET DATABASE SQL CONVERT TRUNCATE TRUE +SET DATABASE SQL AVG SCALE 0 +SET DATABASE SQL DOUBLE NAN TRUE +SET DATABASE TRANSACTION CONTROL LOCKS +SET DATABASE DEFAULT ISOLATION LEVEL READ COMMITTED +SET DATABASE TRANSACTION ROLLBACK ON CONFLICT TRUE +SET DATABASE TEXT TABLE DEFAULTS '' +SET FILES WRITE DELAY 500 MILLIS +SET FILES BACKUP INCREMENT TRUE +SET FILES CACHE SIZE 10000 +SET FILES CACHE ROWS 50000 +SET FILES SCALE 32 +SET FILES LOB SCALE 32 +SET FILES DEFRAG 0 +SET FILES NIO TRUE +SET FILES NIO SIZE 256 +SET FILES LOG TRUE +SET FILES LOG SIZE 50 +CREATE USER SA PASSWORD DIGEST 'd41d8cd98f00b204e9800998ecf8427e' +ALTER USER SA SET LOCAL TRUE +CREATE SCHEMA PUBLIC AUTHORIZATION DBA +SET SCHEMA PUBLIC +CREATE MEMORY TABLE PUBLIC.COMPONENTTYPE(COMPONENTTYPEID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,IDL VARCHAR(256) NOT NULL,CONSTRAINT COMPONTALTKEY UNIQUE(IDL)) +ALTER TABLE PUBLIC.COMPONENTTYPE ALTER COLUMN COMPONENTTYPEID RESTART WITH 173 +CREATE MEMORY TABLE PUBLIC.CONFIGURATION(CONFIGURATIONID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONFIGURATIONNAME VARCHAR(128) NOT NULL,FULLNAME VARCHAR(256) NOT NULL,ACTIVE BOOLEAN NOT NULL,CREATIONTIME TIMESTAMP NOT NULL,DESCRIPTION VARCHAR(16777216) NOT NULL,CONSTRAINT CONFIGALTKEY UNIQUE(CONFIGURATIONNAME)) +ALTER TABLE PUBLIC.CONFIGURATION ALTER COLUMN CONFIGURATIONID RESTART WITH 1 +CREATE MEMORY TABLE PUBLIC.SCHEMAS(SCHEMAID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,URN VARCHAR(16777216) NOT NULL,CONFIGURATIONID INTEGER NOT NULL,SCHEMA VARCHAR(16777216),CONSTRAINT SCHEMASCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT SCHEMASALTKEY UNIQUE(URN,CONFIGURATIONID)) +ALTER TABLE PUBLIC.SCHEMAS ALTER COLUMN SCHEMAID RESTART WITH 184 +CREATE MEMORY TABLE PUBLIC.NETWORKDEVICE(NETWORKDEVICEID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,NETWORKNAME VARCHAR(256) NOT NULL,CONFIGURATIONID INTEGER NOT NULL,PHYSICALLOCATION VARCHAR(256),NAME VARCHAR(256),CONSTRAINT NETWORKDEVICECONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT NETWORDALTKEY UNIQUE(NETWORKNAME,CONFIGURATIONID)) +ALTER TABLE PUBLIC.NETWORKDEVICE ALTER COLUMN NETWORKDEVICEID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.COMPUTER(NETWORKDEVICEID INTEGER,PROCESSORTYPE CHARACTER(3) NOT NULL,REALTIME BOOLEAN NOT NULL,DISKLESS BOOLEAN NOT NULL,CONSTRAINT COMPUTERKEY PRIMARY KEY(NETWORKDEVICEID),CONSTRAINT CHILDCOMPUTERPROCESSORTYPE CHECK((PUBLIC.COMPUTER.PROCESSORTYPE) IN (('uni'),('smp'))),CONSTRAINT COMPUTERNETWORDFKEY FOREIGN KEY(NETWORKDEVICEID) REFERENCES PUBLIC.NETWORKDEVICE(NETWORKDEVICEID)) +CREATE MEMORY TABLE PUBLIC.LOGGINGCONFIG(LOGGINGCONFIGID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,MINLOGLEVELDEFAULT TINYINT DEFAULT 2,MINLOGLEVELLOCALDEFAULT TINYINT DEFAULT 2,CENTRALIZEDLOGGER VARCHAR(16777216) DEFAULT 'Log',DISPATCHPACKETSIZE TINYINT DEFAULT 10,IMMEDIATEDISPATCHLEVEL TINYINT DEFAULT 10,FLUSHPERIODSECONDS TINYINT DEFAULT 10,MAXLOGQUEUESIZE INTEGER DEFAULT 1000,MAXLOGSPERSECOND INTEGER DEFAULT -1) +ALTER TABLE PUBLIC.LOGGINGCONFIG ALTER COLUMN LOGGINGCONFIGID RESTART WITH 17 +CREATE MEMORY TABLE PUBLIC.NAMEDLOGGERCONFIG(NAMEDLOGGERCONFIGID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,LOGGINGCONFIGID INTEGER NOT NULL,NAME VARCHAR(16777216) NOT NULL,MINLOGLEVEL TINYINT DEFAULT 2,MINLOGLEVELLOCAL TINYINT DEFAULT 2,CONSTRAINT NAMEDLOGGERCONFIGLOGGINGCONFIG FOREIGN KEY(LOGGINGCONFIGID) REFERENCES PUBLIC.LOGGINGCONFIG(LOGGINGCONFIGID),CONSTRAINT NAMEDLCALTKEY UNIQUE(LOGGINGCONFIGID,NAME)) +ALTER TABLE PUBLIC.NAMEDLOGGERCONFIG ALTER COLUMN NAMEDLOGGERCONFIGID RESTART WITH 3 +CREATE MEMORY TABLE PUBLIC.MANAGER(MANAGERID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONFIGURATIONID INTEGER NOT NULL,LOGGINGCONFIGID INTEGER NOT NULL,STARTUP VARCHAR(16777216),SERVICECOMPONENTS VARCHAR(16777216),SERVICEDAEMONS VARCHAR(16777216),TIMEOUT INTEGER DEFAULT 50,CLIENTPINGINTERVAL INTEGER DEFAULT 60,ADMINISTRATORPINGINTERVAL INTEGER DEFAULT 45,CONTAINERPINGINTERVAL INTEGER DEFAULT 30,SERVERTHREADS TINYINT DEFAULT 10,CONSTRAINT MANAGERLOGGINGCONFIG FOREIGN KEY(LOGGINGCONFIGID) REFERENCES PUBLIC.LOGGINGCONFIG(LOGGINGCONFIGID),CONSTRAINT MANAGERCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT MANAGERALTKEY UNIQUE(CONFIGURATIONID,LOGGINGCONFIGID,STARTUP,SERVICECOMPONENTS,TIMEOUT,CLIENTPINGINTERVAL,ADMINISTRATORPINGINTERVAL,CONTAINERPINGINTERVAL,SERVERTHREADS)) +ALTER TABLE PUBLIC.MANAGER ALTER COLUMN MANAGERID RESTART WITH 1 +CREATE MEMORY TABLE PUBLIC.CONTAINER(CONTAINERID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONTAINERNAME VARCHAR(256) NOT NULL,PATH VARCHAR(256) NOT NULL,CONFIGURATIONID INTEGER NOT NULL,LOGGINGCONFIGID INTEGER NOT NULL,IMPLLANG VARCHAR(16777216) NOT NULL,REALTIME BOOLEAN DEFAULT FALSE,REALTIMETYPE VARCHAR(16777216) DEFAULT 'NONE',KERNELMODULELOCATION VARCHAR(16777216),KERNELMODULE VARCHAR(16777216),COMPUTERID INTEGER,TYPEMODIFIERS VARCHAR(16777216),STARTONDEMAND BOOLEAN DEFAULT FALSE,KEEPALIVETIME INTEGER DEFAULT -1,SERVERTHREADS INTEGER DEFAULT 5,MANAGERRETRY INTEGER DEFAULT 10,CALLTIMEOUT INTEGER DEFAULT 30,PINGINTERVAL INTEGER,RECOVERY BOOLEAN DEFAULT TRUE,AUTOLOADSHAREDLIBS VARCHAR(16777216),CONSTRAINT CONTAINERCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT CONTAINERLOGGINGCONFIG FOREIGN KEY(LOGGINGCONFIGID) REFERENCES PUBLIC.LOGGINGCONFIG(LOGGINGCONFIGID),CONSTRAINT CONTAINERCOMPUTER FOREIGN KEY(COMPUTERID) REFERENCES PUBLIC.COMPUTER(NETWORKDEVICEID),CONSTRAINT CONTAINERIMPLLANG CHECK((PUBLIC.CONTAINER.IMPLLANG) IN (('java'),('cpp'),('py'))),CONSTRAINT CONTAINERREALTIMETYPE CHECK((PUBLIC.CONTAINER.REALTIMETYPE) IN (('NONE'),('ABM'),('CORR'))),CONSTRAINT CONTAINERALTKEY UNIQUE(CONTAINERNAME,PATH,CONFIGURATIONID)) +ALTER TABLE PUBLIC.CONTAINER ALTER COLUMN CONTAINERID RESTART WITH 16 +CREATE MEMORY TABLE PUBLIC.CONTAINERSTARTUPOPTION(CONTSTARTOPTID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONTAINERID INTEGER NOT NULL,OPTIONTYPE VARCHAR(16777216) NOT NULL,OPTIONNAME VARCHAR(256) NOT NULL,OPTIONVALUE VARCHAR(256) NOT NULL,CONSTRAINT CONTSTARTOPTCONTAINER FOREIGN KEY(CONTAINERID) REFERENCES PUBLIC.CONTAINER(CONTAINERID),CONSTRAINT CONTSTARTOPTTYPE CHECK((PUBLIC.CONTAINERSTARTUPOPTION.OPTIONTYPE) IN (('ENV_VAR'),('EXEC_ARG'),('EXEC_ARG_LANG'),('CONT_ARG')))) +ALTER TABLE PUBLIC.CONTAINERSTARTUPOPTION ALTER COLUMN CONTSTARTOPTID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.COMPONENT(COMPONENTID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,COMPONENTTYPEID INTEGER NOT NULL,COMPONENTNAME VARCHAR(256) NOT NULL,CONFIGURATIONID INTEGER NOT NULL,CONTAINERID INTEGER,IMPLLANG VARCHAR(16777216) NOT NULL,REALTIME BOOLEAN NOT NULL,CODE VARCHAR(256) NOT NULL,PATH VARCHAR(256) NOT NULL,ISAUTOSTART BOOLEAN NOT NULL,ISDEFAULT BOOLEAN NOT NULL,ISSTANDALONEDEFINED BOOLEAN,ISCONTROL BOOLEAN NOT NULL,KEEPALIVETIME INTEGER NOT NULL,MINLOGLEVEL TINYINT NOT NULL,MINLOGLEVELLOCAL TINYINT NOT NULL,XMLDOC VARCHAR(16777216),URN VARCHAR(16777216),CONSTRAINT COMPONENTIDL FOREIGN KEY(COMPONENTTYPEID) REFERENCES PUBLIC.COMPONENTTYPE(COMPONENTTYPEID),CONSTRAINT COMPONENTCONTAINER FOREIGN KEY(CONTAINERID) REFERENCES PUBLIC.CONTAINER(CONTAINERID),CONSTRAINT COMPONENTCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT COMPONENTIMPLLANG CHECK((PUBLIC.COMPONENT.IMPLLANG) IN (('java'),('cpp'),('py'))),CONSTRAINT COMPONENTALTKEY UNIQUE(PATH,COMPONENTNAME,CONFIGURATIONID)) +ALTER TABLE PUBLIC.COMPONENT ALTER COLUMN COMPONENTID RESTART WITH 372 +CREATE MEMORY TABLE PUBLIC.BACIPROPERTY(BACIPROPERTYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,COMPONENTID INTEGER NOT NULL,PROPERTYNAME VARCHAR(128) NOT NULL,DESCRIPTION VARCHAR(16777216) NOT NULL,FORMAT VARCHAR(16777216) NOT NULL,UNITS VARCHAR(16777216) NOT NULL,RESOLUTION VARCHAR(16777216) NOT NULL,ARCHIVE_PRIORITY INTEGER NOT NULL,ARCHIVE_MIN_INT DOUBLE NOT NULL,ARCHIVE_MAX_INT DOUBLE NOT NULL,ARCHIVE_MECHANISM VARCHAR(16777216) NOT NULL,ARCHIVE_SUPPRESS BOOLEAN NOT NULL,DEFAULT_TIMER_TRIG DOUBLE NOT NULL,MIN_TIMER_TRIG DOUBLE NOT NULL,INITIALIZE_DEVIO BOOLEAN NOT NULL,MIN_DELTA_TRIG DOUBLE,DEFAULT_VALUE VARCHAR(16777216) NOT NULL,GRAPH_MIN DOUBLE,GRAPH_MAX DOUBLE,MIN_STEP DOUBLE,ARCHIVE_DELTA DOUBLE NOT NULL,ARCHIVE_DELTA_PERCENT DOUBLE,ALARM_HIGH_ON DOUBLE,ALARM_LOW_ON DOUBLE,ALARM_HIGH_OFF DOUBLE,ALARM_LOW_OFF DOUBLE,ALARM_TIMER_TRIG DOUBLE,MIN_VALUE DOUBLE,MAX_VALUE DOUBLE,BITDESCRIPTION VARCHAR(16777216),WHENSET VARCHAR(16777216),WHENCLEARED VARCHAR(16777216),STATESDESCRIPTION VARCHAR(16777216),CONDITION VARCHAR(16777216),ALARM_ON VARCHAR(16777216),ALARM_OFF VARCHAR(16777216),ALARM_FAULT_FAMILY VARCHAR(16777216),ALARM_FAULT_MEMBER VARCHAR(16777216),ALARM_LEVEL INTEGER,DATA VARCHAR(16777216),CONSTRAINT BACIPROPERTYCOMPID FOREIGN KEY(COMPONENTID) REFERENCES PUBLIC.COMPONENT(COMPONENTID),CONSTRAINT BACIPROPARCHMECH CHECK((PUBLIC.BACIPROPERTY.ARCHIVE_MECHANISM) IN (('notification_channel'),('monitor_collector'))),CONSTRAINT BACIPROPERTYALTKEY UNIQUE(PROPERTYNAME,COMPONENTID)) +ALTER TABLE PUBLIC.BACIPROPERTY ALTER COLUMN BACIPROPERTYID RESTART WITH 19167 +CREATE MEMORY TABLE PUBLIC.LOCATION(LOCATIONID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,BUILDING VARCHAR(256),FLOOR VARCHAR(128),ROOM VARCHAR(256),MNEMONIC VARCHAR(256),LOCATIONPOSITION VARCHAR(256),CONSTRAINT LOCATIONALTKEY UNIQUE(BUILDING,FLOOR,ROOM,MNEMONIC,LOCATIONPOSITION)) +ALTER TABLE PUBLIC.LOCATION ALTER COLUMN LOCATIONID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.CONTACT(CONTACTID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONTACTNAME VARCHAR(256) NOT NULL,EMAIL VARCHAR(256),GSM VARCHAR(256),CONSTRAINT CONTACTALTKEY UNIQUE(CONTACTNAME)) +ALTER TABLE PUBLIC.CONTACT ALTER COLUMN CONTACTID RESTART WITH 5 +CREATE MEMORY TABLE PUBLIC.ALARMCATEGORY(ALARMCATEGORYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ALARMCATEGORYNAME VARCHAR(128) NOT NULL,DESCRIPTION VARCHAR(16777216) NOT NULL,PATH VARCHAR(256) NOT NULL,ISDEFAULT BOOLEAN NOT NULL,CONFIGURATIONID INTEGER NOT NULL,CONSTRAINT ALARMCATEGORYCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT ALARMCALTKEY UNIQUE(ALARMCATEGORYNAME,CONFIGURATIONID)) +ALTER TABLE PUBLIC.ALARMCATEGORY ALTER COLUMN ALARMCATEGORYID RESTART WITH 1 +CREATE MEMORY TABLE PUBLIC.FAULTFAMILY(FAULTFAMILYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,FAMILYNAME VARCHAR(256) NOT NULL,ALARMSOURCE VARCHAR(256) DEFAULT 'ALARM_SYSTEM_SOURCES',HELPURL VARCHAR(256),CONTACTID INTEGER NOT NULL,CONFIGURATIONID INTEGER NOT NULL,CONSTRAINT FAULTFAMILYCONTACT FOREIGN KEY(CONTACTID) REFERENCES PUBLIC.CONTACT(CONTACTID),CONSTRAINT FAULTFAMILYCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT FAULTFAMILYALTKEY UNIQUE(FAMILYNAME,CONFIGURATIONID)) +ALTER TABLE PUBLIC.FAULTFAMILY ALTER COLUMN FAULTFAMILYID RESTART WITH 18 +CREATE MEMORY TABLE PUBLIC.ALARMCATEGORYFAMILY(ALARMCATEGORYID INTEGER NOT NULL,FAULTFAMILYID INTEGER NOT NULL,CONSTRAINT ALARMCFKEY PRIMARY KEY(ALARMCATEGORYID,FAULTFAMILYID),CONSTRAINT ACFCATEGORYID FOREIGN KEY(ALARMCATEGORYID) REFERENCES PUBLIC.ALARMCATEGORY(ALARMCATEGORYID),CONSTRAINT ACFFAMILYID FOREIGN KEY(FAULTFAMILYID) REFERENCES PUBLIC.FAULTFAMILY(FAULTFAMILYID)) +CREATE MEMORY TABLE PUBLIC.FAULTMEMBER(FAULTMEMBERID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,MEMBERNAME VARCHAR(256) NOT NULL,FAULTFAMILYID INTEGER NOT NULL,LOCATIONID INTEGER,CONSTRAINT FAULTMEMFAMILYREF FOREIGN KEY(FAULTFAMILYID) REFERENCES PUBLIC.FAULTFAMILY(FAULTFAMILYID),CONSTRAINT FAULTMEMLOCATIONREF FOREIGN KEY(LOCATIONID) REFERENCES PUBLIC.LOCATION(LOCATIONID),CONSTRAINT FAULTMEMBERALTKEY UNIQUE(MEMBERNAME,FAULTFAMILYID)) +ALTER TABLE PUBLIC.FAULTMEMBER ALTER COLUMN FAULTMEMBERID RESTART WITH 3 +CREATE MEMORY TABLE PUBLIC.DEFAULTMEMBER(DEFAULTMEMBERID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,FAULTFAMILYID INTEGER NOT NULL,LOCATIONID INTEGER,CONSTRAINT DEFAULTMEMBERFAULTFAMILYREF FOREIGN KEY(FAULTFAMILYID) REFERENCES PUBLIC.FAULTFAMILY(FAULTFAMILYID),CONSTRAINT DEFAULTMEMBERLOCATIONREF FOREIGN KEY(LOCATIONID) REFERENCES PUBLIC.LOCATION(LOCATIONID),CONSTRAINT DEFAULMALTKEY UNIQUE(FAULTFAMILYID)) +ALTER TABLE PUBLIC.DEFAULTMEMBER ALTER COLUMN DEFAULTMEMBERID RESTART WITH 15 +CREATE MEMORY TABLE PUBLIC.FAULTCODE(FAULTCODEID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,FAULTFAMILYID INTEGER NOT NULL,CODEVALUE INTEGER NOT NULL,PRIORITY INTEGER NOT NULL,CAUSE VARCHAR(256),ACTION VARCHAR(16777216),CONSEQUENCE VARCHAR(16777216),PROBLEMDESCRIPTION VARCHAR(16777216) NOT NULL,ISINSTANT BOOLEAN NOT NULL,CONSTRAINT CODEFAULTFAMILYREF FOREIGN KEY(FAULTFAMILYID) REFERENCES PUBLIC.FAULTFAMILY(FAULTFAMILYID),CONSTRAINT PRIORITYVALUE CHECK((PUBLIC.FAULTCODE.PRIORITY) IN ((0),(1),(2),(3))),CONSTRAINT FAULTCODEALTKEY UNIQUE(FAULTFAMILYID,CODEVALUE)) +ALTER TABLE PUBLIC.FAULTCODE ALTER COLUMN FAULTCODEID RESTART WITH 303 +CREATE MEMORY TABLE PUBLIC.ALARMDEFINITION(ALARMDEFINITIONID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONFIGURATIONID INTEGER NOT NULL,FAULTFAMILY VARCHAR(256) NOT NULL,FAULTMEMBER VARCHAR(256) NOT NULL,FAULTCODE VARCHAR(256) NOT NULL,CONSTRAINT ALARMDEFINITIONCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT ALARMDALTKEY UNIQUE(CONFIGURATIONID,FAULTFAMILY,FAULTMEMBER,FAULTCODE)) +ALTER TABLE PUBLIC.ALARMDEFINITION ALTER COLUMN ALARMDEFINITIONID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.REDUCTIONLINK(REDUCTIONLINKID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,PARENTALARMDEFID INTEGER NOT NULL,CHILDALARMDEFID INTEGER NOT NULL,TYPE VARCHAR(16777216) NOT NULL,ACTION VARCHAR(16777216) NOT NULL,CONFIGURATIONID INTEGER NOT NULL,CONSTRAINT RLPARENTREF FOREIGN KEY(PARENTALARMDEFID) REFERENCES PUBLIC.ALARMDEFINITION(ALARMDEFINITIONID),CONSTRAINT RLCHILDREF FOREIGN KEY(CHILDALARMDEFID) REFERENCES PUBLIC.ALARMDEFINITION(ALARMDEFINITIONID),CONSTRAINT REDUCTIONLINKCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT REDUCTIONLINKTYPE CHECK((PUBLIC.REDUCTIONLINK.TYPE) IN (('MULTIPLICITY'),('NODE'))),CONSTRAINT REDUCTIONLINKACTION CHECK((PUBLIC.REDUCTIONLINK.ACTION) IN (('CREATE'),('REMOVE'))),CONSTRAINT REDUCTLALTKEY UNIQUE(PARENTALARMDEFID,CHILDALARMDEFID)) +ALTER TABLE PUBLIC.REDUCTIONLINK ALTER COLUMN REDUCTIONLINKID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.REDUCTIONTHRESHOLD(ALARMDEFINITIONID INTEGER NOT NULL,VALUE INTEGER NOT NULL,CONFIGURATIONID INTEGER NOT NULL,CONSTRAINT REDUCTTKEY PRIMARY KEY(ALARMDEFINITIONID),CONSTRAINT RTALARMREF FOREIGN KEY(ALARMDEFINITIONID) REFERENCES PUBLIC.ALARMDEFINITION(ALARMDEFINITIONID),CONSTRAINT RTCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID)) +CREATE MEMORY TABLE PUBLIC.EVENTCHANNEL(EVENTCHANNELID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONFIGURATIONID INTEGER NOT NULL,NAME VARCHAR(256) NOT NULL,PATH VARCHAR(256) NOT NULL,INTEGRATIONLOGS BOOLEAN DEFAULT FALSE,MAXQUEUELENGTH INTEGER DEFAULT 0,MAXCONSUMERS INTEGER DEFAULT 0,MAXSUPPLIERS INTEGER DEFAULT 0,REJECTNEWEVENTS BOOLEAN DEFAULT TRUE,DISCARDPOLICY VARCHAR(16777216) DEFAULT 'AnyOrder',EVENTRELIABILITY VARCHAR(16777216) DEFAULT 'BestEffort',CONNECTIONRELIABILITY VARCHAR(16777216) DEFAULT 'BestEffort',PRIORITY SMALLINT DEFAULT 0,TIMEOUT INTEGER DEFAULT 0,ORDERPOLICY VARCHAR(16777216) DEFAULT 'AnyOrder',STARTTIMESUPPORTED BOOLEAN DEFAULT FALSE,STOPTIMESUPPORTED BOOLEAN DEFAULT FALSE,MAXEVENTSPERCONSUMER INTEGER DEFAULT 0,CONSTRAINT EVENTCHANNELCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT EVENTCHANNELDISCARDPOLICY CHECK((PUBLIC.EVENTCHANNEL.DISCARDPOLICY) IN (('AnyOrder'),('FifoOrder'),('LifoOrder'),('PriorityOrder'),('DeadlineOrder'))),CONSTRAINT EVENTCHANNELORDERPOLICY CHECK((PUBLIC.EVENTCHANNEL.ORDERPOLICY) IN (('AnyOrder'),('FifoOrder'),('LifoOrder'),('PriorityOrder'),('DeadlineOrder'))),CONSTRAINT EVENTCHANNELEVENTRELIABILITY CHECK((PUBLIC.EVENTCHANNEL.EVENTRELIABILITY) IN (('BestEffort'),('Persistent'))),CONSTRAINT EVENTCHANNELCONRELIABILITY CHECK((PUBLIC.EVENTCHANNEL.CONNECTIONRELIABILITY) IN (('BestEffort'),('Persistent'))),CONSTRAINT EVENTCHANNELALTKEY UNIQUE(NAME,PATH,CONFIGURATIONID)) +ALTER TABLE PUBLIC.EVENTCHANNEL ALTER COLUMN EVENTCHANNELID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.EVENT(EVENTID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,EVENTCHANNELID INTEGER NOT NULL,NAME VARCHAR(256) NOT NULL,MAXPROCESSTIME DOUBLE DEFAULT 2.0E0,CONSTRAINT EVENTEVENTCHANNELREF FOREIGN KEY(EVENTCHANNELID) REFERENCES PUBLIC.EVENTCHANNEL(EVENTCHANNELID),CONSTRAINT EVENTALTKEY UNIQUE(EVENTCHANNELID,NAME)) +ALTER TABLE PUBLIC.EVENT ALTER COLUMN EVENTID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.NOTIFICATIONSERVICEMAPPING(NOTIFICATIONSERVICEMAPPINGID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONFIGURATIONID INTEGER NOT NULL,DEFAULTNOTIFICATIONSERVICE VARCHAR(256) NOT NULL,CONSTRAINT NOTSERVMAPCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT NOTIFISMALTKEY UNIQUE(CONFIGURATIONID)) +ALTER TABLE PUBLIC.NOTIFICATIONSERVICEMAPPING ALTER COLUMN NOTIFICATIONSERVICEMAPPINGID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.DOMAINSMAPPING(DOMAINSMAPPINGID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,NAME VARCHAR(256) NOT NULL,NOTIFICATIONSERVICE VARCHAR(256) NOT NULL,NOTIFICATIONSERVICEMAPPINGID INTEGER NOT NULL,CONSTRAINT DOMAINSNOTSERVMAPREF FOREIGN KEY(NOTIFICATIONSERVICEMAPPINGID) REFERENCES PUBLIC.NOTIFICATIONSERVICEMAPPING(NOTIFICATIONSERVICEMAPPINGID),CONSTRAINT DOMAINMALTKEY UNIQUE(NOTIFICATIONSERVICEMAPPINGID,NAME)) +ALTER TABLE PUBLIC.DOMAINSMAPPING ALTER COLUMN DOMAINSMAPPINGID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.CHANNELMAPPING(CHANNELMAPPINGID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,NAME VARCHAR(256) NOT NULL,NOTIFICATIONSERVICE VARCHAR(256) NOT NULL,NOTIFICATIONSERVICEMAPPINGID INTEGER NOT NULL,CONSTRAINT CHANNELNOTSERVMAPREF FOREIGN KEY(NOTIFICATIONSERVICEMAPPINGID) REFERENCES PUBLIC.NOTIFICATIONSERVICEMAPPING(NOTIFICATIONSERVICEMAPPINGID),CONSTRAINT CHANNEMALTKEY UNIQUE(NOTIFICATIONSERVICEMAPPINGID,NAME)) +ALTER TABLE PUBLIC.CHANNELMAPPING ALTER COLUMN CHANNELMAPPINGID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.TMCDBVERSION(DBNAME VARCHAR(16777216) NOT NULL,DBVERSION VARCHAR(16777216) NOT NULL,DBDATE VARCHAR(16777216) NOT NULL,CONSTRAINT TMCDBVERSIONKEY PRIMARY KEY(DBNAME)) +CREATE MEMORY TABLE PUBLIC.ACSSERVICE(ACSSERVICEID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONFIGURATIONID INTEGER NOT NULL,SERVICETYPE VARCHAR(16777216) NOT NULL,SERVICEINSTANCENAME VARCHAR(256),COMPUTERID INTEGER NOT NULL,CONSTRAINT ACSSERVICECONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT ACSSERVICECOMPUTER FOREIGN KEY(COMPUTERID) REFERENCES PUBLIC.COMPUTER(NETWORKDEVICEID),CONSTRAINT ACSSERVICESERVICETYPE CHECK((PUBLIC.ACSSERVICE.SERVICETYPE) IN (('NAMING'),('IFR'),('CDB'),('NOTIFICATION'),('LOGGING'),('MANAGER'),('ALARM'),('LOGPROXY')))) +ALTER TABLE PUBLIC.ACSSERVICE ALTER COLUMN ACSSERVICEID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.MASTERCOMPONENT(MASTERCOMPONENTID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,COMPONENTID INTEGER NOT NULL,SUBSYSTEMNAME VARCHAR(256) NOT NULL,CONSTRAINT MCOMPONENTID FOREIGN KEY(COMPONENTID) REFERENCES PUBLIC.COMPONENT(COMPONENTID),CONSTRAINT MASTERCALTKEY UNIQUE(COMPONENTID)) +ALTER TABLE PUBLIC.MASTERCOMPONENT ALTER COLUMN MASTERCOMPONENTID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.NETWORKDEVICESNMPCONFIG(NETWORKDEVICEID INTEGER NOT NULL,SNMPXMLCLOB VARCHAR(16777216) NOT NULL,PROPAGATENA BOOLEAN DEFAULT FALSE,ACSALARM VARCHAR(16777216) DEFAULT 'NEVER',SNMPCOMMUNITY VARCHAR(256),NETGROUP VARCHAR(256),CONSTRAINT NETWORDSCKEY PRIMARY KEY(NETWORKDEVICEID),CONSTRAINT NETDEVSNMPCONFIGNETDEV FOREIGN KEY(NETWORKDEVICEID) REFERENCES PUBLIC.NETWORKDEVICE(NETWORKDEVICEID),CONSTRAINT NETDEVSNMPCONFIGACSALARM CHECK((PUBLIC.NETWORKDEVICESNMPCONFIG.ACSALARM) IN (('NEVER'),('ALWAYS'),('ALLOWSUPPRESSION')))) +CREATE MEMORY TABLE PUBLIC.SNMPTRAPSINK(CONFIGURATIONID INTEGER NOT NULL,TRAPSINKCOMPUTERID INTEGER NOT NULL,TRAPPORT INTEGER NOT NULL,TRAPSOURCESNETWORKMASK VARCHAR(256) NOT NULL,SNMPTRAPCOMMUNITY VARCHAR(256),CONSTRAINT SNMPTRAPSINKKEY PRIMARY KEY(CONFIGURATIONID),CONSTRAINT SNMPTRAPSINKCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT SNMPTRAPSINKCOMPUTER FOREIGN KEY(TRAPSINKCOMPUTERID) REFERENCES PUBLIC.COMPUTER(NETWORKDEVICEID)) +CREATE MEMORY TABLE PUBLIC.NETWORKPOWERSTRIP(NETWORKDEVICEID INTEGER,CONSTRAINT NETWORPKEY PRIMARY KEY(NETWORKDEVICEID),CONSTRAINT NETWORPNETWORDFKEY FOREIGN KEY(NETWORKDEVICEID) REFERENCES PUBLIC.NETWORKDEVICE(NETWORKDEVICEID)) +CREATE MEMORY TABLE PUBLIC.POWERSTRIPSOCKET(POWERSTRIPSOCKETID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,NETWORKPOWERSTRIPID INTEGER NOT NULL,SOCKETNUMBER INTEGER NOT NULL,POWEREDNETWORKDEVICEID INTEGER,SOCKETNAME VARCHAR(256),CONSTRAINT PWRSTRIPSOCKNETPOWERSTRIP FOREIGN KEY(NETWORKPOWERSTRIPID) REFERENCES PUBLIC.NETWORKPOWERSTRIP(NETWORKDEVICEID),CONSTRAINT PWRSTRIPSOCKNETDEVICE FOREIGN KEY(POWEREDNETWORKDEVICEID) REFERENCES PUBLIC.NETWORKDEVICE(NETWORKDEVICEID),CONSTRAINT POWERSSALTKEY UNIQUE(NETWORKPOWERSTRIPID,SOCKETNUMBER)) +ALTER TABLE PUBLIC.POWERSTRIPSOCKET ALTER COLUMN POWERSTRIPSOCKETID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.HWCONFIGURATION(CONFIGURATIONID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,GLOBALCONFIGID INTEGER,SWCONFIGURATIONID INTEGER NOT NULL,TELESCOPENAME VARCHAR(128) NOT NULL,ARRAYREFERENCEX DOUBLE,ARRAYREFERENCEY DOUBLE,ARRAYREFERENCEZ DOUBLE,XPDELAYBLLOCKED BOOLEAN,XPDELAYBLINCREASEVERSION BOOLEAN,XPDELAYBLCURRENTVERSION INTEGER,XPDELAYBLWHO VARCHAR(128),XPDELAYBLCHANGEDESC VARCHAR(16777216),CONSTRAINT SWCONFIGID FOREIGN KEY(SWCONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID),CONSTRAINT HWCONFALTKEY UNIQUE(SWCONFIGURATIONID)) +ALTER TABLE PUBLIC.HWCONFIGURATION ALTER COLUMN CONFIGURATIONID RESTART WITH 1 +CREATE MEMORY TABLE PUBLIC.SYSTEMCOUNTERS(CONFIGURATIONID INTEGER NOT NULL,UPDATETIME BIGINT NOT NULL,AUTOARRAYCOUNT SMALLINT NOT NULL,MANARRAYCOUNT SMALLINT NOT NULL,DATACAPTURECOUNT SMALLINT NOT NULL,CONSTRAINT SYSTEMCKEY PRIMARY KEY(CONFIGURATIONID),CONSTRAINT SYSTEMCOUNTERSCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.HWCONFIGURATION(CONFIGURATIONID)) +CREATE MEMORY TABLE PUBLIC.LRUTYPE(LRUNAME VARCHAR(128) NOT NULL,FULLNAME VARCHAR(256) NOT NULL,ICD VARCHAR(256) NOT NULL,ICDDATE BIGINT NOT NULL,DESCRIPTION VARCHAR(16777216) NOT NULL,NOTES VARCHAR(16777216),CONSTRAINT LRUTYPEKEY PRIMARY KEY(LRUNAME)) +CREATE MEMORY TABLE PUBLIC.ASSEMBLYTYPE(ASSEMBLYTYPENAME VARCHAR(256) NOT NULL,BASEELEMENTTYPE VARCHAR(16777216) NOT NULL,LRUNAME VARCHAR(128) NOT NULL,FULLNAME VARCHAR(256) NOT NULL,DESCRIPTION VARCHAR(16777216) NOT NULL,NOTES VARCHAR(16777216),COMPONENTTYPEID INTEGER NOT NULL,PRODUCTIONCODE VARCHAR(256) NOT NULL,SIMULATEDCODE VARCHAR(256) NOT NULL,CONSTRAINT ASSEMBLYTYPEKEY PRIMARY KEY(ASSEMBLYTYPENAME),CONSTRAINT ASSEMBLYTYPELRUNAME FOREIGN KEY(LRUNAME) REFERENCES PUBLIC.LRUTYPE(LRUNAME),CONSTRAINT ASSEMBLYTYPECOMPTYPE FOREIGN KEY(COMPONENTTYPEID) REFERENCES PUBLIC.COMPONENTTYPE(COMPONENTTYPEID),CONSTRAINT ASSEMBLYTYPEBETYPE CHECK((PUBLIC.ASSEMBLYTYPE.BASEELEMENTTYPE) IN (('Antenna'),('Pad'),('FrontEnd'),('WeatherStationController'),('CorrQuadrant'),('AcaCorrSet'),('CentralLO'),('AOSTiming'),('PhotonicReference'),('HolographyTower'),('Array')))) +CREATE MEMORY TABLE PUBLIC.HWSCHEMAS(SCHEMAID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,URN VARCHAR(16777216) NOT NULL,CONFIGURATIONID INTEGER NOT NULL,ASSEMBLYTYPENAME VARCHAR(256) NOT NULL,SCHEMA VARCHAR(16777216),CONSTRAINT ASSEMBLYSCHEMASCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.HWCONFIGURATION(CONFIGURATIONID),CONSTRAINT HWSCHEMAASSEMBLYTYPE FOREIGN KEY(ASSEMBLYTYPENAME) REFERENCES PUBLIC.ASSEMBLYTYPE(ASSEMBLYTYPENAME),CONSTRAINT HWSCHEMASALTKEY UNIQUE(URN,CONFIGURATIONID)) +ALTER TABLE PUBLIC.HWSCHEMAS ALTER COLUMN SCHEMAID RESTART WITH 3 +CREATE MEMORY TABLE PUBLIC.ASSEMBLY(ASSEMBLYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ASSEMBLYTYPENAME VARCHAR(256) NOT NULL,CONFIGURATIONID INTEGER NOT NULL,SERIALNUMBER VARCHAR(256) NOT NULL,DATA VARCHAR(16777216),CONSTRAINT ASSEMBLYCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.HWCONFIGURATION(CONFIGURATIONID),CONSTRAINT ASSEMBLYNAME FOREIGN KEY(ASSEMBLYTYPENAME) REFERENCES PUBLIC.ASSEMBLYTYPE(ASSEMBLYTYPENAME),CONSTRAINT ASSEMBLYALTKEY UNIQUE(SERIALNUMBER,CONFIGURATIONID)) +ALTER TABLE PUBLIC.ASSEMBLY ALTER COLUMN ASSEMBLYID RESTART WITH 3 +CREATE MEMORY TABLE PUBLIC.ASSEMBLYROLE(ROLENAME VARCHAR(128) NOT NULL,ASSEMBLYTYPENAME VARCHAR(256) NOT NULL,CONSTRAINT ASSEMBLYROLEKEY PRIMARY KEY(ROLENAME),CONSTRAINT ASSEMBLYROLEASSEMBLY FOREIGN KEY(ASSEMBLYTYPENAME) REFERENCES PUBLIC.ASSEMBLYTYPE(ASSEMBLYTYPENAME)) +CREATE MEMORY TABLE PUBLIC.BASEELEMENT(BASEELEMENTID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,BASETYPE VARCHAR(16777216) NOT NULL,BASEELEMENTNAME VARCHAR(16777216) NOT NULL,CONFIGURATIONID INTEGER NOT NULL,CONSTRAINT BECONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.HWCONFIGURATION(CONFIGURATIONID),CONSTRAINT BETYPE CHECK((PUBLIC.BASEELEMENT.BASETYPE) IN (('Antenna'),('Pad'),('FrontEnd'),('WeatherStationController'),('CentralLO'),('AOSTiming'),('HolographyTower'),('PhotonicReference'),('CorrQuadrant'),('AcaCorrSet'),('CorrQuadrantRack'),('CorrStationBin'),('CorrBin'))),CONSTRAINT BASEELEMENTALTKEY UNIQUE(BASEELEMENTNAME,BASETYPE,CONFIGURATIONID)) +ALTER TABLE PUBLIC.BASEELEMENT ALTER COLUMN BASEELEMENTID RESTART WITH 16 +CREATE MEMORY TABLE PUBLIC.ACACORRSET(BASEELEMENTID INTEGER NOT NULL,BASEBAND VARCHAR(128) NOT NULL,IP VARCHAR(128) NOT NULL,CONSTRAINT ACACORRSETKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT ACACSETBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT ACACSETBBENUM CHECK((PUBLIC.ACACORRSET.BASEBAND) IN (('BB_1'),('BB_2'),('BB_3'),('BB_4')))) +CREATE MEMORY TABLE PUBLIC.ANTENNA(BASEELEMENTID INTEGER NOT NULL,ANTENNANAME VARCHAR(128),ANTENNATYPE VARCHAR(16777216) NOT NULL,DISHDIAMETER DOUBLE NOT NULL,COMMISSIONDATE BIGINT NOT NULL,XPOSITION DOUBLE NOT NULL,YPOSITION DOUBLE NOT NULL,ZPOSITION DOUBLE NOT NULL,XPOSITIONERR DOUBLE,YPOSITIONERR DOUBLE,ZPOSITIONERR DOUBLE,XOFFSET DOUBLE NOT NULL,YOFFSET DOUBLE NOT NULL,ZOFFSET DOUBLE NOT NULL,POSOBSERVATIONTIME BIGINT,POSEXECBLOCKUID VARCHAR(100),POSSCANNUMBER INTEGER,COMMENTS VARCHAR(16777216),DELAY DOUBLE NOT NULL,DELAYERROR DOUBLE,DELOBSERVATIONTIME BIGINT,DELEXECBLOCKUID VARCHAR(100),DELSCANNUMBER INTEGER,XDELAYREF DOUBLE,YDELAYREF DOUBLE,ZDELAYREF DOUBLE,LOOFFSETTINGINDEX INTEGER NOT NULL,WALSHSEQ INTEGER NOT NULL,CAIBASELINE INTEGER,CAIACA INTEGER,LOCKED BOOLEAN,INCREASEVERSION BOOLEAN,CURRENTVERSION INTEGER,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),DELAYBLLOCKED BOOLEAN,DELAYBLINCREASEVERSION BOOLEAN,DELAYBLCURRENTVERSION INTEGER,DELAYBLWHO VARCHAR(128),DELAYBLCHANGEDESC VARCHAR(16777216),CONSTRAINT ANTENNAKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT ANTENNABEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT ANTENNATYPE CHECK((PUBLIC.ANTENNA.ANTENNATYPE) IN (('VA'),('AEC'),('ACA')))) +CREATE MEMORY TABLE PUBLIC.ACACORRDELAYS(ANTENNAID INTEGER NOT NULL,BBONEDELAY DOUBLE NOT NULL,BBTWODELAY DOUBLE NOT NULL,BBTHREEDELAY DOUBLE NOT NULL,BBFOURDELAY DOUBLE NOT NULL,CONSTRAINT ACACORDKEY PRIMARY KEY(ANTENNAID),CONSTRAINT ACACDELANTID FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.PAD(BASEELEMENTID INTEGER NOT NULL,PADNAME VARCHAR(128),COMMISSIONDATE BIGINT NOT NULL,XPOSITION DOUBLE NOT NULL,YPOSITION DOUBLE NOT NULL,ZPOSITION DOUBLE NOT NULL,XPOSITIONERR DOUBLE,YPOSITIONERR DOUBLE,ZPOSITIONERR DOUBLE,POSOBSERVATIONTIME BIGINT,POSEXECBLOCKUID VARCHAR(100),POSSCANNUMBER INTEGER,DELAY DOUBLE NOT NULL,DELAYERROR DOUBLE,DELOBSERVATIONTIME BIGINT,DELEXECBLOCKUID VARCHAR(100),DELSCANNUMBER INTEGER,LOCKED BOOLEAN,INCREASEVERSION BOOLEAN,CURRENTVERSION INTEGER,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),CONSTRAINT PADKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT PADBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.FRONTEND(BASEELEMENTID INTEGER NOT NULL,COMMISSIONDATE BIGINT NOT NULL,CONSTRAINT FRONTENDKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT FRONTENDBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.PHOTONICREFERENCE(BASEELEMENTID INTEGER NOT NULL,COMMISSIONDATE BIGINT NOT NULL,CONSTRAINT PHOTONRKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT PHOTREFBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.WEATHERSTATIONCONTROLLER(BASEELEMENTID INTEGER NOT NULL,COMMISSIONDATE BIGINT NOT NULL,CONSTRAINT WEATHESCKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT WEATHERSTATIONBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.CENTRALLO(BASEELEMENTID INTEGER NOT NULL,COMMISSIONDATE BIGINT NOT NULL,CONSTRAINT CENTRALLOKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT CENTRALLOBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.AOSTIMING(BASEELEMENTID INTEGER NOT NULL,COMMISSIONDATE BIGINT NOT NULL,CONSTRAINT AOSTIMINGKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT AOSTIMINGBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.HOLOGRAPHYTOWER(BASEELEMENTID INTEGER NOT NULL,COMMISSIONDATE BIGINT NOT NULL,XPOSITION DOUBLE NOT NULL,YPOSITION DOUBLE NOT NULL,ZPOSITION DOUBLE NOT NULL,CONSTRAINT HOLOGRTKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT HOLOGRAPHYTOWERBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.ANTENNATOPAD(ANTENNATOPADID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,PADID INTEGER NOT NULL,STARTTIME BIGINT NOT NULL,ENDTIME BIGINT,PLANNED BOOLEAN NOT NULL,MOUNTMETROLOGYAN0COEFF DOUBLE,MOUNTMETROLOGYAW0COEFF DOUBLE,LOCKED BOOLEAN,INCREASEVERSION BOOLEAN,CURRENTVERSION INTEGER,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),CONSTRAINT ANTENNATOPADANTENNAID FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT ANTENNATOPADPADID FOREIGN KEY(PADID) REFERENCES PUBLIC.PAD(BASEELEMENTID),CONSTRAINT ANTENNATOPADALTKEY UNIQUE(ANTENNAID,PADID,STARTTIME)) +ALTER TABLE PUBLIC.ANTENNATOPAD ALTER COLUMN ANTENNATOPADID RESTART WITH 2 +CREATE MEMORY TABLE PUBLIC.WEATHERSTATIONTOPAD(WEATHERSTATIONID INTEGER NOT NULL,PADID INTEGER NOT NULL,STARTTIME BIGINT NOT NULL,ENDTIME BIGINT,PLANNED BOOLEAN NOT NULL,CONSTRAINT WEATHESTPKEY PRIMARY KEY(WEATHERSTATIONID,PADID,STARTTIME),CONSTRAINT WSTOPADWEATHERSTATIONID FOREIGN KEY(WEATHERSTATIONID) REFERENCES PUBLIC.WEATHERSTATIONCONTROLLER(BASEELEMENTID),CONSTRAINT WSTOPADPADID FOREIGN KEY(PADID) REFERENCES PUBLIC.PAD(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.HOLOGRAPHYTOWERTOPAD(TOWERTOPADID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,HOLOGRAPHYTOWERID INTEGER NOT NULL,PADID INTEGER NOT NULL,AZIMUTH DOUBLE NOT NULL,ELEVATION DOUBLE NOT NULL,CONSTRAINT HOLOTOWERTOPADHOLOTOWER FOREIGN KEY(HOLOGRAPHYTOWERID) REFERENCES PUBLIC.HOLOGRAPHYTOWER(BASEELEMENTID),CONSTRAINT HOLOTOWERTOPADPAD FOREIGN KEY(PADID) REFERENCES PUBLIC.PAD(BASEELEMENTID),CONSTRAINT HOLOGRTTPALTKEY UNIQUE(HOLOGRAPHYTOWERID,PADID)) +ALTER TABLE PUBLIC.HOLOGRAPHYTOWERTOPAD ALTER COLUMN TOWERTOPADID RESTART WITH 1 +CREATE MEMORY TABLE PUBLIC.FEDELAY(FEDELAYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,RECEIVERBAND VARCHAR(128) NOT NULL,POLARIZATION VARCHAR(128) NOT NULL,SIDEBAND VARCHAR(128) NOT NULL,DELAY DOUBLE NOT NULL,DELAYERROR DOUBLE,OBSERVATIONTIME BIGINT,EXECBLOCKUID VARCHAR(100),SCANNUMBER INTEGER,CONSTRAINT ANTENNAFEDELAY FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT FEDELRECBANDENUM CHECK((PUBLIC.FEDELAY.RECEIVERBAND) IN (('ALMA_RB_01'),('ALMA_RB_02'),('ALMA_RB_03'),('ALMA_RB_04'),('ALMA_RB_05'),('ALMA_RB_06'),('ALMA_RB_07'),('ALMA_RB_08'),('ALMA_RB_09'),('ALMA_RB_10'))),CONSTRAINT FEDELPOLENUM CHECK((PUBLIC.FEDELAY.POLARIZATION) IN (('X'),('Y'))),CONSTRAINT FEDELSIDEBANDENUM CHECK((PUBLIC.FEDELAY.SIDEBAND) IN (('LSB'),('USB'))),CONSTRAINT FEDELAYALTKEY UNIQUE(ANTENNAID,RECEIVERBAND,POLARIZATION,SIDEBAND)) +ALTER TABLE PUBLIC.FEDELAY ALTER COLUMN FEDELAYID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.IFDELAY(IFDELAYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,BASEBAND VARCHAR(128) NOT NULL,POLARIZATION VARCHAR(128) NOT NULL,IFSWITCH VARCHAR(128) NOT NULL,DELAY DOUBLE NOT NULL,DELAYERROR DOUBLE,OBSERVATIONTIME BIGINT,EXECBLOCKUID VARCHAR(100),SCANNUMBER INTEGER,CONSTRAINT ANTENNAIFDELAY FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT IFDELBASEBANDENUM CHECK((PUBLIC.IFDELAY.BASEBAND) IN (('BB_1'),('BB_2'),('BB_3'),('BB_4'))),CONSTRAINT IFDELIFSWITCHENUM CHECK((PUBLIC.IFDELAY.IFSWITCH) IN (('USB_HIGH'),('USB_LOW'),('LSB_HIGH'),('LSB_LOW'))),CONSTRAINT IFDELPOLENUM CHECK((PUBLIC.IFDELAY.POLARIZATION) IN (('X'),('Y'))),CONSTRAINT IFDELAYALTKEY UNIQUE(ANTENNAID,BASEBAND,POLARIZATION,IFSWITCH)) +ALTER TABLE PUBLIC.IFDELAY ALTER COLUMN IFDELAYID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.LODELAY(LODELAYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,BASEBAND VARCHAR(128) NOT NULL,DELAY DOUBLE NOT NULL,DELAYERROR DOUBLE,OBSERVATIONTIME BIGINT,EXECBLOCKUID VARCHAR(100),SCANNUMBER INTEGER,CONSTRAINT ANTENNALODELAY FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT LODELBASEBANDENUM CHECK((PUBLIC.LODELAY.BASEBAND) IN (('BB_1'),('BB_2'),('BB_3'),('BB_4'))),CONSTRAINT LODELAYALTKEY UNIQUE(ANTENNAID,BASEBAND)) +ALTER TABLE PUBLIC.LODELAY ALTER COLUMN LODELAYID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.XPDELAY(XPDELAYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONFIGURATIONID INTEGER NOT NULL,RECEIVERBAND VARCHAR(128) NOT NULL,SIDEBAND VARCHAR(128) NOT NULL,BASEBAND VARCHAR(128) NOT NULL,DELAY DOUBLE NOT NULL,DELAYERROR DOUBLE,OBSERVATIONTIME BIGINT,EXECBLOCKUID VARCHAR(100),SCANNUMBER INTEGER,CONSTRAINT HWCONFIGXPDELAY FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.HWCONFIGURATION(CONFIGURATIONID),CONSTRAINT XPDELBASEBANDENUM CHECK((PUBLIC.XPDELAY.BASEBAND) IN (('BB_1'),('BB_2'),('BB_3'),('BB_4'))),CONSTRAINT XPDELSIDEBANDENUM CHECK((PUBLIC.XPDELAY.SIDEBAND) IN (('LSB'),('USB'))),CONSTRAINT XPDELFREQBANDENUM CHECK((PUBLIC.XPDELAY.RECEIVERBAND) IN (('ALMA_RB_01'),('ALMA_RB_02'),('ALMA_RB_03'),('ALMA_RB_04'),('ALMA_RB_05'),('ALMA_RB_06'),('ALMA_RB_07'),('ALMA_RB_08'),('ALMA_RB_09'),('ALMA_RB_10'))),CONSTRAINT XPDELAYALTKEY UNIQUE(CONFIGURATIONID,RECEIVERBAND,SIDEBAND,BASEBAND)) +ALTER TABLE PUBLIC.XPDELAY ALTER COLUMN XPDELAYID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.CORRQUADRANT(BASEELEMENTID INTEGER NOT NULL,BASEBAND VARCHAR(128) NOT NULL,QUADRANT TINYINT NOT NULL,CHANNELNUMBER TINYINT NOT NULL,CONSTRAINT CORRQUADRANTKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT CORRQUADBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT CORRQUADNUMBER CHECK((PUBLIC.CORRQUADRANT.QUADRANT) IN ((0),(1),(2),(3))),CONSTRAINT CORRQUADBBENUM CHECK((PUBLIC.CORRQUADRANT.BASEBAND) IN (('BB_1'),('BB_2'),('BB_3'),('BB_4')))) +CREATE MEMORY TABLE PUBLIC.CORRQUADRANTRACK(BASEELEMENTID INTEGER NOT NULL,CORRQUADRANTID INTEGER NOT NULL,RACKNAME VARCHAR(128) NOT NULL,RACKTYPE VARCHAR(16777216) NOT NULL,CONSTRAINT CORRQURKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT CORRQUADRACKBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT CORRQUAD FOREIGN KEY(CORRQUADRANTID) REFERENCES PUBLIC.CORRQUADRANT(BASEELEMENTID),CONSTRAINT CORRRACKTYPE CHECK((PUBLIC.CORRQUADRANTRACK.RACKTYPE) IN (('Station'),('Correlator')))) +CREATE MEMORY TABLE PUBLIC.CORRSTATIONBIN(BASEELEMENTID INTEGER NOT NULL,CORRQUADRANTRACKID INTEGER NOT NULL,STATIONBINNAME VARCHAR(128) NOT NULL,CONSTRAINT CORRSTBKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT CORRSTBINBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT CORRSTBINRACK FOREIGN KEY(CORRQUADRANTRACKID) REFERENCES PUBLIC.CORRQUADRANTRACK(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.CORRELATORBIN(BASEELEMENTID INTEGER NOT NULL,CORRQUADRANTRACKID INTEGER NOT NULL,CORRELATORBINNAME VARCHAR(128) NOT NULL,CONSTRAINT CORRELBKEY PRIMARY KEY(BASEELEMENTID),CONSTRAINT CORRBINBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT CORRBINRACK FOREIGN KEY(CORRQUADRANTRACKID) REFERENCES PUBLIC.CORRQUADRANTRACK(BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.STARTUP(STARTUPID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,CONFIGURATIONID INTEGER NOT NULL,STARTUPNAME VARCHAR(256) NOT NULL,CONSTRAINT STARTUPCONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.HWCONFIGURATION(CONFIGURATIONID),CONSTRAINT STARTUPALTKEY UNIQUE(STARTUPNAME,CONFIGURATIONID)) +ALTER TABLE PUBLIC.STARTUP ALTER COLUMN STARTUPID RESTART WITH 1 +CREATE MEMORY TABLE PUBLIC.BASEELEMENTSTARTUP(BASEELEMENTSTARTUPID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,BASEELEMENTID INTEGER,STARTUPID INTEGER,BASEELEMENTTYPE VARCHAR(24) NOT NULL,PARENT INTEGER,ISGENERIC VARCHAR(5) NOT NULL,SIMULATED BOOLEAN NOT NULL,CONSTRAINT BESTARTUPID FOREIGN KEY(STARTUPID) REFERENCES PUBLIC.STARTUP(STARTUPID),CONSTRAINT BESTARTUPIDBE FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT BESTARTUPPARENT FOREIGN KEY(PARENT) REFERENCES PUBLIC.BASEELEMENTSTARTUP(BASEELEMENTSTARTUPID),CONSTRAINT BESTARTUPBETYPE CHECK((PUBLIC.BASEELEMENTSTARTUP.BASEELEMENTTYPE) IN (('Antenna'),('Pad'),('FrontEnd'),('WeatherStationController'),('CentralLO'),('AOSTiming'),('HolographyTower'),('Array'),('PhotonicReference1'),('PhotonicReference2'),('PhotonicReference3'),('PhotonicReference4'),('PhotonicReference5'),('PhotonicReference6'))),CONSTRAINT BASEELSALTKEY UNIQUE(STARTUPID,BASEELEMENTID,PARENT,BASEELEMENTTYPE)) +ALTER TABLE PUBLIC.BASEELEMENTSTARTUP ALTER COLUMN BASEELEMENTSTARTUPID RESTART WITH 3 +CREATE MEMORY TABLE PUBLIC.ASSEMBLYSTARTUP(ASSEMBLYSTARTUPID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ROLENAME VARCHAR(128) NOT NULL,BASEELEMENTSTARTUPID INTEGER NOT NULL,SIMULATED BOOLEAN NOT NULL,CONSTRAINT ASSEMBLYSTARTUPROLE FOREIGN KEY(ROLENAME) REFERENCES PUBLIC.ASSEMBLYROLE(ROLENAME),CONSTRAINT ASSEMBLYSTARTUPBESTARTUP FOREIGN KEY(BASEELEMENTSTARTUPID) REFERENCES PUBLIC.BASEELEMENTSTARTUP(BASEELEMENTSTARTUPID),CONSTRAINT ASSEMBSALTKEY UNIQUE(BASEELEMENTSTARTUPID,ROLENAME)) +ALTER TABLE PUBLIC.ASSEMBLYSTARTUP ALTER COLUMN ASSEMBLYSTARTUPID RESTART WITH 5 +CREATE MEMORY TABLE PUBLIC.DEFAULTCANADDRESS(COMPONENTID INTEGER NOT NULL,ISETHERNET BOOLEAN NOT NULL,NODEADDRESS VARCHAR(16),CHANNELNUMBER TINYINT,HOSTNAME VARCHAR(80),PORT INTEGER,MACADDRESS VARCHAR(80),RETRIES SMALLINT,TIMEOUTRXTX DOUBLE,LINGERTIME INTEGER,CONSTRAINT DEFAULCAKEY PRIMARY KEY(COMPONENTID),CONSTRAINT DEFCANADDCOMP FOREIGN KEY(COMPONENTID) REFERENCES PUBLIC.COMPONENT(COMPONENTID)) +CREATE MEMORY TABLE PUBLIC.POINTINGMODEL(POINTINGMODELID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,OBSERVATIONTIME BIGINT,EXECBLOCKUID VARCHAR(100),SCANNUMBER INTEGER,SOFTWAREVERSION VARCHAR(100),COMMENTS VARCHAR(16777216),SOURCENUMBER INTEGER,METROLOGYMODE VARCHAR(100),METROLOGYFLAG VARCHAR(100),SOURCEDENSITY DOUBLE,POINTINGRMS DOUBLE,LOCKED BOOLEAN,INCREASEVERSION BOOLEAN,CURRENTVERSION INTEGER,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),CONSTRAINT ANTENNAPMANTENNA FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT POINTIMALTKEY UNIQUE(ANTENNAID)) +ALTER TABLE PUBLIC.POINTINGMODEL ALTER COLUMN POINTINGMODELID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.POINTINGMODELCOEFF(POINTINGMODELCOEFFID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,POINTINGMODELID INTEGER NOT NULL,COEFFNAME VARCHAR(128) NOT NULL,COEFFVALUE DOUBLE NOT NULL,CONSTRAINT ANTPMTERMPOINTINGMODELID FOREIGN KEY(POINTINGMODELID) REFERENCES PUBLIC.POINTINGMODEL(POINTINGMODELID),CONSTRAINT POINTIMCALTKEY UNIQUE(POINTINGMODELID,COEFFNAME)) +ALTER TABLE PUBLIC.POINTINGMODELCOEFF ALTER COLUMN POINTINGMODELCOEFFID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.POINTINGMODELCOEFFOFFSET(POINTINGMODELCOEFFID INTEGER NOT NULL,RECEIVERBAND VARCHAR(128) NOT NULL,OFFSET DOUBLE NOT NULL,CONSTRAINT POINTIMCOKEY PRIMARY KEY(POINTINGMODELCOEFFID,RECEIVERBAND),CONSTRAINT ANTPMCOEFFOFFTOCOEFF FOREIGN KEY(POINTINGMODELCOEFFID) REFERENCES PUBLIC.POINTINGMODELCOEFF(POINTINGMODELCOEFFID),CONSTRAINT ANTENNAPMCOEFFOFFBAND CHECK((PUBLIC.POINTINGMODELCOEFFOFFSET.RECEIVERBAND) IN (('ALMA_RB_01'),('ALMA_RB_02'),('ALMA_RB_03'),('ALMA_RB_04'),('ALMA_RB_05'),('ALMA_RB_06'),('ALMA_RB_07'),('ALMA_RB_08'),('ALMA_RB_09'),('ALMA_RB_10')))) +CREATE MEMORY TABLE PUBLIC.FOCUSMODEL(FOCUSMODELID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,OBSERVATIONTIME BIGINT,EXECBLOCKUID VARCHAR(100),SCANNUMBER INTEGER,SOFTWAREVERSION VARCHAR(100),COMMENTS VARCHAR(16777216),SOURCEDENSITY DOUBLE,LOCKED BOOLEAN,INCREASEVERSION BOOLEAN,CURRENTVERSION INTEGER,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),CONSTRAINT ANTENNAFMANTENNA FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT FOCUSMODELALTKEY UNIQUE(ANTENNAID)) +ALTER TABLE PUBLIC.FOCUSMODEL ALTER COLUMN FOCUSMODELID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.FOCUSMODELCOEFF(FOCUSMODELCOEFFID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,FOCUSMODELID INTEGER NOT NULL,COEFFNAME VARCHAR(128) NOT NULL,COEFFVALUE DOUBLE NOT NULL,CONSTRAINT ANTFMTERMFOCUSMODELID FOREIGN KEY(FOCUSMODELID) REFERENCES PUBLIC.FOCUSMODEL(FOCUSMODELID),CONSTRAINT FOCUSMCALTKEY UNIQUE(FOCUSMODELID,COEFFNAME)) +ALTER TABLE PUBLIC.FOCUSMODELCOEFF ALTER COLUMN FOCUSMODELCOEFFID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.FOCUSMODELCOEFFOFFSET(FOCUSMODELCOEFFID INTEGER NOT NULL,RECEIVERBAND VARCHAR(128) NOT NULL,OFFSET DOUBLE NOT NULL,CONSTRAINT FOCUSMCOKEY PRIMARY KEY(FOCUSMODELCOEFFID,RECEIVERBAND),CONSTRAINT ANTFMCOEFFOFFTOCOEFF FOREIGN KEY(FOCUSMODELCOEFFID) REFERENCES PUBLIC.FOCUSMODELCOEFF(FOCUSMODELCOEFFID),CONSTRAINT ANTENNAFMCOEFFOFFBAND CHECK((PUBLIC.FOCUSMODELCOEFFOFFSET.RECEIVERBAND) IN (('ALMA_RB_01'),('ALMA_RB_02'),('ALMA_RB_03'),('ALMA_RB_04'),('ALMA_RB_05'),('ALMA_RB_06'),('ALMA_RB_07'),('ALMA_RB_08'),('ALMA_RB_09'),('ALMA_RB_10')))) +CREATE MEMORY TABLE PUBLIC.DEFAULTCOMPONENT(DEFAULTCOMPONENTID INTEGER NOT NULL,COMPONENTTYPEID INTEGER NOT NULL,ASSEMBLYTYPENAME VARCHAR(256) NOT NULL,IMPLLANG VARCHAR(16777216) NOT NULL,REALTIME BOOLEAN NOT NULL,CODE VARCHAR(256) NOT NULL,PATH VARCHAR(256) NOT NULL,ISAUTOSTART BOOLEAN NOT NULL,ISDEFAULT BOOLEAN NOT NULL,ISSTANDALONEDEFINED BOOLEAN,KEEPALIVETIME INTEGER NOT NULL,MINLOGLEVEL TINYINT DEFAULT -1,MINLOGLEVELLOCAL TINYINT DEFAULT -1,XMLDOC VARCHAR(16777216),CONSTRAINT DEFAULCKEY PRIMARY KEY(DEFAULTCOMPONENTID),CONSTRAINT DEFAULTCOMPONENTTYPEID FOREIGN KEY(COMPONENTTYPEID) REFERENCES PUBLIC.COMPONENTTYPE(COMPONENTTYPEID),CONSTRAINT DEFAULTCOMPONENTASSEMBLYID FOREIGN KEY(ASSEMBLYTYPENAME) REFERENCES PUBLIC.ASSEMBLYTYPE(ASSEMBLYTYPENAME),CONSTRAINT DEFAULTCOMPONENTIMPLLANG CHECK((PUBLIC.DEFAULTCOMPONENT.IMPLLANG) IN (('java'),('cpp'),('py')))) +CREATE MEMORY TABLE PUBLIC.DEFAULTBACIPROPERTY(DEFAULTBACIPROPID INTEGER NOT NULL,DEFAULTCOMPONENTID INTEGER NOT NULL,PROPERTYNAME VARCHAR(128) NOT NULL,DESCRIPTION VARCHAR(16777216) NOT NULL,FORMAT VARCHAR(16777216) NOT NULL,UNITS VARCHAR(16777216) NOT NULL,RESOLUTION VARCHAR(16777216) NOT NULL,ARCHIVE_PRIORITY INTEGER NOT NULL,ARCHIVE_MIN_INT DOUBLE NOT NULL,ARCHIVE_MAX_INT DOUBLE NOT NULL,ARCHIVE_MECHANISM VARCHAR(16777216) NOT NULL,ARCHIVE_SUPPRESS BOOLEAN NOT NULL,DEFAULT_TIMER_TRIG DOUBLE NOT NULL,MIN_TIMER_TRIG DOUBLE NOT NULL,INITIALIZE_DEVIO BOOLEAN NOT NULL,MIN_DELTA_TRIG DOUBLE,DEFAULT_VALUE VARCHAR(16777216) NOT NULL,GRAPH_MIN DOUBLE,GRAPH_MAX DOUBLE,MIN_STEP DOUBLE,ARCHIVE_DELTA DOUBLE NOT NULL,ARCHIVE_DELTA_PERCENT DOUBLE,ALARM_HIGH_ON DOUBLE,ALARM_LOW_ON DOUBLE,ALARM_HIGH_OFF DOUBLE,ALARM_LOW_OFF DOUBLE,ALARM_TIMER_TRIG DOUBLE,MIN_VALUE DOUBLE,MAX_VALUE DOUBLE,BITDESCRIPTION VARCHAR(16777216),WHENSET VARCHAR(16777216),WHENCLEARED VARCHAR(16777216),STATESDESCRIPTION VARCHAR(16777216),CONDITION VARCHAR(16777216),ALARM_ON VARCHAR(16777216),ALARM_OFF VARCHAR(16777216),ALARM_FAULT_FAMILY VARCHAR(16777216),ALARM_FAULT_MEMBER VARCHAR(16777216),ALARM_LEVEL INTEGER,DATA VARCHAR(16777216),CONSTRAINT DEFAULBPKEY PRIMARY KEY(DEFAULTBACIPROPID),CONSTRAINT DEFBACIDEFAULTCOMPONENTTYPEID FOREIGN KEY(DEFAULTCOMPONENTID) REFERENCES PUBLIC.DEFAULTCOMPONENT(DEFAULTCOMPONENTID)) +CREATE MEMORY TABLE PUBLIC.DEFAULTMONITORPOINT(DEFAULTMONITORPOINTID INTEGER NOT NULL,DEFAULTBACIPROPERTYID INTEGER NOT NULL,MONITORPOINTNAME VARCHAR(128) NOT NULL,INDICE INTEGER NOT NULL,DATATYPE VARCHAR(16777216) NOT NULL,RCA VARCHAR(16777216) NOT NULL,TERELATED BOOLEAN NOT NULL,RAWDATATYPE VARCHAR(16777216) NOT NULL,WORLDDATATYPE VARCHAR(16777216) NOT NULL,UNITS VARCHAR(16777216),SCALE DOUBLE,OFFSET DOUBLE,MINRANGE VARCHAR(16777216),MAXRANGE VARCHAR(16777216),DESCRIPTION VARCHAR(16777216) NOT NULL,CONSTRAINT DEFAULMPKEY PRIMARY KEY(DEFAULTMONITORPOINTID),CONSTRAINT DEFAULPNTID FOREIGN KEY(DEFAULTBACIPROPERTYID) REFERENCES PUBLIC.DEFAULTBACIPROPERTY(DEFAULTBACIPROPID)) +CREATE MEMORY TABLE PUBLIC.MONITORPOINT(MONITORPOINTID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,BACIPROPERTYID INTEGER NOT NULL,MONITORPOINTNAME VARCHAR(128) NOT NULL,ASSEMBLYID INTEGER NOT NULL,INDICE INTEGER NOT NULL,DATATYPE VARCHAR(16777216) NOT NULL,RCA VARCHAR(16777216) NOT NULL,TERELATED BOOLEAN NOT NULL,RAWDATATYPE VARCHAR(16777216) NOT NULL,WORLDDATATYPE VARCHAR(16777216) NOT NULL,UNITS VARCHAR(16777216),SCALE DOUBLE,OFFSET DOUBLE,MINRANGE VARCHAR(16777216),MAXRANGE VARCHAR(16777216),DESCRIPTION VARCHAR(16777216) NOT NULL,CONSTRAINT MONITORPOINTASSEMBLYID FOREIGN KEY(ASSEMBLYID) REFERENCES PUBLIC.ASSEMBLY(ASSEMBLYID),CONSTRAINT MONITORPOINTBACIPROPERTYID FOREIGN KEY(BACIPROPERTYID) REFERENCES PUBLIC.BACIPROPERTY(BACIPROPERTYID),CONSTRAINT MONITORPOINTDATATYPE CHECK((PUBLIC.MONITORPOINT.DATATYPE) IN (('float'),('double'),('boolean'),('string'),('integer'),('enum'),('clob'))),CONSTRAINT MONITORPOINTALTKEY UNIQUE(BACIPROPERTYID,ASSEMBLYID,INDICE)) +ALTER TABLE PUBLIC.MONITORPOINT ALTER COLUMN MONITORPOINTID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.MONITORDATA(MONITORPOINTID INTEGER NOT NULL,STARTTIME BIGINT NOT NULL,ENDTIME BIGINT NOT NULL,MONITORTS TIMESTAMP NOT NULL,SAMPLESIZE INTEGER NOT NULL,MONITORCLOB VARCHAR(16777216) NOT NULL,MINSTAT DOUBLE,MAXSTAT DOUBLE,MEANSTAT DOUBLE,STDDEVSTAT DOUBLE,CONSTRAINT MONITORDATAKEY PRIMARY KEY(MONITORPOINTID,MONITORTS),CONSTRAINT MONITORDATAMONITORPOINTID FOREIGN KEY(MONITORPOINTID) REFERENCES PUBLIC.MONITORPOINT(MONITORPOINTID)) +CREATE MEMORY TABLE PUBLIC.BASEELEMENTONLINE(BASEELEMENTONLINEID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,BASEELEMENTID INTEGER NOT NULL,CONFIGURATIONID INTEGER NOT NULL,STARTTIME BIGINT NOT NULL,ENDTIME BIGINT,NORMALTERMINATION BOOLEAN NOT NULL,CONSTRAINT BEONLINEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT BEONLINECONFIG FOREIGN KEY(CONFIGURATIONID) REFERENCES PUBLIC.HWCONFIGURATION(CONFIGURATIONID),CONSTRAINT BASEELOALTKEY UNIQUE(BASEELEMENTID,CONFIGURATIONID,STARTTIME)) +ALTER TABLE PUBLIC.BASEELEMENTONLINE ALTER COLUMN BASEELEMENTONLINEID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.ASSEMBLYONLINE(ASSEMBLYONLINEID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ASSEMBLYID INTEGER NOT NULL,BASEELEMENTONLINEID INTEGER NOT NULL,ROLENAME VARCHAR(128) NOT NULL,STARTTIME BIGINT NOT NULL,ENDTIME BIGINT,CONSTRAINT BEASSEMBLYLISTID FOREIGN KEY(BASEELEMENTONLINEID) REFERENCES PUBLIC.BASEELEMENTONLINE(BASEELEMENTONLINEID),CONSTRAINT BEASSEMBLYLISTASSEMBLYID FOREIGN KEY(ASSEMBLYID) REFERENCES PUBLIC.ASSEMBLY(ASSEMBLYID),CONSTRAINT ASSEMBOALTKEY UNIQUE(ASSEMBLYID,BASEELEMENTONLINEID)) +ALTER TABLE PUBLIC.ASSEMBLYONLINE ALTER COLUMN ASSEMBLYONLINEID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.ARRAY(ARRAYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,BASEELEMENTID INTEGER NOT NULL,TYPE VARCHAR(16777216) NOT NULL,USERID VARCHAR(256),STARTTIME BIGINT NOT NULL,ENDTIME BIGINT,NORMALTERMINATION BOOLEAN NOT NULL,CONSTRAINT ARRAYBEID FOREIGN KEY(BASEELEMENTID) REFERENCES PUBLIC.BASEELEMENT(BASEELEMENTID),CONSTRAINT ARRAYTYPE CHECK((PUBLIC.ARRAY.TYPE) IN (('automatic'),('manual'))),CONSTRAINT ARRAYALTKEY UNIQUE(STARTTIME,BASEELEMENTID)) +ALTER TABLE PUBLIC.ARRAY ALTER COLUMN ARRAYID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.ANTENNATOARRAY(ANTENNAID INTEGER NOT NULL,ARRAYID INTEGER NOT NULL,CONSTRAINT ANTENNTAKEY PRIMARY KEY(ANTENNAID,ARRAYID),CONSTRAINT ANTENNATOARRAYANTENNAID FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT ANTENNATOARRAYARRAYID FOREIGN KEY(ARRAYID) REFERENCES PUBLIC.ARRAY(ARRAYID)) +CREATE MEMORY TABLE PUBLIC.SBEXECUTION(ARRAYID INTEGER NOT NULL,SBUID VARCHAR(256) NOT NULL,STARTTIME BIGINT NOT NULL,ENDTIME BIGINT,NORMALTERMINATION BOOLEAN NOT NULL,CONSTRAINT SBEXECUTIONKEY PRIMARY KEY(ARRAYID,SBUID,STARTTIME),CONSTRAINT SBEXECUTIONARRAYID FOREIGN KEY(ARRAYID) REFERENCES PUBLIC.ARRAY(ARRAYID)) +CREATE MEMORY TABLE PUBLIC.ANTENNATOFRONTEND(ANTENNATOFRONTENDID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,FRONTENDID INTEGER NOT NULL,STARTTIME BIGINT NOT NULL,ENDTIME BIGINT,CONSTRAINT ANTENNATOFEANTENNAID FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT ANTENNATOFEFRONTENDID FOREIGN KEY(FRONTENDID) REFERENCES PUBLIC.FRONTEND(BASEELEMENTID),CONSTRAINT ANTENNTFEALTKEY UNIQUE(ANTENNAID,FRONTENDID,STARTTIME)) +ALTER TABLE PUBLIC.ANTENNATOFRONTEND ALTER COLUMN ANTENNATOFRONTENDID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.BL_VERSIONINFO(TABLENAME VARCHAR(128) NOT NULL,SWCONFIGURATIONID INTEGER NOT NULL,ENTITYID INTEGER NOT NULL,LOCKED BOOLEAN NOT NULL,INCREASEVERSION BOOLEAN NOT NULL,CURRENTVERSION INTEGER NOT NULL,WHO VARCHAR(128) NOT NULL,CHANGEDESC VARCHAR(16777216) NOT NULL,CONSTRAINT BL_VERIKEY PRIMARY KEY(TABLENAME,SWCONFIGURATIONID,ENTITYID),CONSTRAINT VERSIONINFOSWCNFID FOREIGN KEY(SWCONFIGURATIONID) REFERENCES PUBLIC.CONFIGURATION(CONFIGURATIONID)) +CREATE MEMORY TABLE PUBLIC.BL_POINTINGMODELCOEFF(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),POINTINGMODELID INTEGER NOT NULL,COEFFNAME VARCHAR(128) NOT NULL,COEFFVALUE DOUBLE NOT NULL,CONSTRAINT BL_POIMCKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,POINTINGMODELID,COEFFNAME),CONSTRAINT BL_POINTINGMODELCOEFFOP CHECK((PUBLIC.BL_POINTINGMODELCOEFF.OPERATION) IN (('I'),('U'),('D')))) +CREATE MEMORY TABLE PUBLIC.BL_POINTINGMODELCOEFFOFFSET(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),POINTINGMODELID INTEGER NOT NULL,COEFFNAME VARCHAR(128) NOT NULL,RECEIVERBAND VARCHAR(128) NOT NULL,OFFSET DOUBLE NOT NULL,CONSTRAINT BL_POIMCOKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,POINTINGMODELID,COEFFNAME,RECEIVERBAND),CONSTRAINT BL_ANTENNAPMCOEFFOFFOP CHECK((PUBLIC.BL_POINTINGMODELCOEFFOFFSET.OPERATION) IN (('I'),('U'),('D'))),CONSTRAINT BL_ANTENNAPMCOEFFOFFBAND CHECK((PUBLIC.BL_POINTINGMODELCOEFFOFFSET.RECEIVERBAND) IN (('ALMA_RB_01'),('ALMA_RB_02'),('ALMA_RB_03'),('ALMA_RB_04'),('ALMA_RB_05'),('ALMA_RB_06'),('ALMA_RB_07'),('ALMA_RB_08'),('ALMA_RB_09'),('ALMA_RB_10')))) +CREATE MEMORY TABLE PUBLIC.BL_FOCUSMODELCOEFF(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),FOCUSMODELID INTEGER NOT NULL,COEFFNAME VARCHAR(128) NOT NULL,COEFFVALUE DOUBLE NOT NULL,CONSTRAINT BL_FOCMCKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,FOCUSMODELID,COEFFNAME),CONSTRAINT BL_FOCUSMODELCOEFFOP CHECK((PUBLIC.BL_FOCUSMODELCOEFF.OPERATION) IN (('I'),('U'),('D')))) +CREATE MEMORY TABLE PUBLIC.BL_FOCUSMODELCOEFFOFFSET(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),FOCUSMODELID INTEGER NOT NULL,COEFFNAME VARCHAR(128) NOT NULL,RECEIVERBAND VARCHAR(128) NOT NULL,OFFSET DOUBLE NOT NULL,CONSTRAINT BL_FOCMCOKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,FOCUSMODELID,COEFFNAME,RECEIVERBAND),CONSTRAINT BL_ANTENNAFMCOEFFOFFOP CHECK((PUBLIC.BL_FOCUSMODELCOEFFOFFSET.OPERATION) IN (('I'),('U'),('D'))),CONSTRAINT BL_ANTENNAFMCOEFFOFFBAND CHECK((PUBLIC.BL_FOCUSMODELCOEFFOFFSET.RECEIVERBAND) IN (('ALMA_RB_01'),('ALMA_RB_02'),('ALMA_RB_03'),('ALMA_RB_04'),('ALMA_RB_05'),('ALMA_RB_06'),('ALMA_RB_07'),('ALMA_RB_08'),('ALMA_RB_09'),('ALMA_RB_10')))) +CREATE MEMORY TABLE PUBLIC.BL_FEDELAY(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),FEDELAYID INTEGER NOT NULL,ANTENNAID INTEGER NOT NULL,RECEIVERBAND VARCHAR(128) NOT NULL,POLARIZATION VARCHAR(128) NOT NULL,SIDEBAND VARCHAR(128) NOT NULL,DELAY DOUBLE NOT NULL,CONSTRAINT BL_FEDELAYKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,FEDELAYID),CONSTRAINT BL_FEDELAYOP CHECK((PUBLIC.BL_FEDELAY.OPERATION) IN (('I'),('U'),('D')))) +CREATE MEMORY TABLE PUBLIC.BL_IFDELAY(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),IFDELAYID INTEGER NOT NULL,ANTENNAID INTEGER NOT NULL,BASEBAND VARCHAR(128) NOT NULL,POLARIZATION VARCHAR(128) NOT NULL,IFSWITCH VARCHAR(128) NOT NULL,DELAY DOUBLE NOT NULL,CONSTRAINT BL_IFDELAYKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,IFDELAYID),CONSTRAINT BL_IFDELAYOP CHECK((PUBLIC.BL_IFDELAY.OPERATION) IN (('I'),('U'),('D')))) +CREATE MEMORY TABLE PUBLIC.BL_LODELAY(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),LODELAYID INTEGER NOT NULL,ANTENNAID INTEGER NOT NULL,BASEBAND VARCHAR(128) NOT NULL,DELAY DOUBLE NOT NULL,CONSTRAINT BL_LODELAYKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,LODELAYID),CONSTRAINT BL_LODELAYOP CHECK((PUBLIC.BL_LODELAY.OPERATION) IN (('I'),('U'),('D')))) +CREATE MEMORY TABLE PUBLIC.BL_XPDELAY(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),XPDELAYID INTEGER NOT NULL,CONFIGURATIONID INTEGER NOT NULL,RECEIVERBAND VARCHAR(128) NOT NULL,SIDEBAND VARCHAR(128) NOT NULL,BASEBAND VARCHAR(128) NOT NULL,DELAY DOUBLE NOT NULL,CONSTRAINT BL_XPDELAYKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,XPDELAYID),CONSTRAINT BL_XPDELAYOP CHECK((PUBLIC.BL_XPDELAY.OPERATION) IN (('I'),('U'),('D')))) +CREATE MEMORY TABLE PUBLIC.BL_ANTENNADELAY(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),BASEELEMENTID INTEGER NOT NULL,DELAY DOUBLE NOT NULL,CONSTRAINT BL_ANTDKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.BL_ANTENNA(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),BASEELEMENTID INTEGER NOT NULL,ANTENNATYPE VARCHAR(16777216) NOT NULL,DISHDIAMETER DOUBLE NOT NULL,COMMISSIONDATE BIGINT NOT NULL,XPOSITION DOUBLE NOT NULL,YPOSITION DOUBLE NOT NULL,ZPOSITION DOUBLE NOT NULL,XOFFSET DOUBLE NOT NULL,YOFFSET DOUBLE NOT NULL,ZOFFSET DOUBLE NOT NULL,LOOFFSETTINGINDEX INTEGER NOT NULL,WALSHSEQ INTEGER NOT NULL,CAIBASELINE INTEGER,CAIACA INTEGER,CONSTRAINT BL_ANTENNAKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.BL_PAD(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),BASEELEMENTID INTEGER NOT NULL,COMMISSIONDATE BIGINT NOT NULL,XPOSITION DOUBLE NOT NULL,YPOSITION DOUBLE NOT NULL,ZPOSITION DOUBLE NOT NULL,DELAY DOUBLE NOT NULL,CONSTRAINT BL_PADKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,BASEELEMENTID)) +CREATE MEMORY TABLE PUBLIC.BL_ANTENNATOPAD(VERSION INTEGER NOT NULL,MODTIME BIGINT NOT NULL,OPERATION CHARACTER(1) NOT NULL,WHO VARCHAR(128),CHANGEDESC VARCHAR(16777216),ANTENNATOPADID INTEGER NOT NULL,MOUNTMETROLOGYAN0COEFF DOUBLE,MOUNTMETROLOGYAW0COEFF DOUBLE,CONSTRAINT BL_ANTTPKEY PRIMARY KEY(VERSION,MODTIME,OPERATION,ANTENNATOPADID)) +CREATE MEMORY TABLE PUBLIC.ANTENNAEFFICIENCY(ANTENNAEFFICIENCYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,OBSERVATIONTIME BIGINT NOT NULL,EXECBLOCKUID VARCHAR(100) NOT NULL,SCANNUMBER INTEGER NOT NULL,THETAMINORPOLX DOUBLE NOT NULL,THETAMINORPOLY DOUBLE NOT NULL,THETAMAJORPOLX DOUBLE NOT NULL,THETAMAJORPOLY DOUBLE NOT NULL,POSITIONANGLEBEAMPOLX DOUBLE NOT NULL,POSITIONANGLEBEAMPOLY DOUBLE NOT NULL,SOURCENAME VARCHAR(100) NOT NULL,SOURCESIZE DOUBLE NOT NULL,FREQUENCY DOUBLE NOT NULL,APERTUREEFF DOUBLE NOT NULL,APERTUREEFFERROR DOUBLE NOT NULL,FORWARDEFF DOUBLE NOT NULL,FORWARDEFFERROR DOUBLE NOT NULL,CONSTRAINT ANTEFFTOANTENNA FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID)) +ALTER TABLE PUBLIC.ANTENNAEFFICIENCY ALTER COLUMN ANTENNAEFFICIENCYID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.RECEIVERQUALITY(RECEIVERQUALITYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,OBSERVATIONTIME BIGINT NOT NULL,EXECBLOCKUID VARCHAR(100) NOT NULL,SCANNUMBER INTEGER NOT NULL,CONSTRAINT RECQUALITYTOANTENNA FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID)) +ALTER TABLE PUBLIC.RECEIVERQUALITY ALTER COLUMN RECEIVERQUALITYID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.RECEIVERQUALITYPARAMETERS(RECEIVERQUALITYPARAMID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,RECEIVERQUALITYID INTEGER NOT NULL,FREQUENCY DOUBLE NOT NULL,SIDEBANDRATIO DOUBLE NOT NULL,TRX DOUBLE NOT NULL,POLARIZATION DOUBLE NOT NULL,BANDPASSQUALITY DOUBLE NOT NULL,CONSTRAINT RECQUALITYPARAMTORECQUAL FOREIGN KEY(RECEIVERQUALITYID) REFERENCES PUBLIC.RECEIVERQUALITY(RECEIVERQUALITYID)) +ALTER TABLE PUBLIC.RECEIVERQUALITYPARAMETERS ALTER COLUMN RECEIVERQUALITYPARAMID RESTART WITH 0 +CREATE MEMORY TABLE PUBLIC.HOLOGRAPHY(HOLOGRAPHYID INTEGER GENERATED BY DEFAULT AS IDENTITY(START WITH 0) NOT NULL PRIMARY KEY,ANTENNAID INTEGER NOT NULL,OBSERVATIONTIME BIGINT NOT NULL,EXECBLOCKUID VARCHAR(100) NOT NULL,SCANNUMBER INTEGER NOT NULL,OBSERVATIONDURATION DOUBLE NOT NULL,LOWELEVATION DOUBLE NOT NULL,HIGHELEVATION DOUBLE NOT NULL,MAPSIZE DOUBLE NOT NULL,SOFTWAREVERSION VARCHAR(100) NOT NULL,OBSMODE VARCHAR(80) NOT NULL,COMMENTS VARCHAR(16777216),FREQUENCY DOUBLE NOT NULL,REFERENCEANTENNA INTEGER NOT NULL,ASTIGMATISMX2Y2 DOUBLE NOT NULL,ASTIGMATISMXY DOUBLE NOT NULL,ASTIGMATISMERR DOUBLE NOT NULL,PHASERMS DOUBLE NOT NULL,SURFACERMS DOUBLE NOT NULL,SURFACERMSNOASTIG DOUBLE NOT NULL,RING1RMS DOUBLE NOT NULL,RING2RMS DOUBLE NOT NULL,RING3RMS DOUBLE NOT NULL,RING4RMS DOUBLE NOT NULL,RING5RMS DOUBLE NOT NULL,RING6RMS DOUBLE NOT NULL,RING7RMS DOUBLE NOT NULL,RING8RMS DOUBLE NOT NULL,BEAMMAPFITUID VARCHAR(100) NOT NULL,SURFACEMAPFITUID VARCHAR(100) NOT NULL,XFOCUS DOUBLE NOT NULL,XFOCUSERR DOUBLE NOT NULL,YFOCUS DOUBLE NOT NULL,YFOCUSERR DOUBLE NOT NULL,ZFOCUS DOUBLE NOT NULL,ZFOCUSERR DOUBLE NOT NULL,CONSTRAINT HOLOGRAPHYTOANTENNA FOREIGN KEY(ANTENNAID) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT HOLOGRAPHYREFANTENNA FOREIGN KEY(REFERENCEANTENNA) REFERENCES PUBLIC.ANTENNA(BASEELEMENTID),CONSTRAINT HOLOGRAPHYOBSMODE CHECK((PUBLIC.HOLOGRAPHY.OBSMODE) IN (('TOWER'),('ASTRO')))) +ALTER TABLE PUBLIC.HOLOGRAPHY ALTER COLUMN HOLOGRAPHYID RESTART WITH 0 +ALTER SEQUENCE SYSTEM_LOBS.LOB_ID RESTART WITH 1 +SET DATABASE DEFAULT INITIAL SCHEMA PUBLIC +GRANT USAGE ON DOMAIN INFORMATION_SCHEMA.SQL_IDENTIFIER TO PUBLIC +GRANT USAGE ON DOMAIN INFORMATION_SCHEMA.YES_OR_NO TO PUBLIC +GRANT USAGE ON DOMAIN INFORMATION_SCHEMA.TIME_STAMP TO PUBLIC +GRANT USAGE ON DOMAIN INFORMATION_SCHEMA.CARDINAL_NUMBER TO PUBLIC +GRANT USAGE ON DOMAIN INFORMATION_SCHEMA.CHARACTER_DATA TO PUBLIC +GRANT DBA TO SA +SET SCHEMA SYSTEM_LOBS +INSERT INTO BLOCKS VALUES(0,2147483647,0) +SET SCHEMA PUBLIC +INSERT INTO COMPONENTTYPE VALUES(0,'IDL:alma/Control/AutomaticArray2:1.0') +INSERT INTO COMPONENTTYPE VALUES(1,'IDL:alma/Control/ManualArray:1.0') +INSERT INTO COMPONENTTYPE VALUES(2,'IDL:alma/Control/ArrayController:1.0') +INSERT INTO COMPONENTTYPE VALUES(3,'IDL:alma/Control/ArrayMonitor:1.0') +INSERT INTO COMPONENTTYPE VALUES(4,'IDL:alma/Control/SkyDelayServer:1.0') +INSERT INTO COMPONENTTYPE VALUES(5,'IDL:alma/Control/DopplerServer:1.0') +INSERT INTO COMPONENTTYPE VALUES(6,'IDL:alma/Control/MountController:1.0') +INSERT INTO COMPONENTTYPE VALUES(7,'IDL:alma/Control/AntLOController:1.0') +INSERT INTO COMPONENTTYPE VALUES(8,'IDL:alma/Control/TowerHolography:1.0') +INSERT INTO COMPONENTTYPE VALUES(9,'IDL:alma/Control/TowerHolography7m:1.0') +INSERT INTO COMPONENTTYPE VALUES(10,'IDL:alma/Control/OpticalPointing:1.0') +INSERT INTO COMPONENTTYPE VALUES(11,'IDL:alma/Control/AntInterferometryController:1.0') +INSERT INTO COMPONENTTYPE VALUES(12,'IDL:alma/Control/TotalPower:1.0') +INSERT INTO COMPONENTTYPE VALUES(13,'IDL:alma/Control/NewTPP:1.0') +INSERT INTO COMPONENTTYPE VALUES(14,'IDL:alma/Control/AntennaController:1.0') +INSERT INTO COMPONENTTYPE VALUES(15,'IDL:alma/Control/AntennaMonitor:1.0') +INSERT INTO COMPONENTTYPE VALUES(16,'IDL:alma/Control/ScriptExecutor:1.0') +INSERT INTO COMPONENTTYPE VALUES(17,'IDL:alma/xmlstore/Identifier:1.0') +INSERT INTO COMPONENTTYPE VALUES(18,'IDL:alma/xmlstore/ArchiveConnection:1.0') +INSERT INTO COMPONENTTYPE VALUES(19,'IDL:alma/monitorstream/MonitorStreamListener:1.0') +INSERT INTO COMPONENTTYPE VALUES(20,'IDL:alma/bulkdata/BulkStore:1.0') +INSERT INTO COMPONENTTYPE VALUES(21,'IDL:alma/offline/DataCapturer:1.0') +INSERT INTO COMPONENTTYPE VALUES(22,'IDL:alma/ACSSim/Simulator:1.0') +INSERT INTO COMPONENTTYPE VALUES(23,'IDL:alma/acsnc/ACSEventAdmin:1.0') +INSERT INTO COMPONENTTYPE VALUES(24,'IDL:alma/exec/Operator:1.0') +INSERT INTO COMPONENTTYPE VALUES(25,'IDL:alma/scheduling/Interactive_PI_to_Scheduling:1.0') +INSERT INTO COMPONENTTYPE VALUES(26,'IDL:alma/scheduling/Array:1.0') +INSERT INTO COMPONENTTYPE VALUES(27,'IDL:alma/Control/ExecutionState:1.0') +INSERT INTO COMPONENTTYPE VALUES(28,'IDL:alma/alarmsystem/AlarmService:1.0') +INSERT INTO COMPONENTTYPE VALUES(29,'IDL:alma/TMCDB/Access:1.0') +INSERT INTO COMPONENTTYPE VALUES(30,'IDL:alma/Control/TPPTest:1.0') +INSERT INTO COMPONENTTYPE VALUES(31,'IDL:alma/Control/ArrayStatus:1.0') +INSERT INTO COMPONENTTYPE VALUES(32,'IDL:alma/acssamp/Samp:1.0') +INSERT INTO COMPONENTTYPE VALUES(33,'IDL:alma/TMCDB/TMCDBComponent:1.0') +INSERT INTO COMPONENTTYPE VALUES(34,'IDL:alma/ACS/MasterComponent:1.0') +INSERT INTO COMPONENTTYPE VALUES(35,'IDL:alma/archive/ArchiveSubsystemMasterIF:1.0') +INSERT INTO COMPONENTTYPE VALUES(36,'IDL:alma/Control/Antenna:1.0') +INSERT INTO COMPONENTTYPE VALUES(37,'IDL:alma/Control/AOSTiming:1.0') +INSERT INTO COMPONENTTYPE VALUES(38,'IDL:alma/Control/CentralLO:1.0') +INSERT INTO COMPONENTTYPE VALUES(39,'IDL:alma/Control/ObservingModeTester:1.0') +INSERT INTO COMPONENTTYPE VALUES(40,'IDL:alma/Control/Master2:1.0') +INSERT INTO COMPONENTTYPE VALUES(41,'IDL:alma/Control/WeatherStationController:1.0') +INSERT INTO COMPONENTTYPE VALUES(42,'IDL:alma/Control/ControlOperatorIF:1.0') +INSERT INTO COMPONENTTYPE VALUES(43,'IDL:alma/ControlSocketServer/AmbSocketServer:1.0') +INSERT INTO COMPONENTTYPE VALUES(44,'IDL:alma/Correlator/ObservationControl:1.0') +INSERT INTO COMPONENTTYPE VALUES(45,'IDL:alma/TMCDB/MonitorCollector:1.0') +INSERT INTO COMPONENTTYPE VALUES(46,'IDL:alma/Correlator/CorrCanMngr:1.0') +INSERT INTO COMPONENTTYPE VALUES(47,'IDL:alma/Correlator/CorrDiagnostics:1.0') +INSERT INTO COMPONENTTYPE VALUES(48,'IDL:alma/Correlator/ObservationQuery:1.0') +INSERT INTO COMPONENTTYPE VALUES(49,'IDL:alma/Correlator/CCC_Monitor:1.0') +INSERT INTO COMPONENTTYPE VALUES(50,'IDL:alma/AMBSim/AmbSimulator:1.0') +INSERT INTO COMPONENTTYPE VALUES(51,'IDL:alma/Correlator/ConfigurationValidator:1.0') +INSERT INTO COMPONENTTYPE VALUES(52,'IDL:alma/Control/DRXCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(53,'IDL:alma/Control/PSACompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(54,'IDL:alma/Control/HOLODSPCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(55,'IDL:alma/Control/NUTATORCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(56,'IDL:alma/Control/MountAEM:1.0') +INSERT INTO COMPONENTTYPE VALUES(57,'IDL:alma/Control/PSSASCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(58,'IDL:alma/Correlator/ArrayTime:1.0') +INSERT INTO COMPONENTTYPE VALUES(59,'IDL:alma/Control/DTXCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(60,'IDL:alma/Control/SAS:1.0') +INSERT INTO COMPONENTTYPE VALUES(61,'IDL:alma/Control/CMPRCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(62,'IDL:alma/Control/WVR:1.0') +INSERT INTO COMPONENTTYPE VALUES(63,'IDL:alma/Control/IFProcCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(64,'IDL:alma/Control/FrontEnd:1.0') +INSERT INTO COMPONENTTYPE VALUES(65,'IDL:alma/Control/DGCKCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(66,'IDL:alma/Control/LO2CompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(67,'IDL:alma/Control/FOADCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(68,'IDL:alma/Control/OpticalTelescope:1.0') +INSERT INTO COMPONENTTYPE VALUES(69,'IDL:alma/Control/LORRCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(70,'IDL:alma/Control/HOLORXCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(71,'IDL:alma/Control/PSDCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(72,'IDL:alma/Control/ACD:1.0') +INSERT INTO COMPONENTTYPE VALUES(73,'IDL:alma/Control/LLCCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(74,'IDL:alma/Control/AmbManager:1.0') +INSERT INTO COMPONENTTYPE VALUES(75,'IDL:alma/Control/PSLLCCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(76,'IDL:alma/Control/FLOOGCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(77,'IDL:alma/Control/MountVertex:1.0') +INSERT INTO COMPONENTTYPE VALUES(78,'IDL:alma/Control/CMPR:1.0') +INSERT INTO COMPONENTTYPE VALUES(79,'IDL:alma/Control/IFProc:1.0') +INSERT INTO COMPONENTTYPE VALUES(80,'IDL:alma/Control/LO2:1.0') +INSERT INTO COMPONENTTYPE VALUES(81,'IDL:alma/Control/GPS:1.0') +INSERT INTO COMPONENTTYPE VALUES(82,'IDL:alma/Control/TimeSource:1.0') +INSERT INTO COMPONENTTYPE VALUES(83,'IDL:alma/Control/PSCRCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(84,'IDL:alma/Control/CRDCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(85,'IDL:alma/Control/MasterClock:1.0') +INSERT INTO COMPONENTTYPE VALUES(86,'IDL:alma/Control/MLCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(87,'IDL:alma/Control/PSSAS:1.0') +INSERT INTO COMPONENTTYPE VALUES(88,'IDL:alma/Control/PhotonicReference:1.0') +INSERT INTO COMPONENTTYPE VALUES(89,'IDL:alma/Control/PDACompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(90,'IDL:alma/Control/MountACA:1.0') +INSERT INTO COMPONENTTYPE VALUES(91,'IDL:alma/Control/MountA7M:1.0') +INSERT INTO COMPONENTTYPE VALUES(92,'IDL:alma/Control/HoloRx7m:1.0') +INSERT INTO COMPONENTTYPE VALUES(93,'IDL:alma/Control/DRX:1.0') +INSERT INTO COMPONENTTYPE VALUES(94,'IDL:alma/Control/PSA:1.0') +INSERT INTO COMPONENTTYPE VALUES(95,'IDL:alma/Control/HOLODSPImpl:1.0') +INSERT INTO COMPONENTTYPE VALUES(96,'IDL:alma/Control/DTX:1.0') +INSERT INTO COMPONENTTYPE VALUES(97,'IDL:alma/Control/HOLORXImpl:1.0') +INSERT INTO COMPONENTTYPE VALUES(98,'IDL:alma/Control/PSD:1.0') +INSERT INTO COMPONENTTYPE VALUES(99,'IDL:alma/Control/LLC:1.0') +INSERT INTO COMPONENTTYPE VALUES(100,'IDL:alma/Control/PSLLC:1.0') +INSERT INTO COMPONENTTYPE VALUES(101,'IDL:alma/Control/FLOOG:1.0') +INSERT INTO COMPONENTTYPE VALUES(102,'IDL:alma/Control/WeatherStation:1.0') +INSERT INTO COMPONENTTYPE VALUES(103,'IDL:alma/Control/PowerDist7:1.0') +INSERT INTO COMPONENTTYPE VALUES(104,'IDL:alma/Control/ColdCart7:1.0') +INSERT INTO COMPONENTTYPE VALUES(105,'IDL:alma/Control/IFSwitch:1.0') +INSERT INTO COMPONENTTYPE VALUES(106,'IDL:alma/Control/ColdCart3:1.0') +INSERT INTO COMPONENTTYPE VALUES(107,'IDL:alma/Control/WCA7:1.0') +INSERT INTO COMPONENTTYPE VALUES(108,'IDL:alma/Control/PowerDist9:1.0') +INSERT INTO COMPONENTTYPE VALUES(109,'IDL:alma/Control/WCA9:1.0') +INSERT INTO COMPONENTTYPE VALUES(110,'IDL:alma/Control/LPR:1.0') +INSERT INTO COMPONENTTYPE VALUES(111,'IDL:alma/Control/ColdCart6:1.0') +INSERT INTO COMPONENTTYPE VALUES(112,'IDL:alma/Control/PowerDist6:1.0') +INSERT INTO COMPONENTTYPE VALUES(113,'IDL:alma/Control/ColdCart9:1.0') +INSERT INTO COMPONENTTYPE VALUES(114,'IDL:alma/Control/PowerDist3:1.0') +INSERT INTO COMPONENTTYPE VALUES(115,'IDL:alma/Control/WCA6:1.0') +INSERT INTO COMPONENTTYPE VALUES(116,'IDL:alma/Control/WCA3:1.0') +INSERT INTO COMPONENTTYPE VALUES(117,'IDL:alma/Control/Cryostat:1.0') +INSERT INTO COMPONENTTYPE VALUES(118,'IDL:alma/Control/WCA8:1.0') +INSERT INTO COMPONENTTYPE VALUES(119,'IDL:alma/Control/ColdCart4:1.0') +INSERT INTO COMPONENTTYPE VALUES(120,'IDL:alma/Control/PowerDist4:1.0') +INSERT INTO COMPONENTTYPE VALUES(121,'IDL:alma/Control/PowerDist8:1.0') +INSERT INTO COMPONENTTYPE VALUES(122,'IDL:alma/Control/WCA4:1.0') +INSERT INTO COMPONENTTYPE VALUES(123,'IDL:alma/Control/ColdCart8:1.0') +INSERT INTO COMPONENTTYPE VALUES(124,'IDL:alma/Control/CVR:1.0') +INSERT INTO COMPONENTTYPE VALUES(125,'IDL:alma/Control/LSPPCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(126,'IDL:alma/Control/LSCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(127,'IDL:alma/Control/LORTMCompSimBase:1.0') +INSERT INTO COMPONENTTYPE VALUES(128,'IDL:alma/Control/FOAD:1.0') +INSERT INTO COMPONENTTYPE VALUES(129,'IDL:alma/Control/WCA5:1.0') +INSERT INTO COMPONENTTYPE VALUES(130,'IDL:alma/Control/CRD:1.0') +INSERT INTO COMPONENTTYPE VALUES(131,'IDL:alma/Control/LFRD:1.0') +INSERT INTO COMPONENTTYPE VALUES(132,'IDL:alma/Control/CCC_Monitor:1.0') +INSERT INTO COMPONENTTYPE VALUES(133,'IDL:alma/Control/ColdCart5:1.0') +INSERT INTO COMPONENTTYPE VALUES(134,'IDL:alma/Control/DGCK:1.0') +INSERT INTO COMPONENTTYPE VALUES(135,'IDL:alma/Control/DTSR:1.0') +INSERT INTO COMPONENTTYPE VALUES(136,'IDL:alma/Control/LS:1.0') +INSERT INTO COMPONENTTYPE VALUES(137,'IDL:alma/Control/PDA:1.0') +INSERT INTO COMPONENTTYPE VALUES(138,'IDL:alma/Control/Maser:1.0') +INSERT INTO COMPONENTTYPE VALUES(139,'IDL:alma/Control/FEPS:1.0') +INSERT INTO COMPONENTTYPE VALUES(140,'IDL:alma/Control/NUTATOR:1.0') +INSERT INTO COMPONENTTYPE VALUES(141,'IDL:alma/Control/PSCR:1.0') +INSERT INTO COMPONENTTYPE VALUES(142,'IDL:alma/Control/LSPP:1.0') +INSERT INTO COMPONENTTYPE VALUES(143,'IDL:alma/Control/PowerDist5:1.0') +INSERT INTO COMPONENTTYPE VALUES(144,'IDL:alma/Control/FETIM:1.0') +INSERT INTO COMPONENTTYPE VALUES(145,'IDL:alma/Control/MountACACommon:1.0') +INSERT INTO COMPONENTTYPE VALUES(146,'IDL:alma/Control/VLBIOFLS:1.0') +INSERT INTO COMPONENTTYPE VALUES(147,'IDL:alma/Control/LORTM:1.0') +INSERT INTO COMPONENTTYPE VALUES(148,'IDL:alma/Control/LORR:1.0') +INSERT INTO COMPONENTTYPE VALUES(149,'IDL:alma/Control/ML:1.0') +INSERT INTO COMPONENTTYPE VALUES(150,'IDL:alma/Control/PSSAS2:1.0') +INSERT INTO COMPONENTTYPE VALUES(151,'IDL:alma/Control/PSSAS1:1.0') +INSERT INTO COMPONENTTYPE VALUES(152,'IDL:alma/Control/PRD:1.0') +INSERT INTO COMPONENTTYPE VALUES(153,'IDL:alma/Control/ColdCart10:1.0') +INSERT INTO COMPONENTTYPE VALUES(154,'IDL:alma/Control/WCA10:1.0') +INSERT INTO COMPONENTTYPE VALUES(155,'IDL:alma/Control/WCA2:1.0') +INSERT INTO COMPONENTTYPE VALUES(156,'IDL:alma/Control/WCA1:1.0') +INSERT INTO COMPONENTTYPE VALUES(157,'IDL:alma/Control/PSLLC1:1.0') +INSERT INTO COMPONENTTYPE VALUES(158,'IDL:alma/Control/PSLLC2:1.0') +INSERT INTO COMPONENTTYPE VALUES(159,'IDL:alma/Control/PSLLC3:1.0') +INSERT INTO COMPONENTTYPE VALUES(160,'IDL:alma/Control/PSLLC4:1.0') +INSERT INTO COMPONENTTYPE VALUES(161,'IDL:alma/Control/PSLLC5:1.0') +INSERT INTO COMPONENTTYPE VALUES(162,'IDL:alma/Control/PSLLC6:1.0') +INSERT INTO COMPONENTTYPE VALUES(163,'IDL:alma/Control/ColdCart1:1.0') +INSERT INTO COMPONENTTYPE VALUES(164,'IDL:alma/Control/ColdCart2:1.0') +INSERT INTO COMPONENTTYPE VALUES(165,'IDL:alma/Control/WSTB2:1.0') +INSERT INTO COMPONENTTYPE VALUES(166,'IDL:alma/Control/WSTB1:1.0') +INSERT INTO COMPONENTTYPE VALUES(167,'IDL:alma/Control/WSOSF:1.0') +INSERT INTO COMPONENTTYPE VALUES(168,'IDL:alma/Control/PowerDist10:1.0') +INSERT INTO COMPONENTTYPE VALUES(169,'IDL:alma/Control/MLD:1.0') +INSERT INTO COMPONENTTYPE VALUES(170,'IDL:alma/Control/PowerDist1:1.0') +INSERT INTO COMPONENTTYPE VALUES(171,'IDL:alma/Control/PowerDist2:1.0') +INSERT INTO COMPONENTTYPE VALUES(172,'IDL:alma/Control/Mount:1.0') +INSERT INTO CONFIGURATION VALUES(0,'Test','Test',TRUE,'2014-02-13 15:51:09.250000','Imported from CDB by HibernateWDAL') +INSERT INTO SCHEMAS VALUES(0,'urn:schemas-cosylab-com:WCA3:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(1,'urn:schemas-cosylab-com:CptrMonitor:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(2,'urn:schemas-cosylab-com:HOLODSP:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u0009\u000a\u0009 \u000a\u0009\u0009\u000a\u0009\u0009 \u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009 \u000a\u0009\u0009\u0009 \u000a\u0009\u0009\u0009 \u000a\u0009\u0009\u0009 \u000a\u0009\u0009\u0009\u000a\u0009\u0009 \u000a\u0009\u0009\u000a\u0009 \u000a\u0009\u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(3,'urn:schemas-cosylab-com:CMPRBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(4,'urn:schemas-cosylab-com:FEMCBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(5,'urn:schemas-cosylab-com:HOLORX7M:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a\u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(6,'urn:schemas-cosylab-com:DTSR:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(7,'urn:schemas-cosylab-com:WCA5:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(8,'urn:schemas-cosylab-com:PowerDist3Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(9,'urn:schemas-cosylab-com:PDABase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(10,'urn:schemas-cosylab-com:LSCommonBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(11,'urn:schemas-cosylab-com:ColdCart9Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(12,'urn:schemas-cosylab-com:MountACACommon:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(13,'urn:schemas-cosylab-com:AmbManager:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(14,'urn:schemas-cosylab-com:FETIM:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(15,'urn:schemas-cosylab-com:LORRBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(16,'urn:schemas-cosylab-com:WCA:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(17,'urn:schemas-cosylab-com:WCA8:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(18,'urn:schemas-cosylab-com:PowerDist3:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(19,'urn:schemas-cosylab-com:ConfigurationValidator:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(20,'urn:schemas-cosylab-com:ACACCC_Monitor:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(21,'urn:schemas-cosylab-com:PowerDist7Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(22,'urn:schemas-cosylab-com:ColdCart5Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(23,'urn:schemas-cosylab-com:PowerDistBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(24,'urn:schemas-cosylab-com:EthernetDevice:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(25,'urn:schemas-cosylab-com:CCC_Monitor:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a \u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(26,'urn:schemas-cosylab-com:CVRBase:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(27,'urn:schemas-cosylab-com:PSSASBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(28,'urn:schemas-cosylab-com:LSPPBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(29,'urn:schemas-cosylab-com:ObservationQuery:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(30,'urn:schemas-cosylab-com:MountAEMBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(31,'urn:schemas-cosylab-com:DRX:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(32,'urn:schemas-cosylab-com:WCA6:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(33,'urn:schemas-cosylab-com:MountACA:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(34,'urn:schemas-cosylab-com:MountVertexBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(35,'urn:schemas-cosylab-com:MaserBase:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(36,'urn:schemas-cosylab-com:WCA5Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(37,'urn:schemas-cosylab-com:MountA7MBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(38,'urn:schemas-cosylab-com:PowerDist9:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(39,'urn:schemas-cosylab-com:PSSAS:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(40,'urn:schemas-cosylab-com:CorrDiagnostics:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(41,'urn:schemas-cosylab-com:ArrayTime:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(42,'urn:schemas-cosylab-com:ACACptrMonitor:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(43,'urn:schemas-cosylab-com:WCA9:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(44,'urn:schemas-cosylab-com:ColdCart6:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(45,'urn:schemas-cosylab-com:DTX:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(46,'urn:schemas-cosylab-com:HOLORX:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u0009\u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u000a\u0009 \u000a\u0009\u0009\u000a\u0009\u0009 \u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009 \u000a\u0009\u0009\u0009 \u000a\u0009\u0009\u0009 \u000a\u0009\u0009\u0009 \u000a\u0009\u0009\u0009\u000a\u0009\u0009 \u000a\u0009\u0009\u000a\u0009 \u000a\u0009\u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(47,'urn:schemas-cosylab-com:FLOOGBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(48,'urn:schemas-cosylab-com:LORTMBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(49,'urn:schemas-cosylab-com:MountACACommonBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(50,'urn:schemas-cosylab-com:ACACorrMaintenance:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(51,'urn:schemas-cosylab-com:WCA7Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(52,'urn:schemas-cosylab-com:PSU:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(53,'urn:schemas-cosylab-com:ColdCart8Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(54,'urn:schemas-cosylab-com:OpticalTelescopeBase:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(55,'urn:schemas-cosylab-com:ColdCart9:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(56,'urn:schemas-cosylab-com:MountACABase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(57,'urn:schemas-cosylab-com:ColdCart5:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(58,'urn:schemas-cosylab-com:Maintenance:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(59,'urn:schemas-cosylab-com:Quadrature:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(60,'urn:schemas-cosylab-com:ColdCart7:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(61,'urn:schemas-cosylab-com:LPR:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(62,'urn:schemas-cosylab-com:PowerDist9Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(63,'urn:schemas-cosylab-com:MountBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(64,'urn:schemas-cosylab-com:PSD:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(65,'urn:schemas-cosylab-com:GPS:1.0',0,'\u000a\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u0009 \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(66,'urn:schemas-cosylab-com:MountA7M:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(67,'urn:schemas-cosylab-com:PSLLCBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(68,'urn:schemas-cosylab-com:PSABase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(69,'urn:schemas-cosylab-com:ColdCartBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(70,'urn:schemas-cosylab-com:MountVertex:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(71,'urn:schemas-cosylab-com:PowerDist6Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(72,'urn:schemas-cosylab-com:IFSwitchBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(73,'urn:schemas-cosylab-com:TimeSource:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(74,'urn:schemas-cosylab-com:NUTATOR:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(75,'urn:schemas-cosylab-com:AmbDevice:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(76,'urn:schemas-cosylab-com:ControlDevice:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(77,'urn:schemas-cosylab-com:IFProcBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(78,'urn:schemas-cosylab-com:PowerDist4Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(79,'urn:schemas-cosylab-com:PowerDist5:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(80,'urn:schemas-cosylab-com:CryostatBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(81,'urn:schemas-cosylab-com:IFSwitch:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(82,'urn:schemas-cosylab-com:PSLLC:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(83,'urn:schemas-cosylab-com:WCA7:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(84,'urn:schemas-cosylab-com:LLCBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(85,'urn:schemas-cosylab-com:Node:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u0009 \u000a\u0009 Size in mega-bytes of memory heap used to avoid explicit system mallocs. The heap is allocated (malloc) only once at the moment the node component is instanciated and released at the moment the component deactivates. The actual size depends on the number of nodes executing on the same computer. A value of zero (default) is interpreted a meaning to default to system malloc, for which the MemoryHeap class assumes a maximum size of 2^sizeof(size_t)-1.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(86,'urn:schemas-cosylab-com:FETIMBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(87,'urn:schemas-cosylab-com:FOADBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(88,'urn:schemas-cosylab-com:WCA3Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(89,'urn:schemas-cosylab-com:PowerDist7:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(90,'urn:schemas-cosylab-com:PowerDist6:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(91,'urn:schemas-cosylab-com:ColdCart6Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(92,'urn:schemas-cosylab-com:WeatherStationBase:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(93,'urn:schemas-cosylab-com:WCA9Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(94,'urn:schemas-cosylab-com:PowerDist8:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(95,'urn:schemas-cosylab-com:ACDBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(96,'urn:schemas-cosylab-com:FEPS:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(97,'urn:schemas-cosylab-com:LPRBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(98,'urn:schemas-cosylab-com:LFRDBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(99,'urn:schemas-cosylab-com:ColdCart3Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(100,'urn:schemas-cosylab-com:PowerDist:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(101,'urn:schemas-cosylab-com:ColdCart4:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(102,'urn:schemas-cosylab-com:DGCKBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(103,'urn:schemas-cosylab-com:ColdCart7Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(104,'urn:schemas-cosylab-com:ColdCart8:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(105,'urn:schemas-cosylab-com:WCABase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(106,'urn:schemas-cosylab-com:FEPSBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(107,'urn:schemas-cosylab-com:DRXBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(108,'urn:schemas-cosylab-com:LSBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(109,'urn:schemas-cosylab-com:CRDBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(110,'urn:schemas-cosylab-com:ColdCart:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(111,'urn:schemas-cosylab-com:WCA4Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(112,'urn:schemas-cosylab-com:DTSRBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(113,'urn:schemas-cosylab-com:DTXBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(114,'urn:schemas-cosylab-com:PSUBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(115,'urn:schemas-cosylab-com:PSA:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(116,'urn:schemas-cosylab-com:ColdCart3:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(117,'urn:schemas-cosylab-com:CorrCanMngr:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(118,'urn:schemas-cosylab-com:PowerDist5Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(119,'urn:schemas-cosylab-com:WVRBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(120,'urn:schemas-cosylab-com:FEMC:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(121,'urn:schemas-cosylab-com:VLBIOFLSBase:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(122,'urn:schemas-cosylab-com:CorrelatorSimulator:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(123,'urn:schemas-cosylab-com:SASBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(124,'urn:schemas-cosylab-com:WCA4:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(125,'urn:schemas-cosylab-com:PSCR:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(126,'urn:schemas-cosylab-com:IFProc:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(127,'urn:schemas-cosylab-com:PSCRBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(128,'urn:schemas-cosylab-com:MLBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(129,'urn:schemas-cosylab-com:FrontEnd:1.0',0,'\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(130,'urn:schemas-cosylab-com:Master:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u0009 \u000a\u0009 Size in mega-bytes of memory heap used to avoid explicit system mallocs. The heap is allocated (malloc) only once at the moment the node component is instanciated and released at the moment the component deactivates. The actual size depends on the number of nodes executing on the same computer. A value of zero (default) is interpreted a meaning to default to system malloc, for which the MemoryHeap class assumes a maximum size of 2^sizeof(size_t)-1.\u000a \u000a \u000a \u000a \u000a\u0009 \u000a\u0009 The string must have a length of 16. Each character represents a node, indexed from left to right from 1 to 16, which represents the maximum number of nodes that any hardware configuration could include. An asterisk ''*'' in any character means that that node is not in used and, therefore, the master implementation will not try to get any reference to it. However, there is no top level verification that spectral specifications would actually exclude that node.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(131,'urn:schemas-cosylab-com:LO2Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(132,'urn:schemas-cosylab-com:Cryostat:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(133,'urn:schemas-cosylab-com:PowerDist8Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(134,'urn:schemas-cosylab-com:ObservationControl:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(135,'urn:schemas-cosylab-com:PSDBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(136,'urn:schemas-cosylab-com:CorrelatorMasterComponent:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u0009 \u000a\u0009 Correlator type represents the type of firmware loaded in hardware. Combined with the basebands element defined below these two configuration parameters lead to the following set of possible hardware deplyments:\u000a 1. 2 antennas system (1 node)\u000a 2. 4Q + 4 base-bands ==> 64 antennas (4 quadrants, 16 nodes)\u000a 3. 4Q + 2 base-bands ==> 64 antennas (2 quadrants, 8 nodes))\u000a 4. 4Q + 1 base-band ==> 64 antennas (1 quadrant, 4 nodes)\u000a 5. 2Q + 4 base-bands ==> 32 antennas (2 quadrants, 4 nodes)\u000a 6. 2Q + 2 base-bands ==> 32 antennas (1 quadrant, 2 nodes)\u000a 7. 1Q + 4 base-bands ==> 16 antennas (1 quadrant, 4 nodes)\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u0009 \u000a\u0009 Base-bands supported by the current hardware configuration.\u000a \u000a \u000a \u000a \u000a \u000a\u0009 \u000a\u0009 \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(137,'urn:schemas-cosylab-com:DGCK:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(138,'urn:schemas-cosylab-com:Mount:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a \u0009\u0009\u000a\u000a \u000a\u0009\u000a\u0009\u000a \u0009\u000a \u0009\u000a \u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a \u000a\u0009\u000a\u0009\u000a\u0009\u000a \u0009\u0009\u000a\u000a \u000a \u000a \u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a \u000a \u000a\u000a\u0009\u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(139,'urn:schemas-cosylab-com:NUTATORBase:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(140,'urn:schemas-cosylab-com:PowerDist4:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(141,'urn:schemas-cosylab-com:LSCommon:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u0009\u0009\u000a \u0009\u0009\u000a\u0009 \u000a \u000a \u000a\u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(142,'urn:schemas-cosylab-com:WCA8Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(143,'urn:schemas-cosylab-com:WCA6Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(144,'urn:schemas-cosylab-com:WeatherStation:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a\u0009\u000a \u0009 \u000a \u000a \u000a \u000a\u000a\u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(145,'urn:schemas-cosylab-com:MountAEM:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(146,'urn:schemas-cosylab-com:ColdCart4Base:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(147,'urn:schemas-cosylab-com:Components:1.0',0,'\u000a\u000a\u000a\u000a \u000a \u000a This schema file describes ACS \u000aCDB entries to specify Components to be instantiated. \u000aIt is used to place multiple components in the same XML \u000afile in the directory hierarchy of the ACS CDB based on files, \u000ausing a sequence. \u000aFor more details, in particular with respect to \u000athe various option to describe Components configuration, \u000asee the ACS CDB documentation and the FAQ \u000aFAQHierarchicalComponentsAndCDBStructure in the ACS Wiki.\u000a \u000a \u000a \u000a \u000a Specification for a Component to be instantiated in the system. This definitionis identical to the one in Component.xsd. Look for the documentation there. TODO Probably we should look for a way to factorize the two definitions in a single place\u000a \u000a \u000a \u000a \u000a Optional configuration of log levels for the component. Without this entry, the component''s logger will use the log levels found in the Container configuration.\u000aNote that Component-level logging configuration will be effective only after ACS 6.0, see http://almasw.hq.eso.org/almasw/bin/view/ACS/LoggingArchitectureEnhancementsACS60.\u000aComparison of logging configuration for the container and for components:\u000a(1) The mandatory container logging configuration contains \u000a (a) values other than log levels which apply to the entire process (i.e. container and all components) \u000a (b) default log levels for all loggers that are not specified individually\u000a (c) log levels for named (container or component) loggers ; \u000a while the optional component logging configuration can only set component-specific log levels.\u000a(2) Individual configuration of log levels for unnamed (dynamic) components can only be done here.\u000a(3) If log levels for the same component are given both here and in the configuration of the container where the component is instantiated, then the values from the container configuration take precedence.\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a The programming language the component is implemented in.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a This is a sequence of components that can be activated by the Manager in the System\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(148,'urn:schemas-cosylab-com:Door:1.0',0,'\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(149,'urn:schemas-cosylab-com:AmsSeq:1.0',0,'\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(150,'urn:schemas-cosylab-com:LoggingConfig:1.0',0,'\u000a\u000a \u000a \u000a Configuration for the log production of an entire process, e.g. a container or manager. This includes shared settings for the communication with the central log service, as well as settings for individual loggers.\u000aThe inherited ''minLogLevel'' and ''minLogLevelLocal'' are the default log levels for all loggers in the container or other process. They can be overridden for specific loggers using ''log:_'' XML child elements.\u000a \u000a \u000a \u000a \u000a \u000a \u000a !!! CONFIGURATION OF NAMED LOGGERS NOT YET SUPPORTED IN ACS 6.0!!! Optional configuration for specific loggers that should use different log levels than the default values from ''LoggingConfig''. The odd name ''_'' follows the CDB convention for ''map attributes'' and allows easy access without iterating over a list of loggers.\u000a \u000a \u000a \u000a \u000a \u000a Name of the service representing the logging service. This is the name used to query the Manager for the reference to the logging service. In the current installations the default value is normally used. The value can be changed to distribute logs to different instances of the service in order to improve performance and scalability of the system. In the future it will be possible to federate instances of the logging service, but this is not implemented yet.\u000a \u000a \u000a \u000a \u000a In order to improve performance and reduce network traffic, containers do not send immediately logs to the logging system. This parameter specifies how many logs are packaged together and sent to the logging system in one call. Note that the real package size may be smaller if sending off the records is also triggered by a timer and /or by the log level. \u000aFor debugging purposes it may be convenient to set the cache to 0, to avoid losing logs when a Container crashes. \u000aThis value was called "CacheSize" prior to ACS 6.0.\u000a \u000a \u000a \u000a \u000a Normally a number of log records are sent together to the logging system, as described for "dispatchPacketSize". The "immediateDispatchLevel" triggers sending all cached log records immediately once a record with the given (or higher) log level appears, even before the specified packet size has been reached.\u000aThis value was called "MaxCachePriority" prior to ACS 6.0\u000a \u000a \u000a \u000a \u000a If log records are queued locally in order to send a bunch of them together to the remote log service, we still may want to send packages with fewer records after a certain time. This makes sure that log receivers see the messages in time, even if very few records get produced. \u000aThis value sets the time period in seconds after which the log record queue should be flushed if it contains log records, regardless of the resulting ''dispatchPacketSize''. A value "0" turns off the time-triggered flushing.\u000a \u000a \u000a \u000a \u000a Log records are stored in a queue not only to send them in a packet over the wire (see dispatchPacketSize), but also to not lose any records in times when the log service is not available (e.g. during container start, or any kind of network and service failure). Thus they get stored in a queue, which gets drained once the log service becomes available. However, logging should not compete for memory with the functional parts of the software, so we limit this queue. Values below "dispatchPacketSize" will be ignored, as we first must queue the records that should be sent together.\u000a \u000a \u000a \u000a \u000a Optional log throttle to be applied on the process (container) level, giving the max number of logs per second that the process can output.\u000aThe throttle applies not only to remote logs, but also local/stdout logs, since the latter may be sent over the network as well (diskless+NFS). \u000aNegative values mean that no log rate throttle is applied. Since ACS 9.0, see COMP-4541.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a Configuration for a logger or group of loggers that can be identified from the context. This can be a logger used by the container, by a particular component, by the container and all components, by the ORB, and so on.\u000a \u000a \u000a \u000a All logs with priority lower than this value will be discarded and never sent to the logging system. On a normally running system, priority is kept to INFO level (4) or higher to avoid flooding the logging system. While debugging, it might be useful to increase the verbosity of the system by reducing the priority down to the lowest value 2.\u000aThis value was called "MinCachePriority" prior to ACS 6.0.\u000a \u000a \u000a \u000a \u000a Same as "minLogLevel", but controlling the printing of the log to stdout independently of sending the log to the log service.\u000aNote that printing logs on the command line degrades performance much more than sending them to the log service.\u000aThis value can be overridden by the env variable "ACS_LOG_STDOUT"\u000a \u000a \u000a \u000a \u000a \u000a Configuration for an individual logger.\u000aThis allows to optionally configure certain loggers differently than the default logger. \u000aFor example, one may choose to use the default logging config for all component loggers, but to set higher log levels for the container and ORB loggers. Note that components can also configure the log levels for their loggers, and that the log levels there have preference over any component logger config given here.\u000a \u000a \u000a \u000a \u000a \u000a The logger''s name as it appears in the log record in the ''SourceObject'' field. Note that this attribute must be called ''Name'' with uppercase to allow easy access to it using the CDB''s support for ''map attributes''.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a Legal log level. These enumerations must be synchronized with the definitions in logging_idl.idl (module loggingidl)!\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(151,'urn:schemas-cosylab-com:Building:1.0',0,'\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(152,'urn:schemas-cosylab-com:MasterComponent:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(153,'urn:schemas-cosylab-com:Container:1.0',0,'\u000a\u000a\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009This schema file describes the configuration for a Container. \u000aThere might be slight differences in the meaning of some \u000aattributes depending on the specific implementation of the Container, \u000ain particular depending on the implementation language. \u000aSee also the documentation of the specific implementation \u000aof Container for a list of supported and un-supported \u000aconfiguration parameters.\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Allows the OMC and the ACS manager to determine who starts the container, see COMP-3476.\u000aIf true, the ACS manager will start the container on demand, while false means that the container must be started outside of ACS, \u000ae.g. on the command line, or by the Alma OMC.\u000aMaps to Container.StartOnDemand in the TMCDB.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Space-separated list of modifiers for the container type. While Container.ImplLang specifies the programming language type of the container (e.g. "java"), the modifiers may select a special mode (such as "archiveContainer", "debug", "single_threaded") or whatever else. \u000aThe ACS daemon that starts the container must understand the modifiers in order for them to become effective.\u000aMaps to Container.TypeModifiers in the TMCDB.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The computer on which the container will be started by the ACS manager or by the OMC.\u000aLeaving this field empty, or using "*", allows for a choice at runtime, for example the local host where the manager runs.\u000aMaps to Container.ComputerId in the TMCDB.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Optional command line flags for starting the container. For example, an alternative container implementation can be used with --executable=myContainerImpl.\u000aMaps to Container.CmdLineArgs in the TMCDB.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Time in seconds for which the manager will not shut down an idle container, i.e. one that no longer runs components. Negative values mean indefinite.\u000aMaps to Container.KeepAliveTime in the TMCDB.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009Set of libraries that will be automatically loaded at Container startup time. Used by the CPP Containers to automatically load shared libraries that will be used by many Components. It also allows to resolve dynamically linking problems. The arguments are names of shared libraries.\u000aMaps to Container.AutoloadSharedLibs in the TMCDB.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009Optional deployment information. Used by Manager or OMC to automatically startup/shutdown containers (see also COMP-3476 why it may become required in the future).\u000aAbout mapping to fields in the TMCDB, see descriptions of the individual attributes of DeployInfo type.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The programming language the container is implemented in.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Timeout in seconds for remote (CORBA) calls originating from this container or any of its components. This timeout will be implemented in this container, which means on the client side of the CORBA call. \u000aTimeouts ensure protection from deadlock. Notice that some ACS QoS features can be used to trim specific calls, support for which varies among the different container/ORB types.\u000aMaps to Container.CallTimeout in the TMCDB.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009At least the C++ container accesses the Interface Repository to retrieve information about the interfaces implemented by Components. In some very special situations, for example during debugging, it might be useful to disable the usage of the Interface Repository.\u000aCurrently not mapped to the TMCDB!\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009How many times the Container shall try to contact the Manager upon startup before bailing out. 0 means forever. In a stable system, the Manager is normally already available when Containers are started up. Specific needs might trigger the necessity to trim this parameter.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The Manager pings periodically all containers to check if they are healthy. The time interval in seconds for this heartbeat check can be specified here, to override Manager#ContainerPingInterval which is the default for all containers.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009ACS provides a plugin mechanism to use different implementations of configuration database. This attribute allows to specify the name of the desired implementation. All applications and systems using the standard ACS CDB do not have to change the attribute. Special systems with the need of integrating a different configuration database might use this feature.\u000aCurrently not mapped to the TMCDB.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009This is the number of threads allocate to the CORBA infrastructure for the handling of concurrent invocations. This value is normally sufficient, but it myght necessary to increase it for Containers with very many Components or when methods of Components take long time and build up complex chains of invocations. A typical manifestation of an insufficient number of threads is the deadlock followed by timeouts of actions in the Container.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009If true, all components will be automatically reloaded when the container gets restarted after a crash. About changes of the default value see http://jira.alma.cl/browse/COMP-3277. Notice that component recovery can have unexpected side effects for stateful components. In the future, ACS should distinguish and support stateless or state-managed components, so that a value "true" will only cause reloading those components of which the container knows that they are safe to restart. Some components may prefer to not be reloaded automatically after a container restart, but rather let the user go through an explicit restart procedure. Another reason to disable automatic component reloading would be a container crash caused during the activation of a (C++) component.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u000a') +INSERT INTO SCHEMAS VALUES(154,'urn:schemas-cosylab-com:SimulatedComponent:1.0',0,'\u000a\u000a\u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009This end-user nicety allows developers to declare Python import statements\u000a\u0009\u0009\u0009which will then automatically be imported into the simulator framework.\u000a\u0009\u0009\u0009For example, this element could contain:\u000a\u0009\u0009\u0009\u000afrom time import sleep\u000aimport sys\u000aimport FRIDGE\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009It must be noted that these lines must not be preceded by white space and are limited\u000a\u0009\u0009\u0009to simple import/from statements.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009The event type is an XML element describing ALMA events and channels. \u000a\u0009\u0009\u0009What this element does is tell the simulator framework that a given event type on a \u000a\u0009\u0009\u0009given channel should be sent out using:\u000a\u0009\u0009\u00091. A block of Python code existing within this element where the last line \u000a\u0009\u0009\u0009corresponds to an event. An example could be something similar to:\u000a\u000ajoe = FRIDGE.temperatureDataEvent(7L)\u000ajoe\u000a\u000a\u0009\u0009\u00092. A random instance of the event type generated by the simulator framework.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009Event also allows end-users to send events on a given frequency. Finally,\u000a\u0009\u0009\u0009an attribute exists which allows setting the probability that the event will not be \u000a\u0009\u0009\u0009sent at all.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the channel we will send events to.\u000a\u0009\u0009\u0009\u0009For example, "SCHEDULING_CHANNEL".\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The IDL id of the ALMA event we will send an event to.\u000a\u0009\u0009\u0009\u0009For example, "IDL:alma/FRIDGE/temperatureDataEvent:1.0".\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009If the event element contains some text, the simulator framework\u000a\u0009\u0009\u0009\u0009will not create a random instance of this event but will instead evaluate\u000a\u0009\u0009\u0009\u0009the element''s text to produce the event.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The floating point number of seconds the simulator framework should wait\u000a\u0009\u0009\u0009\u0009before sending an event after the previous event. The default value of 0 implies \u000a\u0009\u0009\u0009\u0009the framework should only send one event and then stop.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009The eventResponse type is an XML element describing ALMA events and channels. \u000a\u0009\u0009\u0009What this element does is tell the simulator framework that a given event type on a \u000a\u0009\u0009\u0009given channel name should be subscribed to and when an event of the correct type\u000a\u0009\u0009\u0009is received:\u000a\u0009\u0009\u00091. A block of Python code existing within this element should be executed and/or\u000a\u0009\u0009\u00092. Another event should be sent out as a response.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the channel we will subscribe to.\u000a\u0009\u0009\u0009\u0009For example, "CONTROL_CHANNEL".\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The IDL id of the ALMA event we are subscribing to.\u000a\u0009\u0009\u0009\u0009For example, "IDL:alma/FRIDGE/temperatureDataEvent:1.0".\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the channel we will send an event to as a response to an incoming event.\u000a\u0009\u0009\u0009\u0009For example, "SCHEDULING_CHANNEL".\u000a\u0009\u0009\u0009\u0009This attribute is not used unless the OutgoingEventId attribute is modified from the\u000a\u0009\u0009\u0009\u0009default value.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The IDL id of the ALMA event we will send out as a response to an incoming event.\u000a\u0009\u0009\u0009\u0009For example, "IDL:alma/FRIDGE/temperatureDataEvent:1.0".\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009If the OutgoingChannel attribute is not modified from the default value, the event will\u000a\u0009\u0009\u0009\u0009be sent to the IncomingChannel.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009The floating point number of seconds the simulator framework should wait\u000a\u0009\u0009\u0009\u0009\u0009before sending an event in response to receiving an event of IncomingEventId\u000a\u0009\u0009\u0009\u0009\u0009type. This attribute is ignored if OutgoingEventId has not been changed from its default\u000a\u0009\u0009\u0009\u0009\u0009value.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009Type which defines CORBA attributes such as BACI properties.\u000a\u0009\u0009\u0009This XML element should contain a block of Python code with the last line being the return value.\u000a\u0009\u0009\u0009It could be something similar to:\u000areturn "this string value for the following IDL - readonly attribute string stuff;"\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the CORBA attribute.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Amount of time in floating point seconds that must pass before the simulator framework returns\u000a\u0009\u0009\u0009\u0009control to the caller.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009Type which defines a CORBA component method.\u000a\u0009\u0009\u0009This XML element should contain a block of Python code with the last line being the return value.\u000a\u0009\u0009\u0009If the CORBA method is void, the final line should return None:\u000aprint "beginning"\u000awhile 1:\u000a\u0009#do some stuff\u000a\u000aNone\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the CORBA method. For example, "on".\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Amount of time in floating point seconds that must pass before the simulator framework returns\u000a\u0009\u0009\u0009\u0009control to the caller.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009CDB XMLs located in the $ACS_CDB/alma/simulated/* section of the CDB must validate against this schema.\u000a\u0009\u0009\u0009SimulatedComponent defines the behavior of components using the generic IDL simulator framework.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009This attribute is used by the simulator framework to determine if it''s OK to look at superclasses\u000a\u0009\u0009\u0009\u0009\u0009of the component also residing within the $ACS_CDB/alma/simulated/* section of the CDB.\u000a\u0009\u0009\u0009\u0009\u0009Change it to ''false'' and the simulator will only use the current XML.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(155,'urn:schemas-cosylab-com:xml:1.0',0,'\u000a\u000a\u000a \u000a \u000a See http://www.w3.org/XML/1998/namespace.html and\u000a http://www.w3.org/TR/REC-xml for information about this namespace.\u000a\u000a This schema document describes the XML namespace, in a form\u000a suitable for import by other schema documents. \u000a\u000a Note that local names in this namespace are intended to be defined\u000a only by the World Wide Web Consortium or its subgroups. The\u000a following names are currently defined in this namespace and should\u000a not be used with conflicting semantics by any Working Group,\u000a specification, or document instance:\u000a\u000a base (as an attribute name): denotes an attribute whose value\u000a provides a URI to be used as the base for interpreting any\u000a relative URIs in the scope of the element on which it\u000a appears; its value is inherited. This name is reserved\u000a by virtue of its definition in the XML Base specification.\u000a\u000a lang (as an attribute name): denotes an attribute whose value\u000a is a language code for the natural language of the content of\u000a any element; its value is inherited. This name is reserved\u000a by virtue of its definition in the XML specification.\u000a \u000a space (as an attribute name): denotes an attribute whose\u000a value is a keyword indicating what whitespace processing\u000a discipline is intended for the content of the element; its\u000a value is inherited. This name is reserved by virtue of its\u000a definition in the XML specification.\u000a\u000a Father (in any context at all): denotes Jon Bosak, the chair of \u000a the original XML Working Group. This name is reserved by \u000a the following decision of the W3C XML Plenary and \u000a XML Coordination groups:\u000a\u000a In appreciation for his vision, leadership and dedication\u000a the W3C XML Plenary on this 10th day of February, 2000\u000a reserves for Jon Bosak in perpetuity the XML name\u000a xml:Father\u000a \u000a \u000a\u000a \u000a This schema defines attributes and an attribute group\u000a suitable for use by\u000a schemas wishing to allow xml:base, xml:lang or xml:space attributes\u000a on elements they define.\u000a\u000a To enable this, such a schema must import this schema\u000a for the XML namespace, e.g. as follows:\u000a <schema . . .>\u000a . . .\u000a <import namespace="http://www.w3.org/XML/1998/namespace"\u000a schemaLocation="http://www.w3.org/2001/03/xml.xsd"/>\u000a\u000a Subsequently, qualified reference to any of the attributes\u000a or the group defined below will have the desired effect, e.g.\u000a\u000a <type . . .>\u000a . . .\u000a <attributeGroup ref="xml:specialAttrs"/>\u000a \u000a will define a type which will schema-validate an instance\u000a element with any of those attributes\u000a \u000a\u000a \u000a In keeping with the XML Schema WG''s standard versioning\u000a policy, this schema document will persist at\u000a http://www.w3.org/2001/03/xml.xsd.\u000a At the date of issue it can also be found at\u000a http://www.w3.org/2001/xml.xsd.\u000a The schema document at that URI may however change in the future,\u000a in order to remain compatible with the latest version of XML Schema\u000a itself. In other words, if the XML Schema namespace changes, the version\u000a of this document at\u000a http://www.w3.org/2001/xml.xsd will change\u000a accordingly; the version at\u000a http://www.w3.org/2001/03/xml.xsd will not change.\u000a \u000a \u000a\u000a \u000a \u000a In due course, we should install the relevant ISO 2- and 3-letter\u000a codes as the enumerated possible values . . .\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a See http://www.w3.org/TR/xmlbase/ for\u000a information about this attribute.\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(156,'urn:schemas-cosylab-com:Tower:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a\u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(157,'urn:schemas-cosylab-com:SAMP:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(158,'urn:schemas-cosylab-com:LAMP:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(159,'urn:schemas-cosylab-com:Fridge:1.0',0,'\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(160,'urn:schemas-cosylab-com:BACI:1.0',0,'\u000a\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000aThis schema describes the Configuration Database types for the Component/Property/Characteristic design patterns (BACI).\u000aIt contains the definitions for the Characteristic Component types and for all defined Property types.\u000a\u000aTo keep the documentation easier to maintain and avoiding replication of documentation, the schemas for the Long Property are fully documented.\u000aThe other Properties only document their differences with respect to the Long Property.\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for all BACI objects with configuration stored in the CDB\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Schema for CharacteristicComponents. !!! To be renamed. Obsolete name !!!\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Placeholder for the of the last command executed.\u000aNote: optionally used, requires write access to the configuration database.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Placeholder for the timestamp of last command executed.\u000aISO time format.\u000aNote: optionally used, requires write access to the database.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Stack size of for the action thread in kBytes. If 0 is specified the default OS stack size value will be taken. (just C++).\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Stack size of for the monitoring thread in kBytes. If 0 is specified the default OS stack size value will be taken. (just C++).\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for the configuration database of all properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Defines Characteristics common to all properties, independently from their type\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aDescription of the function and purpose of the Property.\u000aUsed in panels and to provide short help and documentation about the specific property.\u000a \u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009The "C printf" format to be used to display the value of the Property.\u000aTo be used by applications that dynamically build a string or a printout\u000aof the value.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009It is used to initialize the devIO of the property if it is true. It uses the "default_value" characteristic to initialize the devIO.\u000aThe default it is false/0.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009A string representing the units (normally base SI units or combinations of SI units) of the quantity represented by the property. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Bit pattern representing the significant bits in the property''s value.\u000aFor example a long is represented by 64 bits, but a physical device \u000amight deliver a value consisting only of 24 bits.\u000aIn that case the resolution attribute has only the first 24 bits up.\u000aThe remaining 8 bits shall be ignored by the application. \u000aThis attribute is useful for example for returning the resolution of analog-digital conversion \u000aThe specific usage must be documented case by case.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009 \u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009The attribute archive_suppress can be used to enable, disable archiving of the property w/o changing the \u000a\u0009\u0009\u0009\u0009\u0009\u0009other values of archiving like archive_max_int, and archive_min_int.\u000a\u0009\u0009\u0009\u0009\u0009 \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009 \u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009The attribute archive_mechanism can be used to specify which mechanism should be taken for \u000a\u0009\u0009\u0009\u0009\u0009\u0009archiving the property. In this way a system that uses ACS can define its own archiving mechanism. \u000a\u0009\u0009\u0009\u0009\u0009\u0009ACS provides support for archiving properties through notification channel (notification_channel). ALMA SW provides in ARCHIVE subsytem additional\u000a\u0009\u0009\u0009\u0009\u0009\u0009 mechanism: monitor collector (monitor_collector). From ACS 9.0 monitor collector is also default mechanism for archiving properties.\u000a\u0009\u0009\u0009\u0009\u0009\u0009 Depend on the implementation of the archiving mechanism all or just some of archive_XYZ attributes can be used for its configuration.\u000a\u0009\u0009\u0009\u0009\u0009\u0009 Notification channel uses all (three), meanwhile the monitor collector uses only archive_max_int.\u000a\u0009\u0009\u0009\u0009\u0009 \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aThe priority of the log entry that will carry the information required for archiving the parameter''s value.\u000aDefault is 3 (LM_INFO). If the priority exceeds the value specified in the logging proxy''s MaxCachePriority,\u000athe archiving data will be transmitted to the centralized logger immediately.\u000a If it is below MinCachePriority, the data will be ignored. \u000a If it is somewhere in-between, it will be cached locally until a sufficient amount of log entries \u000a is collected for transmission to the centralized logger.\u000a \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aThe minimum amount of time (in seconds and fractions of seconds) allowed to pass \u000abetween two consecutive submissions to the log. \u000aIf the time is smaller than the value specified here, the log entry is not submitted, \u000aeven though the value of the parameter has changed.\u000aThis characteristic is used for archive monitors and is independent from the min_timer_trig characteristic, that is instead used for user defined monitors. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aThe maximum amount of time (in seconds and fractions of seconds) allowed \u000ato pass between two consecutive submissions to the log. \u000aIf the time exceeds the value specified here, the log entry should be generated \u000aeven though the value of the parameter has not changed sufficiently.\u000a \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009When a timer is created without requiring a specific time interval, this is the value used.\u000aNormally, the value of a property has an intrisic change rate that should be specified here (in seconds and fractions of seconds).\u000aIn this way applications can always get a reasonable update frequency without having to "guess" how often they have to request a value and without oversampling.\u000aThis is particularly useful for GUI applications.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Minimun allowed time interval (in seconds and fractions of second) for values published by timers.\u000aIndependently from the requested time interval or from the frequency of change in case of monitors on changes, no values will be published less than min_timer_trig seconds from a previously published values.\u000aThis characteristic is ment to limit bandwidth and avoit floading the system with \u000anew values.\u000aThis characteristic is used for user defined monitors and is independent from the min_timer_trig characteristic, that is equivalently used for archive monitors. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Long Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009See TypelessProperty for the description.\u000aDefault value has been restricted here to %d to map the intrisic structure\u000aof a long.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for Long Properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Same type and units as parameter Property\u000aMinimum change in value (with respect to the last value published) that will trigger an on-change monitor.\u000aFor a change smaller than this value, no motir will be triggered.\u000aImportant to filter out small random oscillations of the value.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Same type and units as parameter Property\u000aThe default value for this property, used when the property is not initialised.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Same type and units as parameter Property\u000aThis characteristic represents the minimum value that the property will ever reach.\u000aThe name come from the fact that it normally represents the recommended minimum for charts and gauges that display the value, but the actual meaning is wider.\u000aIt should not be confused with the min_value characteristic of writable properties. The min_value represents the minimum value that can be SET, but the actual value reached by the property can in many case be lower (and defined by graph_min).\u000aFor example while a device moves to the minimum allowerd set position, there can be an overshoot. Typically devices of this kind have a soft and an hard lower limit.\u000aTODO: It might be better to rename this characteristic to better express the actual meaning. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Same type and units as parameter Property\u000aThis characteristic represents the miximum value that the property will ever reach.\u000aThe name come from the fact that it normally represents the recommended maximum for charts and gauges that display the value, but the actual meaning is wider.\u000aIt should not be confused with the max_value characteristic of writable properties. The max_value represents the maximum value that can be SET, but the actual value reached by the property can in many case be higher (and defined by graph_max).\u000aFor example while a device moves to the maximum allowerd set position, there can be an overshoot. Typically devices of this kind have a soft and an hard upper limit.\u000aTODO: It might be better to rename this characteristic to better express the actual meaning.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Same type and units as parameter Property\u000aThis is the minimum step increment and decrement for the property.\u000aIt is typically used by increment and decrement methods.\u000aA typical case is an "increment button", used to increment stepwise the value of a writable property by clicking on it.\u000aIt can also be used to draw proper scale tags on a graph.\u000aWhen connecting to physical devices, this characteristic is often related to the\u000aresolution of the device and, therefore, to the resolution characteristic.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aSame type and units as parameter Property. Defines what a change in parameter value is.\u000aIf the value changes for less than the amount specified here, no log entry is generated.\u000a \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aA percentage value of double type. Defines what a percentual change in parameter value is.\u000aIf the value changes percentually less than the amount specified here, no log entry is generated.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aSame type and units as the Property.\u000aAbove this value alarm is set \u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aSame type and units as the Property.\u000aBelow this value the alarm is set.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aSame type and units as the Property.\u000aBelow this value alarm is cleared \u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aSame type and units as the Property.\u000aAbove this value alarm is cleared\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009The minimum time interval (in seconds and fractions of seconds) for the notification of changes in the alarm status.\u000aIs the time you want the alarm system to check for the value of the property.\u000aIt might be the same as default_timer_trig, but depending on you application and on the criticality\u000aof the property they might be different.\u000aFor example:\u000a - If a property is normally changing slowly, but it is critical\u000a to see as soon as possible an alarm if it goes out of range, I would normally\u000a put alarm_timer_trig = 0.1 default_timer_trig\u000a - The opposite might also happen, if you care for seeing fine variations, for example to plot them,\u000a but not much for alarms because the change is in small steps and the critical \u000a range band before you get damage\u000a is quite large, you can have the alarm_timer_trig = 10 default_timer_trig \u000aA value of 0.0 (default) means that alarm triggering is disabled.\u000aSee the documentation of the specific implementation for details on the implications of this value.\u000aFor example in the ACS CPP baci implementation, the value of a property is checked for its status with respect to the alarm configuration by an internal monitor defined with this time interval. This means that, depending on the underlying DevIO implementation, changes in the alarm status accurring during this time interval might get un-noticed.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009Here user can specify fault family for the alarm. for details of the fault family see the alarm documentation. \u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009If the fault family attribute is not specified (=is empty), than default value which is BACIproperty is taken.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009Here user can specify fault member for the alarm. for details of the fault member see the alarm documentation. \u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009If the fault member attribute is not specified (=is empty), than default value which is property name is taken.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009Defines the level (priority) of the alarm.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Same type and units as parameter Property\u000aThis characteristic represents the minimum value that can be used to SET a writable property.\u000aIt should not be confused with the graph_min characteristic. The min_value represents the minimum value that can be SET, but the actual value reached by the property can in many case be lower (and defined by graph_min).\u000aFor example while a device moves to the minimum allowerd set position, there can be an overshoot. Typically devices of this kind have a soft and an hard lower limit.\u000a \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Same type and units as parameter Property\u000aThis characteristic represents the maximum value that can be used to SET a writable property.\u000aIt should not be confused with the graph_max characteristic. The max_value represents the maximum value that can be SET, but the actual value reached by the property can in many case be higher (and defined by graph_max).\u000aFor example while a device moves to the maximum allowerd set position, there can be an overshoot. Typically devices of this kind have a soft and an hard upper limit.\u000a \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Unsigned Long Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for Unsigned Long Properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only Unsigned Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Unsigned Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Pattern Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009See TypelessProperty for the description.\u000aDefault value has been restricted here to %u to map the intrisic structure\u000aof a pattern.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009pattern stands for an unsigned long long. The typedef pattern is used because this type will mostly be used to encode a pattern of status bits. The type pattern can be used also for raw binary data. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000aNOTE: This is normally not used, since the concept or "delta" does not really match well with the concept of a bit patterns. The charasteristic is defined because used in the template implementation of properties in C++. It might be possible to remove it using less generic templates.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000aNOTE: This is normally not used, since the concept or "delta" does not really match well with the concept of a bit patterns. The charasteristic is defined because used in the template implementation of properties in C++. It might be possible to remove it using less generic templates.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009This characteristic is a comma separated list of strings, each describing one of the bits in the pattern (in that order).\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009This characteristic is a comma separated list of integer values, each representing a color code starting from 0 to be used when the corresponding bit is set. To be used by GUIs to display the status of the bits with a proper color code.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009This characteristic is a comma separated list of integer values, each representing a color code starting from 0 to be used when the corresponding bit is cleared. To be used by GUIs to display the status of the bits with a proper color code\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only pattern property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Bit mask: alarm can be sent just for bits that are set.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009Conditions for alarm triggering: if value is 0 or 1.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Pattern Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Double Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for Double Properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only Double Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Double Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Float Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for Float Properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only Float Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Float Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of String Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for String Properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000aNOTE: This is normally not used, since the concept or "delta" does not really match well with the concept of a bit patterns. The charasteristic is defined because used in the template implementation of properties in C++. It might be possible to remove it using less generic templates. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000aNOTE: This is normally not used, since the concept or "delta" does not really match well with the concept of a bit patterns. The charasteristic is defined because used in the template implementation of properties in C++. It might be possible to remove it using less generic templates.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only String Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write String Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Unsigned Long Long Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for Unsigned Long Long Properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only Unsigned Long Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Unsigned Long Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Long Long Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for Long Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only Long Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Long Long Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Unsigned Long Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for Boolean Properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only Boolean Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Boolean Property\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Enum Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for Enumeration Properties\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009A comma-separated list of mnemonics for the elements of the enumeration. This is used, for example, by ABeans widgets to build a display list of the available definitions. The name comes from the fact that these enumerations are normally used to represent states of state machines. There are as many entries as allowed values in the enumeration. Very convenient when using ABeans widgets.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009A comma-separated list of integer values for the elements of the enumeration. This is used, for example, by ABeans widgets to associate colors to values in the enumeration, like when displaying the enumeration through colored leds. There are as many entries as allowed values in the enumeration. Not widely used by applications a part from a few specific ABeans widgets.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000aSame type and units as parameter Property. Defines what a change in parameter value is.\u000aIf the value changes for less than the amount specified here, no log entry is generated.\u000a \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only Enumeration Property. Used to handle enumerations of values defined by the user.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009A comma-separated list of enumeration indexes, mapping\u000ainto the values for the enumeration that correspond to alarm ON.\u000aFor example 0,2,3 would mean that enumerations whose indexes are\u000a0,2 and 3 correspond to the property alarm state set to ON.\u000aNOTE: In C++ BACI implementation enumerations values are\u000aindexs starting from 0 mapped into the enumeration definitions.\u000aSince CORBA does not provide any standard mapping between enumerations\u000aand index numbers, this might not be true for other implementations of \u000aproperties. Check with the implementation specific documentation.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009A comma-separated list of enumeration indexes, mapping\u000ainto the values for the enumeration that correspond to alarm OFF.\u000aFor example 1,4 would mean that enumerations whose indexes are\u000a1 and 4 correspond to the property alarm state set to OFF\u000aThe value of this characteristic is the complement of alarm_on and is actually\u000anot necessary in the code but is defined here to provide a more clear configuration documentation.\u000aNOTE: In C++ BACI implementation enumerations values are\u000aindexs starting from 0 mapped into the enumeration definitions.\u000aSince CORBA does not provide any standard mapping between enumerations\u000aand index numbers, this might not be true for other implementations of \u000aproperties. Check with the implementation specific documentation.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write Enumeration Property. Used to handle enumerations of values defined by the user.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Double Sequence Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for a property representing a sequence of Double values.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only sequence of Double values.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write sequence of Double values.\u000aThe values defined for the Characteristics apply to each single element of the sequence. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Float Sequence Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for a property representing a sequence of Float values.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Read Only sequence of Float values. The values defined\u000a\u0009\u0009\u0009\u0009for the Characteristics apply to each single element of\u000a\u0009\u0009\u0009\u0009the sequence.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic,\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009see documentation of the ROlong propery. The\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009definition apply here to each single value\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic,\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009see documentation of the ROlong propery. The\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009definition apply here to each single value\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic,\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009see documentation of the ROlong propery. The\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009definition apply here to each single value\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic,\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009see documentation of the ROlong propery. The\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009definition apply here to each single value\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic,\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009see documentation of the ROlong propery. The\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009definition apply here to each single value\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write sequence of Float values.\u000aThe values defined for the Characteristics apply to each single element of the sequence. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Long Sequence Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for a property representing a sequence of Long values.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only sequence of Long values.\u000aThe values defined for the Characteristics apply to each single element of the sequence. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write sequence of Long values.\u000aThe values defined for the Characteristics apply to each single element of the sequence. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of Unsigned Long Sequence Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for a property representing a sequence of Unsigned Long values.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only sequence of Unsigned Long values.\u000aThe values defined for the Characteristics apply to each single element of the sequence. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write sequence of Unsigned Long values.\u000aThe values defined for the Characteristics apply to each single element of the sequence. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of String Sequence Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for a property representing a sequence of String values.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000aNOTE: This is normally not used, since the concept or "delta" does not really match well with the concept of a bit patterns. The charasteristic is defined because used in the template implementation of properties in C++. It might be possible to remove it using less generic templates. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000aNOTE: This is normally not used, since the concept or "delta" does not really match well with the concept of a bit patterns. The charasteristic is defined because used in the template implementation of properties in C++. It might be possible to remove it using less generic templates.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only sequence of String values.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Restriction step of boolean Sequence Property definition.\u000aSince it is not possible to restrict and extend a base schema at the same time,\u000awe do always first a restriction derivation followed by an extension derivation.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Base schema for a property representing a sequence of boolean values.\u000aThe values defined for the Characteristics apply to each single element of the sequence.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery. \u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation \u000aof the Plong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Only sequence of boolean values.\u000aThe values defined for the Characteristics apply to each single element of the sequence. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROboolean propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROboolean propery.\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROboolean propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROboolean propery.\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the ROlong propery.\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Read Write sequence of boolean values.\u000aThe values defined for the Characteristics apply to each single element of the sequence. \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009For a description of this characteristic, see documentation of the RWlong propery. The definition apply here to each single value in the sequence.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(161,'urn:schemas-cosylab-com:LAMPWHEEL:1.0',0,'\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a \u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(162,'urn:schemas-cosylab-com:ARCHIVE_BULKRECEIVER:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(163,'urn:schemas-cosylab-com:Calendar:1.0',0,'\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(164,'urn:schemas-cosylab-com:ErrorExplorer:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(165,'urn:schemas-cosylab-com:EventChannel:1.0',0,'\u000a\u000a\u000a\u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009Schema describing an individual event sent by some supplier on the channel. Does not contain much \u000a\u0009\u0009\u0009at the moment.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Defines the maximum amount of time a consumer is given to handle the given\u000a\u0009\u0009\u0009\u0009event type. If the consumer fails to process the event within MaxProcessTime,\u000a\u0009\u0009\u0009\u0009a warning log is sent at run-time indicating that it took too long to process the event\u000a\u0009\u0009\u0009\u0009which can jeopardize the stability of the Notification Service process if it occurs\u000a\u0009\u0009\u0009\u0009too often. MaxProcessTime is in floating point second units of time.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009Schema which describes an ACS event channel. At the moment, the only info included here are some\u000a\u0009\u0009\u0009Quality of Service and Administrative properties that are applicable to the type of notification channels ACS utilizes.\u000a\u0009\u0009\u0009All of the inline schema documentation found here is also available in the ACS notification channel tutorial or\u000a\u0009\u0009\u0009directly from OMG - http://www.omg.org/technology/documents/formal/notification_service.htm\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009Defines special properties of events. The "Name" attribute of each Event should be unique.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009Giving this attribute a true value results in INFO logs for every sending and receiving of an event.\u000a\u0009\u0009\u0009This produces a huge number of log messages, and is only useful for debugging, but never in operations.\u000a\u0009\u0009\u0009@TODO: rename to something like "IsTraceEventsEnabled" because the historic \u000a\u0009\u0009\u0009coupling of tracing events with software integrations can be misleading.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The maximum number of events that will be queued by the\u000a\u0009\u0009\u0009\u0009channel before the channel begins discarding events (according to the Discard\u000a\u0009\u0009\u0009\u0009Policy QoS parameter) or rejecting new events (depending on the setting of the\u000a\u0009\u0009\u0009\u0009RejectNewEvents admin property) upon receipt of each new event.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The maximum number of consumers that can be connected to the\u000a\u0009\u0009\u0009\u0009channel at any given time.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The maximum number of suppliers that can be connected to the\u000a\u0009\u0009\u0009\u0009channel at any given time.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009This value associated with this property is of type Boolean, where TRUE and\u000a\u0009\u0009\u0009\u0009FALSE have the following meanings:\u000a\u0009\u0009\u0009\u0009*\u0009TRUE: Attempts to push new events to the channel by push-style suppliers will result \u000a\u0009\u0009\u0009\u0009\u0009in the IMPL_LIMIT system exception being raised.\u000a\u0009\u0009\u0009\u0009* \u0009FALSE: When the total number of undelivered events within the channel is equal to\u000a\u0009\u0009\u0009\u0009\u0009MaxQueueLength, attempts to push new events to the channel by a push-style supplier will\u000a\u0009\u0009\u0009\u0009\u0009result in one of the currently queued undelivered events being discarded by the\u000a\u0009\u0009\u0009\u0009\u0009channel to make room for the new event. The discarded event will be chosen based\u000a\u0009\u0009\u0009\u0009\u0009on the setting of the DiscardPolicy QoS property.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009This QoS property enables a user of the Notification Service to specify in what order\u000a\u0009\u0009\u0009\u0009the channel or a proxy supplier should begin discarding events in the case of an\u000a\u0009\u0009\u0009\u0009internal buffer overflow. This property applies on a per-channel basis only if it is set on\u000a\u0009\u0009\u0009\u0009a channel that has the RejectNewEvents admin property set to FALSE. If set on such a\u000a\u0009\u0009\u0009\u0009channel, the chosen discard policy will be applied whenever a supplier attempts to\u000a\u0009\u0009\u0009\u0009send a new event to the channel, and the total number of events already queued within\u000a\u0009\u0009\u0009\u0009the channel is equal to the MaxQueueLength administrative property. If set on a per-\u000a\u0009\u0009\u0009\u0009ConsumerAdmin basis, the chosen discard policy will be applied whenever the number\u000a\u0009\u0009\u0009\u0009of events queued on behalf of one of the consumers connected to one of the proxy\u000a\u0009\u0009\u0009\u0009suppliers created by the ConsumerAdmin exceeds the MaxEventsPerConsumer\u000a\u0009\u0009\u0009\u0009setting for that consumer. If set on a per-proxy supplier basis, the chosen discard policy\u000a\u0009\u0009\u0009\u0009will be applied whenever the number of events queued on behalf of the consumer\u000a\u0009\u0009\u0009\u0009connected to the proxy supplier exceeds the MaxEventsPerConsumer setting for\u000a\u0009\u0009\u0009\u0009that proxy supplier. Note that in these latter two cases, an event will only be\u000a\u0009\u0009\u0009\u0009discarded with respect to its scheduled delivery to the consumer(s) on whose behalf\u000a\u0009\u0009\u0009\u0009the policy is being applied. In other words, if the event targeted for discarding is\u000a\u0009\u0009\u0009\u0009scheduled for delivery to any consumer(s) on whose behalf the discard policy was not\u000a\u0009\u0009\u0009\u0009invoked, the event remains queued for those consumers.\u000a\u0009\u0009\u0009\u0009Constant values to represent the following settings are defined:\u000a\u0009\u0009\u0009\u0009* \u0009AnyOrder - Any event may be discarded on overflow. This is the default setting for this\u000a\u0009\u0009\u0009\u0009\u0009property.\u000a\u0009\u0009\u0009\u0009* \u0009FifoOrder - The first event received will be the first discarded.\u000a\u0009\u0009\u0009\u0009* \u0009LifoOrder - The last event received will be the first discarded.\u000a\u0009\u0009\u0009\u0009* \u0009PriorityOrder - Events should be discarded in priority order, such that lower priority\u000a\u0009\u0009\u0009\u0009\u0009events will be discarded before higher priority events.\u000a\u0009\u0009\u0009\u0009* \u0009DeadlineOrder - Events should be discarded in the order of shortest expiry deadline\u000a\u0009\u0009\u0009\u0009\u0009first.\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Note that this property has no meaning if set on a per-message basis.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The value portion of this attribute has two well-defined settings: \u000a\u0009\u0009\u0009\u0009 BestEffort (0) and Persistent (1). If set to 0, event can be\u000a\u0009\u0009\u0009\u0009treated as non-persistent and lost upon failure of the channel. At least\u000a\u0009\u0009\u0009\u0009one attempt must be made to transmit the event to each registered\u000a\u0009\u0009\u0009\u0009consumer, but in the case of a failure to send to any consumer, no\u000a\u0009\u0009\u0009\u0009further action need be taken. If set to 1, channel should make the\u000a\u0009\u0009\u0009\u0009event persistent, and attempt to retransmit upon channel recovery\u000a\u0009\u0009\u0009\u0009from failure. This setting only has meaning when\u000a\u0009\u0009\u0009\u0009ConnectionReliability is also set to 1, in which the combination\u000a\u0009\u0009\u0009\u0009essentially means guaranteed delivery.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Connection reliability takes on the same enumerated values as EventReliability.\u000a\u0009\u0009\u0009\u0009This property defines whether the connection to the Notification Service between\u000a\u0009\u0009\u0009\u0009consumers and suppliers is persistent.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The event service does not define the order in which events are delivered to a\u000a\u0009\u0009\u0009\u0009consumer. One way to be explicit is to allow delivery to be based on the priority of an\u000a\u0009\u0009\u0009\u0009event. Priority is represented as a short value, where -32,767 is the lowest priority and\u000a\u0009\u0009\u0009\u000932,767 the highest. The default priority for all events is 0. By default, the notification\u000a\u0009\u0009\u0009\u0009channel will attempt to deliver messages to consumers in priority order.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Timeout, a TimeBase::TimeT encoded value, states a relative expiry time (e.g., 10\u000a\u0009\u0009\u0009\u0009minutes from now), after which the event can be discarded. It is possible for a\u000a\u0009\u0009\u0009\u0009consumer to override the value associated with this property through the use of\u000a\u0009\u0009\u0009\u0009mapping filters. Note that the time value\u000a\u0009\u0009\u0009\u0009associated with the Timeout QoS property is viewed as relative to the time when the\u000a\u0009\u0009\u0009\u0009channel (i.e., the receiving proxy consumer) first received the event.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009This QoS property sets the policy used by a given proxy to order the events it has\u000a\u0009\u0009\u0009\u0009buffered for delivery (either to another proxy or a consumer). Constant values to\u000a\u0009\u0009\u0009\u0009represent the following settings are defined:\u000a\u0009\u0009\u0009\u0009* \u0009AnyOrder - Any ordering policy is permitted.\u000a\u0009\u0009\u0009\u0009* \u0009FifoOrder - Events should be delivered in the order of their arrival.\u000a\u0009\u0009\u0009\u0009* \u0009PriorityOrder - Events should be buffered in priority order, such that higher priority\u000a\u0009\u0009\u0009\u0009\u0009events will be delivered before lower priority events.\u000a\u0009\u0009\u0009\u0009* DeadlineOrder - Events should be buffered in the order of shortest expiry deadline\u000a\u0009\u0009\u0009\u0009\u0009first, such that events that are destined to timeout soonest should be delivered first.\u000a\u000a\u0009\u0009\u0009\u0009Note that this property has no meaning if set on a per-message basis.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009QoS property is defined which has an associated boolean value, indicating \u000a\u0009\u0009\u0009\u0009\u0009whether or not the setting of StartTime on a per-message basis is supported.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009QoS property is defined that has an associated boolean value, indicating whether \u000a\u0009\u0009\u0009\u0009or not the setting of StopTime on a per-message basis is supported.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009An administrative property can be set on the channel to bound the maximum number of\u000a\u0009\u0009\u0009\u0009events a given channel is allowed to queue at any given point in time. Note, however,\u000a\u0009\u0009\u0009\u0009that a single badly behaved consumer could result in the channel holding the maximum\u000a\u0009\u0009\u0009\u0009number of events it is allowed to queue for an extended period of time, preventing\u000a\u0009\u0009\u0009\u0009further event communication through the channel. Thus, the\u000a\u0009\u0009\u0009\u0009MaximumEventsPerConsumer property helps to avoid this situation by bounding the\u000a\u0009\u0009\u0009\u0009maximum number of events the channel will queue on behalf of a given consumer. If\u000a\u0009\u0009\u0009\u0009set only on a per-channel basis, the value of this property applies to all consumers\u000a\u0009\u0009\u0009\u0009connected to the channel. If set on a per-ConsumerAdmin basis, this property applies\u000a\u0009\u0009\u0009\u0009to all consumers connected to proxy suppliers created by that ConsumerAdmin. If set\u000a\u0009\u0009\u0009\u0009on a per-proxy supplier basis, this property applies to the consumer connected to the\u000a\u0009\u0009\u0009\u0009given proxy supplier. Note that setting this property on a SupplierAdmin or proxy\u000a\u0009\u0009\u0009\u0009consumer has no meaning. Also note that the default setting of this property is 0,\u000a\u0009\u0009\u0009\u0009meaning that the proxy imposes no limits on the maximum number of events that may\u000a\u0009\u0009\u0009\u0009be queued for its consumer.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u000a') +INSERT INTO SCHEMAS VALUES(166,'urn:schemas-cosylab-com:BulkDataSender:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(167,'urn:schemas-cosylab-com:AcsAlarmSystem:1.0',0,'\u000a\u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm definitions\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to create\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to update\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to remove\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm definition\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm source definition\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm category definition\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER source definitions\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to create\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to update\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to remove\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER category definitions\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to create\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to update\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to remove\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS visual fields\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009The system type name\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009The system identification\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009The system fault description\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009binary/instant FS\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS cause description\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS action to be taken\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS consequence description\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS priority\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS responsible person CERN identifier\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS piquet GSM number\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS help information URL\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS source name\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS location\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS piquet Email address\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009category description\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009source description\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009source backup timeout\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009source responsible person CERN id\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009building number\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009floor number\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009room number\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009building mnemonic\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009FS position\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER reduction relationship definitions\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009parent FS\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009child FS\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER mask definitions\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009the accelerator mode\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm machine mode mask definition\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm maintenance mask definition\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER reduction relationship link\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm definition list\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER category definitions list\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm source definitions list\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm mask definitions list\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm reduction relationship definitions list\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm-category link definitions\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to create\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009definitions to remove\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm-category link definition\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009the category\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009the fault state\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009LASER alarm-category link definitions list\u000a\u0009\u0009\u000a\u0009\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(168,'urn:schemas-cosylab-com:PowerSupply:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(169,'urn:schemas-cosylab-com:acsalarm-categories:1.0',0,'\u000a\u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u000a') +INSERT INTO SCHEMAS VALUES(170,'urn:schemas-cosylab-com:Channels:1.0',0,'\u000a\u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009Schema describing an individual domain mapping to a particular event service. When creating subscribers or suppliers for an NC, the API allows the optional specification of an NC domain, which will then allocate the NC to a notify service based on this mapping. Specifying the NC domain through the API as opposed to doing it in the NC''s CDB description allows mapping of "dynamic" NCs to notify services, whose names are not known at deployment time. This may be the case for NCs created by 3rd party software such as the alarm system.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the domain.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the notification service, as registered into a naming service.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a \u000a \u000a This is a sequence of domain mappings.\u000a \u000a \u000a \u000a \u000a \u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009Schema describing an individual channel mapping to a particular event service.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the channels, wildchars are allowed.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Name of the notification service, as registered into a naming service.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a \u000a \u000a This is a sequence of domain mappings.\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a\u0009\u0009\u000a\u0009\u0009\u0009This is an element defining domain and channel mapping to particular event service.\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009Name of the default notification service, used if not mapping criteria matches.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u000a \u000a \u000a This is an element defining notification channels.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(171,'urn:schemas-cosylab-com:CLOCK:1.0',0,'\u000a\u000a\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(172,'urn:schemas-cosylab-com:CDB:1.0',0,'\u000a\u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(173,'urn:schemas-cosylab-com:BulkDataDistributer:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u0009\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(174,'urn:schemas-cosylab-com:ArchiveMasterComponent:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(175,'urn:schemas-cosylab-com:BulkDataReceiver:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a\u0009\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(176,'urn:schemas-cosylab-com:Component:1.0',0,'\u000a\u000a \u000a \u000a This schema file describes ACS CDB \u000aentries to specify Components to be instantiated. \u000aIt is used to place a component in its own XML \u000afile in the directory hierarchy of the ACS CDB based on files. \u000aFor more details, in particular with respect to the \u000avarious option to describe Components configuration, \u000asee the ACS CDB documentation and the FAQ \u000aFAQHierarchicalComponentsAndCDBStructure in the ACS Wiki.\u000a \u000a \u000a \u000a Specification for a Component to be instantiated in the system.\u000a \u000a \u000a \u000a \u000a See the description of the identical element in Components.xsd\u000a \u000a \u000a \u000a \u000a \u000a Name of the component being defined. The hierarchical name of the component can be build using the / separator or nodes hierarchy in the XML file. The hierarchical name of a component must be unituqe in the system.\u000a \u000a \u000a \u000a \u000a Code with the implementation of the Component. What code means depends on the implementation language: in CPP it is the name of a Dynamically Linked Library (DLL) containing the implementation, in Java it is the name of a class ocntaining the implementation and in Python it is the name of a Python module.\u000a \u000a \u000a \u000a \u000a This is the complete IDL specification for the interface implemented by the component. For example: IDL:alma/TestDevice:1.0\u000a \u000a \u000a \u000a \u000a This is the name of the Container where the component will be instantiated on request.\u000a \u000a \u000a \u000a \u000a The programming language the component is implemented in.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a ''true'' if the Component shall be the default Component for the specified IDL interface. ACS allows to ask for a component just by the IDL interface. With such a request the Manager will look for a component marked as default and declaring to implement the requested interfaces.\u000a \u000a \u000a \u000a \u000a ''true'' if the component has to be started automatically whenever its container become alive. This is a ''Component centric'' way to specify autostrart components. Another alternative way, more "Manager-centric'' is to list the component by name in the startup section of the Manager CDB.\u000a \u000a \u000a \u000a \u000a Time in seconds the Manager should wait to deactivate a Component after all clients have released it. If the time is bigger than 0, the Manager will wait the specified number of seconds, giving therefore the system another chance to request again the component before it is de-activated, avoiding activation/deactivation that would make the system oscillate beween activating and deactivating components. A value = 0 means that the Manager should not wait and deactivate the Component immediately. This is the default and is backward compatible. A value lowed than 0 means that the Component will never be de-activated after the first activation. This implements the concept of immortal component,\u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(177,'urn:schemas-cosylab-com:acsalarm-alarmservice:1.0',0,'\u000a\u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009Global configuration properties for the Alarm\u000a\u0009\u0009\u0009\u0009System\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(178,'urn:schemas-cosylab-com:RampedPowerSupply:1.0',0,'\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a \u000a \u000a \u000a \u000a\u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(179,'urn:schemas-cosylab-com:HierarchicalComponent:1.0',0,'\u000a\u000a\u000a\u000a \u000a This schema file allows to specify in a single CDB file a whole hierarchy of Components. \u000aThis structure gives an advantage when we are \u000adealing with true hierarchical component that must be deployed always \u000atogether.\u000aIn this way one single file is sufficient to \u000adescribe the deployment of the whole hierarchy. \u000aFor more details, in particular with respect to the various \u000aoption to describe Components configuration, \u000asee the ACS CDB documentation and the \u000aFAQ FAQHierarchicalComponentsAndCDBStructure in the ACS Wiki.\u000a \u000a \u000a \u000a \u000a Specification for a Component to be instantiated at the in the system. This definitionis identical to the one in Component.xsd. Look for the documentation there. TODO Probably we should look for a way to factorize the two definitions in a single place\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a The programming language the component is implemented in.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a This element describes the hierarchy of Components, with a root Component and a set of children. The name identifies the root of the hierarchy and the configuration is specified by the usual attributes. Then there is a sequence of ComponentInfo sub-elements that descrive the children.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a The programming language the component is implemented in.\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a') +INSERT INTO SCHEMAS VALUES(180,'urn:schemas-cosylab-com:acsalarm-fault-family:1.0',0,'\u000a\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Fixed to false after rewrite of schema. The meaning of this flag should be understood later...\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u000a') +INSERT INTO SCHEMAS VALUES(181,'urn:schemas-cosylab-com:MOUNT:1.0',0,'\u000a\u000a\u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a \u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(182,'urn:schemas-cosylab-com:FILTERWHEEL:1.0',0,'\u000a\u000a\u000a \u000a \u000a\u000a \u000a \u0009\u0009\u000a\u0009 \u0009\u000a \u0009\u0009 \u000a \u000a\u000a \u000a \u000a \u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u000a\u0009\u0009\u0009\u000a\u000a\u0009\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a \u000a \u000a\u000a\u0009\u000a\u000a\u000a\u000a') +INSERT INTO SCHEMAS VALUES(183,'urn:schemas-cosylab-com:Manager:1.0',0,'\u000a\u000a\u000a\u000a \u000a\u0009\u000a\u0009\u0009This schema file describes the configuration for a Manager. \u000aThere might be slight differences in the meaning of some attributes \u000adepending on the specific implementation of the Manager, \u000ain particular depending on the implementation language. \u000aSee also the documentation of the specific implementation of \u000aManager for a list of supported and un-supported \u000aconfiguration parameters.\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009This is a list of components to be activated automatically by the Manager as soon as their Container becomes available. This is a ''Manager centric'' way to specify autostrart components. Another alternative way, more "Component-centric'' is to set true the Autostrart attribute in the specification of the single component.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009This is a list of names that must be handled by the Manager as services. When a request for a Component with this name is given, the maneger will try first to see if there is already a service with that name registered in the Naming Service. Only if it fails it will treat it as a real component. If NCs should be accessed as service components, the full name including NC domain and ''.channels'' suffix (naming service kind) must be given, e.g. ''LoggingChannel@LOGGING.channels'', or ''MyChannel@DEFAULTDOMAIN.channels''.\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009\u0009This is a list of host addresses (names) where service daemons are running. Manager will provide its reference to all daemons in the list; this will give daemons access to all other services in the system (e.g. CDB).\u000a\u0009\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u000a \u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009Standard timeout in seconds for remote (CORBA) calls. Every call will timeout after this period of time, ensuring protection from deadlock. Notice that ACS QoS features can be used to trim specific calls.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The Manager pings periodically clients to check they are healthy. This is an heartbeat checking. The time interval for the heartbeat check is specified here in seconds.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The Manager pings periodically administrator clients to check they are healthy. This is an heartbeat checking. The time interval for the heartbeat check is specified here in seconds.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009The Manager pings periodically all containers to check if they are healthy. The time interval for this heartbeat check is specified here in seconds, as a default for all containers. It can be overridden for a specific container using the optional attribute Container.PingInterval\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u0009\u0009This is the number of threads allocate to the CORBA infrastructure for the handling of concurrent invocations.\u000a\u0009\u0009\u0009\u000a\u0009\u0009\u000a\u0009\u000a\u000a') +INSERT INTO LOGGINGCONFIG VALUES(0,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(1,2,2,'Log',0,2,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(2,2,2,'Log',10,2,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(3,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(4,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(5,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(6,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(7,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(8,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(9,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(10,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(11,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(12,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(13,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(14,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(15,2,2,'Log',100,10,10,1000,-1) +INSERT INTO LOGGINGCONFIG VALUES(16,2,2,'Log',100,10,10,1000,-1) +INSERT INTO NAMEDLOGGERCONFIG VALUES(0,2,'jacorb@CORR/CCC/javaContainer',5,5) +INSERT INTO NAMEDLOGGERCONFIG VALUES(1,2,'hibernate@CORR/CCC/javaContainer',4,4) +INSERT INTO NAMEDLOGGERCONFIG VALUES(2,2,'hibernateSQL@CORR/CCC/javaContainer',4,4) +INSERT INTO MANAGER VALUES(0,0,0,'','Log,LogFactory,NotifyEventChannelFactory,ArchivingChannel,LoggingChannel,InterfaceRepository,CDB,ACSLogSvc,PDB','',50,60,45,30,10) +INSERT INTO CONTAINER VALUES(0,'cppContainer','CORR/CCC',0,1,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,5,10,20,NULL,TRUE,'baci,acscomponent,xmlentity') +INSERT INTO CONTAINER VALUES(1,'javaContainer','CORR/CCC',0,2,'java',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,5,10,180,NULL,FALSE,'baci') +INSERT INTO CONTAINER VALUES(2,'cppContainer','CONTROL/ACC',0,3,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'baci,bulkDataNT,bulkDataNTSender,bulkDataNTReceiver,bulkDataNTSenderImpl') +INSERT INTO CONTAINER VALUES(3,'javaContainer','CONTROL/ACC',0,4,'java',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,5,10,300,NULL,TRUE,'') +INSERT INTO CONTAINER VALUES(4,'pythonContainer','CONTROL/ACC',0,5,'py',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,5,10,300,NULL,TRUE,'') +INSERT INTO CONTAINER VALUES(5,'cppContainer','CONTROL/DV01',0,6,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'baci') +INSERT INTO CONTAINER VALUES(6,'cppContainer','CONTROL/CM01',0,7,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'baci') +INSERT INTO CONTAINER VALUES(7,'cppContainer','CONTROL/PM01',0,8,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'baci') +INSERT INTO CONTAINER VALUES(8,'cppContainer','CONTROL/DA41',0,9,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'baci') +INSERT INTO CONTAINER VALUES(9,'cppContainer','CONTROL/CentralLO',0,10,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'baci') +INSERT INTO CONTAINER VALUES(10,'cppContainer','CONTROL/DV02',0,11,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'baci') +INSERT INTO CONTAINER VALUES(11,'cppContainer','CONTROL/DA48',0,12,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'baci') +INSERT INTO CONTAINER VALUES(12,'cppContainer','ARCHIVE/ACC',0,13,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,5,10,30,NULL,TRUE,'baci,bulkDataNT,bulkDataNTSender,bulkDataNTReceiver,bulkDataNTSenderImpl') +INSERT INTO CONTAINER VALUES(13,'cppContainer','ACC',0,14,'cpp',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,10,10,120,NULL,TRUE,'') +INSERT INTO CONTAINER VALUES(14,'javaContainer','ACC',0,15,'java',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,5,10,300,NULL,TRUE,'') +INSERT INTO CONTAINER VALUES(15,'masterContainer','ACC',0,16,'java',FALSE,NULL,NULL,NULL,NULL,NULL,FALSE,-1,5,10,300,NULL,TRUE,'') +INSERT INTO COMPONENT VALUES(0,0,'*',0,3,'java',FALSE,'alma.Control.Array.AutomaticArrayImpl2Creator','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(1,1,'*',0,3,'java',FALSE,'alma.Control.Array.ManualArrayImpl2Creator','//',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(2,2,'*',0,3,'java',FALSE,'alma.Control.arrayInterfaces.ArrayControllerHelper','///',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(3,3,'*',0,3,'java',FALSE,'alma.Control.arrayInterfaces.ArrayMonitorHelper','////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(4,4,'*',0,2,'cpp',FALSE,'CalcSkyDelayServer','/////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(5,5,'*',0,2,'cpp',FALSE,'dopplerServerImpl','//////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(6,6,'*',0,NULL,'cpp',FALSE,'MountController','///////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(7,7,'*',0,NULL,'cpp',FALSE,'AntLOController','////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(8,8,'*',0,NULL,'cpp',FALSE,'TowerHolography','/////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(9,9,'*',0,NULL,'cpp',FALSE,'TowerHolography7m','//////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(10,10,'*',0,NULL,'cpp',FALSE,'OpticalPointing','///////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(11,11,'*',0,NULL,'cpp',FALSE,'AntInterferometryController','////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(12,12,'*',0,NULL,'cpp',FALSE,'TotalPowerImpl','/////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(13,13,'*',0,2,'cpp',FALSE,'TotPowerProc2','//////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(14,14,'*',0,3,'java',FALSE,'alma.Control.antennaInterfaces.AntennaControllerHelper','///////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(15,15,'*',0,3,'java',FALSE,'alma.Control.antennaInterfaces.AntennaMonitorHelper','////////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(16,16,'*',0,4,'py',FALSE,'ScriptImpl.ScriptExecutor','/////////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(17,17,'ARCHIVE_IDENTIFIER',0,14,'java',FALSE,'alma.archive.helpers.IdentifierHelper','/',FALSE,TRUE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(18,18,'ARCHIVE_CONNECTION',0,14,'java',FALSE,'alma.archive.helpers.ArchiveConnectionHelper','/',FALSE,TRUE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(19,19,'ARCHIVE_MONITORSTORE',0,14,'java',FALSE,'alma.archive.monitorstream.MonitorStreamHelper','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(20,20,'ARCHIVE_BULKSTORE',0,14,'java',FALSE,'alma.archive.bulkstore.BulkStoreHelper','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(21,21,'*',0,4,'py',FALSE,'Acssim.Servants.Simulator','//////////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(22,22,'SIMULATOR',0,4,'py',FALSE,'Acssim.SimServerImpl.SimServer','/',FALSE,TRUE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(23,23,'ACSEVENTADMIN',0,4,'py',FALSE,'acsncImpl.ACSEventAdmin','/',FALSE,TRUE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(24,24,'EXEC_OPERATOR',0,14,'java',FALSE,'alma.exec.OperatorImpl.OperatorHelper','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(25,25,'*',0,14,'java',FALSE,'alma.scheduling.AlmaScheduling.Interactive_PI_to_SchedulingHelper','///////////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(26,26,'*',0,4,'py',FALSE,'Acssim.Servants.Simulator','////////////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(27,27,'*',0,3,'java',FALSE,'alma.Control.ExecState.ExecutionStateImplCreator','/////////////////////',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(28,28,'AlarmService',0,14,'java',FALSE,'alma.alarmsystem.AlarmServiceImpl.AlarmServiceHelper','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(29,29,'*',0,14,'java',FALSE,'alma.tmcdb.access.compimpl.TmcdbStandaloneComponentImplHelper','//////////////////////',FALSE,TRUE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(30,30,'TPPTest',0,3,'java',FALSE,'alma.Control.TotalPowerProcessorTest.TPPTestHelper','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(31,31,'ArrayStatus',0,4,'py',FALSE,'Acssim.Servants.Simulator','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(32,32,'SAMP_MANAGER',0,13,'cpp',FALSE,'acssamp','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(33,33,'TMCDB',0,3,'java',FALSE,'alma.TMCDBComponentImpl.TMCDBSimComponentImplCreator','/',FALSE,TRUE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(34,34,'CONTROL_MASTER_COMP',0,15,'java',FALSE,'alma.Control.Master.ControlMasterComponent2Creator','/',FALSE,FALSE,TRUE,FALSE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:MasterComponent:1.0') +INSERT INTO COMPONENT VALUES(35,35,'ARCHIVE_MASTER_COMP',0,15,'java',FALSE,'alma.archive.manager.ArchiveSubsystemMasterHelper','/',FALSE,TRUE,TRUE,FALSE,0,-1,-1,'\u000a\u000a \u000a \u000a <_ Name="connection1" distributor="CORRELATOR_BULKDATA_DISTRIBUTOR_1" receiver="ARCHIVE_CORR_RECEIVER_1">\u000a <_ Name="connection2" distributor="CORRELATOR_BULKDATA_DISTRIBUTOR_2" receiver="ARCHIVE_CORR_RECEIVER_2">\u000a <_ Name="connection3" distributor="TOTALPOWER_BULKDATA_DISTRIBUTOR_1" receiver="ARCHIVE_TP_RECEIVER_1">\u000a <_ Name="connection4" distributor="TOTALPOWER_BULKDATA_DISTRIBUTOR_2" receiver="ARCHIVE_TP_RECEIVER_2">\u000a \u000a\u000a','urn:schemas-cosylab-com:ArchiveMasterComponent:1.0') +INSERT INTO COMPONENT VALUES(36,36,'DA48',0,11,'cpp',FALSE,'antennaSim','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(37,36,'DV02',0,10,'cpp',FALSE,'antennaSim','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(38,37,'AOSTiming',0,8,'cpp',FALSE,'AOSTimingSim','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(39,38,'CentralLO',0,9,'cpp',FALSE,'CentralLOSim','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(40,36,'DA41',0,8,'cpp',FALSE,'antennaSim','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(41,39,'ObservingModeTester',0,3,'java',FALSE,'alma.Control.ObservingModes.ObservingModeTesterImplHelper','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(42,40,'MASTER',0,3,'java',FALSE,'alma.Control.Master.MasterImpl2Helper','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(43,36,'PM01',0,7,'cpp',FALSE,'antennaSim','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(44,36,'CM01',0,6,'cpp',FALSE,'antennaSim','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(45,36,'DV01',0,5,'cpp',FALSE,'antenna','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(46,41,'WeatherStationController',0,8,'cpp',FALSE,'WeatherStationController','CONTROL',FALSE,TRUE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(47,42,'Operator',0,3,'java',FALSE,'alma.Control.ControlOperatorImpl.ControlOperatorIFHelper','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(48,43,'AmbSocketServer',0,4,'py',FALSE,'ControlSocketServerImpl.AmbSocketServer','CONTROL',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(49,44,'OBSERVATION_CONTROL',0,0,'cpp',FALSE,'ObservationControl','CORR',FALSE,TRUE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:ObservationControl:1.0') +INSERT INTO COMPONENT VALUES(50,45,'MONITOR_COLLECTOR',0,0,'cpp',FALSE,'MonitorCollectorMock','CORR',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(51,46,'CAN_MNGR',0,0,'cpp',FALSE,'CorrCanMngr','CORR',FALSE,TRUE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:CorrCanMngr:1.0') +INSERT INTO COMPONENT VALUES(52,47,'DIAGNOSTICS',0,0,'cpp',FALSE,'CorrDiagnostics','CORR',FALSE,TRUE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:CorrDiagnostics:1.0') +INSERT INTO COMPONENT VALUES(53,48,'OBSERVATION_QUERY',0,0,'cpp',FALSE,'ObservationQuery','CORR',FALSE,TRUE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:ObservationQuery:1.0') +INSERT INTO COMPONENT VALUES(54,49,'CCC_MONITOR',0,0,'cpp',FALSE,'CCC_Monitor','CORR',FALSE,TRUE,TRUE,FALSE,0,-1,-1,'\u000a\u000a\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u0009\u000a\u000a\u0009\u000a\u0009\u000a\u000a','urn:schemas-cosylab-com:CCC_Monitor:1.0') +INSERT INTO COMPONENT VALUES(55,50,'CCC_SIM',0,0,'cpp',FALSE,'CCCSimImpl','CORR',FALSE,TRUE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(56,51,'CONFIGURATION_VALIDATOR',0,1,'java',FALSE,'alma.Correlator.ConfigurationValidatorImpl.ConfigurationValidatorHelper','CORR',FALSE,TRUE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:ConfigurationValidator:1.0') +INSERT INTO COMPONENT VALUES(57,52,'DRXBBpr2',0,11,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(58,52,'DRXBBpr3',0,11,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(59,53,'PSA',0,11,'cpp',FALSE,'PSACompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSA:1.0') +INSERT INTO COMPONENT VALUES(60,54,'HoloDSP',0,11,'cpp',FALSE,'HOLODSPCompSim','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u0009

\u000a','urn:schemas-cosylab-com:HOLODSP:1.0') +INSERT INTO COMPONENT VALUES(61,45,'MONITOR_COLLECTOR',0,11,'cpp',FALSE,'MonitorCollectorMock','CONTROL/DA48',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(62,55,'NUTATOR',0,11,'cpp',FALSE,'NUTATORCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:NUTATORBase:1.0') +INSERT INTO COMPONENT VALUES(63,56,'Mount',0,11,'cpp',FALSE,'MountAEMCompSim','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:MountAEMBase:1.0') +INSERT INTO COMPONENT VALUES(64,52,'DRXBBpr0',0,11,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(65,57,'PSSAS',0,11,'cpp',FALSE,'PSSASCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSSAS:1.0') +INSERT INTO COMPONENT VALUES(66,58,'ArrayTime',0,11,'cpp',FALSE,'ArrayTime','CONTROL/DA48',FALSE,FALSE,TRUE,FALSE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:ArrayTime:1.0') +INSERT INTO COMPONENT VALUES(67,59,'DTXBBpr0',0,11,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(68,60,'SAS',0,11,'cpp',FALSE,'SASCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:SASBase:1.0') +INSERT INTO COMPONENT VALUES(69,61,'CMPR',0,11,'cpp',FALSE,'CMPRCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CMPRBase:1.0') +INSERT INTO COMPONENT VALUES(70,62,'WVR',0,11,'cpp',FALSE,'WVRCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WVRBase:1.0') +INSERT INTO COMPONENT VALUES(71,63,'IFProc0',0,11,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(72,64,'FrontEnd',0,11,'cpp',FALSE,'FrontEndImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a','urn:schemas-cosylab-com:FrontEnd:1.0') +INSERT INTO COMPONENT VALUES(73,59,'DTXBBpr3',0,11,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(74,65,'DGCK',0,11,'cpp',FALSE,'DGCKCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DGCKBase:1.0') +INSERT INTO COMPONENT VALUES(75,66,'LO2BBpr1',0,11,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(76,66,'LO2BBpr2',0,11,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(77,66,'LO2BBpr0',0,11,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(78,67,'FOADBBpr0',0,11,'cpp',FALSE,'FOADCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FOADBase:1.0') +INSERT INTO COMPONENT VALUES(79,59,'DTXBBpr2',0,11,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(80,68,'OpticalTelescope',0,11,'cpp',FALSE,'OpticalTelescopeImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:OpticalTelescopeBase:1.0') +INSERT INTO COMPONENT VALUES(81,69,'LORR',0,11,'cpp',FALSE,'LORRCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LORRBase:1.0') +INSERT INTO COMPONENT VALUES(82,70,'HoloRx',0,11,'cpp',FALSE,'HOLORXCompSim','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:HOLORX:1.0') +INSERT INTO COMPONENT VALUES(83,71,'PSD',0,11,'cpp',FALSE,'PSDCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSD:1.0') +INSERT INTO COMPONENT VALUES(84,72,'ACD',0,11,'cpp',FALSE,'ACDCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(85,66,'LO2BBpr3',0,11,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(86,59,'DTXBBpr1',0,11,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(87,52,'DRXBBpr1',0,11,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(88,73,'LLC',0,11,'cpp',FALSE,'LLCCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LLCBase:1.0') +INSERT INTO COMPONENT VALUES(89,74,'AmbManager',0,11,'cpp',FALSE,'ambManagerImpl','CONTROL/DA48',FALSE,FALSE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:AmbManager:1.0') +INSERT INTO COMPONENT VALUES(90,67,'FOADBBpr1',0,11,'cpp',FALSE,'FOADCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FOADBase:1.0') +INSERT INTO COMPONENT VALUES(91,75,'PSLLC',0,11,'cpp',FALSE,'PSLLCCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(92,76,'FLOOG',0,11,'cpp',FALSE,'FLOOGCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FLOOGBase:1.0') +INSERT INTO COMPONENT VALUES(93,63,'IFProc1',0,11,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/DA48',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(94,52,'DRXBBpr2',0,10,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(95,52,'DRXBBpr3',0,10,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(96,53,'PSA',0,10,'cpp',FALSE,'PSACompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSA:1.0') +INSERT INTO COMPONENT VALUES(97,45,'MONITOR_COLLECTOR',0,10,'cpp',FALSE,'MonitorCollectorMock','CONTROL/DV02',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(98,77,'Mount',0,10,'cpp',FALSE,'MountVertexCompSim','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:MountVertexBase:1.0') +INSERT INTO COMPONENT VALUES(99,52,'DRXBBpr0',0,10,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(100,59,'DTXBBpr0',0,10,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(101,60,'SAS',0,10,'cpp',FALSE,'SASCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:SASBase:1.0') +INSERT INTO COMPONENT VALUES(102,78,'CMPR',0,10,'cpp',FALSE,'CMPRImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CMPRBase:1.0') +INSERT INTO COMPONENT VALUES(103,62,'WVR',0,10,'cpp',FALSE,'WVRCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WVRBase:1.0') +INSERT INTO COMPONENT VALUES(104,79,'IFProc0',0,10,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(105,64,'FrontEnd',0,10,'cpp',FALSE,'FrontEndImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a','urn:schemas-cosylab-com:FrontEnd:1.0') +INSERT INTO COMPONENT VALUES(106,59,'DTXBBpr3',0,10,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(107,65,'DGCK',0,10,'cpp',FALSE,'DGCKCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DGCKBase:1.0') +INSERT INTO COMPONENT VALUES(108,80,'LO2BBpr1',0,10,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(109,80,'LO2BBpr2',0,10,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(110,80,'LO2BBpr0',0,10,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(111,59,'DTXBBpr2',0,10,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(112,69,'LORR',0,10,'cpp',FALSE,'LORRCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LORRBase:1.0') +INSERT INTO COMPONENT VALUES(113,71,'PSD',0,10,'cpp',FALSE,'PSDCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSD:1.0') +INSERT INTO COMPONENT VALUES(114,72,'ACD',0,10,'cpp',FALSE,'ACDCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(115,80,'LO2BBpr3',0,10,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(116,59,'DTXBBpr1',0,10,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(117,52,'DRXBBpr1',0,10,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(118,73,'LLC',0,10,'cpp',FALSE,'LLCCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LLCBase:1.0') +INSERT INTO COMPONENT VALUES(119,76,'FLOOG',0,10,'cpp',FALSE,'FLOOGCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FLOOGBase:1.0') +INSERT INTO COMPONENT VALUES(120,79,'IFProc1',0,10,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/DV02',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(121,45,'MONITOR_COLLECTOR',0,8,'cpp',FALSE,'MonitorCollectorMock','CONTROL/AOSTiming',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(122,81,'GPS',0,8,'cpp',FALSE,'GPSImpl','CONTROL/AOSTiming',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:GPS:1.0') +INSERT INTO COMPONENT VALUES(123,82,'TimeSource',0,8,'cpp',FALSE,'TimeSource','CONTROL/AOSTiming',FALSE,TRUE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:TimeSource:1.0') +INSERT INTO COMPONENT VALUES(124,83,'PSCR',0,8,'cpp',FALSE,'PSCRCompSimImpl','CONTROL/AOSTiming',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSCRBase:1.0') +INSERT INTO COMPONENT VALUES(125,84,'CRD',0,8,'cpp',FALSE,'CRDCompSimImpl','CONTROL/AOSTiming',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CRDBase:1.0') +INSERT INTO COMPONENT VALUES(126,85,'MasterClock',0,8,'cpp',FALSE,'MasterClockSim','CONTROL/AOSTiming',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(127,75,'PSLLC6',0,9,'cpp',FALSE,'PSLLCCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(128,45,'MONITOR_COLLECTOR',0,9,'cpp',FALSE,'MonitorCollectorMock','CONTROL/CentralLO',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(129,86,'ML',0,9,'cpp',FALSE,'MLCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:MLBase:1.0') +INSERT INTO COMPONENT VALUES(130,87,'PSSAS1',0,9,'cpp',FALSE,'PSSASCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSSAS:1.0') +INSERT INTO COMPONENT VALUES(131,88,'PhotonicReference3',0,9,'cpp',FALSE,'PhotonicReference','CONTROL/CentralLO',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(132,75,'PSLLC3',0,9,'cpp',FALSE,'PSLLCCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(133,75,'PSLLC4',0,9,'cpp',FALSE,'PSLLCCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(134,88,'PhotonicReference2',0,9,'cpp',FALSE,'PhotonicReference','CONTROL/CentralLO',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(135,88,'PhotonicReference1',0,9,'cpp',FALSE,'PhotonicReference','CONTROL/CentralLO',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(136,75,'PSLLC2',0,9,'cpp',FALSE,'PSLLCCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(137,87,'PSSAS2',0,9,'cpp',FALSE,'PSSASCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSSAS:1.0') +INSERT INTO COMPONENT VALUES(138,75,'PSLLC1',0,9,'cpp',FALSE,'PSLLCCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(139,89,'MLD',0,9,'cpp',FALSE,'PDACompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PDABase:1.0') +INSERT INTO COMPONENT VALUES(140,88,'PhotonicReference5',0,9,'cpp',FALSE,'PhotonicReference','CONTROL/CentralLO',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(141,88,'PhotonicReference4',0,9,'cpp',FALSE,'PhotonicReference','CONTROL/CentralLO',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(142,88,'PhotonicReference6',0,9,'cpp',FALSE,'PhotonicReference','CONTROL/CentralLO',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(143,75,'PSLLC5',0,9,'cpp',FALSE,'PSLLCCompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(144,89,'LFRD',0,9,'cpp',FALSE,'PDACompSimImpl','CONTROL/CentralLO',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PDABase:1.0') +INSERT INTO COMPONENT VALUES(145,52,'DRXBBpr2',0,8,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(146,52,'DRXBBpr3',0,8,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(147,53,'PSA',0,8,'cpp',FALSE,'PSACompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSA:1.0') +INSERT INTO COMPONENT VALUES(148,54,'HoloDSP',0,8,'cpp',FALSE,'HOLODSPCompSim','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u0009
\u000a
','urn:schemas-cosylab-com:HOLODSP:1.0') +INSERT INTO COMPONENT VALUES(149,45,'MONITOR_COLLECTOR',0,8,'cpp',FALSE,'MonitorCollectorMock','CONTROL/DA41',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(150,55,'NUTATOR',0,8,'cpp',FALSE,'NUTATORCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:NUTATORBase:1.0') +INSERT INTO COMPONENT VALUES(151,56,'Mount',0,8,'cpp',FALSE,'MountAEMCompSim','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:MountAEMBase:1.0') +INSERT INTO COMPONENT VALUES(152,52,'DRXBBpr0',0,8,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(153,57,'PSSAS',0,8,'cpp',FALSE,'PSSASCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSSAS:1.0') +INSERT INTO COMPONENT VALUES(154,58,'ArrayTime',0,8,'cpp',FALSE,'ArrayTime','CONTROL/DA41',FALSE,FALSE,TRUE,FALSE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:ArrayTime:1.0') +INSERT INTO COMPONENT VALUES(155,59,'DTXBBpr0',0,8,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(156,60,'SAS',0,8,'cpp',FALSE,'SASCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:SASBase:1.0') +INSERT INTO COMPONENT VALUES(157,61,'CMPR',0,8,'cpp',FALSE,'CMPRCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CMPRBase:1.0') +INSERT INTO COMPONENT VALUES(158,62,'WVR',0,8,'cpp',FALSE,'WVRCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WVRBase:1.0') +INSERT INTO COMPONENT VALUES(159,63,'IFProc0',0,8,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(160,64,'FrontEnd',0,8,'cpp',FALSE,'FrontEndImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a','urn:schemas-cosylab-com:FrontEnd:1.0') +INSERT INTO COMPONENT VALUES(161,59,'DTXBBpr3',0,8,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(162,65,'DGCK',0,8,'cpp',FALSE,'DGCKCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DGCKBase:1.0') +INSERT INTO COMPONENT VALUES(163,66,'LO2BBpr1',0,8,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(164,66,'LO2BBpr2',0,8,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(165,66,'LO2BBpr0',0,8,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(166,67,'FOADBBpr0',0,8,'cpp',FALSE,'FOADCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FOADBase:1.0') +INSERT INTO COMPONENT VALUES(167,59,'DTXBBpr2',0,8,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(168,68,'OpticalTelescope',0,8,'cpp',FALSE,'OpticalTelescopeImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:OpticalTelescopeBase:1.0') +INSERT INTO COMPONENT VALUES(169,69,'LORR',0,8,'cpp',FALSE,'LORRCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LORRBase:1.0') +INSERT INTO COMPONENT VALUES(170,70,'HoloRx',0,8,'cpp',FALSE,'HOLORXCompSim','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:HOLORX:1.0') +INSERT INTO COMPONENT VALUES(171,71,'PSD',0,8,'cpp',FALSE,'PSDCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSD:1.0') +INSERT INTO COMPONENT VALUES(172,72,'ACD',0,8,'cpp',FALSE,'ACDCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(173,66,'LO2BBpr3',0,8,'cpp',FALSE,'LO2CompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(174,59,'DTXBBpr1',0,8,'cpp',FALSE,'DTXCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(175,52,'DRXBBpr1',0,8,'cpp',FALSE,'DRXCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(176,73,'LLC',0,8,'cpp',FALSE,'LLCCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LLCBase:1.0') +INSERT INTO COMPONENT VALUES(177,74,'AmbManager',0,8,'cpp',FALSE,'ambManagerImpl','CONTROL/DA41',FALSE,FALSE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:AmbManager:1.0') +INSERT INTO COMPONENT VALUES(178,67,'FOADBBpr1',0,8,'cpp',FALSE,'FOADCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FOADBase:1.0') +INSERT INTO COMPONENT VALUES(179,75,'PSLLC',0,8,'cpp',FALSE,'PSLLCCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(180,76,'FLOOG',0,8,'cpp',FALSE,'FLOOGCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FLOOGBase:1.0') +INSERT INTO COMPONENT VALUES(181,63,'IFProc1',0,8,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/DA41',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(182,52,'DRXBBpr2',0,7,'cpp',FALSE,'DRXCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(183,52,'DRXBBpr3',0,7,'cpp',FALSE,'DRXCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(184,45,'MONITOR_COLLECTOR',0,7,'cpp',FALSE,'MonitorCollectorMock','CONTROL/PM01',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(185,90,'Mount',0,7,'cpp',FALSE,'MountACACompSim','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:MountACABase:1.0') +INSERT INTO COMPONENT VALUES(186,52,'DRXBBpr0',0,7,'cpp',FALSE,'DRXCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(187,59,'DTXBBpr0',0,7,'cpp',FALSE,'DTXCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(188,60,'SAS',0,7,'cpp',FALSE,'SASCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:SASBase:1.0') +INSERT INTO COMPONENT VALUES(189,78,'CMPR',0,7,'cpp',FALSE,'CMPRImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CMPRBase:1.0') +INSERT INTO COMPONENT VALUES(190,62,'WVR',0,7,'cpp',FALSE,'WVRCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WVRBase:1.0') +INSERT INTO COMPONENT VALUES(191,79,'IFProc0',0,7,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(192,64,'FrontEnd',0,7,'cpp',FALSE,'FrontEndImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a','urn:schemas-cosylab-com:FrontEnd:1.0') +INSERT INTO COMPONENT VALUES(193,59,'DTXBBpr3',0,7,'cpp',FALSE,'DTXCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(194,65,'DGCK',0,7,'cpp',FALSE,'DGCKCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DGCKBase:1.0') +INSERT INTO COMPONENT VALUES(195,80,'LO2BBpr1',0,7,'cpp',FALSE,'LO2CompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(196,80,'LO2BBpr2',0,7,'cpp',FALSE,'LO2CompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(197,80,'LO2BBpr0',0,7,'cpp',FALSE,'LO2CompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(198,59,'DTXBBpr2',0,7,'cpp',FALSE,'DTXCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(199,69,'LORR',0,7,'cpp',FALSE,'LORRCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LORRBase:1.0') +INSERT INTO COMPONENT VALUES(200,72,'ACD',0,7,'cpp',FALSE,'ACDCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(201,80,'LO2BBpr3',0,7,'cpp',FALSE,'LO2CompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(202,59,'DTXBBpr1',0,7,'cpp',FALSE,'DTXCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(203,52,'DRXBBpr1',0,7,'cpp',FALSE,'DRXCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(204,73,'LLC',0,7,'cpp',FALSE,'LLCCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LLCBase:1.0') +INSERT INTO COMPONENT VALUES(205,76,'FLOOG',0,7,'cpp',FALSE,'FLOOGCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FLOOGBase:1.0') +INSERT INTO COMPONENT VALUES(206,79,'IFProc1',0,7,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/PM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(207,45,'MONITOR_COLLECTOR',0,6,'cpp',FALSE,'MonitorCollectorMock','CONTROL/CM01',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(208,91,'Mount',0,6,'cpp',FALSE,'MountA7MCompSim','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:MountA7MBase:1.0') +INSERT INTO COMPONENT VALUES(209,60,'SAS',0,6,'cpp',FALSE,'SASCompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:SASBase:1.0') +INSERT INTO COMPONENT VALUES(210,78,'CMPR',0,6,'cpp',FALSE,'CMPRImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CMPRBase:1.0') +INSERT INTO COMPONENT VALUES(211,79,'IFProc0',0,6,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(212,64,'FrontEnd',0,6,'cpp',FALSE,'FrontEndImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a','urn:schemas-cosylab-com:FrontEnd:1.0') +INSERT INTO COMPONENT VALUES(213,65,'DGCK',0,6,'cpp',FALSE,'DGCKCompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DGCKBase:1.0') +INSERT INTO COMPONENT VALUES(214,80,'LO2BBpr1',0,6,'cpp',FALSE,'LO2CompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(215,80,'LO2BBpr2',0,6,'cpp',FALSE,'LO2CompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(216,80,'LO2BBpr0',0,6,'cpp',FALSE,'LO2CompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(217,92,'HoloRx7m',0,6,'cpp',FALSE,'HoloRx7mImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u0009\u000a\u000a \u000a\u0009\u000a\u0009\u000a\u000a \u000a\u0009\u000a\u0009\u000a\u000a \u000a\u0009\u000a\u0009\u000a\u000a\u000a','urn:schemas-cosylab-com:HOLORX7M:1.0') +INSERT INTO COMPONENT VALUES(218,69,'LORR',0,6,'cpp',FALSE,'LORRCompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LORRBase:1.0') +INSERT INTO COMPONENT VALUES(219,72,'ACD',0,6,'cpp',FALSE,'ACDCompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(220,80,'LO2BBpr3',0,6,'cpp',FALSE,'LO2CompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(221,73,'LLC',0,6,'cpp',FALSE,'LLCCompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LLCBase:1.0') +INSERT INTO COMPONENT VALUES(222,76,'FLOOG',0,6,'cpp',FALSE,'FLOOGCompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FLOOGBase:1.0') +INSERT INTO COMPONENT VALUES(223,79,'IFProc1',0,6,'cpp',FALSE,'IFProcCompSimImpl','CONTROL/CM01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(224,93,'DRXBBpr2',0,5,'cpp',FALSE,'DRXImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(225,93,'DRXBBpr3',0,5,'cpp',FALSE,'DRXImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(226,94,'PSA',0,5,'cpp',FALSE,'PSAImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSA:1.0') +INSERT INTO COMPONENT VALUES(227,95,'HoloDSP',0,5,'cpp',FALSE,'HOLODSPSim','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u0009
\u000a
','urn:schemas-cosylab-com:HOLODSP:1.0') +INSERT INTO COMPONENT VALUES(228,45,'MONITOR_COLLECTOR',0,5,'cpp',FALSE,'MonitorCollectorMock','CONTROL/DV01',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(229,55,'NUTATOR',0,5,'cpp',FALSE,'NUTATORCompSimImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:NUTATORBase:1.0') +INSERT INTO COMPONENT VALUES(230,77,'Mount',0,5,'cpp',FALSE,'MountVertexCompSim','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:MountVertexBase:1.0') +INSERT INTO COMPONENT VALUES(231,93,'DRXBBpr0',0,5,'cpp',FALSE,'DRXImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(232,87,'PSSAS',0,5,'cpp',FALSE,'PSSASImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSSAS:1.0') +INSERT INTO COMPONENT VALUES(233,58,'ArrayTime',0,5,'cpp',FALSE,'ArrayTime','CONTROL/DV01',FALSE,FALSE,TRUE,FALSE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:ArrayTime:1.0') +INSERT INTO COMPONENT VALUES(234,96,'DTXBBpr0',0,5,'cpp',FALSE,'DTXImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(235,78,'CMPR',0,5,'cpp',FALSE,'CMPRImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CMPRBase:1.0') +INSERT INTO COMPONENT VALUES(236,62,'WVR',0,5,'cpp',FALSE,'WVR','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WVRBase:1.0') +INSERT INTO COMPONENT VALUES(237,79,'IFProc0',0,5,'cpp',FALSE,'IFProcImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(238,64,'FrontEnd',0,5,'cpp',FALSE,'FrontEndImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a','urn:schemas-cosylab-com:FrontEnd:1.0') +INSERT INTO COMPONENT VALUES(239,96,'DTXBBpr3',0,5,'cpp',FALSE,'DTXImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(240,65,'DGCK',0,5,'cpp',FALSE,'DGCKImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DGCKBase:1.0') +INSERT INTO COMPONENT VALUES(241,80,'LO2BBpr1',0,5,'cpp',FALSE,'LO2Impl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(242,80,'LO2BBpr2',0,5,'cpp',FALSE,'LO2Impl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(243,80,'LO2BBpr0',0,5,'cpp',FALSE,'LO2Impl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(244,96,'DTXBBpr2',0,5,'cpp',FALSE,'DTXImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(245,69,'LORR',0,5,'cpp',FALSE,'LORRCompSimImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LORRBase:1.0') +INSERT INTO COMPONENT VALUES(246,97,'HoloRx',0,5,'cpp',FALSE,'HOLORXSim','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:HOLORX:1.0') +INSERT INTO COMPONENT VALUES(247,98,'PSD',0,5,'cpp',FALSE,'PSDImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSD:1.0') +INSERT INTO COMPONENT VALUES(248,72,'ACD',0,5,'cpp',FALSE,'ACDImpl','CONTROL/DV01',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(249,80,'LO2BBpr3',0,5,'cpp',FALSE,'LO2Impl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LO2Base:1.0') +INSERT INTO COMPONENT VALUES(250,96,'DTXBBpr1',0,5,'cpp',FALSE,'DTXImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a','urn:schemas-cosylab-com:DTXBase:1.0') +INSERT INTO COMPONENT VALUES(251,93,'DRXBBpr1',0,5,'cpp',FALSE,'DRXImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:DRXBase:1.0') +INSERT INTO COMPONENT VALUES(252,99,'LLC',0,5,'cpp',FALSE,'LLCImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LLCBase:1.0') +INSERT INTO COMPONENT VALUES(253,74,'AmbManager',0,5,'cpp',FALSE,'ambManagerImpl','CONTROL/DV01',FALSE,FALSE,TRUE,FALSE,0,-1,-1,'\u000a','urn:schemas-cosylab-com:AmbManager:1.0') +INSERT INTO COMPONENT VALUES(254,100,'PSLLC',0,5,'cpp',FALSE,'PSLLCImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PSLLC:1.0') +INSERT INTO COMPONENT VALUES(255,101,'FLOOG',0,5,'cpp',FALSE,'FLOOGImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:FLOOGBase:1.0') +INSERT INTO COMPONENT VALUES(256,79,'IFProc1',0,5,'cpp',FALSE,'IFProcImpl','CONTROL/DV01',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFProcBase:1.0') +INSERT INTO COMPONENT VALUES(257,102,'WSTB1',0,2,'cpp',FALSE,'WeatherStationCompSimImpl','CONTROL/WeatherStationController',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:WeatherStation:1.0') +INSERT INTO COMPONENT VALUES(258,102,'WSTB2',0,2,'cpp',FALSE,'WeatherStationCompSimImpl','CONTROL/WeatherStationController',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:WeatherStation:1.0') +INSERT INTO COMPONENT VALUES(259,102,'WSOSF',0,2,'cpp',FALSE,'WeatherStationCompSimImpl','CONTROL/WeatherStationController',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:WeatherStation:1.0') +INSERT INTO COMPONENT VALUES(260,45,'MONITOR_COLLECTOR',0,2,'cpp',FALSE,'MonitorCollectorMock','CONTROL/ACC',FALSE,FALSE,TRUE,FALSE,0,-1,-1,NULL,NULL) +INSERT INTO COMPONENT VALUES(261,72,'ACD',0,5,'cpp',FALSE,'ACDImpl','CONTROL/DV01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ACDBase:1.0') +INSERT INTO COMPONENT VALUES(262,103,'PowerDist7',0,6,'cpp',FALSE,'PowerDist7CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist7:1.0') +INSERT INTO COMPONENT VALUES(263,104,'ColdCart7',0,6,'cpp',FALSE,'ColdCart7CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart7:1.0') +INSERT INTO COMPONENT VALUES(264,105,'IFSwitch',0,6,'cpp',FALSE,'IFSwitchCompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFSwitchBase:1.0') +INSERT INTO COMPONENT VALUES(265,106,'ColdCart3',0,6,'cpp',FALSE,'ColdCart3CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart3:1.0') +INSERT INTO COMPONENT VALUES(266,107,'WCA7',0,6,'cpp',FALSE,'WCA7CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA7:1.0') +INSERT INTO COMPONENT VALUES(267,108,'PowerDist9',0,6,'cpp',FALSE,'PowerDist9CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist9:1.0') +INSERT INTO COMPONENT VALUES(268,109,'WCA9',0,6,'cpp',FALSE,'WCA9CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA9:1.0') +INSERT INTO COMPONENT VALUES(269,110,'LPR',0,6,'cpp',FALSE,'LPRCompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LPRBase:1.0') +INSERT INTO COMPONENT VALUES(270,111,'ColdCart6',0,6,'cpp',FALSE,'ColdCart6CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart6:1.0') +INSERT INTO COMPONENT VALUES(271,112,'PowerDist6',0,6,'cpp',FALSE,'PowerDist6CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist6:1.0') +INSERT INTO COMPONENT VALUES(272,113,'ColdCart9',0,6,'cpp',FALSE,'ColdCart9CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart9:1.0') +INSERT INTO COMPONENT VALUES(273,72,'ACD',0,6,'cpp',FALSE,'ACDCompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ACDBase:1.0') +INSERT INTO COMPONENT VALUES(274,114,'PowerDist3',0,6,'cpp',FALSE,'PowerDist3CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist3:1.0') +INSERT INTO COMPONENT VALUES(275,115,'WCA6',0,6,'cpp',FALSE,'WCA6CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA6:1.0') +INSERT INTO COMPONENT VALUES(276,116,'WCA3',0,6,'cpp',FALSE,'WCA3CompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA3:1.0') +INSERT INTO COMPONENT VALUES(277,117,'Cryostat',0,6,'cpp',FALSE,'CryostatCompSimImpl','CONTROL/CM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CryostatBase:1.0') +INSERT INTO COMPONENT VALUES(278,103,'PowerDist7',0,7,'cpp',FALSE,'PowerDist7CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist7:1.0') +INSERT INTO COMPONENT VALUES(279,104,'ColdCart7',0,7,'cpp',FALSE,'ColdCart7CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart7:1.0') +INSERT INTO COMPONENT VALUES(280,105,'IFSwitch',0,7,'cpp',FALSE,'IFSwitchCompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFSwitchBase:1.0') +INSERT INTO COMPONENT VALUES(281,106,'ColdCart3',0,7,'cpp',FALSE,'ColdCart3CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart3:1.0') +INSERT INTO COMPONENT VALUES(282,107,'WCA7',0,7,'cpp',FALSE,'WCA7CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA7:1.0') +INSERT INTO COMPONENT VALUES(283,108,'PowerDist9',0,7,'cpp',FALSE,'PowerDist9CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist9:1.0') +INSERT INTO COMPONENT VALUES(284,109,'WCA9',0,7,'cpp',FALSE,'WCA9CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA9:1.0') +INSERT INTO COMPONENT VALUES(285,110,'LPR',0,7,'cpp',FALSE,'LPRCompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LPRBase:1.0') +INSERT INTO COMPONENT VALUES(286,111,'ColdCart6',0,7,'cpp',FALSE,'ColdCart6CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart6:1.0') +INSERT INTO COMPONENT VALUES(287,112,'PowerDist6',0,7,'cpp',FALSE,'PowerDist6CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist6:1.0') +INSERT INTO COMPONENT VALUES(288,113,'ColdCart9',0,7,'cpp',FALSE,'ColdCart9CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart9:1.0') +INSERT INTO COMPONENT VALUES(289,72,'ACD',0,7,'cpp',FALSE,'ACDCompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ACDBase:1.0') +INSERT INTO COMPONENT VALUES(290,114,'PowerDist3',0,7,'cpp',FALSE,'PowerDist3CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist3:1.0') +INSERT INTO COMPONENT VALUES(291,115,'WCA6',0,7,'cpp',FALSE,'WCA6CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA6:1.0') +INSERT INTO COMPONENT VALUES(292,116,'WCA3',0,7,'cpp',FALSE,'WCA3CompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA3:1.0') +INSERT INTO COMPONENT VALUES(293,117,'Cryostat',0,7,'cpp',FALSE,'CryostatCompSimImpl','CONTROL/PM01/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CryostatBase:1.0') +INSERT INTO COMPONENT VALUES(294,103,'PowerDist7',0,8,'cpp',FALSE,'PowerDist7CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist7:1.0') +INSERT INTO COMPONENT VALUES(295,104,'ColdCart7',0,8,'cpp',FALSE,'ColdCart7CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart7:1.0') +INSERT INTO COMPONENT VALUES(296,105,'IFSwitch',0,8,'cpp',FALSE,'IFSwitchCompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFSwitchBase:1.0') +INSERT INTO COMPONENT VALUES(297,118,'WCA8',0,8,'cpp',FALSE,'WCA8CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA8:1.0') +INSERT INTO COMPONENT VALUES(298,106,'ColdCart3',0,8,'cpp',FALSE,'ColdCart3CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart3:1.0') +INSERT INTO COMPONENT VALUES(299,119,'ColdCart4',0,8,'cpp',FALSE,'ColdCart4CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart4:1.0') +INSERT INTO COMPONENT VALUES(300,120,'PowerDist4',0,8,'cpp',FALSE,'PowerDist4CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist4:1.0') +INSERT INTO COMPONENT VALUES(301,107,'WCA7',0,8,'cpp',FALSE,'WCA7CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA7:1.0') +INSERT INTO COMPONENT VALUES(302,108,'PowerDist9',0,8,'cpp',FALSE,'PowerDist9CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist9:1.0') +INSERT INTO COMPONENT VALUES(303,109,'WCA9',0,8,'cpp',FALSE,'WCA9CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA9:1.0') +INSERT INTO COMPONENT VALUES(304,110,'LPR',0,8,'cpp',FALSE,'LPRCompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LPRBase:1.0') +INSERT INTO COMPONENT VALUES(305,111,'ColdCart6',0,8,'cpp',FALSE,'ColdCart6CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart6:1.0') +INSERT INTO COMPONENT VALUES(306,112,'PowerDist6',0,8,'cpp',FALSE,'PowerDist6CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist6:1.0') +INSERT INTO COMPONENT VALUES(307,113,'ColdCart9',0,8,'cpp',FALSE,'ColdCart9CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart9:1.0') +INSERT INTO COMPONENT VALUES(308,121,'PowerDist8',0,8,'cpp',FALSE,'PowerDist8CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist8:1.0') +INSERT INTO COMPONENT VALUES(309,72,'ACD',0,8,'cpp',FALSE,'ACDCompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ACDBase:1.0') +INSERT INTO COMPONENT VALUES(310,122,'WCA4',0,8,'cpp',FALSE,'WCA4CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA4:1.0') +INSERT INTO COMPONENT VALUES(311,114,'PowerDist3',0,8,'cpp',FALSE,'PowerDist3CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist3:1.0') +INSERT INTO COMPONENT VALUES(312,115,'WCA6',0,8,'cpp',FALSE,'WCA6CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA6:1.0') +INSERT INTO COMPONENT VALUES(313,123,'ColdCart8',0,8,'cpp',FALSE,'ColdCart8CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart8:1.0') +INSERT INTO COMPONENT VALUES(314,116,'WCA3',0,8,'cpp',FALSE,'WCA3CompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA3:1.0') +INSERT INTO COMPONENT VALUES(315,117,'Cryostat',0,8,'cpp',FALSE,'CryostatCompSimImpl','CONTROL/DA41/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CryostatBase:1.0') +INSERT INTO COMPONENT VALUES(316,124,'CVR',0,9,'cpp',FALSE,'CVRSimImpl','CONTROL/CentralLO/PhotonicReference3',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:CVRBase:1.0') +INSERT INTO COMPONENT VALUES(317,89,'PRD',0,9,'cpp',FALSE,'PDACompSimImpl','CONTROL/CentralLO/PhotonicReference3',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PDABase:1.0') +INSERT INTO COMPONENT VALUES(318,125,'LS',0,9,'cpp',FALSE,'LSPPCompSimImpl','CONTROL/CentralLO/PhotonicReference3',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LSPPBase:1.0') +INSERT INTO COMPONENT VALUES(319,124,'CVR',0,9,'cpp',FALSE,'CVRSimImpl','CONTROL/CentralLO/PhotonicReference2',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:CVRBase:1.0') +INSERT INTO COMPONENT VALUES(320,89,'PRD',0,9,'cpp',FALSE,'PDACompSimImpl','CONTROL/CentralLO/PhotonicReference2',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PDABase:1.0') +INSERT INTO COMPONENT VALUES(321,126,'LS',0,9,'cpp',FALSE,'LSCompSimImpl','CONTROL/CentralLO/PhotonicReference2',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LSBase:1.0') +INSERT INTO COMPONENT VALUES(322,124,'CVR',0,9,'cpp',FALSE,'CVRSimImpl','CONTROL/CentralLO/PhotonicReference1',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:CVRBase:1.0') +INSERT INTO COMPONENT VALUES(323,89,'PRD',0,9,'cpp',FALSE,'PDACompSimImpl','CONTROL/CentralLO/PhotonicReference1',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PDABase:1.0') +INSERT INTO COMPONENT VALUES(324,127,'LS',0,9,'cpp',FALSE,'LORTMCompSimImpl','CONTROL/CentralLO/PhotonicReference1',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LORTMBase:1.0') +INSERT INTO COMPONENT VALUES(325,124,'CVR',0,9,'cpp',FALSE,'CVRSimImpl','CONTROL/CentralLO/PhotonicReference5',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:CVRBase:1.0') +INSERT INTO COMPONENT VALUES(326,89,'PRD',0,9,'cpp',FALSE,'PDACompSimImpl','CONTROL/CentralLO/PhotonicReference5',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PDABase:1.0') +INSERT INTO COMPONENT VALUES(327,126,'LS',0,9,'cpp',FALSE,'LSCompSimImpl','CONTROL/CentralLO/PhotonicReference5',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LSBase:1.0') +INSERT INTO COMPONENT VALUES(328,124,'CVR',0,9,'cpp',FALSE,'CVRSimImpl','CONTROL/CentralLO/PhotonicReference4',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:CVRBase:1.0') +INSERT INTO COMPONENT VALUES(329,89,'PRD',0,9,'cpp',FALSE,'PDACompSimImpl','CONTROL/CentralLO/PhotonicReference4',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PDABase:1.0') +INSERT INTO COMPONENT VALUES(330,126,'LS',0,9,'cpp',FALSE,'LSCompSimImpl','CONTROL/CentralLO/PhotonicReference4',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LSBase:1.0') +INSERT INTO COMPONENT VALUES(331,124,'CVR',0,9,'cpp',FALSE,'CVRSimImpl','CONTROL/CentralLO/PhotonicReference6',FALSE,FALSE,TRUE,TRUE,0,-1,-1,'\u000a\u000a\u000a\u000a','urn:schemas-cosylab-com:CVRBase:1.0') +INSERT INTO COMPONENT VALUES(332,89,'PRD',0,9,'cpp',FALSE,'PDACompSimImpl','CONTROL/CentralLO/PhotonicReference6',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PDABase:1.0') +INSERT INTO COMPONENT VALUES(333,126,'LS',0,9,'cpp',FALSE,'LSCompSimImpl','CONTROL/CentralLO/PhotonicReference6',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LSBase:1.0') +INSERT INTO COMPONENT VALUES(334,103,'PowerDist7',0,10,'cpp',FALSE,'PowerDist7CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist7:1.0') +INSERT INTO COMPONENT VALUES(335,104,'ColdCart7',0,10,'cpp',FALSE,'ColdCart7CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart7:1.0') +INSERT INTO COMPONENT VALUES(336,105,'IFSwitch',0,10,'cpp',FALSE,'IFSwitchCompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFSwitchBase:1.0') +INSERT INTO COMPONENT VALUES(337,106,'ColdCart3',0,10,'cpp',FALSE,'ColdCart3CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart3:1.0') +INSERT INTO COMPONENT VALUES(338,107,'WCA7',0,10,'cpp',FALSE,'WCA7CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA7:1.0') +INSERT INTO COMPONENT VALUES(339,108,'PowerDist9',0,10,'cpp',FALSE,'PowerDist9CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist9:1.0') +INSERT INTO COMPONENT VALUES(340,109,'WCA9',0,10,'cpp',FALSE,'WCA9CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA9:1.0') +INSERT INTO COMPONENT VALUES(341,110,'LPR',0,10,'cpp',FALSE,'LPRCompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LPRBase:1.0') +INSERT INTO COMPONENT VALUES(342,111,'ColdCart6',0,10,'cpp',FALSE,'ColdCart6CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart6:1.0') +INSERT INTO COMPONENT VALUES(343,112,'PowerDist6',0,10,'cpp',FALSE,'PowerDist6CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist6:1.0') +INSERT INTO COMPONENT VALUES(344,113,'ColdCart9',0,10,'cpp',FALSE,'ColdCart9CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart9:1.0') +INSERT INTO COMPONENT VALUES(345,72,'ACD',0,10,'cpp',FALSE,'ACDCompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ACDBase:1.0') +INSERT INTO COMPONENT VALUES(346,114,'PowerDist3',0,10,'cpp',FALSE,'PowerDist3CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist3:1.0') +INSERT INTO COMPONENT VALUES(347,115,'WCA6',0,10,'cpp',FALSE,'WCA6CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA6:1.0') +INSERT INTO COMPONENT VALUES(348,116,'WCA3',0,10,'cpp',FALSE,'WCA3CompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA3:1.0') +INSERT INTO COMPONENT VALUES(349,117,'Cryostat',0,10,'cpp',FALSE,'CryostatCompSimImpl','CONTROL/DV02/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CryostatBase:1.0') +INSERT INTO COMPONENT VALUES(350,103,'PowerDist7',0,11,'cpp',FALSE,'PowerDist7CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist7:1.0') +INSERT INTO COMPONENT VALUES(351,104,'ColdCart7',0,11,'cpp',FALSE,'ColdCart7CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart7:1.0') +INSERT INTO COMPONENT VALUES(352,105,'IFSwitch',0,11,'cpp',FALSE,'IFSwitchCompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:IFSwitchBase:1.0') +INSERT INTO COMPONENT VALUES(353,118,'WCA8',0,11,'cpp',FALSE,'WCA8CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA8:1.0') +INSERT INTO COMPONENT VALUES(354,106,'ColdCart3',0,11,'cpp',FALSE,'ColdCart3CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart3:1.0') +INSERT INTO COMPONENT VALUES(355,119,'ColdCart4',0,11,'cpp',FALSE,'ColdCart4CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart4:1.0') +INSERT INTO COMPONENT VALUES(356,120,'PowerDist4',0,11,'cpp',FALSE,'PowerDist4CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist4:1.0') +INSERT INTO COMPONENT VALUES(357,107,'WCA7',0,11,'cpp',FALSE,'WCA7CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA7:1.0') +INSERT INTO COMPONENT VALUES(358,108,'PowerDist9',0,11,'cpp',FALSE,'PowerDist9CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist9:1.0') +INSERT INTO COMPONENT VALUES(359,109,'WCA9',0,11,'cpp',FALSE,'WCA9CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA9:1.0') +INSERT INTO COMPONENT VALUES(360,110,'LPR',0,11,'cpp',FALSE,'LPRCompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:LPRBase:1.0') +INSERT INTO COMPONENT VALUES(361,111,'ColdCart6',0,11,'cpp',FALSE,'ColdCart6CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart6:1.0') +INSERT INTO COMPONENT VALUES(362,112,'PowerDist6',0,11,'cpp',FALSE,'PowerDist6CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist6:1.0') +INSERT INTO COMPONENT VALUES(363,113,'ColdCart9',0,11,'cpp',FALSE,'ColdCart9CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart9:1.0') +INSERT INTO COMPONENT VALUES(364,121,'PowerDist8',0,11,'cpp',FALSE,'PowerDist8CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist8:1.0') +INSERT INTO COMPONENT VALUES(365,72,'ACD',0,11,'cpp',FALSE,'ACDCompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ACDBase:1.0') +INSERT INTO COMPONENT VALUES(366,122,'WCA4',0,11,'cpp',FALSE,'WCA4CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA4:1.0') +INSERT INTO COMPONENT VALUES(367,114,'PowerDist3',0,11,'cpp',FALSE,'PowerDist3CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:PowerDist3:1.0') +INSERT INTO COMPONENT VALUES(368,115,'WCA6',0,11,'cpp',FALSE,'WCA6CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA6:1.0') +INSERT INTO COMPONENT VALUES(369,123,'ColdCart8',0,11,'cpp',FALSE,'ColdCart8CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:ColdCart8:1.0') +INSERT INTO COMPONENT VALUES(370,116,'WCA3',0,11,'cpp',FALSE,'WCA3CompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:WCA3:1.0') +INSERT INTO COMPONENT VALUES(371,117,'Cryostat',0,11,'cpp',FALSE,'CryostatCompSimImpl','CONTROL/DA48/FrontEnd',FALSE,FALSE,TRUE,TRUE,0,-1,-1,NULL,'urn:schemas-cosylab-com:CryostatBase:1.0') +INSERT INTO BACIPROPERTY VALUES(0,34,'currentStateHierarchy','Current hierarchy of subsystem states, top-down','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,1.0E0,0.001E0,FALSE,0.0E0,'-',NULL,NULL,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL) +INSERT INTO BACIPROPERTY VALUES(1,57,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2,57,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3,57,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4,57,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5,57,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6,57,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(7,57,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(8,57,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(9,57,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(10,57,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(11,57,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(12,57,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(13,57,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(14,57,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(15,57,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(16,57,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(17,57,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(18,57,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(19,57,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(20,57,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(21,57,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(22,57,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(23,57,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(24,57,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(25,57,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(26,57,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(27,57,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(28,57,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(29,57,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(30,57,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(31,57,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(32,57,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(33,57,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(34,57,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(35,57,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(36,57,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(37,57,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(38,57,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(39,57,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(40,57,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(41,57,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(42,57,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(43,57,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(44,57,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(45,57,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(46,57,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(47,57,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(48,57,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(49,57,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(50,57,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(51,57,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(52,57,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(53,57,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(54,57,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(55,57,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(56,57,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(57,57,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(58,57,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(59,57,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(60,57,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(61,57,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(62,57,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(63,57,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(64,57,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(65,57,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(66,57,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(67,57,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(68,57,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(69,57,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(70,57,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(71,57,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(72,57,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(73,57,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(74,57,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(75,57,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(76,57,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(77,57,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(78,57,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(79,57,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(80,57,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(81,57,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(82,57,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(83,57,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(84,57,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(85,57,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(86,57,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(87,57,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(88,57,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(89,57,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(90,57,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(91,57,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(92,57,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(93,57,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(94,57,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(95,57,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(96,57,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(97,57,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(98,57,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(99,57,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(100,57,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(101,57,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(102,57,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(103,57,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(104,57,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(105,57,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(106,57,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(107,57,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(108,57,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(109,57,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(110,57,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(111,57,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(112,57,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(113,57,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(114,57,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(115,57,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(116,57,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(117,57,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(118,57,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(119,57,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(120,57,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(121,57,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(122,57,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(123,57,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(124,57,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(125,57,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(126,57,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(127,57,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(128,58,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(129,58,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(130,58,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(131,58,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(132,58,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(133,58,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(134,58,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(135,58,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(136,58,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(137,58,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(138,58,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(139,58,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(140,58,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(141,58,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(142,58,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(143,58,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(144,58,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(145,58,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(146,58,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(147,58,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(148,58,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(149,58,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(150,58,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(151,58,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(152,58,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(153,58,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(154,58,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(155,58,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(156,58,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(157,58,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(158,58,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(159,58,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(160,58,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(161,58,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(162,58,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(163,58,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(164,58,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(165,58,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(166,58,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(167,58,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(168,58,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(169,58,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(170,58,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(171,58,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(172,58,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(173,58,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(174,58,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(175,58,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(176,58,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(177,58,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(178,58,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(179,58,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(180,58,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(181,58,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(182,58,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(183,58,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(184,58,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(185,58,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(186,58,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(187,58,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(188,58,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(189,58,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(190,58,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(191,58,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(192,58,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(193,58,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(194,58,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(195,58,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(196,58,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(197,58,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(198,58,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(199,58,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(200,58,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(201,58,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(202,58,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(203,58,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(204,58,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(205,58,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(206,58,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(207,58,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(208,58,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(209,58,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(210,58,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(211,58,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(212,58,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(213,58,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(214,58,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(215,58,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(216,58,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(217,58,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(218,58,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(219,58,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(220,58,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(221,58,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(222,58,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(223,58,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(224,58,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(225,58,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(226,58,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(227,58,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(228,58,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(229,58,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(230,58,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(231,58,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(232,58,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(233,58,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(234,58,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(235,58,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(236,58,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(237,58,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(238,58,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(239,58,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(240,58,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(241,58,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(242,58,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(243,58,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(244,58,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(245,58,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(246,58,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(247,58,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(248,58,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(249,58,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(250,58,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(251,58,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(252,58,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(253,58,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(254,58,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(255,59,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(256,59,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(257,59,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(258,59,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(259,59,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(260,59,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(261,59,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(262,59,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(263,59,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(264,59,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(265,59,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(266,59,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(267,59,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(268,59,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(269,59,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(270,59,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(271,59,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(272,59,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(273,59,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(274,59,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(275,59,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(276,59,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(277,59,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(278,59,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(279,59,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(280,59,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(281,59,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(282,59,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(283,59,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(284,59,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(285,59,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(286,59,'MID_3_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(287,59,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(288,59,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(289,59,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(290,59,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(291,59,'MID_4_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(292,59,'MID_4_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(293,59,'MID_4_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(294,59,'MID_4_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(295,59,'MID_4_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(296,59,'MID_5_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(297,59,'MID_5_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(298,59,'MID_5_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(299,59,'MID_5_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(300,59,'MID_5_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(301,59,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(302,59,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(303,59,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(304,59,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(305,59,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(306,59,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(307,59,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(308,59,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(309,59,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(310,59,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(311,59,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(312,59,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(313,59,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(314,59,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(315,59,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(316,59,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(317,59,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(318,59,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(319,59,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(320,59,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(321,59,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(322,59,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(323,59,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(324,59,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(325,62,'ACTIVE_PROG_SEG_00','Active program segment 0','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(326,62,'ACTIVE_PROG_SEG_00_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(327,62,'ACTIVE_PROG_SEG_00_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(328,62,'ACTIVE_PROG_SEG_00_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(329,62,'ACTIVE_PROG_SEG_01','Active program segment 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(330,62,'ACTIVE_PROG_SEG_01_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(331,62,'ACTIVE_PROG_SEG_01_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(332,62,'ACTIVE_PROG_SEG_01_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(333,62,'ACTIVE_PROG_SEG_02','Active program segment 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(334,62,'ACTIVE_PROG_SEG_02_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(335,62,'ACTIVE_PROG_SEG_02_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(336,62,'ACTIVE_PROG_SEG_02_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(337,62,'ACTIVE_PROG_SEG_03','Active program segment 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(338,62,'ACTIVE_PROG_SEG_03_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(339,62,'ACTIVE_PROG_SEG_03_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(340,62,'ACTIVE_PROG_SEG_03_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(341,62,'ACTIVE_PROG_SEG_04','Active program segment 4','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(342,62,'ACTIVE_PROG_SEG_04_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(343,62,'ACTIVE_PROG_SEG_04_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(344,62,'ACTIVE_PROG_SEG_04_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(345,62,'ACTIVE_PROG_SEG_05','Active program segment 5','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(346,62,'ACTIVE_PROG_SEG_05_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(347,62,'ACTIVE_PROG_SEG_05_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(348,62,'ACTIVE_PROG_SEG_05_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(349,62,'ACTIVE_PROG_SEG_06','Active program segment 6','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(350,62,'ACTIVE_PROG_SEG_06_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(351,62,'ACTIVE_PROG_SEG_06_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(352,62,'ACTIVE_PROG_SEG_06_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(353,62,'ACTIVE_PROG_SEG_07','Active program segment 7','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(354,62,'ACTIVE_PROG_SEG_07_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(355,62,'ACTIVE_PROG_SEG_07_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(356,62,'ACTIVE_PROG_SEG_07_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(357,62,'ACTIVE_PROG_SEG_08','Active program segment 8','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(358,62,'ACTIVE_PROG_SEG_08_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(359,62,'ACTIVE_PROG_SEG_08_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(360,62,'ACTIVE_PROG_SEG_08_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(361,62,'ACTIVE_PROG_SEG_09','Active program segment 9','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(362,62,'ACTIVE_PROG_SEG_09_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(363,62,'ACTIVE_PROG_SEG_09_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(364,62,'ACTIVE_PROG_SEG_09_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(365,62,'ACTIVE_PROG_SEG_10','Active program segment 10','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(366,62,'ACTIVE_PROG_SEG_10_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(367,62,'ACTIVE_PROG_SEG_10_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(368,62,'ACTIVE_PROG_SEG_10_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(369,62,'ACTIVE_PROG_SEG_11','Active program segment 11','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(370,62,'ACTIVE_PROG_SEG_11_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(371,62,'ACTIVE_PROG_SEG_11_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(372,62,'ACTIVE_PROG_SEG_11_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(373,62,'ACTIVE_PROG_SEG_12','Active program segment 12','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(374,62,'ACTIVE_PROG_SEG_12_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(375,62,'ACTIVE_PROG_SEG_12_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(376,62,'ACTIVE_PROG_SEG_12_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(377,62,'ACTIVE_PROG_SEG_13','Active program segment 13','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(378,62,'ACTIVE_PROG_SEG_13_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(379,62,'ACTIVE_PROG_SEG_13_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(380,62,'ACTIVE_PROG_SEG_13_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(381,62,'ACTIVE_PROG_SEG_14','Active program segment 14','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(382,62,'ACTIVE_PROG_SEG_14_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(383,62,'ACTIVE_PROG_SEG_14_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(384,62,'ACTIVE_PROG_SEG_14_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(385,62,'ACTIVE_PROG_SEG_I','Active program initial segment. The initial segment is used when starting the program.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(386,62,'ACTIVE_PROG_SEG_I_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(387,62,'ACTIVE_PROG_SEG_I_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(388,62,'ACTIVE_PROG_SEG_I_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(389,62,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(390,62,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(391,62,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(392,62,'DEBUG_NOP','Returns fixed message 0x5A','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(393,62,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(394,62,'EXT48MS_SYNC','Internal or External timing events, Default is External.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(395,62,'FEEDFORWARD_GAIN_ACC','Acceleration feed forward gain of main loop.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(396,62,'FEEDFORWARD_GAIN_VEL','Velocity feed forward gain of main loop.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(397,62,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(398,62,'LINAMP_STATUS','Linear amplifier status','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(399,62,'LOAD_STANDBY_PROGRAM','Determine if program is loaded and is valid.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(400,62,'LOOP1_AO_LIMIT','Main loop analog output limit in volt.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(401,62,'LOOP1_D','Main loop Derivative coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(402,62,'LOOP1_I','Main loop Integral coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(403,62,'LOOP1_P','Main loop proportional coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(404,62,'LOOP2_AO_LIMIT','Auxiliary loop analog output limit in volt.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(405,62,'LOOP2_D','Auxiliary loop derivative coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(406,62,'LOOP2_I','Auxiliary loop integral coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(407,62,'LOOP2_P','Auxiliary loop proportional coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(408,62,'LOOP_00_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(409,62,'LOOP_00_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(410,62,'LOOP_00_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(411,62,'LOOP_01_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(412,62,'LOOP_01_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(413,62,'LOOP_01_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(414,62,'LOOP_02_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(415,62,'LOOP_02_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(416,62,'LOOP_02_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(417,62,'LOOP_03_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(418,62,'LOOP_03_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(419,62,'LOOP_03_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(420,62,'LOOP_04_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(421,62,'LOOP_04_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(422,62,'LOOP_04_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(423,62,'LOOP_05_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(424,62,'LOOP_05_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(425,62,'LOOP_05_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(426,62,'LOOP_06_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(427,62,'LOOP_06_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(428,62,'LOOP_06_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(429,62,'LOOP_07_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(430,62,'LOOP_07_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(431,62,'LOOP_07_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(432,62,'LOOP_08_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(433,62,'LOOP_08_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(434,62,'LOOP_08_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(435,62,'LOOP_09_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(436,62,'LOOP_09_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(437,62,'LOOP_09_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(438,62,'LOOP_10_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(439,62,'LOOP_10_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(440,62,'LOOP_10_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(441,62,'LOOP_11_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(442,62,'LOOP_11_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(443,62,'LOOP_11_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(444,62,'LOOP_12_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(445,62,'LOOP_12_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(446,62,'LOOP_12_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(447,62,'LOOP_13_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(448,62,'LOOP_13_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(449,62,'LOOP_13_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(450,62,'LOOP_14_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(451,62,'LOOP_14_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(452,62,'LOOP_14_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(453,62,'LOOP_15_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(454,62,'LOOP_15_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(455,62,'LOOP_15_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(456,62,'MIRROR_POSITION_MAX','Mirror position limit in arcsec.(max)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(457,62,'MIRROR_POSITION_MIN','Mirror position limit in arcsec.(min)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(458,62,'MODE_OPERATION','Operation mode includes two position switching, multi step switching, triangular trajectory, sinusoidal trajectory modes.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(459,62,'NUTATOR_ID','Nutator ID. Each nutator set is given a unique name.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(460,62,'POSITION','Current Nutator position.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(461,62,'PROGRAM_VALIDITY','Determine if standby program is valid.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(462,62,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(463,62,'PTOS_ESTIMATOR_COEFFICIENTS_00','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(464,62,'PTOS_ESTIMATOR_COEFFICIENTS_01','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(465,62,'PTOS_ESTIMATOR_COEFFICIENTS_02','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(466,62,'PTOS_ESTIMATOR_COEFFICIENTS_03','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(467,62,'PTOS_ESTIMATOR_COEFFICIENTS_04','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(468,62,'PTOS_ESTIMATOR_COEFFICIENTS_05','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(469,62,'PTOS_ESTIMATOR_COEFFICIENTS_06','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(470,62,'PTOS_ESTIMATOR_COEFFICIENTS_07','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(471,62,'PTOS_ESTIMATOR_COEFFICIENTS_08','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(472,62,'PTOS_ESTIMATOR_COEFFICIENTS_09','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(473,62,'PTOS_ESTIMATOR_COEFFICIENTS_10','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(474,62,'PTOS_ESTIMATOR_COEFFICIENTS_11','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(475,62,'PTOS_ESTIMATOR_COEFFICIENTS_12','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(476,62,'PTOS_ESTIMATOR_COEFFICIENTS_13','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(477,62,'PTOS_ESTIMATOR_COEFFICIENTS_14','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(478,62,'PTOS_ESTIMATOR_COEFFICIENTS_15','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(479,62,'PTOS_GAIN_00','The gains for the PTOS are loaded when the trajectory of the mirror is changed by changing the chopping throw.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(480,62,'PTOS_GAIN_01','The gains for the PTOS are loaded when the trajectory of the mirror is changed by changing the chopping throw.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(481,62,'PTOS_GAIN_02','The gains for the PTOS are loaded when the trajectory of the mirror is changed by changing the chopping throw.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(482,62,'PTOS_GAIN_03','The gains for the PTOS are loaded when the trajectory of the mirror is changed by changing the chopping throw.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(483,62,'PULSE_OUT_1_00','1st pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(484,62,'PULSE_OUT_1_01','1st pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(485,62,'PULSE_OUT_1_02','2nd pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(486,62,'PULSE_OUT_1_03','3rd pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(487,62,'PULSE_OUT_1_04','4th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(488,62,'PULSE_OUT_1_05','5th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(489,62,'PULSE_OUT_1_06','6th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(490,62,'PULSE_OUT_1_07','7th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(491,62,'PULSE_OUT_1_08','8th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(492,62,'PULSE_OUT_1_09','9th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(493,62,'PULSE_OUT_1_10','10th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(494,62,'PULSE_OUT_1_11','11th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(495,62,'PULSE_OUT_1_12','12th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(496,62,'PULSE_OUT_1_13','13th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(497,62,'PULSE_OUT_1_14','14th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(498,62,'PULSE_OUT_1_15','15th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(499,62,'PULSE_OUT_2_00','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(500,62,'PULSE_OUT_2_01','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(501,62,'PULSE_OUT_2_02','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(502,62,'PULSE_OUT_2_03','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(503,62,'PULSE_OUT_2_04','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(504,62,'PULSE_OUT_2_05','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(505,62,'PULSE_OUT_2_06','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(506,62,'PULSE_OUT_2_07','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(507,62,'PULSE_OUT_2_08','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(508,62,'PULSE_OUT_2_09','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(509,62,'PULSE_OUT_2_10','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(510,62,'PULSE_OUT_2_11','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(511,62,'PULSE_OUT_2_12','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(512,62,'PULSE_OUT_2_13','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(513,62,'PULSE_OUT_2_14','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(514,62,'PULSE_OUT_2_15','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(515,62,'RELAYS_CNTRL','The controller uses 4 Relays to isolate amplifiers output driving signals to motors. They are Mirror Relay in Controller (M1-Relay), Mirror Relay in Apex Side (M2-Relay), Rocker Relay in Controller (R1-Relay), Rocker Relay in Apex Side (R2-Relay)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(516,62,'ROCKER_POSITION_MAX','Rocker position limit in arcsec.(max)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(517,62,'ROCKER_POSITION_MIN','Rocker position limit in arcsec.(min)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(518,62,'SELFTEST','Return selftest most recen result.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(519,62,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(520,62,'STANDBY_PROG_SEG_00','Standby program segment 0','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(521,62,'STANDBY_PROG_SEG_00_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(522,62,'STANDBY_PROG_SEG_00_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(523,62,'STANDBY_PROG_SEG_00_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(524,62,'STANDBY_PROG_SEG_01','Standby program segment 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(525,62,'STANDBY_PROG_SEG_01_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(526,62,'STANDBY_PROG_SEG_01_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(527,62,'STANDBY_PROG_SEG_01_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(528,62,'STANDBY_PROG_SEG_02','Standby program segment 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(529,62,'STANDBY_PROG_SEG_02_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(530,62,'STANDBY_PROG_SEG_02_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(531,62,'STANDBY_PROG_SEG_02_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(532,62,'STANDBY_PROG_SEG_03','Standby program segment 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(533,62,'STANDBY_PROG_SEG_03_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(534,62,'STANDBY_PROG_SEG_03_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(535,62,'STANDBY_PROG_SEG_03_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(536,62,'STANDBY_PROG_SEG_04','Standby program segment 4','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(537,62,'STANDBY_PROG_SEG_04_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(538,62,'STANDBY_PROG_SEG_04_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(539,62,'STANDBY_PROG_SEG_04_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(540,62,'STANDBY_PROG_SEG_05','Standby program segment 5','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(541,62,'STANDBY_PROG_SEG_05_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(542,62,'STANDBY_PROG_SEG_05_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(543,62,'STANDBY_PROG_SEG_05_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(544,62,'STANDBY_PROG_SEG_06','Standby program segment 6','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(545,62,'STANDBY_PROG_SEG_06_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(546,62,'STANDBY_PROG_SEG_06_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(547,62,'STANDBY_PROG_SEG_06_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(548,62,'STANDBY_PROG_SEG_07','Standby program segment 7','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(549,62,'STANDBY_PROG_SEG_07_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(550,62,'STANDBY_PROG_SEG_07_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(551,62,'STANDBY_PROG_SEG_07_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(552,62,'STANDBY_PROG_SEG_08','Standby program segment 8','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(553,62,'STANDBY_PROG_SEG_08_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(554,62,'STANDBY_PROG_SEG_08_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(555,62,'STANDBY_PROG_SEG_08_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(556,62,'STANDBY_PROG_SEG_09','Standby program segment 9','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(557,62,'STANDBY_PROG_SEG_09_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(558,62,'STANDBY_PROG_SEG_09_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(559,62,'STANDBY_PROG_SEG_09_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(560,62,'STANDBY_PROG_SEG_10','Standby program segment 10','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(561,62,'STANDBY_PROG_SEG_10_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(562,62,'STANDBY_PROG_SEG_10_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(563,62,'STANDBY_PROG_SEG_10_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(564,62,'STANDBY_PROG_SEG_11','Standby program segment 11','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(565,62,'STANDBY_PROG_SEG_11_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(566,62,'STANDBY_PROG_SEG_11_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(567,62,'STANDBY_PROG_SEG_11_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(568,62,'STANDBY_PROG_SEG_12','Standby program segment 12','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(569,62,'STANDBY_PROG_SEG_12_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(570,62,'STANDBY_PROG_SEG_12_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(571,62,'STANDBY_PROG_SEG_12_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(572,62,'STANDBY_PROG_SEG_13','Standby program segment 13','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(573,62,'STANDBY_PROG_SEG_13_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(574,62,'STANDBY_PROG_SEG_13_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(575,62,'STANDBY_PROG_SEG_13_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(576,62,'STANDBY_PROG_SEG_14','Standby program segment 14','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(577,62,'STANDBY_PROG_SEG_14_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(578,62,'STANDBY_PROG_SEG_14_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(579,62,'STANDBY_PROG_SEG_14_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(580,62,'STANDBY_PROG_SEG_I','Standby program initial segment. The initial segment is used when starting the program.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(581,62,'STANDBY_PROG_SEG_I_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(582,62,'STANDBY_PROG_SEG_I_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(583,62,'STANDBY_PROG_SEG_I_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(584,62,'STATUS','Current Nutator status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(585,62,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(586,62,'TEMPERATURE_0','Monitor temperature probe 0. Controller .','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(587,62,'TEMPERATURE_1','Monitor temperature probe 1. Mirror T1 amplifier.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(588,62,'TEMPERATURE_2','Monitor temperature probe 2. Mirror T2 amplifier.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(589,62,'TEMPERATURE_3','Monitor temperature probe 3.Rocker amplifier.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(590,62,'TEMPERATURE_4','Monitor temperature probe 4. Apex controller.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(591,62,'TEMPERATURE_5','Monitor temperature probe 5. Apex mechanical housing.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(592,62,'TEMPERATURE_6','Monitor temperature probe 6. Left mirror motor.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(593,62,'TEMPERATURE_7','Monitor temperature probe 7. Right mirror motor.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(594,62,'TEMPERATURE_8','Monitor temperature probe 8. Left rocker motor.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(595,62,'TEMPERATURE_9','Monitor temperature probe 9. Right rocker motor.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(596,62,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(597,63,'ACU_MODE_RSP','Current Operational and Access Mode Information for ACU','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(598,63,'ACU_TRK_MODE_RSP','Current tracking mode information for ACU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(599,63,'AC_ATU_AIR_CIRCULATION_OVERLOAD_RELEASE','ATU: Air recirculation devices overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(600,63,'AC_ATU_DIFFERENTIAL_PRESSURE_SWITCH','ATU: Differential pressure switch (not set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(601,63,'AC_ATU_FAN_ON','ATU: Fan on (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(602,63,'AC_ATU_FAN_OVERLOAD_RELEASE','ATU fan overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(603,63,'AC_ATU_FLOW_LACK_ALARM','ATU: Lack of flow alarm (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(604,63,'AC_ATU_MANUAL_REQUEST','ATU: Manual start/stop request (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(605,63,'AC_ATU_OVERTEMP_ALARM','ATU: Overtemperature alarm (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(606,63,'AC_ATU_RESISTORS_OVERLOAD_RELEASE','ATU resistors overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(607,63,'AC_ATU_RESISTORS_SAFETY_THERMOSTAT','ATU: Resistors safety thermostat (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(608,63,'AC_ATU_SETPOINT_NOT_REACHED','ATU: Setpoint not reached (set = not reached)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(609,63,'AC_ATU_THERMAL_PROBE_S47_FAULT','ATU: Thermal probe S47 fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(610,63,'AC_ATU_THERMAL_PROBE_S48_FAULT','ATU: Thermal probe S48 fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(611,63,'AC_ATU_WATCHDOG','ATU: Watchdog (not set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(612,63,'AC_CHILLER_ANTI_FREEZE','CHILLER: Anti freeze (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(613,63,'AC_CHILLER_COMPRESSOR_OVERLOAD_RELEASE','CHILLER: Compressor overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(614,63,'AC_CHILLER_CPR_COMMAND','CHILLER: CPR command (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(615,63,'AC_CHILLER_DELIVERY_PROBE_FAULT','CHILLER: Delivery probe fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(616,63,'AC_CHILLER_FAN_FAULT','CHILLER: Fan fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(617,63,'AC_CHILLER_FLOW_LACK_ALARM','CHILLER: Lack of flow alarm (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(618,63,'AC_CHILLER_FLOW_PROBE','CHILLER: Flow probe (not set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(619,63,'AC_CHILLER_HIGH_PRESSURE','CHILLER: High pressure (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(620,63,'AC_CHILLER_INVERTER_COMMAND','CHILLER: Inverter command (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(621,63,'AC_CHILLER_INVERTER_FAULT','CHILLER: Inverter fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(622,63,'AC_CHILLER_LOW_PRESSURE','CHILLER: Low pressure (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(623,63,'AC_CHILLER_MANUAL_REQUEST','CHILLER: Manual start/stop request (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(624,63,'AC_CHILLER_PHASE_SEQ_FAULT','CHILLER: Phase sequence fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(625,63,'AC_CHILLER_PRESSURE_SENSOR_FAULT','CHILLER: Pressure sensor fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(626,63,'AC_CHILLER_PUMP_ON','CHILLER: Pump on (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(627,63,'AC_CHILLER_PUMP_OVERLOAD_RELEASE','CHILLER: Pump overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(628,63,'AC_CHILLER_RETURN_PROBE_FAULT','CHILLER: Return probe fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(629,63,'AC_CHILLER_TEMP','Temperature of chiller','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(630,63,'AC_CHILLER_WATCHDOG','CHILLER: Watchdog (not set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(631,63,'AC_HVAC_ATU_CONNECTION_OK','HVAC: ATU connection OK (set = ok)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(632,63,'AC_HVAC_CHILLER_CONNECTION_OK','HVAC: Chiller connection OK (set = ok)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(633,63,'AC_HVAC_DISABLED','HVAC disabled (set = disabled)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(634,63,'AC_STATUS','Air conditioning subsystem status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(635,63,'AC_TEMP','Get HVAC calibration volume temperature sensor and HVAC set-point','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(636,63,'ANTENNA_TEMPS','Antenna Temperatures','%2d','kelvin','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(637,63,'AZ_ENC','Position in raw encoder bits at last 20.83 Hz tick.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(638,63,'AZ_ENCODER_OFFSET','Offset between raw encoder reading and azimuth position excluding contribution from pointing and metrology corrections.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(639,63,'AZ_MOTOR_CURRENTS','Actual motor currents in all azimuth axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(640,63,'AZ_MOTOR_TEMPS','Motor temperatures in all azimuth axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(641,63,'AZ_MOTOR_TORQUE','Applied motor torque in all azmiuth axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(642,63,'AZ_POSN_RSP','Position of azimuth axis in turns at the last 20.83Hz pulse and 24ms before. Note that the interpretation of the value depends on the current active mode. In ENCODER mode, the position values are uncorrected; in AUTONOMOUS mode the values have been corrected by pointing model and metrology.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(643,63,'AZ_SERVO_COEFF_0','Azimuth servo coefficient 0.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(644,63,'AZ_SERVO_COEFF_1','Azimuth servo coefficient 1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(645,63,'AZ_SERVO_COEFF_2','Azimuth servo coefficient 2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(646,63,'AZ_SERVO_COEFF_3','Azimuth servo coefficient 3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(647,63,'AZ_SERVO_COEFF_4','Azimuth servo coefficient 4.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(648,63,'AZ_SERVO_COEFF_5','Azimuth servo coefficient 5.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(649,63,'AZ_SERVO_COEFF_6','Azimuth servo coefficient 6.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(650,63,'AZ_SERVO_COEFF_7','Azimuth servo coefficient 7.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(651,63,'AZ_SERVO_COEFF_8','Azimuth servo coefficient 8.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(652,63,'AZ_SERVO_COEFF_9','Azimuth servo coefficient 9.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(653,63,'AZ_SERVO_COEFF_A','Azimuth servo coefficient A.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(654,63,'AZ_SERVO_COEFF_B','Azimuth servo coefficient B.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(655,63,'AZ_SERVO_COEFF_C','Azimuth servo coefficient C.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(656,63,'AZ_SERVO_COEFF_D','Azimuth servo coefficient D','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(657,63,'AZ_SERVO_COEFF_E','Azimuth servo coefficient E','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(658,63,'AZ_SERVO_COEFF_F','Azimuth servo coefficient F','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(659,63,'AZ_STATUS','Status of azimuth axis.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(660,63,'AZ_TRAJ','Position in turns and velocity in turns/sec set with the last AZ_TRAJ_CMD','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(661,63,'CAN_ERROR','Status of CAN interface board.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(662,63,'EL_ENC','Position in raw encoder bits at last 20.83 Hz tick.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(663,63,'EL_ENCODER_OFFSET','Offset between raw encoder reading and azimuth position excluding contribution from pointing and metrology corrections.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(664,63,'EL_MOTOR_CURRENTS','Actual motor currents in all elevation axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(665,63,'EL_MOTOR_TEMPS','Motor temperatures in all elevation axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(666,63,'EL_MOTOR_TORQUE','Applied motor torque in all elevation axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(667,63,'EL_POSN_RSP','Position of elevation axis in turns at the last 20.83Hz pulse and 24ms before. Note that the interpretation of the value depends on the current active mode. In ENCODER mode, the position values are uncorrected; in AUTONOMOUS mode the values have been corrected by pointing model and metrology.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(668,63,'EL_SERVO_COEFF_0','Elevation servo coefficient 0.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(669,63,'EL_SERVO_COEFF_1','Elevation servo coefficient 1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(670,63,'EL_SERVO_COEFF_2','Elevation servo coefficient 2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(671,63,'EL_SERVO_COEFF_3','Elevation servo coefficient 3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(672,63,'EL_SERVO_COEFF_4','Elevation servo coefficient 4.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(673,63,'EL_SERVO_COEFF_5','Elevation servo coefficient 5.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(674,63,'EL_SERVO_COEFF_6','Elevation servo coefficient 6.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(675,63,'EL_SERVO_COEFF_7','Elevation servo coefficient 7.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(676,63,'EL_SERVO_COEFF_8','Elevation servo coefficient 8.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(677,63,'EL_SERVO_COEFF_9','Elevation servo coefficient 9.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(678,63,'EL_SERVO_COEFF_A','Elevation servo coefficient A.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(679,63,'EL_SERVO_COEFF_B','Elevation servo coefficient B.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(680,63,'EL_SERVO_COEFF_C','Elevation servo coefficient C.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(681,63,'EL_SERVO_COEFF_D','Elevation servo coefficient D','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(682,63,'EL_SERVO_COEFF_E','Elevation servo coefficient E','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(683,63,'EL_SERVO_COEFF_F','Elevation servo coefficient F','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(684,63,'EL_STATUS','Status of elevation axis.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(685,63,'EL_TRAJ','Position in turns and velocity in turns/sec set with the last EL_TRAJ_CMD','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(686,63,'IDLE_STOW_TIME','Currently set time for ACU to enter survival stow if no communication is received on CAN bus or timing pulse has ceased.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(687,63,'IP_ADDRESS','ACU IP address (external LAN).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(688,63,'IP_GATEWAY','ACU gateway IP address.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(689,63,'METR_COEFF_1','AN0 (Az axis tilt to be substracted from titmeter readout)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(690,63,'METR_COEFF_2','AW0 (Az axis tilt to be substracted from titmeter readout)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(691,63,'METR_DELTAPATH','Error in path length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(692,63,'METR_DELTAS','Metrology Deltas','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(693,63,'METR_DELTAS_TEMP','Get Az and El total delta corecton applied by the metrology system due to temperature variations','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(694,63,'METR_EQUIP_STATUS','Metrology equipment status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(695,63,'METR_MODE','Get metrology mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(696,63,'METR_TEMPS_00','Metrology Temperatures Sensor Pack 00','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(697,63,'METR_TEMPS_01','Metrology Temperatures Sensor Pack 01','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(698,63,'METR_TEMPS_02','Metrology Temperatures Sensor Pack 02','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(699,63,'METR_TEMPS_03','Metrology Temperatures Sensor Pack 03','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(700,63,'METR_TEMPS_04','Metrology Temperatures Sensor Pack 04','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(701,63,'METR_TEMPS_05','Metrology Temperatures Sensor Pack 05','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(702,63,'METR_TEMPS_06','Metrology Temperatures Sensor Pack 06','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(703,63,'METR_TEMPS_07','Metrology Temperatures Sensor Pack 07','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(704,63,'METR_TEMPS_08','Metrology Temperatures Sensor Pack 08','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(705,63,'METR_TEMPS_09','Metrology Temperatures Sensor Pack 09','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(706,63,'METR_TEMPS_0A','Metrology Temperatures Sensor Pack 0A','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(707,63,'METR_TEMPS_0B','Metrology Temperatures Sensor Pack 0B','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(708,63,'METR_TEMPS_0C','Metrology Temperatures Sensor Pack 0C','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(709,63,'METR_TEMPS_0D','Metrology Temperatures Sensor Pack 0D','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(710,63,'METR_TEMPS_0E','Metrology Temperatures Sensor Pack 0E','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(711,63,'METR_TEMPS_0F','Metrology Temperatures Sensor Pack 0F','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(712,63,'METR_TEMPS_10','Metrology Temperatures Sensor Pack 10','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(713,63,'METR_TEMPS_11','Metrology Temperatures Sensor Pack 11','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(714,63,'METR_TEMPS_12','Metrology Temperatures Sensor Pack 12','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(715,63,'METR_TEMPS_13','Metrology Temperatures Sensor Pack 13','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(716,63,'METR_TEMPS_14','Metrology Temperatures Sensor Pack 14','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(717,63,'METR_TEMPS_15','Metrology Temperatures Sensor Pack 15','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(718,63,'METR_TEMPS_16','Metrology Temperatures Sensor Pack 16','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(719,63,'METR_TEMPS_17','Metrology Temperatures Sensor Pack 17','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(720,63,'METR_TEMPS_18','Metrology Temperatures Sensor Pack 18','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(721,63,'METR_TILT_0','Metrology system tiltmeter readouts.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(722,63,'METR_TILT_1','Metrology system tiltmeter readouts.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(723,63,'NUM_TRANS','Number of CAN transactions handled by ACU since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(724,63,'POWER_STATUS','Get power and UPS status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(725,63,'PT_MODEL_COEFF_00','Pointing model coefficient to be used in autonomous mode. IA azimuth encoder zero offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(726,63,'PT_MODEL_COEFF_01','Pointing model coefficient to be used in autonomous mode. CA collimation error of electromagnetic offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(727,63,'PT_MODEL_COEFF_02','Pointing model coefficient to be used in autonomous mode. NPAE non-perpendicularity of mount azimuth and elevation axes.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(728,63,'PT_MODEL_COEFF_03','Pointing model coefficient to be used in autonomous mode. AN azimuth axis offset (misalignment north-south)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(729,63,'PT_MODEL_COEFF_04','Pointing model coefficient to be used in autonomous mode. AW azimuth axis offset (misalingment east-west)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(730,63,'PT_MODEL_COEFF_05','Pointing model coefficient to be used in autonomous mode. IE elevation encoder zero offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(731,63,'PT_MODEL_COEFF_06','Pointing model coefficient to be used in autonomous mode. HECE gravitational flexure correction at the horizon.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(732,63,'PT_MODEL_COEFF_07','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(733,63,'PT_MODEL_COEFF_08','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(734,63,'PT_MODEL_COEFF_09','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(735,63,'PT_MODEL_COEFF_0A','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(736,63,'PT_MODEL_COEFF_0B','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(737,63,'PT_MODEL_COEFF_0C','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(738,63,'PT_MODEL_COEFF_0D','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(739,63,'PT_MODEL_COEFF_0E','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(740,63,'PT_MODEL_COEFF_0F','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(741,63,'PT_MODEL_COEFF_10','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(742,63,'PT_MODEL_COEFF_11','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(743,63,'PT_MODEL_COEFF_12','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(744,63,'PT_MODEL_COEFF_13','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(745,63,'PT_MODEL_COEFF_14','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(746,63,'PT_MODEL_COEFF_15','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(747,63,'PT_MODEL_COEFF_16','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(748,63,'PT_MODEL_COEFF_17','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(749,63,'PT_MODEL_COEFF_18','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(750,63,'PT_MODEL_COEFF_19','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(751,63,'PT_MODEL_COEFF_1A','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(752,63,'PT_MODEL_COEFF_1B','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(753,63,'PT_MODEL_COEFF_1C','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(754,63,'PT_MODEL_COEFF_1D','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(755,63,'PT_MODEL_COEFF_1E','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(756,63,'PT_MODEL_COEFF_1F','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(757,63,'SELFTEST_ERR','Reads one entry from the self test failure stack','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(758,63,'SELFTEST_ERR_1','Reads one entry from the self test failure stack (additional information)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(759,63,'SELFTEST_ERR_1_ERROR_CODE','Error code: Test failed no detailed information available (0), Test not executed due to failed previous required test (1)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(760,63,'SELFTEST_ERR_1_FAILED_COUNT','Number of failed tests','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(761,63,'SELFTEST_ERR_1_VALUE','Measured value, if applicable','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(762,63,'SELFTEST_ERR_FAILED_COUNT','Number of failed tests','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(763,63,'SELFTEST_ERR_VALUE','Measured value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(764,63,'SELFTEST_RSP','Get self test status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(765,63,'SELFTEST_RSP_COMPLETED','Self-test completed','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(766,63,'SELFTEST_RSP_ERROR_COUNT','Number of errors on the self-test error stack','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(767,63,'SELFTEST_RSP_FAILED','Self-test failed','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(768,63,'SELFTEST_RSP_FAILED_COUNT','Number of failing tests','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(769,63,'SELFTEST_RSP_RUNNING','Self-test running','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(770,63,'SHUTTER','Shutter Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(771,63,'STOW_PIN','Stow Pin Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(772,63,'STOW_PIN_1','Position of antenna stow pins (additional information)','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(773,63,'SUBREF_ABS_POSN','Subreflector Absolute Positions','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(774,63,'SUBREF_DELTA_POSN','Subreflector Delta Positions','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(775,63,'SUBREF_LIMITS','Get subreflector mechanism limit status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(776,63,'SUBREF_ROTATION','Subreflector rotation position.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(777,63,'SUBREF_STATUS','Get subreflector mechanism status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(778,63,'SW_REV_LEVEL','Revision level of vendor ACU code.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(779,63,'SYSTEM_ID','Get ACU hardware and software identifiers. Currently only a software revision level is supported, but could be expanded to include hardware identifiers in future.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(780,63,'SYSTEM_STATUS','State of miscellaneous related systems','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(781,63,'UPS_OUTPUT_CURRENT','UPS Output Currents','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(782,63,'UPS_OUTPUT_VOLTS','UPS Output Voltages','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(783,64,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(784,64,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(785,64,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(786,64,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(787,64,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(788,64,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(789,64,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(790,64,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(791,64,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(792,64,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(793,64,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(794,64,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(795,64,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(796,64,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(797,64,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(798,64,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(799,64,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(800,64,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(801,64,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(802,64,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(803,64,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(804,64,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(805,64,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(806,64,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(807,64,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(808,64,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(809,64,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(810,64,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(811,64,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(812,64,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(813,64,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(814,64,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(815,64,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(816,64,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(817,64,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(818,64,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(819,64,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(820,64,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(821,64,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(822,64,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(823,64,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(824,64,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(825,64,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(826,64,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(827,64,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(828,64,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(829,64,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(830,64,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(831,64,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(832,64,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(833,64,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(834,64,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(835,64,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(836,64,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(837,64,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(838,64,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(839,64,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(840,64,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(841,64,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(842,64,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(843,64,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(844,64,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(845,64,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(846,64,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(847,64,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(848,64,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(849,64,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(850,64,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(851,64,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(852,64,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(853,64,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(854,64,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(855,64,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(856,64,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(857,64,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(858,64,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(859,64,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(860,64,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(861,64,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(862,64,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(863,64,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(864,64,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(865,64,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(866,64,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(867,64,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(868,64,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(869,64,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(870,64,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(871,64,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(872,64,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(873,64,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(874,64,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(875,64,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(876,64,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(877,64,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(878,64,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(879,64,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(880,64,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(881,64,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(882,64,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(883,64,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(884,64,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(885,64,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(886,64,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(887,64,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(888,64,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(889,64,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(890,64,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(891,64,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(892,64,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(893,64,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(894,64,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(895,64,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(896,64,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(897,64,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(898,64,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(899,64,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(900,64,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(901,64,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(902,64,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(903,64,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(904,64,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(905,64,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(906,64,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(907,64,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(908,64,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(909,64,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(910,65,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(911,65,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(912,65,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(913,65,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(914,65,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(915,65,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(916,65,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(917,65,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(918,65,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(919,65,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(920,65,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(921,65,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(922,65,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(923,65,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(924,65,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(925,65,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(926,65,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(927,65,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(928,65,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(929,65,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(930,65,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(931,65,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(932,65,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(933,65,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(934,65,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(935,65,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(936,65,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(937,65,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(938,65,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(939,65,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(940,65,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(941,65,'MID_4_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(942,65,'MID_4_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(943,65,'MID_4_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(944,65,'MID_4_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(945,65,'MID_4_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(946,65,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(947,65,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(948,65,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(949,65,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(950,65,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(951,65,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(952,65,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(953,65,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(954,65,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(955,65,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(956,65,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(957,65,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(958,65,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(959,65,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(960,65,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(961,65,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(962,65,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(963,65,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(964,65,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(965,65,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(966,65,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(967,65,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(968,65,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(969,65,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(970,66,'mode','TE handler ticks mode','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,0.0E0,'2',0.0E0,0.0E0,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,1.0E0,NULL,NULL,NULL,NULL,NULL,'SOFT,FW,HARD','!','0,1','2','!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(971,66,'type','TE handler time type','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,0.0E0,'0',0.0E0,0.0E0,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,'LOCALCPU,ARRAY','!','!','!','!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(972,67,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(973,67,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(974,67,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(975,67,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(976,67,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(977,67,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(978,67,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(979,67,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(980,67,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(981,67,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(982,67,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(983,67,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(984,67,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(985,67,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(986,67,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(987,67,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(988,67,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(989,67,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(990,67,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(991,67,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(992,67,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(993,67,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(994,67,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(995,67,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(996,67,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(997,67,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(998,67,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(999,67,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1000,67,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1001,67,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1002,67,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1003,67,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1004,67,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1005,67,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1006,67,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1007,67,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1008,67,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1009,67,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1010,67,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1011,67,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1012,67,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1013,67,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1014,67,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1015,67,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1016,67,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1017,67,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1018,67,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1019,67,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1020,67,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1021,67,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1022,67,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1023,67,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1024,67,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1025,67,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1026,67,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1027,67,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1028,67,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1029,67,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1030,67,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1031,67,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1032,67,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1033,67,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1034,67,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1035,67,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1036,67,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1037,67,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1038,67,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1039,67,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1040,67,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1041,67,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1042,67,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1043,67,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1044,67,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1045,67,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1046,67,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1047,67,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1048,67,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1049,67,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1050,67,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1051,67,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1052,67,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1053,67,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1054,67,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1055,67,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1056,67,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1057,67,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1058,67,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1059,67,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1060,67,'FR_STATUS','FR Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1061,67,'FR_SWITCH_CH1','Switch setting of CH1: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1062,67,'FR_SWITCH_CH2','Switch setting of CH2: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1063,67,'FR_SWITCH_CH3','Switch setting of CH3: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1064,67,'FR_TE_STATUS','FR TE Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1065,67,'FR_TE_STATUS_CLK_EDGE','FR TE inverted clock edge used','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1066,67,'FR_TE_STATUS_CURR_ERR','FR TE current error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1067,67,'FR_TE_STATUS_ERROR','FR TE error flag active','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1068,67,'FR_TE_STATUS_MAX_ERR','FR TE maximum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1069,67,'FR_TE_STATUS_MIN_ERR','FR TE minimum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1070,67,'FR_TMP','Temperature data for FR and TTX','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1071,67,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1072,67,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1073,67,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1074,67,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1075,67,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1076,67,'TTX_ALARM_STATUS','TTX Alarm Status data','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1077,67,'TTX_I2C_DATA','Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1078,67,'TTX_LASER_BIAS_CH1','CH1 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1079,67,'TTX_LASER_BIAS_CH2','CH2 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1080,67,'TTX_LASER_BIAS_CH3','CH3 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1081,67,'TTX_LASER_ENABLED','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1082,67,'TTX_LASER_PWR_CH1','CH1 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1083,67,'TTX_LASER_PWR_CH2','CH2 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1084,67,'TTX_LASER_PWR_CH3','CH3 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1085,67,'TTX_LASER_TMP_CH1','CH1 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1086,67,'TTX_LASER_TMP_CH2','CH2 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1087,67,'TTX_LASER_TMP_CH3','CH3 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1088,68,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1089,68,'BEATNOTE_OPT_DET','BEATNOTE_OPT_DET','%7.2f','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1090,68,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1091,68,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1092,68,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1093,68,'FIRMWARE_REV','This monitor point provides the date and the Perforce (backend repository software) version of the firmware.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1094,68,'FRAM_BUFFER','Retrieves a byte from the FRAM buffer. Reading a value from the FRAM is a two step process. The command READ_FRAM must be written to load the byte from a memory location into a buffer. This monitor point then reads the value stored in the buffer.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1095,68,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1096,68,'MODULE_ID','This monitor point provides the identification information for the module which includes the CIN, Serial Number and Hardware version. ','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1097,68,'PBS_OPT_DET','PBS_OPT_DET','%7.2f','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1098,68,'POL1_OPTM_NEEDED','POL1_OPTM_NEEDED','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1099,68,'POL1_OPTM_NEEDED_PEAK_LEVEL','^POL1_OPTM_NEEDED_PEAK_LEVEL','%7.2f','decibel','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1100,68,'POL1_OPTM_NEEDED_PSB','^POL1_OPTM_NEEDED_PSB','%7.2f','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1101,68,'POL1_TEMP','POL1_TEMP','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1102,68,'POL1_V1','POL1_V1','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1103,68,'POL1_V2','POL1_V2','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1104,68,'POL1_V3','POL1_V3','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1105,68,'POL1_V4','POL1_V4','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1106,68,'POL2_OPTM_NEEDED','POL2_OPTM_NEEDED','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1107,68,'POL2_OPTM_NEEDED_ML_PEAK_LEVEL','^POL2_OPTM_NEEDED_ML_PEAK_LEVEL','%7.2f','decibel','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1108,68,'POL2_OPTM_NEEDED_ML_REF','^POL2_OPTM_NEEDED_ML_REF','%7.2f','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1109,68,'POL2_TEMP','POL2_TEMP','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1110,68,'POL2_V1','POL2_V1','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1111,68,'POL2_V2','POL2_V2','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1112,68,'POL2_V3','POL2_V3','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1113,68,'POL2_V4','POL2_V4','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1114,68,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1115,68,'RETURN_DET','RETURN_DET','%7.2f','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1116,68,'ROUTINE_STATUS','ROUTINE_STATUS','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1117,68,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1118,68,'SWITCH_PORT','SWITCH_PORT','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1119,68,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1120,68,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1121,69,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1122,69,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1123,69,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1124,69,'COMPRESSOR_AUX_2','Voltage of the Auxiliary 4-20mA input 2','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,7.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1125,69,'COMPRESSOR_DRIVE_INDICATION_ON','Drive Indication; Range: Bit 0 = 0: Off, Bit 0 = 1: On','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1126,69,'COMPRESSOR_ECU_TYPE','ICCU Environmental Control Unit Type','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1127,69,'COMPRESSOR_FAULT_STATUS_ERROR','Interlock Alarm Status','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1128,69,'COMPRESSOR_FETIM_CABLE_ERROR','FE Thermal Interlock Cable Detect','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1129,69,'COMPRESSOR_FETIM_STATUS_ERROR','FETIM Status Bit. Indicates if the FE is in a safe state to proceed with cooling.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1130,69,'COMPRESSOR_ICCU_CABLE_DETECT_ERROR','ICCU Enclosure Environmental Status Bit.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1131,69,'COMPRESSOR_ICCU_STATUS_ERROR','ICCU Enclosure Environmental Status Bit.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1132,69,'COMPRESSOR_INTERLOCK_OVERRIDE','Interlock Override Status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1133,69,'COMPRESSOR_PRESSURE_ALARM','Pressure Alarm; Bit 0 = 0: Nominal, Bit 0 = 1: Error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1134,69,'COMPRESSOR_RET_PRESSURE','Pressure in return line. Pressure transducer provides 4-20mA signal where 4mA = 0 MPa, 20mA = 4 MPa.','%3.3f','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1135,69,'COMPRESSOR_SUPPLY_PRESSURE','He Pressure in supply line. Pressure transducer provides 4-20mA signal where 4mA = 0 MPa, 20mA = 4 MPa.','%7.2f','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1136,69,'COMPRESSOR_SW_REVISION_LEVEL','Return the current revision level of the software. Byte_0 = Major, Byte_1 = Minor, Byte_3 = Patch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1137,69,'COMPRESSOR_TEMP_1','Temperature (Celsius) of the PT-100 sensor 1','%3.3f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-50.0E0,80.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1138,69,'COMPRESSOR_TEMP_2','Temperature (Celsius) of the PT-100 sensor 2','%3.3f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-50.0E0,80.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1139,69,'COMPRESSOR_TEMP_3','Temperature (Celsius) of the PT-100 sensor 3','%3.3f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-50.0E0,80.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1140,69,'COMPRESSOR_TEMP_4','Temperature (Celsius) of the PT-100 sensor 4','%3.3f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-50.0E0,80.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1141,69,'COMPRESSOR_TEMP_ALARM','Temperature Alarm; Bit 0 = 0: Nominal, Bit 0 = 1: Error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1142,69,'COMPRESSOR_TIME_SINCE_LAST_POWER_OFF','According to Sumitomo The cryocooler ON/OFF frequency must be less than 6 times per hour. This interlock is implemented in software and this monitor point return the time elapsed since the last drive off command. The combination of this and the previous requirements are such that an interval of at least 7 minutes has to be waited before allowing a remote drive ON command after a remote drive OFF was issued. The returned value is reset to [0xFF] once the 7 minutes have elapsed.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1143,69,'COMPRESSOR_TIME_SINCE_LAST_POWER_ON','According to Sumitomo the ON to OFF interval must be more than 3 minutes. This interlock is implemented in software and this monitor point return the time elapsed since the last drive on command. Until the 3 minutes time has expired, the remote drive OFF command will be ignored. The returned value is reset to [0xFF] once the 3 minutes have elapsed.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1144,69,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1145,69,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1146,69,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1147,69,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1148,69,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1149,69,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1150,70,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1151,70,'BE_BIAS0','Get BE bias settings for channel 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1152,70,'BE_BIAS1','Get BE bias settings for channel 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1153,70,'BE_BIAS2','Get BE bias settings for channel 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1154,70,'BE_BIAS3','Get BE bias settings for channel 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1155,70,'BE_BW0','Get BE bandwidth settings for channel 0','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1156,70,'BE_BW1','Get BE bandwidth settings for channel 0','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1157,70,'BE_BW2','Get BE bandwidth settings for channel 0','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1158,70,'BE_BW3','Get BE bandwidth settings for channel 0','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1159,70,'BE_NTC','Get BE thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1160,70,'BE_PWM','Get BE PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1161,70,'BE_TEMP','Get BE temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1162,70,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1163,70,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1164,70,'CHOP_BLNK','Chopper blanking','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1165,70,'CHOP_CURR','Get chopper wheel current','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1166,70,'CHOP_PHASE_ACTUAL','Chopper wheel present phase','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1167,70,'CHOP_PHASE_SETTING','Chopper wheel phase setting','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1168,70,'CHOP_POS','Get chopper position','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1169,70,'CHOP_PWM','Get chopper PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1170,70,'CHOP_STATE','Get chopper status','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1171,70,'CHOP_VEL','Present chopper wheel velocity','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1172,70,'COLD_NTC','Get cold load thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1173,70,'COLD_PWM','Get cold load PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1174,70,'COLD_TEMP','Get cold load temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1175,70,'CS_NTC','Get CS thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1176,70,'CS_PWM','Get CS PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1177,70,'CS_TEMP','Get CS temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1178,70,'CTRL_12CURR','Get 12V supply control current','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1179,70,'CTRL_12VOLT','Get 12V supply control voltage','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1180,70,'CTRL_6CURR','Get 6V supply control current','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1181,70,'CTRL_6VOLT','Get 6V supply control cvoltageurrent','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1182,70,'CTRL_M6CURR','Get -6V supply control current','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1183,70,'CTRL_M6VOLT','Get -6V supply control cvoltageurrent','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1184,70,'CTRL_NTC','Get controller board thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1185,70,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1186,70,'HOT_NTC','Get hot load thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1187,70,'HOT_PWM','Get hot load PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1188,70,'HOT_TEMP','Get hot load temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1189,70,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1190,70,'INT_COLD0','Get last cold load raw integration value for filterbank 0 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1191,70,'INT_COLD1','Get last cold load raw integration value for filterbank 1 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1192,70,'INT_COLD2','Get last cold load raw integration value for filterbank 2 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1193,70,'INT_COLD3','Get last cold load raw integration value for filterbank 3 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1194,70,'INT_EST0','Get gain estimate and timestamp for filterbank 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1195,70,'INT_EST1','Get gain estimate and timestamp for filterbank 1','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1196,70,'INT_EST2','Get gain estimate and timestamp for filterbank 2','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1197,70,'INT_EST3','Get gain estimate and timestamp for filterbank 3','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1198,70,'INT_HOT0','Get last hot load raw integration value for filterbank 0 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1199,70,'INT_HOT1','Get last hot load raw integration value for filterbank 1 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1200,70,'INT_HOT2','Get last hot load raw integration value for filterbank 2 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1201,70,'INT_HOT3','Get last hot load raw integration value for filterbank 3 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1202,70,'INT_SETS','Get integration settings','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1203,70,'INT_SKYA0','Get last skyA raw integration data for filterbank 0 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1204,70,'INT_SKYA1','Get last skyA raw integration data for filterbank 1 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1205,70,'INT_SKYA2','Get last skyA raw integration data for filterbank 2 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1206,70,'INT_SKYA3','Get last skyA raw integration data for filterbank 3 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1207,70,'INT_SKYB0','Get last skyB raw integration data for filterbank 0 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1208,70,'INT_SKYB1','Get last skyB raw integration data for filterbank 1 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1209,70,'INT_SKYB2','Get last skyB raw integration data for filterbank 2 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1210,70,'INT_SKYB3','Get last skyB raw integration data for filterbank 3 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1211,70,'INT_TIMEA','Get integration time for skyA','%none','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1212,70,'INT_TIMEB','Get integration time for skyB','%none','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1213,70,'INT_TIMEC','Get integration time for cold load','%none','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1214,70,'INT_TIMEH','Get integration time for hot load','%none','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1215,70,'INT_TSRC0','Get integrated temperature (Tsrc0) and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1216,70,'INT_TSRC1','Get integrated temperature (Tsrc1) and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1217,70,'INT_TSRC2','Get integrated temperature (Tsrc2) and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1218,70,'INT_TSRC3','Get integrated temperature (Tsrc2) and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1219,70,'LNA_TEMP','Get LNA temperature','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1220,70,'LO_BIAS0','Get LO bias 0 settings','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1221,70,'LO_BIAS1','Get LO bias 1 settings','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1222,70,'LO_FREQ','Get LO frequency setting','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1223,70,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1224,70,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1225,70,'SW_REV','Get software and calibration file revisions, plus WVR unit serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1226,70,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1227,70,'TP_PWM','Get TP PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1228,70,'TP_TEMP','Get TP temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1229,70,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1230,70,'WVR_ALARMS','Alarm bits settings','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1231,70,'WVR_STATE','Determine WVR state','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1232,70,'WVR_STATE_ALARMS','Some alarm bits are set','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1233,70,'WVR_STATE_BOOTED','Just booted','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1234,70,'WVR_STATE_CLOCK_PRESENT','125 MHZ external clock present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1235,70,'WVR_STATE_MODE','The WVR is running','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1236,70,'WVR_STATE_OPERATIONAL','Ready for operational mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1237,70,'WVR_STATE_TE_PRESENT','TE ticks present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1238,71,'ALMA_TIME','ALMA time at the rising edge of current TE','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1239,71,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1240,71,'AMB_CMD_COUNTER','Number of commands over the AMB bus','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1241,71,'AMB_INVALID_CMD','Read data on the last invalid command','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1242,71,'ANALOG_5_GOOD','5 V analog power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1243,71,'ARP_FULL','ARP table full','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1244,71,'A_VREF_GOOD','IFDC Channel A voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1245,71,'BDB_PER_PACKET','Number of Basic Data Blocks','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',32.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1246,71,'B_VREF_GOOD','IFDC Channel B voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1247,71,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1248,71,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1249,71,'CURRENTS_10V','Current in 10 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1250,71,'CURRENTS_6_5V','Current in 6.5 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1251,71,'CURRENTS_8V','Current in 8 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1252,71,'C_VREF_GOOD','IFDC Channel C voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1253,71,'DATA_AVE_LENGTH','Number of 2 kHz samples that are averaged to generate data','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1254,71,'DATA_MONITOR_1','Monitor of the Total Power Data.','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1255,71,'DATA_MONITOR_2','Monitor of the Total Power Data.','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1256,71,'DATA_REMAP','TPD signal flow','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1257,71,'DATA_TRANSFER_ACTIVE','Data transfer active if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1258,71,'DEST_IP_ADDR','TCP connection IP address','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1259,71,'DIGITAL_1DOT2_GOOD','1.2 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1260,71,'DIGITAL_2DOT5_GOOD','2.5 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1261,71,'DIGITAL_3DOT3_GOOD','3.3 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1262,71,'DIGITAL_5_GOOD','5 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1263,71,'D_VREF_GOOD','IFDC Channel D voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1264,71,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1265,71,'ETHERNET_CONNECTED','Ethernet connected if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1266,71,'ETHERNET_MAC','MAC address of the Ethernet controller','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1267,71,'ETHER_CONT_VOLTAGE_GOOD','Ethernet controller voltage good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1268,71,'FIFO_DEPTHS','Reads the internal and external FIFO depths.','%2d','none','1',15,15.0E0,15.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1269,71,'FIFO_FULL','FIFO Full - lost data flag if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1270,71,'FIRST_BYTE_INVALID','First byte of the last invalid command','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1271,71,'GAINS','Attenuator settings for the IFDC','%2d','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1272,71,'IFDC_ADS','IFDC ADS','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1273,71,'IFDC_FOUND','IFDC Found when true','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1274,71,'IFDC_LENGTH','IFDC Length','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1275,71,'IFDC_MCS','IFDC MCS','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1276,71,'IFDC_SPI_PROTO_ERR_COUNTER','IFDC SPI Protocol Error Counter','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1277,71,'IFDC_SPI_STATUS','Status of SPI interface','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1278,71,'IFDC_VAR_LENGTH_READS','IFDC Variable length reads','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1279,71,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1280,71,'LAST_ADDRESS_INTERACTION','Last address interaction','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1281,71,'LENGTH_48MS','number of 125 clock cycles in the last TE','%2d','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1282,71,'LSBS_8_RCAS','8 LSBs of the RCA of the last invalid command','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1283,71,'MAX_ETHERNET_TIMES','Maximum time the Ethernet controller spend handling data from the FPGA','%2d','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1284,71,'MODULE_CODES','IFDC Module Codes','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1285,71,'MODULE_CODES_CDAY','Compile day','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1286,71,'MODULE_CODES_CMONTH','Compile month','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1287,71,'MODULE_CODES_DIG1','Digit 1 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1288,71,'MODULE_CODES_DIG2','Digit 2 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1289,71,'MODULE_CODES_DIG4','Digit 4 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1290,71,'MODULE_CODES_DIG6','Digit 6 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1291,71,'MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1292,71,'MODULE_CODES_VERSION_MAJOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1293,71,'MODULE_CODES_VERSION_MINOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1294,71,'MODULE_CODES_YEAR','Compile year (2000 -> 0x00)','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1295,71,'MODULE_GATEWAY','Gateway','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1296,71,'MODULE_IP_ADDR','Ethernet controller IP Address','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1297,71,'MODULE_NETMASK','Netmask','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1298,71,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1299,71,'ROUTER_NOT_FOUND','Router not found','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1300,71,'S0_VREF_GOOD','Sideband 0 voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1301,71,'S1_VREF_GOOD','Sideband 1 voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1302,71,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1303,71,'SIGNAL_PATHS','Filter values in the IFDC','%2d','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1304,71,'SPI_ERRORS','Errors on the IFDC SPI interface','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1305,71,'STATUS','Read Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1306,71,'STATUS_START_COMM_TEST','Read back of the START_COMM_TEST command','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1307,71,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1308,71,'TCP_CONNECTED','TCP connected if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1309,71,'TCP_DISCONN_CMD','Disconnected by command if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1310,71,'TCP_DISCONN_ERROR','Disconnected by error if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1311,71,'TCP_PORT','TCP Port','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1312,71,'TEMPS_1','Temperatures in the IFDC','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1313,71,'TEMPS_2','Temperatures in the IFDC','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1314,71,'TEMPS_3','Temps in Comm modules','%2d','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-25.0E0,100.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1315,71,'TIMING_ERROR_FLAG','Indication of a timing error between the 125MHz clock and the 48ms timing event.','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1316,71,'TPD_MODULE_CODES','IFMC Module Codes','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1317,71,'TPD_MODULE_CODES_CDAY','Compile day','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1318,71,'TPD_MODULE_CODES_CMONTH','Compile month','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1319,71,'TPD_MODULE_CODES_DIG1','Digit 1 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1320,71,'TPD_MODULE_CODES_DIG2','Digit 2 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1321,71,'TPD_MODULE_CODES_DIG4','Digit 4 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1322,71,'TPD_MODULE_CODES_DIG6','Digit 6 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1323,71,'TPD_MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1324,71,'TPD_MODULE_CODES_VERSION_MAJOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1325,71,'TPD_MODULE_CODES_VERSION_MINOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1326,71,'TPD_MODULE_CODES_YEAR','Compile year (2000 -> 0x00)','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1327,71,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1328,71,'VAL_READ_AMB_CMD_COUNTER','the value of READ_AMB_CMD_COUNTER','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1329,71,'VOLTAGES_1','Voltage levels','%2d','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1330,71,'VOLTAGES_2','Voltage levels','%2d','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1331,73,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1332,73,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1333,73,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1334,73,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1335,73,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1336,73,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1337,73,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1338,73,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1339,73,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1340,73,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1341,73,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1342,73,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1343,73,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1344,73,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1345,73,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1346,73,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1347,73,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1348,73,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1349,73,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1350,73,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1351,73,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1352,73,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1353,73,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1354,73,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1355,73,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1356,73,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1357,73,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1358,73,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1359,73,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1360,73,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1361,73,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1362,73,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1363,73,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1364,73,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1365,73,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1366,73,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1367,73,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1368,73,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1369,73,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1370,73,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1371,73,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1372,73,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1373,73,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1374,73,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1375,73,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1376,73,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1377,73,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1378,73,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1379,73,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1380,73,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1381,73,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1382,73,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1383,73,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1384,73,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1385,73,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1386,73,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1387,73,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1388,73,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1389,73,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1390,73,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1391,73,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1392,73,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1393,73,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1394,73,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1395,73,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1396,73,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1397,73,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1398,73,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1399,73,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1400,73,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1401,73,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1402,73,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1403,73,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1404,73,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1405,73,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1406,73,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1407,73,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1408,73,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1409,73,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1410,73,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1411,73,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1412,73,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1413,73,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1414,73,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1415,73,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1416,73,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1417,73,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1418,73,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1419,73,'FR_STATUS','FR Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1420,73,'FR_SWITCH_CH1','Switch setting of CH1: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1421,73,'FR_SWITCH_CH2','Switch setting of CH2: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1422,73,'FR_SWITCH_CH3','Switch setting of CH3: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1423,73,'FR_TE_STATUS','FR TE Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1424,73,'FR_TE_STATUS_CLK_EDGE','FR TE inverted clock edge used','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1425,73,'FR_TE_STATUS_CURR_ERR','FR TE current error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1426,73,'FR_TE_STATUS_ERROR','FR TE error flag active','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1427,73,'FR_TE_STATUS_MAX_ERR','FR TE maximum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1428,73,'FR_TE_STATUS_MIN_ERR','FR TE minimum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1429,73,'FR_TMP','Temperature data for FR and TTX','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1430,73,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1431,73,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1432,73,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1433,73,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1434,73,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1435,73,'TTX_ALARM_STATUS','TTX Alarm Status data','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1436,73,'TTX_I2C_DATA','Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1437,73,'TTX_LASER_BIAS_CH1','CH1 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1438,73,'TTX_LASER_BIAS_CH2','CH2 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1439,73,'TTX_LASER_BIAS_CH3','CH3 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1440,73,'TTX_LASER_ENABLED','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1441,73,'TTX_LASER_PWR_CH1','CH1 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1442,73,'TTX_LASER_PWR_CH2','CH2 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1443,73,'TTX_LASER_PWR_CH3','CH3 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1444,73,'TTX_LASER_TMP_CH1','CH1 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1445,73,'TTX_LASER_TMP_CH2','CH2 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1446,73,'TTX_LASER_TMP_CH3','CH3 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1447,74,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1448,74,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1449,74,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1450,74,'CURRENT_PHASE_1','Current Phase 1','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1451,74,'CURRENT_PHASE_2','Current Phase 2','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1452,74,'DELAY','Delay','%none','second','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1453,74,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1454,74,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1455,74,'LAST_PHASE_COMMAND_1','Last Phase Command 1','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1456,74,'LAST_PHASE_COMMAND_2','Last Phase Command 2','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1457,74,'LOCK_VOLTAGE','Power Supply Voltage','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1458,74,'MISSED_COMMAND_FLAG','Phase command missing','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1459,74,'MODULE_CODES','Module codes for the DGCK','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1460,74,'MODULE_CODES_CDAY','Compile day','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1461,74,'MODULE_CODES_CMONTH','Compile month','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1462,74,'MODULE_CODES_DIG1','Digit 1 of the product tree #','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1463,74,'MODULE_CODES_DIG2','Digit 2 of the product tree #','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1464,74,'MODULE_CODES_DIG4','Digit 4 of the product tree #','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1465,74,'MODULE_CODES_DIG6','Digit 6 of the product tree #','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1466,74,'MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1467,74,'MODULE_CODES_VERSION_MAJOR','Version 0.0 to 15.15 high nibble - major revision, low nibble - minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1468,74,'MODULE_CODES_VERSION_MINOR','Version 0.0 to 15.15 high nibble - major revision, low nibble - minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1469,74,'MODULE_CODES_YEAR','Compile year (2000 implies 0x00)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1470,74,'PLL_LOCK_FLAG','PLL is out of lock','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1471,74,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1472,74,'PS_VOLTAGE','The measured voltage of the clock module +6V power supply.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1473,74,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1474,74,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1475,74,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1476,75,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1477,75,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1478,75,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1479,75,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1480,75,'DETECTED_FTS_POWER','Detected FTS Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1481,75,'DETECTED_IF_POWER','Detected IF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1482,75,'DETECTED_RF_POWER','Detected RF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',500.0E0,1500.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1483,75,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1484,75,'FM_COIL_VOLTAGE','FM Coil Voltage','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1485,75,'FREQ','none','%none','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1486,75,'FREQUENCY_OFFSET','Difference between commanded and actual DYTO course tune frequency','%2d','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-30.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1487,75,'FTS_STATUS','none','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1488,75,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1489,75,'LO2_FREQUENCY','LO2 Frequency','%2d','hertz','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8000.0E0,14000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1490,75,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1491,75,'MODULE_STATUS','Module Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1492,75,'PHASE_OFFSET','none','%none','second','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1493,75,'PHASE_SEQ1','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1494,75,'PHASE_SEQ2','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1495,75,'PHASE_VALS','none','%none','radian','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1496,75,'POWER_SUPPLY_1_VALUE','Plus 5 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1497,75,'POWER_SUPPLY_2_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1498,75,'POWER_SUPPLY_3_VALUE','Negative 20 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,0.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1499,75,'POWER_SUPPLY_4_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1500,75,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1501,75,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1502,75,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1503,75,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1504,76,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1505,76,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1506,76,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1507,76,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1508,76,'DETECTED_FTS_POWER','Detected FTS Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1509,76,'DETECTED_IF_POWER','Detected IF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1510,76,'DETECTED_RF_POWER','Detected RF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',500.0E0,1500.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1511,76,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1512,76,'FM_COIL_VOLTAGE','FM Coil Voltage','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1513,76,'FREQ','none','%none','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1514,76,'FREQUENCY_OFFSET','Difference between commanded and actual DYTO course tune frequency','%2d','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-30.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1515,76,'FTS_STATUS','none','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1516,76,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1517,76,'LO2_FREQUENCY','LO2 Frequency','%2d','hertz','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8000.0E0,14000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1518,76,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1519,76,'MODULE_STATUS','Module Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1520,76,'PHASE_OFFSET','none','%none','second','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1521,76,'PHASE_SEQ1','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1522,76,'PHASE_SEQ2','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1523,76,'PHASE_VALS','none','%none','radian','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1524,76,'POWER_SUPPLY_1_VALUE','Plus 5 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1525,76,'POWER_SUPPLY_2_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1526,76,'POWER_SUPPLY_3_VALUE','Negative 20 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,0.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1527,76,'POWER_SUPPLY_4_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1528,76,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1529,76,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1530,76,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1531,76,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1532,77,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1533,77,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1534,77,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1535,77,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1536,77,'DETECTED_FTS_POWER','Detected FTS Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1537,77,'DETECTED_IF_POWER','Detected IF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1538,77,'DETECTED_RF_POWER','Detected RF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',500.0E0,1500.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1539,77,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1540,77,'FM_COIL_VOLTAGE','FM Coil Voltage','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1541,77,'FREQ','none','%none','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1542,77,'FREQUENCY_OFFSET','Difference between commanded and actual DYTO course tune frequency','%2d','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-30.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1543,77,'FTS_STATUS','none','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1544,77,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1545,77,'LO2_FREQUENCY','LO2 Frequency','%2d','hertz','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8000.0E0,14000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1546,77,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1547,77,'MODULE_STATUS','Module Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1548,77,'PHASE_OFFSET','none','%none','second','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1549,77,'PHASE_SEQ1','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1550,77,'PHASE_SEQ2','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1551,77,'PHASE_VALS','none','%none','radian','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1552,77,'POWER_SUPPLY_1_VALUE','Plus 5 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1553,77,'POWER_SUPPLY_2_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1554,77,'POWER_SUPPLY_3_VALUE','Negative 20 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,0.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1555,77,'POWER_SUPPLY_4_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1556,77,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1557,77,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1558,77,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1559,77,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1560,78,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1561,78,'AMP_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1562,78,'AMP_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1563,78,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1564,78,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1565,78,'DIGITAL_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1566,78,'DIGITAL_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1567,78,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1568,78,'HS_TEMP_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1569,78,'HS_TEMP_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1570,78,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1571,78,'OPIN_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1572,78,'OPIN_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1573,78,'OPIN_POW_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1574,78,'OPIN_POW_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1575,78,'OPOUT_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1576,78,'OPOUT_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1577,78,'OPOUT_POWER_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1578,78,'OPOUT_POWER_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1579,78,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1580,78,'PSU_AMP_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1581,78,'PSU_AMP_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1582,78,'PSU_VOLT_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1583,78,'PSU_VOLT_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1584,78,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1585,78,'STATUS_E_A','To be defined','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1586,78,'STATUS_E_B','To be defined','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1587,78,'STATUS_P_A','To be defined','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1588,78,'STATUS_P_B','To be defined','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1589,78,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1590,78,'TEMP_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1591,78,'TEMP_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1592,78,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1593,78,'VN_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1594,78,'VN_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1595,78,'VOLT_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1596,78,'VOLT_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1597,78,'XOVERA_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1598,78,'XOVERA_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1599,78,'XOVERB_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1600,78,'XOVERB_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1601,79,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1602,79,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1603,79,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1604,79,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1605,79,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1606,79,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1607,79,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1608,79,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1609,79,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1610,79,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1611,79,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1612,79,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1613,79,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1614,79,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1615,79,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1616,79,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1617,79,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1618,79,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1619,79,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1620,79,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1621,79,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1622,79,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1623,79,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1624,79,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1625,79,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1626,79,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1627,79,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1628,79,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1629,79,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1630,79,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1631,79,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1632,79,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1633,79,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1634,79,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1635,79,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1636,79,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1637,79,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1638,79,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1639,79,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1640,79,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1641,79,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1642,79,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1643,79,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1644,79,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1645,79,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1646,79,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1647,79,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1648,79,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1649,79,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1650,79,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1651,79,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1652,79,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1653,79,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1654,79,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1655,79,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1656,79,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1657,79,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1658,79,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1659,79,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1660,79,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1661,79,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1662,79,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1663,79,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1664,79,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1665,79,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1666,79,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1667,79,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1668,79,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1669,79,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1670,79,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1671,79,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1672,79,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1673,79,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1674,79,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1675,79,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1676,79,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1677,79,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1678,79,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1679,79,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1680,79,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1681,79,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1682,79,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1683,79,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1684,79,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1685,79,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1686,79,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1687,79,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1688,79,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1689,79,'FR_STATUS','FR Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1690,79,'FR_SWITCH_CH1','Switch setting of CH1: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1691,79,'FR_SWITCH_CH2','Switch setting of CH2: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1692,79,'FR_SWITCH_CH3','Switch setting of CH3: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1693,79,'FR_TE_STATUS','FR TE Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1694,79,'FR_TE_STATUS_CLK_EDGE','FR TE inverted clock edge used','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1695,79,'FR_TE_STATUS_CURR_ERR','FR TE current error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1696,79,'FR_TE_STATUS_ERROR','FR TE error flag active','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1697,79,'FR_TE_STATUS_MAX_ERR','FR TE maximum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1698,79,'FR_TE_STATUS_MIN_ERR','FR TE minimum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1699,79,'FR_TMP','Temperature data for FR and TTX','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1700,79,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1701,79,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1702,79,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1703,79,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1704,79,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1705,79,'TTX_ALARM_STATUS','TTX Alarm Status data','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1706,79,'TTX_I2C_DATA','Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1707,79,'TTX_LASER_BIAS_CH1','CH1 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1708,79,'TTX_LASER_BIAS_CH2','CH2 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1709,79,'TTX_LASER_BIAS_CH3','CH3 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1710,79,'TTX_LASER_ENABLED','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1711,79,'TTX_LASER_PWR_CH1','CH1 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1712,79,'TTX_LASER_PWR_CH2','CH2 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1713,79,'TTX_LASER_PWR_CH3','CH3 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1714,79,'TTX_LASER_TMP_CH1','CH1 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1715,79,'TTX_LASER_TMP_CH2','CH2 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1716,79,'TTX_LASER_TMP_CH3','CH3 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1717,80,'QueryCenThresh','Centroid SNR threshold for the brightest star in the field.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1718,80,'QueryExpTime','Default exposure time.','%none','seconds','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1719,80,'QueryFlatField','Current flat field option in effect.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1720,80,'QueryFocusPos','The position of the focus mechanism.','%none','meters','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1721,80,'QuerySeqNo','Sequence number of the last image which has been read out.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1722,81,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1723,81,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1724,81,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1725,81,'EFC_125_MHZ','125MHz Electronic Frequency Control Voltage','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1726,81,'EFC_COMB_LINE_PLL','Comb Line Electronic Frequency Control Voltage','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1727,81,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1728,81,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1729,81,'MODULE_CODES_CDAY','Firmware Compile day','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1730,81,'MODULE_CODES_CMONTH','Firmware Compile month','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1731,81,'MODULE_CODES_DIG1','Digit 1 of the product tree #','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1732,81,'MODULE_CODES_DIG2','Digit 2 of the product tree #','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1733,81,'MODULE_CODES_DIG4','Digit 4 of the product tree #','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1734,81,'MODULE_CODES_DIG6','Digit 6 of the product tree #','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1735,81,'MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1736,81,'MODULE_CODES_VERSION_MAJOR','Version 0.0 to 15.15 high nibble - major revision, low nibble - minor revision','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1737,81,'MODULE_CODES_VERSION_MINOR','Version 0.0 to 15.15 high nibble - major revision, low nibble - minor revision','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1738,81,'MODULE_CODES_YEAR','Firmware Compile year (2000 -> 0x00)','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1739,81,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1740,81,'PWR_125_MHZ','125MHz RF Output Power','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,11.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1741,81,'PWR_25_MHZ','25MHz RF Output Power','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,11.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1742,81,'PWR_2_GHZ','2GHz RF Output Power','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,11.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1743,81,'READ_MODULE_CODES','Module Data','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1744,81,'RX_OPT_PWR','Received Optical Power','%8.3f','watt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1745,81,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1746,81,'STATUS','Status','%3d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1747,81,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1748,81,'TE_LENGTH','Number of 125 MHz clock cycles counted (anything other than 5999999 is bad)','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5999999.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1749,81,'TE_OFFSET_COUNTER','Position of the delivered TE','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,2.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1750,81,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1751,81,'VDC_12','12V Power Supply Voltage','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1752,81,'VDC_15','15V Power Supply Voltage','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1753,81,'VDC_7','7V Power Supply Voltage','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1754,81,'VDC_MINUS_7','Minus 7 Power Supply Voltage','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1755,82,'GUNN_H_VOLTAGE','High Band Gunn Oscillator Voltage','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,15.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1756,82,'GUNN_L_VOLTAGE','Low Band Gunn Oscillator Voltage','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,15.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1757,82,'LO_DET_OUT','LO Detector Level','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1758,82,'PLL_STATUS','High Band Gunn Oscillator Voltage','%8.3f','none','1',15,6.0E0,6.0E0,'monitor_collector',FALSE,6.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,15.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1759,82,'REF_DET_OUT','Reference IF DetectorLevel','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1760,82,'REF_SENSE_I','RMS Voltage of the Reference I Channel','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1761,82,'REF_SENSE_Q','RMS Voltage of the Reference Q Channel','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1762,82,'SIG_DET_OUT','Signal IF Detector Level','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1763,82,'SIG_SENSE_I','RMS Voltage of the Signal I Channel','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1764,82,'SIG_SENSE_Q','RMS Voltage of the Signal Q Channel','%8.3f','Volts','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1765,82,'SUPPLY_CURRENT','Power Supply Current','%8.3f','Amps','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1766,82,'TEMP_29MHZ_OCXO','29 MHz Oven-Controlled Crystal Oscillator Temperature','%8.3f','celsius','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1767,82,'TEMP_95MHZ_OCXO','95 MHz Oven-Controlled Crystal Oscillator Temperature','%8.3f','celsius','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1768,82,'TEMP_LOCK_BOX','Lock Box Temperature','%8.3f','celsius','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1769,82,'TEMP_POWER_SUPPLY','Power Supply Temperature','%8.3f','celsius','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1770,82,'TEMP_REF_MIX','Reference Channel Temperature','%8.3f','celsius','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1771,82,'TEMP_SIG_MIX','Signal Channel Temperature','%8.3f','celsius','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,60.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,1.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1772,83,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1773,83,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1774,83,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1775,83,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1776,83,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1777,83,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1778,83,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1779,83,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1780,83,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1781,83,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1782,83,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1783,83,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1784,83,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1785,83,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1786,83,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1787,83,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1788,83,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1789,83,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1790,83,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1791,83,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1792,83,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1793,83,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1794,83,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1795,83,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1796,83,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1797,83,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1798,83,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1799,83,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1800,83,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1801,83,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1802,83,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1803,83,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1804,83,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1805,83,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1806,83,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1807,83,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1808,83,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1809,83,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1810,83,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1811,83,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1812,83,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1813,83,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1814,83,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1815,83,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1816,83,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1817,83,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1818,83,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1819,83,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1820,83,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1821,83,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1822,83,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1823,83,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1824,83,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1825,83,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1826,83,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1827,85,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1828,85,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1829,85,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1830,85,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1831,85,'DETECTED_FTS_POWER','Detected FTS Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1832,85,'DETECTED_IF_POWER','Detected IF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1833,85,'DETECTED_RF_POWER','Detected RF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',500.0E0,1500.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1834,85,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1835,85,'FM_COIL_VOLTAGE','FM Coil Voltage','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1836,85,'FREQ','none','%none','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1837,85,'FREQUENCY_OFFSET','Difference between commanded and actual DYTO course tune frequency','%2d','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-30.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1838,85,'FTS_STATUS','none','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1839,85,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1840,85,'LO2_FREQUENCY','LO2 Frequency','%2d','hertz','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8000.0E0,14000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1841,85,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1842,85,'MODULE_STATUS','Module Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1843,85,'PHASE_OFFSET','none','%none','second','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1844,85,'PHASE_SEQ1','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1845,85,'PHASE_SEQ2','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1846,85,'PHASE_VALS','none','%none','radian','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1847,85,'POWER_SUPPLY_1_VALUE','Plus 5 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1848,85,'POWER_SUPPLY_2_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1849,85,'POWER_SUPPLY_3_VALUE','Negative 20 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,0.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1850,85,'POWER_SUPPLY_4_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1851,85,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1852,85,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1853,85,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1854,85,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1855,86,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1856,86,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1857,86,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1858,86,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1859,86,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1860,86,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1861,86,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1862,86,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1863,86,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1864,86,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1865,86,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1866,86,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1867,86,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1868,86,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1869,86,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1870,86,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1871,86,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1872,86,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1873,86,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1874,86,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1875,86,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1876,86,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1877,86,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1878,86,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1879,86,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1880,86,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1881,86,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1882,86,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1883,86,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1884,86,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1885,86,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1886,86,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1887,86,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1888,86,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1889,86,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1890,86,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1891,86,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1892,86,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1893,86,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1894,86,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1895,86,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1896,86,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1897,86,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1898,86,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1899,86,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1900,86,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1901,86,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1902,86,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1903,86,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1904,86,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1905,86,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1906,86,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1907,86,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1908,86,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1909,86,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1910,86,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1911,86,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1912,86,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1913,86,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1914,86,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1915,86,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1916,86,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1917,86,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1918,86,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1919,86,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1920,86,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1921,86,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1922,86,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1923,86,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1924,86,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1925,86,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1926,86,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1927,86,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1928,86,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1929,86,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1930,86,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1931,86,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1932,86,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1933,86,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1934,86,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1935,86,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1936,86,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1937,86,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1938,86,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1939,86,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1940,86,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1941,86,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1942,86,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1943,86,'FR_STATUS','FR Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1944,86,'FR_SWITCH_CH1','Switch setting of CH1: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1945,86,'FR_SWITCH_CH2','Switch setting of CH2: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1946,86,'FR_SWITCH_CH3','Switch setting of CH3: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1947,86,'FR_TE_STATUS','FR TE Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1948,86,'FR_TE_STATUS_CLK_EDGE','FR TE inverted clock edge used','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1949,86,'FR_TE_STATUS_CURR_ERR','FR TE current error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1950,86,'FR_TE_STATUS_ERROR','FR TE error flag active','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1951,86,'FR_TE_STATUS_MAX_ERR','FR TE maximum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1952,86,'FR_TE_STATUS_MIN_ERR','FR TE minimum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1953,86,'FR_TMP','Temperature data for FR and TTX','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1954,86,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1955,86,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1956,86,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1957,86,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1958,86,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1959,86,'TTX_ALARM_STATUS','TTX Alarm Status data','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1960,86,'TTX_I2C_DATA','Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1961,86,'TTX_LASER_BIAS_CH1','CH1 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1962,86,'TTX_LASER_BIAS_CH2','CH2 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1963,86,'TTX_LASER_BIAS_CH3','CH3 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1964,86,'TTX_LASER_ENABLED','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1965,86,'TTX_LASER_PWR_CH1','CH1 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1966,86,'TTX_LASER_PWR_CH2','CH2 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1967,86,'TTX_LASER_PWR_CH3','CH3 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1968,86,'TTX_LASER_TMP_CH1','CH1 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1969,86,'TTX_LASER_TMP_CH2','CH2 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1970,86,'TTX_LASER_TMP_CH3','CH3 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1971,87,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1972,87,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1973,87,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1974,87,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1975,87,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1976,87,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1977,87,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1978,87,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1979,87,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(1980,87,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1981,87,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1982,87,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1983,87,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1984,87,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1985,87,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1986,87,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1987,87,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1988,87,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1989,87,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1990,87,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1991,87,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1992,87,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1993,87,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1994,87,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1995,87,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1996,87,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1997,87,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1998,87,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(1999,87,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2000,87,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2001,87,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2002,87,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2003,87,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2004,87,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2005,87,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2006,87,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2007,87,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2008,87,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2009,87,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2010,87,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2011,87,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2012,87,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2013,87,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2014,87,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2015,87,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2016,87,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2017,87,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2018,87,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2019,87,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2020,87,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2021,87,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2022,87,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2023,87,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2024,87,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2025,87,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2026,87,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2027,87,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2028,87,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2029,87,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2030,87,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2031,87,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2032,87,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2033,87,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2034,87,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2035,87,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2036,87,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2037,87,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2038,87,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2039,87,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2040,87,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2041,87,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2042,87,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2043,87,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2044,87,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2045,87,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2046,87,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2047,87,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2048,87,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2049,87,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2050,87,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2051,87,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2052,87,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2053,87,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2054,87,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2055,87,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2056,87,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2057,87,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2058,87,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2059,87,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2060,87,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2061,87,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2062,87,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2063,87,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2064,87,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2065,87,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2066,87,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2067,87,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2068,87,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2069,87,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2070,87,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2071,87,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2072,87,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2073,87,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2074,87,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2075,87,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2076,87,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2077,87,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2078,87,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2079,87,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2080,87,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2081,87,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2082,87,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2083,87,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2084,87,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2085,87,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2086,87,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2087,87,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2088,87,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2089,87,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2090,87,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2091,87,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2092,87,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2093,87,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2094,87,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2095,87,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2096,87,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2097,87,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2098,88,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2099,88,'CAL_RESULT','Whenever a calibration or calibration check sequence is completed, the result is reported with a monitor request. This monitor point returns a bit and a floating point number. The bit indicates if the calibration is with in tolerances and the floating po','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2100,88,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2101,88,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2102,88,'CNTR','Current fringe count','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2103,88,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2104,88,'FIRMWARE_REV','Returns the date and the Perforce (backend repository software) version of the firmware. If no perforce version of the firmware exist, 0x00 is returned for that byte.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2105,88,'FRAM_BYTE','Retrieves a byte from FRAM. This is a tow step process. The command READ_FRAM must be written to load the byte into a buffer.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2106,88,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2107,88,'LOCK','LLC PLL Lock Status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2108,88,'LOCK_ALARM','LLC PLL Lock Alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2109,88,'LVL_50MHZ','50 MHz Reference Level','%none','decibel','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2110,88,'MODULE_ID','Returns the identification information for the module which includes the CIN, Serial Number and Hardware Version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2111,88,'PC_MON1','Read back of polarization line 1 driver','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2112,88,'PC_MON2','Read back of polarization line 2 driver','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2113,88,'PC_MON3','Read back of polarization line 3 driver','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2114,88,'PC_MON4','Read back of polarization line 4 driver','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2115,88,'POLARIZATION_CONTROLLER_CALIBRATION_STATUS','Polarization controller calibration status 1= calibration sequence needed 0= current calibration with tolerances.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2116,88,'POL_MON1','Signal level polarimeter output 1','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2117,88,'POL_MON2','Signal level polarimeter output 2','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2118,88,'POL_MON3','Signal level polarimeter output 3','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2119,88,'POL_MON4','Signal level polarimeter output 4','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2120,88,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2121,88,'P_DET','Signal level output photo detector','%none','decibel','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2122,88,'ROUTINE_STATUS','Status of the automated firmware routines','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2123,88,'RST_CTL_MON','Archive monitor point of the fast and the slow reset stretcher voltages to midrange (2.5 Volts). The power state default for this bit is 1 (Reset), so in order to operate the line length corrector a 0 needs to be written to this bit. This reset only applies to closed loop operat','%none','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2124,88,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2125,88,'SOPC','Returns value of SOPC as floating point number.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2126,88,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2127,88,'TEMP','Stretcher temperature','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2128,88,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2129,88,'VF_CTL_MON','Archive monitor point of the closed-loop (PLL) or open loop (DAC) operation applied to the fast fiber stretcher. Logic 0 selects closed-loop (PLL) operation. Logic 1 selects open-loop control via a DAC using SET_VF_O. Default power up state is closed-loop.','%none','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2130,88,'VF_MON','Signal level from fast fiber stretcher','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2131,88,'VS_CTL_MON','Archive monitor point of the closed-loop (PLL) or open loop (DAC) operation to the slow fiber stretcher. Logic 0 selects closed-loop (PLL) operation. Logic 1 selects open-loop control via a DAC using SET_VS_O. Default power up state is closed-loop.','%none','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2132,88,'VS_MON','Signal level from slow fiber stretcher','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2133,90,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2134,90,'AMP_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2135,90,'AMP_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2136,90,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2137,90,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2138,90,'DIGITAL_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2139,90,'DIGITAL_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2140,90,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2141,90,'HS_TEMP_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2142,90,'HS_TEMP_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2143,90,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2144,90,'OPIN_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2145,90,'OPIN_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2146,90,'OPIN_POW_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2147,90,'OPIN_POW_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2148,90,'OPOUT_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2149,90,'OPOUT_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2150,90,'OPOUT_POWER_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2151,90,'OPOUT_POWER_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2152,90,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2153,90,'PSU_AMP_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2154,90,'PSU_AMP_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2155,90,'PSU_VOLT_A','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2156,90,'PSU_VOLT_B','To be defined','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2157,90,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2158,90,'STATUS_E_A','To be defined','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2159,90,'STATUS_E_B','To be defined','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2160,90,'STATUS_P_A','To be defined','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2161,90,'STATUS_P_B','To be defined','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2162,90,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2163,90,'TEMP_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2164,90,'TEMP_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2165,90,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2166,90,'VN_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2167,90,'VN_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2168,90,'VOLT_FLT_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2169,90,'VOLT_FLT_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2170,90,'XOVERA_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2171,90,'XOVERA_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2172,90,'XOVERB_A','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2173,90,'XOVERB_B','To be defined','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2174,91,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2175,91,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2176,91,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2177,91,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2178,91,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2179,91,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2180,91,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2181,91,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2182,91,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2183,91,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2184,91,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2185,91,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2186,91,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2187,91,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2188,91,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2189,91,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2190,91,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2191,91,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2192,91,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2193,91,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2194,91,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2195,91,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2196,91,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2197,91,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2198,91,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2199,91,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2200,91,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2201,91,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2202,91,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2203,91,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2204,91,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2205,91,'MID_3_CURRENT','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2206,91,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2207,91,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2208,91,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2209,91,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2210,91,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2211,91,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2212,91,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2213,91,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2214,91,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2215,91,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2216,91,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2217,91,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2218,91,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2219,91,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2220,91,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2221,91,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2222,91,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2223,91,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2224,91,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2225,91,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2226,91,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2227,91,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2228,91,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2229,91,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2230,91,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2231,91,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2232,91,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2233,91,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2234,92,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2235,92,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2236,92,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2237,92,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2238,92,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2239,92,'FIRMWARE_DAY','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2240,92,'FIRMWARE_MONTH','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2241,92,'FIRMWARE_REVISION_MAJOR','Firmware Major Revision 0 to 15','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2242,92,'FIRMWARE_REVISION_MINOR','Firmware Minor Revision 0 to 15','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2243,92,'FIRMWARE_YEAR','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2244,92,'FREQ','Frequency vs. Time','%2d','hertz','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',20.0E0,45.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2245,92,'FTS_STATUS','FTS Status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2246,92,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2247,92,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2248,92,'PHASE_OFFSET','Phase Offset vs. Time','%2d','second','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8.0E0,15.999600410461426E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2249,92,'PHASE_SEQ1','Readback for Phase Sequence 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2250,92,'PHASE_SEQ2','Readback for Phase Sequence 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2251,92,'PHASE_VALS','Phase Values','%none','radian','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,6.28000020980835E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2252,92,'PRODUCT_TREE_DIGIT_FOUR','Product Tree Digit 4','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2253,92,'PRODUCT_TREE_DIGIT_ONE','Product Tree Digit 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2254,92,'PRODUCT_TREE_DIGIT_SIX','Product Tree Digit 6','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2255,92,'PRODUCT_TREE_DIGIT_TWO','Product Tree Digit 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2256,92,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2257,92,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2258,92,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2259,92,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2260,93,'ALMA_TIME','ALMA time at the rising edge of current TE','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2261,93,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2262,93,'AMB_CMD_COUNTER','Number of commands over the AMB bus','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2263,93,'AMB_INVALID_CMD','Read data on the last invalid command','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2264,93,'ANALOG_5_GOOD','5 V analog power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2265,93,'ARP_FULL','ARP table full','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2266,93,'A_VREF_GOOD','IFDC Channel A voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2267,93,'BDB_PER_PACKET','Number of Basic Data Blocks','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',32.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2268,93,'B_VREF_GOOD','IFDC Channel B voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2269,93,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2270,93,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2271,93,'CURRENTS_10V','Current in 10 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2272,93,'CURRENTS_6_5V','Current in 6.5 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2273,93,'CURRENTS_8V','Current in 8 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2274,93,'C_VREF_GOOD','IFDC Channel C voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2275,93,'DATA_AVE_LENGTH','Number of 2 kHz samples that are averaged to generate data','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2276,93,'DATA_MONITOR_1','Monitor of the Total Power Data.','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2277,93,'DATA_MONITOR_2','Monitor of the Total Power Data.','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2278,93,'DATA_REMAP','TPD signal flow','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2279,93,'DATA_TRANSFER_ACTIVE','Data transfer active if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2280,93,'DEST_IP_ADDR','TCP connection IP address','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2281,93,'DIGITAL_1DOT2_GOOD','1.2 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2282,93,'DIGITAL_2DOT5_GOOD','2.5 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2283,93,'DIGITAL_3DOT3_GOOD','3.3 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2284,93,'DIGITAL_5_GOOD','5 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2285,93,'D_VREF_GOOD','IFDC Channel D voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2286,93,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2287,93,'ETHERNET_CONNECTED','Ethernet connected if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2288,93,'ETHERNET_MAC','MAC address of the Ethernet controller','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2289,93,'ETHER_CONT_VOLTAGE_GOOD','Ethernet controller voltage good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2290,93,'FIFO_DEPTHS','Reads the internal and external FIFO depths.','%2d','none','1',15,15.0E0,15.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2291,93,'FIFO_FULL','FIFO Full - lost data flag if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2292,93,'FIRST_BYTE_INVALID','First byte of the last invalid command','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2293,93,'GAINS','Attenuator settings for the IFDC','%2d','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2294,93,'IFDC_ADS','IFDC ADS','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2295,93,'IFDC_FOUND','IFDC Found when true','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2296,93,'IFDC_LENGTH','IFDC Length','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2297,93,'IFDC_MCS','IFDC MCS','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2298,93,'IFDC_SPI_PROTO_ERR_COUNTER','IFDC SPI Protocol Error Counter','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2299,93,'IFDC_SPI_STATUS','Status of SPI interface','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2300,93,'IFDC_VAR_LENGTH_READS','IFDC Variable length reads','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2301,93,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2302,93,'LAST_ADDRESS_INTERACTION','Last address interaction','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2303,93,'LENGTH_48MS','number of 125 clock cycles in the last TE','%2d','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2304,93,'LSBS_8_RCAS','8 LSBs of the RCA of the last invalid command','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2305,93,'MAX_ETHERNET_TIMES','Maximum time the Ethernet controller spend handling data from the FPGA','%2d','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2306,93,'MODULE_CODES','IFDC Module Codes','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2307,93,'MODULE_CODES_CDAY','Compile day','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2308,93,'MODULE_CODES_CMONTH','Compile month','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2309,93,'MODULE_CODES_DIG1','Digit 1 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2310,93,'MODULE_CODES_DIG2','Digit 2 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2311,93,'MODULE_CODES_DIG4','Digit 4 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2312,93,'MODULE_CODES_DIG6','Digit 6 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2313,93,'MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2314,93,'MODULE_CODES_VERSION_MAJOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2315,93,'MODULE_CODES_VERSION_MINOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2316,93,'MODULE_CODES_YEAR','Compile year (2000 -> 0x00)','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2317,93,'MODULE_GATEWAY','Gateway','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2318,93,'MODULE_IP_ADDR','Ethernet controller IP Address','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2319,93,'MODULE_NETMASK','Netmask','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2320,93,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2321,93,'ROUTER_NOT_FOUND','Router not found','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2322,93,'S0_VREF_GOOD','Sideband 0 voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2323,93,'S1_VREF_GOOD','Sideband 1 voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2324,93,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2325,93,'SIGNAL_PATHS','Filter values in the IFDC','%2d','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2326,93,'SPI_ERRORS','Errors on the IFDC SPI interface','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2327,93,'STATUS','Read Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2328,93,'STATUS_START_COMM_TEST','Read back of the START_COMM_TEST command','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2329,93,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2330,93,'TCP_CONNECTED','TCP connected if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2331,93,'TCP_DISCONN_CMD','Disconnected by command if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2332,93,'TCP_DISCONN_ERROR','Disconnected by error if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2333,93,'TCP_PORT','TCP Port','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2334,93,'TEMPS_1','Temperatures in the IFDC','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2335,93,'TEMPS_2','Temperatures in the IFDC','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2336,93,'TEMPS_3','Temps in Comm modules','%2d','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-25.0E0,100.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2337,93,'TIMING_ERROR_FLAG','Indication of a timing error between the 125MHz clock and the 48ms timing event.','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2338,93,'TPD_MODULE_CODES','IFMC Module Codes','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2339,93,'TPD_MODULE_CODES_CDAY','Compile day','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2340,93,'TPD_MODULE_CODES_CMONTH','Compile month','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2341,93,'TPD_MODULE_CODES_DIG1','Digit 1 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2342,93,'TPD_MODULE_CODES_DIG2','Digit 2 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2343,93,'TPD_MODULE_CODES_DIG4','Digit 4 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2344,93,'TPD_MODULE_CODES_DIG6','Digit 6 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2345,93,'TPD_MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2346,93,'TPD_MODULE_CODES_VERSION_MAJOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2347,93,'TPD_MODULE_CODES_VERSION_MINOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2348,93,'TPD_MODULE_CODES_YEAR','Compile year (2000 -> 0x00)','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2349,93,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2350,93,'VAL_READ_AMB_CMD_COUNTER','the value of READ_AMB_CMD_COUNTER','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2351,93,'VOLTAGES_1','Voltage levels','%2d','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2352,93,'VOLTAGES_2','Voltage levels','%2d','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2353,94,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2354,94,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2355,94,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2356,94,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2357,94,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2358,94,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2359,94,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2360,94,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2361,94,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2362,94,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2363,94,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2364,94,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2365,94,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2366,94,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2367,94,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2368,94,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2369,94,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2370,94,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2371,94,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2372,94,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2373,94,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2374,94,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2375,94,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2376,94,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2377,94,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2378,94,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2379,94,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2380,94,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2381,94,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2382,94,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2383,94,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2384,94,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2385,94,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2386,94,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2387,94,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2388,94,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2389,94,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2390,94,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2391,94,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2392,94,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2393,94,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2394,94,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2395,94,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2396,94,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2397,94,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2398,94,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2399,94,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2400,94,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2401,94,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2402,94,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2403,94,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2404,94,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2405,94,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2406,94,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2407,94,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2408,94,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2409,94,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2410,94,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2411,94,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2412,94,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2413,94,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2414,94,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2415,94,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2416,94,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2417,94,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2418,94,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2419,94,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2420,94,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2421,94,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2422,94,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2423,94,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2424,94,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2425,94,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2426,94,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2427,94,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2428,94,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2429,94,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2430,94,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2431,94,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2432,94,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2433,94,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2434,94,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2435,94,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2436,94,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2437,94,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2438,94,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2439,94,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2440,94,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2441,94,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2442,94,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2443,94,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2444,94,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2445,94,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2446,94,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2447,94,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2448,94,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2449,94,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2450,94,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2451,94,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2452,94,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2453,94,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2454,94,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2455,94,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2456,94,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2457,94,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2458,94,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2459,94,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2460,94,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2461,94,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2462,94,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2463,94,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2464,94,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2465,94,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2466,94,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2467,94,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2468,94,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2469,94,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2470,94,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2471,94,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2472,94,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2473,94,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2474,94,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2475,94,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2476,94,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2477,94,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2478,94,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2479,94,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2480,95,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2481,95,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2482,95,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2483,95,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2484,95,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2485,95,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2486,95,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2487,95,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2488,95,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2489,95,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2490,95,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2491,95,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2492,95,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2493,95,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2494,95,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2495,95,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2496,95,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2497,95,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2498,95,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2499,95,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2500,95,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2501,95,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2502,95,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2503,95,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2504,95,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2505,95,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2506,95,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2507,95,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2508,95,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2509,95,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2510,95,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2511,95,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2512,95,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2513,95,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2514,95,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2515,95,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2516,95,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2517,95,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2518,95,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2519,95,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2520,95,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2521,95,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2522,95,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2523,95,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2524,95,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2525,95,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2526,95,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2527,95,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2528,95,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2529,95,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2530,95,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2531,95,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2532,95,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2533,95,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2534,95,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2535,95,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2536,95,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2537,95,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2538,95,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2539,95,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2540,95,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2541,95,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2542,95,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2543,95,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2544,95,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2545,95,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2546,95,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2547,95,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2548,95,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2549,95,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2550,95,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2551,95,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2552,95,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2553,95,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2554,95,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2555,95,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2556,95,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2557,95,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2558,95,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2559,95,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2560,95,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2561,95,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2562,95,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2563,95,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2564,95,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2565,95,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2566,95,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2567,95,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2568,95,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2569,95,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2570,95,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2571,95,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2572,95,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2573,95,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2574,95,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2575,95,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2576,95,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2577,95,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2578,95,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2579,95,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2580,95,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2581,95,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2582,95,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2583,95,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2584,95,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2585,95,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2586,95,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2587,95,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2588,95,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2589,95,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2590,95,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2591,95,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2592,95,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2593,95,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2594,95,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2595,95,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2596,95,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2597,95,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2598,95,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2599,95,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2600,95,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2601,95,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2602,95,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2603,95,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2604,95,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2605,95,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2606,95,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2607,96,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2608,96,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2609,96,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2610,96,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2611,96,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2612,96,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2613,96,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2614,96,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2615,96,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2616,96,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2617,96,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2618,96,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2619,96,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2620,96,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2621,96,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2622,96,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2623,96,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2624,96,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2625,96,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2626,96,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2627,96,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2628,96,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2629,96,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2630,96,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2631,96,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2632,96,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2633,96,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2634,96,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2635,96,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2636,96,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2637,96,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2638,96,'MID_3_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2639,96,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2640,96,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2641,96,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2642,96,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2643,96,'MID_4_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2644,96,'MID_4_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2645,96,'MID_4_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2646,96,'MID_4_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2647,96,'MID_4_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2648,96,'MID_5_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2649,96,'MID_5_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2650,96,'MID_5_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2651,96,'MID_5_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2652,96,'MID_5_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2653,96,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2654,96,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2655,96,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2656,96,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2657,96,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2658,96,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2659,96,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2660,96,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2661,96,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2662,96,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2663,96,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2664,96,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2665,96,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2666,96,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2667,96,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2668,96,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2669,96,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2670,96,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2671,96,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2672,96,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2673,96,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2674,96,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2675,96,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2676,96,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2677,98,'ACU_MODE_RSP','Current Operational and Access Mode Information for ACU','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2678,98,'ACU_TRK_MODE_RSP','Current tracking mode information for ACU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2679,98,'AC_STATUS','Air conditioning system status','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2680,98,'ALS_STATUS','Status of auto lubrication system','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2681,98,'ANTENNA_TEMPS','Antenna Temperatures','%2d','kelvin','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2682,98,'AZ_AUX_MODE','Get azimuth auxiliary mode (1/2 motors enabled).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2683,98,'AZ_ENC','Position in raw encoder bits at last 20.83 Hz tick.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2684,98,'AZ_ENCODER_OFFSET','Offset between raw encoder reading and azimuth position excluding contribution from pointing and metrology corrections.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2685,98,'AZ_ENC_STATUS','Azimuth Encoder Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2686,98,'AZ_MOTOR_CURRENTS','Azimuth Motor Currents','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2687,98,'AZ_MOTOR_TEMPS','Azimuth Motor Temperatures','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2688,98,'AZ_MOTOR_TORQUE','Azimuth Motor Torques','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2689,98,'AZ_POSN_RSP','Position of azimuth axis in turns at the last 20.83Hz pulse and 24ms before. Note that the interpretation of the value depends on the current active mode. In ENCODER mode, the position values are uncorrected; in AUTONOMOUS mode the values have been corrected by pointing model and metrology.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2690,98,'AZ_SERVO_COEFF_0','Azimuth servo coefficient 0.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2691,98,'AZ_SERVO_COEFF_1','Azimuth servo coefficient 1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2692,98,'AZ_SERVO_COEFF_2','Azimuth servo coefficient 2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2693,98,'AZ_SERVO_COEFF_3','Azimuth servo coefficient 3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2694,98,'AZ_SERVO_COEFF_4','Azimuth servo coefficient 4.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2695,98,'AZ_SERVO_COEFF_5','Azimuth servo coefficient 5.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2696,98,'AZ_SERVO_COEFF_6','Azimuth servo coefficient 6.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2697,98,'AZ_SERVO_COEFF_7','Azimuth servo coefficient 7.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2698,98,'AZ_SERVO_COEFF_8','Azimuth servo coefficient 8.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2699,98,'AZ_SERVO_COEFF_9','Azimuth servo coefficient 9.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2700,98,'AZ_SERVO_COEFF_A','Azimuth servo coefficient A.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2701,98,'AZ_SERVO_COEFF_B','Azimuth servo coefficient B.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2702,98,'AZ_SERVO_COEFF_C','Azimuth servo coefficient C.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2703,98,'AZ_SERVO_COEFF_D','Azimuth servo coefficient D','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2704,98,'AZ_SERVO_COEFF_E','Azimuth servo coefficient E','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2705,98,'AZ_SERVO_COEFF_F','Azimuth servo coefficient F','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2706,98,'AZ_STATUS','Status of azimuth axis','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2707,98,'AZ_TRAJ','Position in turns and velocity in turns/sec set with the last AZ_TRAJ_CMD','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2708,98,'CAN_ERROR','Status of CAN interface board.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2709,98,'EL_AUX_MODE','Get elevation auxiliary mode (1/2 motors enabled).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2710,98,'EL_ENC','Position in raw encoder bits at last 20.83 Hz tick.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2711,98,'EL_ENCODER_OFFSET','Offset between raw encoder reading and azimuth position excluding contribution from pointing and metrology corrections.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2712,98,'EL_ENC_STATUS','Elevation Encoder Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2713,98,'EL_MOTOR_CURRENTS','Elevation Motor Currents','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2714,98,'EL_MOTOR_TEMPS','Elevation Motor Temperatures','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2715,98,'EL_MOTOR_TORQUE','Elevation Motor Torques','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2716,98,'EL_POSN_RSP','Position of elevation axis in turns at the last 20.83Hz pulse and 24ms before. Note that the interpretation of the value depends on the current active mode. In ENCODER mode, the position values are uncorrected; in AUTONOMOUS mode the values have been corrected by pointing model and metrology.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2717,98,'EL_SERVO_COEFF_0','Elevation servo coefficient 0.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2718,98,'EL_SERVO_COEFF_1','Elevation servo coefficient 1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2719,98,'EL_SERVO_COEFF_2','Elevation servo coefficient 2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2720,98,'EL_SERVO_COEFF_3','Elevation servo coefficient 3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2721,98,'EL_SERVO_COEFF_4','Elevation servo coefficient 4.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2722,98,'EL_SERVO_COEFF_5','Elevation servo coefficient 5.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2723,98,'EL_SERVO_COEFF_6','Elevation servo coefficient 6.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2724,98,'EL_SERVO_COEFF_7','Elevation servo coefficient 7.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2725,98,'EL_SERVO_COEFF_8','Elevation servo coefficient 8.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2726,98,'EL_SERVO_COEFF_9','Elevation servo coefficient 9.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2727,98,'EL_SERVO_COEFF_A','Elevation servo coefficient A.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2728,98,'EL_SERVO_COEFF_B','Elevation servo coefficient B.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2729,98,'EL_SERVO_COEFF_C','Elevation servo coefficient C.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2730,98,'EL_SERVO_COEFF_D','Elevation servo coefficient D','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2731,98,'EL_SERVO_COEFF_E','Elevation servo coefficient E','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2732,98,'EL_SERVO_COEFF_F','Elevation servo coefficient F','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2733,98,'EL_STATUS','Status of elevation axis. Conditions may be fault conditions or status information. Fault conditions require the use of the CLEAR_FAULT_CMD to clear, while status information will clear when the hardware condition is cleared.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2734,98,'EL_TRAJ','Position in turns and velocity in turns/sec set with the last EL_TRAJ_CMD','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2735,98,'IDLE_STOW_TIME','Currently set time for ACU to enter survival stow if no communication is received on CAN bus or timing pulse has ceased.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2736,98,'IP_ADDRESS','ACU IP address (external LAN).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2737,98,'IP_GATEWAY','ACU gateway IP address.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2738,98,'METR_COEFF_0','Metrlogy model coefficient 0 to be used in autonomous mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2739,98,'METR_COEFF_1','Metrlogy model coefficient 1 to be used in autonomous mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2740,98,'METR_DELTAPATH','Error in path length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2741,98,'METR_DELTAS','Metrology Deltas','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2742,98,'METR_DELTAS_TEMP','Get Az and El total delta corecton applied by the metrology system due to temperature variations','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2743,98,'METR_DISPL_0','Metrology displacement sensor 0','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2744,98,'METR_DISPL_1','Metrology displacement sensor 1','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2745,98,'METR_DISPL_2','Metrology displacement sensor 2','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2746,98,'METR_DISPL_3','Metrology displacement sensor 3','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2747,98,'METR_EQUIP_STATUS','Metrology equipment status','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2748,98,'METR_MODE','Get metrology mode','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2749,98,'METR_TEMPS_00','Metrology Temperatures Sensor Pack 00','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2750,98,'METR_TEMPS_01','Metrology Temperatures Sensor Pack 01','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2751,98,'METR_TEMPS_02','Metrology Temperatures Sensor Pack 02','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2752,98,'METR_TEMPS_03','Metrology Temperatures Sensor Pack 03','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2753,98,'METR_TEMPS_04','Metrology Temperatures Sensor Pack 04','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2754,98,'METR_TEMPS_05','Metrology Temperatures Sensor Pack 05','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2755,98,'METR_TEMPS_06','Metrology Temperatures Sensor Pack 06','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2756,98,'METR_TEMPS_07','Metrology Temperatures Sensor Pack 07','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2757,98,'METR_TEMPS_08','Metrology Temperatures Sensor Pack 08','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2758,98,'METR_TEMPS_09','Metrology Temperatures Sensor Pack 09','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2759,98,'METR_TEMPS_0A','Metrology Temperatures Sensor Pack 0A','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2760,98,'METR_TEMPS_0B','Metrology Temperatures Sensor Pack 0B','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2761,98,'METR_TEMPS_0C','Metrology Temperatures Sensor Pack 0C','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2762,98,'METR_TEMPS_0D','Metrology Temperatures Sensor Pack 0D','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2763,98,'METR_TEMPS_0E','Metrology Temperatures Sensor Pack 0E','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2764,98,'METR_TEMPS_0F','Metrology Temperatures Sensor Pack 0F','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2765,98,'METR_TEMPS_10','Metrology Temperatures Sensor Pack 10','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2766,98,'METR_TEMPS_11','Metrology Temperatures Sensor Pack 11','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2767,98,'METR_TEMPS_12','Metrology Temperatures Sensor Pack 12','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2768,98,'METR_TEMPS_13','Metrology Temperatures Sensor Pack 13','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2769,98,'METR_TEMPS_14','Metrology Temperatures Sensor Pack 14','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2770,98,'METR_TEMPS_15','Metrology Temperatures Sensor Pack 15','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2771,98,'METR_TEMPS_16','Metrology Temperatures Sensor Pack 16','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2772,98,'METR_TEMPS_17','Metrology Temperatures Sensor Pack 17','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2773,98,'METR_TEMPS_18','Metrology Temperatures Sensor Pack 18','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2774,98,'METR_TILT_0','Metrology Tiltmeter 0 Readout','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2775,98,'METR_TILT_1','Metrology Tiltmeter 1 Readout','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2776,98,'METR_TILT_2','Metrology Tiltmeter 2 Readout','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2777,98,'NUM_TRANS','Number of CAN transactions handled by ACU since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2778,98,'POWER_STATUS','Power status','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2779,98,'PT_MODEL_COEFF_00','Pointing model coefficient to be used in autonomous mode. IA azimuth encoder zero offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2780,98,'PT_MODEL_COEFF_01','Pointing model coefficient to be used in autonomous mode. CA collimation error of electromagnetic offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2781,98,'PT_MODEL_COEFF_02','Pointing model coefficient to be used in autonomous mode. NPAE non-perpendicularity of mount azimuth and elevation axes.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2782,98,'PT_MODEL_COEFF_03','Pointing model coefficient to be used in autonomous mode. AN azimuth axis offset (misalignment north-south)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2783,98,'PT_MODEL_COEFF_04','Pointing model coefficient to be used in autonomous mode. AW azimuth axis offset (misalingment east-west)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2784,98,'PT_MODEL_COEFF_05','Pointing model coefficient to be used in autonomous mode. IE elevation encoder zero offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2785,98,'PT_MODEL_COEFF_06','Pointing model coefficient to be used in autonomous mode. HECE gravitational flexure correction at the horizon.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2786,98,'PT_MODEL_COEFF_07','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2787,98,'PT_MODEL_COEFF_08','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2788,98,'PT_MODEL_COEFF_09','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2789,98,'PT_MODEL_COEFF_0A','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2790,98,'PT_MODEL_COEFF_0B','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2791,98,'PT_MODEL_COEFF_0C','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2792,98,'PT_MODEL_COEFF_0D','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2793,98,'PT_MODEL_COEFF_0E','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2794,98,'PT_MODEL_COEFF_0F','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2795,98,'SELFTEST_ERR','Reads one entry from the self test failure stack','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2796,98,'SELFTEST_ERR_FAILED_COUNT','Number of failed tests','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2797,98,'SELFTEST_ERR_VALUE','Measured value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2798,98,'SELFTEST_RSP','Get self test status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2799,98,'SELFTEST_RSP_COMPLETED','Self-test completed','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2800,98,'SELFTEST_RSP_ERROR_COUNT','Number of errors on the self-test error stack','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2801,98,'SELFTEST_RSP_FAILED','Self-test failed','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2802,98,'SELFTEST_RSP_FAILED_COUNT','Number of failing tests','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2803,98,'SELFTEST_RSP_RUNNING','Self-test running','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2804,98,'SHUTTER','Shutter Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2805,98,'STOW_PIN','Stow Pin Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2806,98,'SUBREF_ABS_POSN','Subreflector Absolute Positions','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2807,98,'SUBREF_CORR_ROT','Subreflector tilt correction applied by the ACU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2808,98,'SUBREF_DELTA_POSN','Subreflector Delta Positions','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2809,98,'SUBREF_LIMITS','Subreflector Mechanism limit status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2810,98,'SUBREF_ROTATION','Subreflector rotation position.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2811,98,'SUBREF_STATUS','SUBREF_STATUS','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2812,98,'SW_REV_LEVEL','Revision level of vendor ACU code.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2813,98,'SYSTEM_ID','Get ACU hardware and software identifiers. Currently only a software revision level is supported, but could be expanded to include hardware identifiers in future.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2814,98,'SYSTEM_STATUS','System status','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2815,98,'UPS_ALARMS','Alarm status of UPS system. Conditions may be fault conditions or status information.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2816,98,'UPS_BATTERY_OUTPUT','Battery voltage and current','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2817,98,'UPS_BATTERY_STATUS','Nominal battery autonomy','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2818,98,'UPS_BYPASS_VOLTS','Bypass voltages by phase','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2819,98,'UPS_FREQS','Bypass and inverter frequencies','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2820,98,'UPS_INVERTER_VOLTS','Inverter voltages by phase','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2821,98,'UPS_OUTPUT_CURRENT','UPS Output Currents','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2822,98,'UPS_OUTPUT_VOLTS','UPS Output Voltages','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2823,99,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2824,99,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2825,99,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2826,99,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2827,99,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2828,99,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2829,99,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2830,99,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2831,99,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2832,99,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2833,99,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2834,99,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2835,99,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2836,99,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2837,99,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2838,99,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2839,99,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2840,99,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2841,99,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2842,99,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2843,99,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2844,99,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2845,99,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2846,99,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2847,99,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2848,99,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2849,99,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2850,99,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2851,99,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2852,99,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2853,99,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2854,99,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2855,99,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2856,99,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2857,99,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2858,99,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2859,99,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2860,99,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2861,99,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2862,99,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2863,99,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2864,99,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2865,99,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2866,99,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2867,99,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2868,99,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2869,99,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2870,99,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2871,99,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2872,99,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2873,99,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2874,99,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2875,99,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2876,99,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2877,99,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2878,99,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2879,99,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2880,99,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2881,99,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2882,99,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2883,99,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2884,99,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2885,99,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2886,99,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2887,99,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2888,99,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2889,99,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2890,99,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2891,99,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2892,99,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2893,99,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2894,99,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2895,99,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2896,99,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2897,99,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2898,99,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2899,99,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2900,99,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2901,99,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2902,99,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2903,99,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2904,99,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2905,99,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2906,99,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2907,99,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2908,99,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2909,99,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2910,99,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2911,99,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2912,99,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2913,99,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2914,99,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2915,99,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2916,99,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2917,99,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2918,99,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2919,99,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2920,99,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2921,99,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2922,99,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2923,99,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2924,99,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2925,99,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2926,99,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2927,99,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2928,99,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2929,99,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2930,99,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2931,99,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2932,99,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2933,99,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2934,99,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2935,99,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2936,99,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2937,99,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2938,99,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2939,99,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2940,99,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2941,99,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2942,99,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2943,99,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2944,99,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2945,99,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2946,99,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2947,99,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2948,99,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2949,99,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2950,100,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2951,100,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2952,100,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2953,100,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2954,100,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2955,100,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2956,100,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2957,100,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2958,100,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2959,100,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2960,100,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2961,100,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2962,100,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2963,100,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2964,100,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2965,100,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2966,100,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2967,100,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2968,100,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2969,100,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2970,100,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2971,100,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2972,100,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2973,100,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2974,100,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2975,100,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(2976,100,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2977,100,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2978,100,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2979,100,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2980,100,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2981,100,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2982,100,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2983,100,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2984,100,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2985,100,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2986,100,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2987,100,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2988,100,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2989,100,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2990,100,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2991,100,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2992,100,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2993,100,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2994,100,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2995,100,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2996,100,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2997,100,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2998,100,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(2999,100,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3000,100,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3001,100,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3002,100,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3003,100,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3004,100,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3005,100,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3006,100,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3007,100,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3008,100,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3009,100,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3010,100,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3011,100,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3012,100,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3013,100,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3014,100,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3015,100,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3016,100,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3017,100,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3018,100,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3019,100,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3020,100,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3021,100,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3022,100,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3023,100,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3024,100,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3025,100,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3026,100,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3027,100,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3028,100,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3029,100,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3030,100,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3031,100,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3032,100,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3033,100,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3034,100,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3035,100,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3036,100,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3037,100,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3038,100,'FR_STATUS','FR Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3039,100,'FR_SWITCH_CH1','Switch setting of CH1: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3040,100,'FR_SWITCH_CH2','Switch setting of CH2: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3041,100,'FR_SWITCH_CH3','Switch setting of CH3: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3042,100,'FR_TE_STATUS','FR TE Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3043,100,'FR_TE_STATUS_CLK_EDGE','FR TE inverted clock edge used','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3044,100,'FR_TE_STATUS_CURR_ERR','FR TE current error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3045,100,'FR_TE_STATUS_ERROR','FR TE error flag active','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3046,100,'FR_TE_STATUS_MAX_ERR','FR TE maximum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3047,100,'FR_TE_STATUS_MIN_ERR','FR TE minimum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3048,100,'FR_TMP','Temperature data for FR and TTX','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3049,100,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3050,100,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3051,100,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3052,100,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3053,100,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3054,100,'TTX_ALARM_STATUS','TTX Alarm Status data','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3055,100,'TTX_I2C_DATA','Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3056,100,'TTX_LASER_BIAS_CH1','CH1 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3057,100,'TTX_LASER_BIAS_CH2','CH2 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3058,100,'TTX_LASER_BIAS_CH3','CH3 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3059,100,'TTX_LASER_ENABLED','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3060,100,'TTX_LASER_PWR_CH1','CH1 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3061,100,'TTX_LASER_PWR_CH2','CH2 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3062,100,'TTX_LASER_PWR_CH3','CH3 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3063,100,'TTX_LASER_TMP_CH1','CH1 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3064,100,'TTX_LASER_TMP_CH2','CH2 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3065,100,'TTX_LASER_TMP_CH3','CH3 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3066,101,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3067,101,'BEATNOTE_OPT_DET','BEATNOTE_OPT_DET','%7.2f','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3068,101,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3069,101,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3070,101,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3071,101,'FIRMWARE_REV','This monitor point provides the date and the Perforce (backend repository software) version of the firmware.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3072,101,'FRAM_BUFFER','Retrieves a byte from the FRAM buffer. Reading a value from the FRAM is a two step process. The command READ_FRAM must be written to load the byte from a memory location into a buffer. This monitor point then reads the value stored in the buffer.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3073,101,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3074,101,'MODULE_ID','This monitor point provides the identification information for the module which includes the CIN, Serial Number and Hardware version. ','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3075,101,'PBS_OPT_DET','PBS_OPT_DET','%7.2f','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3076,101,'POL1_OPTM_NEEDED','POL1_OPTM_NEEDED','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3077,101,'POL1_OPTM_NEEDED_PEAK_LEVEL','^POL1_OPTM_NEEDED_PEAK_LEVEL','%7.2f','decibel','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3078,101,'POL1_OPTM_NEEDED_PSB','^POL1_OPTM_NEEDED_PSB','%7.2f','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3079,101,'POL1_TEMP','POL1_TEMP','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3080,101,'POL1_V1','POL1_V1','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3081,101,'POL1_V2','POL1_V2','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3082,101,'POL1_V3','POL1_V3','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3083,101,'POL1_V4','POL1_V4','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3084,101,'POL2_OPTM_NEEDED','POL2_OPTM_NEEDED','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3085,101,'POL2_OPTM_NEEDED_ML_PEAK_LEVEL','^POL2_OPTM_NEEDED_ML_PEAK_LEVEL','%7.2f','decibel','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3086,101,'POL2_OPTM_NEEDED_ML_REF','^POL2_OPTM_NEEDED_ML_REF','%7.2f','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3087,101,'POL2_TEMP','POL2_TEMP','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3088,101,'POL2_V1','POL2_V1','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3089,101,'POL2_V2','POL2_V2','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3090,101,'POL2_V3','POL2_V3','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3091,101,'POL2_V4','POL2_V4','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3092,101,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3093,101,'RETURN_DET','RETURN_DET','%7.2f','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3094,101,'ROUTINE_STATUS','ROUTINE_STATUS','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3095,101,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3096,101,'SWITCH_PORT','SWITCH_PORT','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3097,101,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3098,101,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3099,102,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3100,102,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3101,102,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3102,102,'COMPRESSOR_AUX_2','Voltage of the Auxiliary 4-20mA input 2','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,7.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3103,102,'COMPRESSOR_DRIVE_INDICATION_ON','Drive Indication; Range: Bit 0 = 0: Off, Bit 0 = 1: On','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3104,102,'COMPRESSOR_ECU_TYPE','ICCU Environmental Control Unit Type','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3105,102,'COMPRESSOR_FAULT_STATUS_ERROR','Interlock Alarm Status','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3106,102,'COMPRESSOR_FETIM_CABLE_ERROR','FE Thermal Interlock Cable Detect','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3107,102,'COMPRESSOR_FETIM_STATUS_ERROR','FETIM Status Bit. Indicates if the FE is in a safe state to proceed with cooling.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3108,102,'COMPRESSOR_ICCU_CABLE_DETECT_ERROR','ICCU Enclosure Environmental Status Bit.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3109,102,'COMPRESSOR_ICCU_STATUS_ERROR','ICCU Enclosure Environmental Status Bit.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3110,102,'COMPRESSOR_INTERLOCK_OVERRIDE','Interlock Override Status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3111,102,'COMPRESSOR_PRESSURE_ALARM','Pressure Alarm; Bit 0 = 0: Nominal, Bit 0 = 1: Error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3112,102,'COMPRESSOR_RET_PRESSURE','Pressure in return line. Pressure transducer provides 4-20mA signal where 4mA = 0 MPa, 20mA = 4 MPa.','%3.3f','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3113,102,'COMPRESSOR_SUPPLY_PRESSURE','He Pressure in supply line. Pressure transducer provides 4-20mA signal where 4mA = 0 MPa, 20mA = 4 MPa.','%7.2f','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3114,102,'COMPRESSOR_SW_REVISION_LEVEL','Return the current revision level of the software. Byte_0 = Major, Byte_1 = Minor, Byte_3 = Patch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3115,102,'COMPRESSOR_TEMP_1','Temperature (Celsius) of the PT-100 sensor 1','%3.3f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-50.0E0,80.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3116,102,'COMPRESSOR_TEMP_2','Temperature (Celsius) of the PT-100 sensor 2','%3.3f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-50.0E0,80.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3117,102,'COMPRESSOR_TEMP_3','Temperature (Celsius) of the PT-100 sensor 3','%3.3f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-50.0E0,80.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3118,102,'COMPRESSOR_TEMP_4','Temperature (Celsius) of the PT-100 sensor 4','%3.3f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-50.0E0,80.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3119,102,'COMPRESSOR_TEMP_ALARM','Temperature Alarm; Bit 0 = 0: Nominal, Bit 0 = 1: Error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3120,102,'COMPRESSOR_TIME_SINCE_LAST_POWER_OFF','According to Sumitomo The cryocooler ON/OFF frequency must be less than 6 times per hour. This interlock is implemented in software and this monitor point return the time elapsed since the last drive off command. The combination of this and the previous requirements are such that an interval of at least 7 minutes has to be waited before allowing a remote drive ON command after a remote drive OFF was issued. The returned value is reset to [0xFF] once the 7 minutes have elapsed.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3121,102,'COMPRESSOR_TIME_SINCE_LAST_POWER_ON','According to Sumitomo the ON to OFF interval must be more than 3 minutes. This interlock is implemented in software and this monitor point return the time elapsed since the last drive on command. Until the 3 minutes time has expired, the remote drive OFF command will be ignored. The returned value is reset to [0xFF] once the 3 minutes have elapsed.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3122,102,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3123,102,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3124,102,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3125,102,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3126,102,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3127,102,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3128,103,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3129,103,'BE_BIAS0','Get BE bias settings for channel 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3130,103,'BE_BIAS1','Get BE bias settings for channel 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3131,103,'BE_BIAS2','Get BE bias settings for channel 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3132,103,'BE_BIAS3','Get BE bias settings for channel 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3133,103,'BE_BW0','Get BE bandwidth settings for channel 0','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3134,103,'BE_BW1','Get BE bandwidth settings for channel 0','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3135,103,'BE_BW2','Get BE bandwidth settings for channel 0','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3136,103,'BE_BW3','Get BE bandwidth settings for channel 0','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3137,103,'BE_NTC','Get BE thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3138,103,'BE_PWM','Get BE PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3139,103,'BE_TEMP','Get BE temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3140,103,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3141,103,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3142,103,'CHOP_BLNK','Chopper blanking','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3143,103,'CHOP_CURR','Get chopper wheel current','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3144,103,'CHOP_PHASE_ACTUAL','Chopper wheel present phase','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3145,103,'CHOP_PHASE_SETTING','Chopper wheel phase setting','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3146,103,'CHOP_POS','Get chopper position','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3147,103,'CHOP_PWM','Get chopper PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3148,103,'CHOP_STATE','Get chopper status','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3149,103,'CHOP_VEL','Present chopper wheel velocity','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3150,103,'COLD_NTC','Get cold load thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3151,103,'COLD_PWM','Get cold load PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3152,103,'COLD_TEMP','Get cold load temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3153,103,'CS_NTC','Get CS thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3154,103,'CS_PWM','Get CS PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3155,103,'CS_TEMP','Get CS temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3156,103,'CTRL_12CURR','Get 12V supply control current','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3157,103,'CTRL_12VOLT','Get 12V supply control voltage','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3158,103,'CTRL_6CURR','Get 6V supply control current','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3159,103,'CTRL_6VOLT','Get 6V supply control cvoltageurrent','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3160,103,'CTRL_M6CURR','Get -6V supply control current','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3161,103,'CTRL_M6VOLT','Get -6V supply control cvoltageurrent','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3162,103,'CTRL_NTC','Get controller board thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3163,103,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3164,103,'HOT_NTC','Get hot load thermistor read-out','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3165,103,'HOT_PWM','Get hot load PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3166,103,'HOT_TEMP','Get hot load temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3167,103,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3168,103,'INT_COLD0','Get last cold load raw integration value for filterbank 0 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3169,103,'INT_COLD1','Get last cold load raw integration value for filterbank 1 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3170,103,'INT_COLD2','Get last cold load raw integration value for filterbank 2 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3171,103,'INT_COLD3','Get last cold load raw integration value for filterbank 3 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3172,103,'INT_EST0','Get gain estimate and timestamp for filterbank 0','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3173,103,'INT_EST1','Get gain estimate and timestamp for filterbank 1','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3174,103,'INT_EST2','Get gain estimate and timestamp for filterbank 2','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3175,103,'INT_EST3','Get gain estimate and timestamp for filterbank 3','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3176,103,'INT_HOT0','Get last hot load raw integration value for filterbank 0 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3177,103,'INT_HOT1','Get last hot load raw integration value for filterbank 1 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3178,103,'INT_HOT2','Get last hot load raw integration value for filterbank 2 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3179,103,'INT_HOT3','Get last hot load raw integration value for filterbank 3 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3180,103,'INT_SETS','Get integration settings','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3181,103,'INT_SKYA0','Get last skyA raw integration data for filterbank 0 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3182,103,'INT_SKYA1','Get last skyA raw integration data for filterbank 1 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3183,103,'INT_SKYA2','Get last skyA raw integration data for filterbank 2 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3184,103,'INT_SKYA3','Get last skyA raw integration data for filterbank 3 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3185,103,'INT_SKYB0','Get last skyB raw integration data for filterbank 0 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3186,103,'INT_SKYB1','Get last skyB raw integration data for filterbank 1 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3187,103,'INT_SKYB2','Get last skyB raw integration data for filterbank 2 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3188,103,'INT_SKYB3','Get last skyB raw integration data for filterbank 3 and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3189,103,'INT_TIMEA','Get integration time for skyA','%none','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3190,103,'INT_TIMEB','Get integration time for skyB','%none','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3191,103,'INT_TIMEC','Get integration time for cold load','%none','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3192,103,'INT_TIMEH','Get integration time for hot load','%none','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3193,103,'INT_TSRC0','Get integrated temperature (Tsrc0) and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3194,103,'INT_TSRC1','Get integrated temperature (Tsrc1) and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3195,103,'INT_TSRC2','Get integrated temperature (Tsrc2) and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3196,103,'INT_TSRC3','Get integrated temperature (Tsrc2) and timestamp','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3197,103,'LNA_TEMP','Get LNA temperature','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3198,103,'LO_BIAS0','Get LO bias 0 settings','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3199,103,'LO_BIAS1','Get LO bias 1 settings','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3200,103,'LO_FREQ','Get LO frequency setting','%none','hertz','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3201,103,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3202,103,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3203,103,'SW_REV','Get software and calibration file revisions, plus WVR unit serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3204,103,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3205,103,'TP_PWM','Get TP PWM duty cycle','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3206,103,'TP_TEMP','Get TP temperatures','%none','kelvin','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3207,103,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3208,103,'WVR_ALARMS','Alarm bits settings','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3209,103,'WVR_STATE','Determine WVR state','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3210,103,'WVR_STATE_ALARMS','Some alarm bits are set','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3211,103,'WVR_STATE_BOOTED','Just booted','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3212,103,'WVR_STATE_CLOCK_PRESENT','125 MHZ external clock present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3213,103,'WVR_STATE_MODE','The WVR is running','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3214,103,'WVR_STATE_OPERATIONAL','Ready for operational mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3215,103,'WVR_STATE_TE_PRESENT','TE ticks present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3216,104,'ALMA_TIME','ALMA time at the rising edge of current TE','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3217,104,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3218,104,'AMB_CMD_COUNTER','Number of commands over the AMB bus','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3219,104,'AMB_INVALID_CMD','Read data on the last invalid command','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3220,104,'ANALOG_5_GOOD','5 V analog power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3221,104,'ARP_FULL','ARP table full','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3222,104,'A_VREF_GOOD','IFDC Channel A voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3223,104,'BDB_PER_PACKET','Number of Basic Data Blocks','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',32.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3224,104,'B_VREF_GOOD','IFDC Channel B voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3225,104,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3226,104,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3227,104,'CURRENTS_10V','Current in 10 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3228,104,'CURRENTS_6_5V','Current in 6.5 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3229,104,'CURRENTS_8V','Current in 8 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3230,104,'C_VREF_GOOD','IFDC Channel C voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3231,104,'DATA_AVE_LENGTH','Number of 2 kHz samples that are averaged to generate data','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3232,104,'DATA_MONITOR_1','Monitor of the Total Power Data.','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3233,104,'DATA_MONITOR_2','Monitor of the Total Power Data.','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3234,104,'DATA_REMAP','TPD signal flow','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3235,104,'DATA_TRANSFER_ACTIVE','Data transfer active if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3236,104,'DEST_IP_ADDR','TCP connection IP address','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3237,104,'DIGITAL_1DOT2_GOOD','1.2 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3238,104,'DIGITAL_2DOT5_GOOD','2.5 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3239,104,'DIGITAL_3DOT3_GOOD','3.3 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3240,104,'DIGITAL_5_GOOD','5 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3241,104,'D_VREF_GOOD','IFDC Channel D voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3242,104,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3243,104,'ETHERNET_CONNECTED','Ethernet connected if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3244,104,'ETHERNET_MAC','MAC address of the Ethernet controller','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3245,104,'ETHER_CONT_VOLTAGE_GOOD','Ethernet controller voltage good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3246,104,'FIFO_DEPTHS','Reads the internal and external FIFO depths.','%2d','none','1',15,15.0E0,15.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3247,104,'FIFO_FULL','FIFO Full - lost data flag if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3248,104,'FIRST_BYTE_INVALID','First byte of the last invalid command','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3249,104,'GAINS','Attenuator settings for the IFDC','%2d','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3250,104,'IFDC_ADS','IFDC ADS','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3251,104,'IFDC_FOUND','IFDC Found when true','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3252,104,'IFDC_LENGTH','IFDC Length','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3253,104,'IFDC_MCS','IFDC MCS','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3254,104,'IFDC_SPI_PROTO_ERR_COUNTER','IFDC SPI Protocol Error Counter','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3255,104,'IFDC_SPI_STATUS','Status of SPI interface','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3256,104,'IFDC_VAR_LENGTH_READS','IFDC Variable length reads','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3257,104,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3258,104,'LAST_ADDRESS_INTERACTION','Last address interaction','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3259,104,'LENGTH_48MS','number of 125 clock cycles in the last TE','%2d','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3260,104,'LSBS_8_RCAS','8 LSBs of the RCA of the last invalid command','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3261,104,'MAX_ETHERNET_TIMES','Maximum time the Ethernet controller spend handling data from the FPGA','%2d','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3262,104,'MODULE_CODES','IFDC Module Codes','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3263,104,'MODULE_CODES_CDAY','Compile day','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3264,104,'MODULE_CODES_CMONTH','Compile month','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3265,104,'MODULE_CODES_DIG1','Digit 1 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3266,104,'MODULE_CODES_DIG2','Digit 2 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3267,104,'MODULE_CODES_DIG4','Digit 4 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3268,104,'MODULE_CODES_DIG6','Digit 6 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3269,104,'MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3270,104,'MODULE_CODES_VERSION_MAJOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3271,104,'MODULE_CODES_VERSION_MINOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3272,104,'MODULE_CODES_YEAR','Compile year (2000 -> 0x00)','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3273,104,'MODULE_GATEWAY','Gateway','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3274,104,'MODULE_IP_ADDR','Ethernet controller IP Address','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3275,104,'MODULE_NETMASK','Netmask','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3276,104,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3277,104,'ROUTER_NOT_FOUND','Router not found','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3278,104,'S0_VREF_GOOD','Sideband 0 voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3279,104,'S1_VREF_GOOD','Sideband 1 voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3280,104,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3281,104,'SIGNAL_PATHS','Filter values in the IFDC','%2d','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3282,104,'SPI_ERRORS','Errors on the IFDC SPI interface','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3283,104,'STATUS','Read Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3284,104,'STATUS_START_COMM_TEST','Read back of the START_COMM_TEST command','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3285,104,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3286,104,'TCP_CONNECTED','TCP connected if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3287,104,'TCP_DISCONN_CMD','Disconnected by command if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3288,104,'TCP_DISCONN_ERROR','Disconnected by error if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3289,104,'TCP_PORT','TCP Port','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3290,104,'TEMPS_1','Temperatures in the IFDC','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3291,104,'TEMPS_2','Temperatures in the IFDC','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3292,104,'TEMPS_3','Temps in Comm modules','%2d','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-25.0E0,100.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3293,104,'TIMING_ERROR_FLAG','Indication of a timing error between the 125MHz clock and the 48ms timing event.','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3294,104,'TPD_MODULE_CODES','IFMC Module Codes','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3295,104,'TPD_MODULE_CODES_CDAY','Compile day','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3296,104,'TPD_MODULE_CODES_CMONTH','Compile month','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3297,104,'TPD_MODULE_CODES_DIG1','Digit 1 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3298,104,'TPD_MODULE_CODES_DIG2','Digit 2 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3299,104,'TPD_MODULE_CODES_DIG4','Digit 4 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3300,104,'TPD_MODULE_CODES_DIG6','Digit 6 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3301,104,'TPD_MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3302,104,'TPD_MODULE_CODES_VERSION_MAJOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3303,104,'TPD_MODULE_CODES_VERSION_MINOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3304,104,'TPD_MODULE_CODES_YEAR','Compile year (2000 -> 0x00)','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3305,104,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3306,104,'VAL_READ_AMB_CMD_COUNTER','the value of READ_AMB_CMD_COUNTER','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3307,104,'VOLTAGES_1','Voltage levels','%2d','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3308,104,'VOLTAGES_2','Voltage levels','%2d','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3309,106,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3310,106,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3311,106,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3312,106,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3313,106,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3314,106,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3315,106,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3316,106,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3317,106,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3318,106,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3319,106,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3320,106,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3321,106,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3322,106,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3323,106,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3324,106,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3325,106,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3326,106,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3327,106,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3328,106,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3329,106,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3330,106,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3331,106,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3332,106,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3333,106,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3334,106,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3335,106,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3336,106,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3337,106,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3338,106,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3339,106,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3340,106,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3341,106,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3342,106,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3343,106,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3344,106,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3345,106,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3346,106,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3347,106,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3348,106,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3349,106,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3350,106,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3351,106,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3352,106,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3353,106,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3354,106,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3355,106,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3356,106,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3357,106,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3358,106,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3359,106,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3360,106,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3361,106,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3362,106,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3363,106,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3364,106,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3365,106,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3366,106,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3367,106,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3368,106,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3369,106,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3370,106,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3371,106,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3372,106,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3373,106,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3374,106,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3375,106,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3376,106,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3377,106,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3378,106,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3379,106,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3380,106,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3381,106,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3382,106,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3383,106,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3384,106,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3385,106,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3386,106,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3387,106,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3388,106,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3389,106,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3390,106,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3391,106,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3392,106,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3393,106,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3394,106,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3395,106,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3396,106,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3397,106,'FR_STATUS','FR Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3398,106,'FR_SWITCH_CH1','Switch setting of CH1: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3399,106,'FR_SWITCH_CH2','Switch setting of CH2: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3400,106,'FR_SWITCH_CH3','Switch setting of CH3: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3401,106,'FR_TE_STATUS','FR TE Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3402,106,'FR_TE_STATUS_CLK_EDGE','FR TE inverted clock edge used','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3403,106,'FR_TE_STATUS_CURR_ERR','FR TE current error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3404,106,'FR_TE_STATUS_ERROR','FR TE error flag active','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3405,106,'FR_TE_STATUS_MAX_ERR','FR TE maximum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3406,106,'FR_TE_STATUS_MIN_ERR','FR TE minimum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3407,106,'FR_TMP','Temperature data for FR and TTX','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3408,106,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3409,106,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3410,106,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3411,106,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3412,106,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3413,106,'TTX_ALARM_STATUS','TTX Alarm Status data','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3414,106,'TTX_I2C_DATA','Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3415,106,'TTX_LASER_BIAS_CH1','CH1 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3416,106,'TTX_LASER_BIAS_CH2','CH2 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3417,106,'TTX_LASER_BIAS_CH3','CH3 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3418,106,'TTX_LASER_ENABLED','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3419,106,'TTX_LASER_PWR_CH1','CH1 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3420,106,'TTX_LASER_PWR_CH2','CH2 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3421,106,'TTX_LASER_PWR_CH3','CH3 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3422,106,'TTX_LASER_TMP_CH1','CH1 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3423,106,'TTX_LASER_TMP_CH2','CH2 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3424,106,'TTX_LASER_TMP_CH3','CH3 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3425,107,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3426,107,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3427,107,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3428,107,'CURRENT_PHASE_1','Current Phase 1','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3429,107,'CURRENT_PHASE_2','Current Phase 2','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3430,107,'DELAY','Delay','%none','second','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3431,107,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3432,107,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3433,107,'LAST_PHASE_COMMAND_1','Last Phase Command 1','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3434,107,'LAST_PHASE_COMMAND_2','Last Phase Command 2','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3435,107,'LOCK_VOLTAGE','Power Supply Voltage','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3436,107,'MISSED_COMMAND_FLAG','Phase command missing','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3437,107,'MODULE_CODES','Module codes for the DGCK','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3438,107,'MODULE_CODES_CDAY','Compile day','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3439,107,'MODULE_CODES_CMONTH','Compile month','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3440,107,'MODULE_CODES_DIG1','Digit 1 of the product tree #','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3441,107,'MODULE_CODES_DIG2','Digit 2 of the product tree #','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3442,107,'MODULE_CODES_DIG4','Digit 4 of the product tree #','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3443,107,'MODULE_CODES_DIG6','Digit 6 of the product tree #','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3444,107,'MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3445,107,'MODULE_CODES_VERSION_MAJOR','Version 0.0 to 15.15 high nibble - major revision, low nibble - minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3446,107,'MODULE_CODES_VERSION_MINOR','Version 0.0 to 15.15 high nibble - major revision, low nibble - minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3447,107,'MODULE_CODES_YEAR','Compile year (2000 implies 0x00)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3448,107,'PLL_LOCK_FLAG','PLL is out of lock','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3449,107,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3450,107,'PS_VOLTAGE','The measured voltage of the clock module +6V power supply.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3451,107,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3452,107,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3453,107,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3454,108,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3455,108,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3456,108,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3457,108,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3458,108,'DETECTED_FTS_POWER','Detected FTS Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3459,108,'DETECTED_IF_POWER','Detected IF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3460,108,'DETECTED_RF_POWER','Detected RF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',500.0E0,1500.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3461,108,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3462,108,'FM_COIL_VOLTAGE','FM Coil Voltage','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3463,108,'FREQ','none','%none','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3464,108,'FREQUENCY_OFFSET','Difference between commanded and actual DYTO course tune frequency','%2d','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-30.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3465,108,'FTS_STATUS','none','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3466,108,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3467,108,'LO2_FREQUENCY','LO2 Frequency','%2d','hertz','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8000.0E0,14000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3468,108,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3469,108,'MODULE_STATUS','Module Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3470,108,'PHASE_OFFSET','none','%none','second','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3471,108,'PHASE_SEQ1','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3472,108,'PHASE_SEQ2','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3473,108,'PHASE_VALS','none','%none','radian','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3474,108,'POWER_SUPPLY_1_VALUE','Plus 5 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3475,108,'POWER_SUPPLY_2_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3476,108,'POWER_SUPPLY_3_VALUE','Negative 20 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,0.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3477,108,'POWER_SUPPLY_4_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3478,108,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3479,108,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3480,108,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3481,108,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3482,109,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3483,109,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3484,109,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3485,109,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3486,109,'DETECTED_FTS_POWER','Detected FTS Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3487,109,'DETECTED_IF_POWER','Detected IF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3488,109,'DETECTED_RF_POWER','Detected RF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',500.0E0,1500.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3489,109,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3490,109,'FM_COIL_VOLTAGE','FM Coil Voltage','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3491,109,'FREQ','none','%none','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3492,109,'FREQUENCY_OFFSET','Difference between commanded and actual DYTO course tune frequency','%2d','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-30.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3493,109,'FTS_STATUS','none','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3494,109,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3495,109,'LO2_FREQUENCY','LO2 Frequency','%2d','hertz','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8000.0E0,14000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3496,109,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3497,109,'MODULE_STATUS','Module Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3498,109,'PHASE_OFFSET','none','%none','second','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3499,109,'PHASE_SEQ1','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3500,109,'PHASE_SEQ2','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3501,109,'PHASE_VALS','none','%none','radian','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3502,109,'POWER_SUPPLY_1_VALUE','Plus 5 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3503,109,'POWER_SUPPLY_2_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3504,109,'POWER_SUPPLY_3_VALUE','Negative 20 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,0.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3505,109,'POWER_SUPPLY_4_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3506,109,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3507,109,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3508,109,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3509,109,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3510,110,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3511,110,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3512,110,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3513,110,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3514,110,'DETECTED_FTS_POWER','Detected FTS Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3515,110,'DETECTED_IF_POWER','Detected IF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3516,110,'DETECTED_RF_POWER','Detected RF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',500.0E0,1500.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3517,110,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3518,110,'FM_COIL_VOLTAGE','FM Coil Voltage','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3519,110,'FREQ','none','%none','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3520,110,'FREQUENCY_OFFSET','Difference between commanded and actual DYTO course tune frequency','%2d','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-30.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3521,110,'FTS_STATUS','none','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3522,110,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3523,110,'LO2_FREQUENCY','LO2 Frequency','%2d','hertz','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8000.0E0,14000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3524,110,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3525,110,'MODULE_STATUS','Module Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3526,110,'PHASE_OFFSET','none','%none','second','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3527,110,'PHASE_SEQ1','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3528,110,'PHASE_SEQ2','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3529,110,'PHASE_VALS','none','%none','radian','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3530,110,'POWER_SUPPLY_1_VALUE','Plus 5 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3531,110,'POWER_SUPPLY_2_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3532,110,'POWER_SUPPLY_3_VALUE','Negative 20 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,0.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3533,110,'POWER_SUPPLY_4_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3534,110,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3535,110,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3536,110,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3537,110,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3538,111,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3539,111,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3540,111,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3541,111,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3542,111,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3543,111,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3544,111,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3545,111,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3546,111,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3547,111,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3548,111,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3549,111,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3550,111,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3551,111,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3552,111,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3553,111,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3554,111,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3555,111,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3556,111,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3557,111,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3558,111,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3559,111,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3560,111,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3561,111,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3562,111,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3563,111,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3564,111,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3565,111,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3566,111,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3567,111,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3568,111,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3569,111,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3570,111,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3571,111,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3572,111,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3573,111,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3574,111,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3575,111,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3576,111,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3577,111,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3578,111,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3579,111,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3580,111,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3581,111,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3582,111,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3583,111,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3584,111,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3585,111,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3586,111,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3587,111,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3588,111,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3589,111,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3590,111,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3591,111,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3592,111,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3593,111,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3594,111,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3595,111,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3596,111,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3597,111,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3598,111,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3599,111,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3600,111,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3601,111,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3602,111,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3603,111,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3604,111,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3605,111,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3606,111,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3607,111,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3608,111,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3609,111,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3610,111,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3611,111,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3612,111,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3613,111,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3614,111,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3615,111,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3616,111,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3617,111,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3618,111,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3619,111,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3620,111,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3621,111,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3622,111,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3623,111,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3624,111,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3625,111,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3626,111,'FR_STATUS','FR Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3627,111,'FR_SWITCH_CH1','Switch setting of CH1: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3628,111,'FR_SWITCH_CH2','Switch setting of CH2: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3629,111,'FR_SWITCH_CH3','Switch setting of CH3: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3630,111,'FR_TE_STATUS','FR TE Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3631,111,'FR_TE_STATUS_CLK_EDGE','FR TE inverted clock edge used','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3632,111,'FR_TE_STATUS_CURR_ERR','FR TE current error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3633,111,'FR_TE_STATUS_ERROR','FR TE error flag active','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3634,111,'FR_TE_STATUS_MAX_ERR','FR TE maximum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3635,111,'FR_TE_STATUS_MIN_ERR','FR TE minimum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3636,111,'FR_TMP','Temperature data for FR and TTX','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3637,111,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3638,111,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3639,111,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3640,111,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3641,111,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3642,111,'TTX_ALARM_STATUS','TTX Alarm Status data','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3643,111,'TTX_I2C_DATA','Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3644,111,'TTX_LASER_BIAS_CH1','CH1 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3645,111,'TTX_LASER_BIAS_CH2','CH2 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3646,111,'TTX_LASER_BIAS_CH3','CH3 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3647,111,'TTX_LASER_ENABLED','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3648,111,'TTX_LASER_PWR_CH1','CH1 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3649,111,'TTX_LASER_PWR_CH2','CH2 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3650,111,'TTX_LASER_PWR_CH3','CH3 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3651,111,'TTX_LASER_TMP_CH1','CH1 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3652,111,'TTX_LASER_TMP_CH2','CH2 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3653,111,'TTX_LASER_TMP_CH3','CH3 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3654,112,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3655,112,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3656,112,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3657,112,'EFC_125_MHZ','125MHz Electronic Frequency Control Voltage','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3658,112,'EFC_COMB_LINE_PLL','Comb Line Electronic Frequency Control Voltage','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3659,112,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3660,112,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3661,112,'MODULE_CODES_CDAY','Firmware Compile day','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3662,112,'MODULE_CODES_CMONTH','Firmware Compile month','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3663,112,'MODULE_CODES_DIG1','Digit 1 of the product tree #','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3664,112,'MODULE_CODES_DIG2','Digit 2 of the product tree #','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3665,112,'MODULE_CODES_DIG4','Digit 4 of the product tree #','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3666,112,'MODULE_CODES_DIG6','Digit 6 of the product tree #','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3667,112,'MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3668,112,'MODULE_CODES_VERSION_MAJOR','Version 0.0 to 15.15 high nibble - major revision, low nibble - minor revision','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3669,112,'MODULE_CODES_VERSION_MINOR','Version 0.0 to 15.15 high nibble - major revision, low nibble - minor revision','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3670,112,'MODULE_CODES_YEAR','Firmware Compile year (2000 -> 0x00)','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3671,112,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3672,112,'PWR_125_MHZ','125MHz RF Output Power','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,11.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3673,112,'PWR_25_MHZ','25MHz RF Output Power','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,11.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3674,112,'PWR_2_GHZ','2GHz RF Output Power','%8.3f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,11.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3675,112,'READ_MODULE_CODES','Module Data','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3676,112,'RX_OPT_PWR','Received Optical Power','%8.3f','watt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3677,112,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3678,112,'STATUS','Status','%3d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3679,112,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3680,112,'TE_LENGTH','Number of 125 MHz clock cycles counted (anything other than 5999999 is bad)','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5999999.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3681,112,'TE_OFFSET_COUNTER','Position of the delivered TE','%na','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,2.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3682,112,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3683,112,'VDC_12','12V Power Supply Voltage','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3684,112,'VDC_15','15V Power Supply Voltage','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3685,112,'VDC_7','7V Power Supply Voltage','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3686,112,'VDC_MINUS_7','Minus 7 Power Supply Voltage','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3687,113,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3688,113,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3689,113,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3690,113,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3691,113,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3692,113,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3693,113,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3694,113,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3695,113,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3696,113,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3697,113,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3698,113,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3699,113,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3700,113,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3701,113,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3702,113,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3703,113,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3704,113,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3705,113,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3706,113,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3707,113,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3708,113,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3709,113,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3710,113,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3711,113,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3712,113,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3713,113,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3714,113,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3715,113,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3716,113,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3717,113,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3718,113,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3719,113,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3720,113,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3721,113,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3722,113,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3723,113,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3724,113,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3725,113,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3726,113,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3727,113,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3728,113,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3729,113,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3730,113,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3731,113,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3732,113,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3733,113,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3734,113,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3735,113,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3736,113,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3737,113,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3738,113,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3739,113,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3740,113,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3741,113,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3742,115,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3743,115,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3744,115,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3745,115,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3746,115,'DETECTED_FTS_POWER','Detected FTS Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3747,115,'DETECTED_IF_POWER','Detected IF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3748,115,'DETECTED_RF_POWER','Detected RF Power','%2d','watt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',500.0E0,1500.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3749,115,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3750,115,'FM_COIL_VOLTAGE','FM Coil Voltage','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3751,115,'FREQ','none','%none','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3752,115,'FREQUENCY_OFFSET','Difference between commanded and actual DYTO course tune frequency','%2d','hertz','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-30.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3753,115,'FTS_STATUS','none','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3754,115,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3755,115,'LO2_FREQUENCY','LO2 Frequency','%2d','hertz','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8000.0E0,14000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3756,115,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3757,115,'MODULE_STATUS','Module Status','%2d','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3758,115,'PHASE_OFFSET','none','%none','second','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3759,115,'PHASE_SEQ1','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3760,115,'PHASE_SEQ2','none','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3761,115,'PHASE_VALS','none','%none','radian','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3762,115,'POWER_SUPPLY_1_VALUE','Plus 5 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3763,115,'POWER_SUPPLY_2_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3764,115,'POWER_SUPPLY_3_VALUE','Negative 20 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-20.0E0,0.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3765,115,'POWER_SUPPLY_4_VALUE','Plus 15 supply voltage after regulation','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3766,115,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3767,115,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3768,115,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3769,115,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3770,116,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3771,116,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3772,116,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3773,116,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3774,116,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3775,116,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3776,116,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3777,116,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3778,116,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3779,116,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3780,116,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3781,116,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3782,116,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3783,116,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3784,116,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3785,116,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3786,116,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3787,116,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3788,116,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3789,116,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3790,116,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3791,116,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3792,116,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3793,116,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3794,116,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3795,116,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3796,116,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3797,116,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3798,116,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3799,116,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3800,116,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3801,116,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3802,116,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3803,116,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3804,116,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3805,116,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3806,116,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3807,116,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3808,116,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3809,116,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3810,116,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3811,116,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3812,116,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3813,116,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3814,116,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3815,116,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3816,116,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3817,116,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3818,116,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3819,116,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3820,116,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3821,116,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3822,116,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3823,116,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3824,116,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3825,116,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3826,116,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3827,116,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3828,116,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3829,116,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3830,116,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3831,116,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3832,116,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3833,116,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3834,116,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3835,116,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3836,116,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3837,116,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3838,116,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3839,116,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3840,116,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3841,116,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3842,116,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3843,116,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3844,116,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3845,116,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3846,116,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3847,116,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3848,116,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3849,116,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3850,116,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3851,116,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3852,116,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3853,116,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3854,116,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3855,116,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3856,116,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3857,116,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3858,116,'FR_STATUS','FR Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3859,116,'FR_SWITCH_CH1','Switch setting of CH1: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3860,116,'FR_SWITCH_CH2','Switch setting of CH2: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3861,116,'FR_SWITCH_CH3','Switch setting of CH3: show the value of the test switch setting. Bits 7-0: 0=Normal, 1=Test mode. If Bit 7 is set, the output data to the correlator can be affectad. To override this switch setting use the control command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3862,116,'FR_TE_STATUS','FR TE Status Register','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3863,116,'FR_TE_STATUS_CLK_EDGE','FR TE inverted clock edge used','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3864,116,'FR_TE_STATUS_CURR_ERR','FR TE current error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3865,116,'FR_TE_STATUS_ERROR','FR TE error flag active','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3866,116,'FR_TE_STATUS_MAX_ERR','FR TE maximum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3867,116,'FR_TE_STATUS_MIN_ERR','FR TE minimum error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3868,116,'FR_TMP','Temperature data for FR and TTX','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3869,116,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3870,116,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3871,116,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3872,116,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3873,116,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3874,116,'TTX_ALARM_STATUS','TTX Alarm Status data','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3875,116,'TTX_I2C_DATA','Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3876,116,'TTX_LASER_BIAS_CH1','CH1 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3877,116,'TTX_LASER_BIAS_CH2','CH2 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3878,116,'TTX_LASER_BIAS_CH3','CH3 TTX laser bias current','%7.2f','ampere','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3879,116,'TTX_LASER_ENABLED','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3880,116,'TTX_LASER_PWR_CH1','CH1 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3881,116,'TTX_LASER_PWR_CH2','CH2 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3882,116,'TTX_LASER_PWR_CH3','CH3 TTX laser output power','%7.2f','watt','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3883,116,'TTX_LASER_TMP_CH1','CH1 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3884,116,'TTX_LASER_TMP_CH2','CH2 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3885,116,'TTX_LASER_TMP_CH3','CH3 TTX laser temperature error','%7.2f','kelvin','1',15,2.0E0,2.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3886,117,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3887,117,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3888,117,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3889,117,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3890,117,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3891,117,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3892,117,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3893,117,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3894,117,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3895,117,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3896,117,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3897,117,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3898,117,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3899,117,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3900,117,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3901,117,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3902,117,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3903,117,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3904,117,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3905,117,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3906,117,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3907,117,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3908,117,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3909,117,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3910,117,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3911,117,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3912,117,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3913,117,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3914,117,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3915,117,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3916,117,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3917,117,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3918,117,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3919,117,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3920,117,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3921,117,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3922,117,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3923,117,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3924,117,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3925,117,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3926,117,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3927,117,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3928,117,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3929,117,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3930,117,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3931,117,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3932,117,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3933,117,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3934,117,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3935,117,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3936,117,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3937,117,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3938,117,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3939,117,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3940,117,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3941,117,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3942,117,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3943,117,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3944,117,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3945,117,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3946,117,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3947,117,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3948,117,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3949,117,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3950,117,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3951,117,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3952,117,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3953,117,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3954,117,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3955,117,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3956,117,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3957,117,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3958,117,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3959,117,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3960,117,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3961,117,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3962,117,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3963,117,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3964,117,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3965,117,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3966,117,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3967,117,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3968,117,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3969,117,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3970,117,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3971,117,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3972,117,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3973,117,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3974,117,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3975,117,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3976,117,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3977,117,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3978,117,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3979,117,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3980,117,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3981,117,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3982,117,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3983,117,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3984,117,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3985,117,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3986,117,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3987,117,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3988,117,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3989,117,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3990,117,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(3991,117,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3992,117,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3993,117,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3994,117,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3995,117,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3996,117,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3997,117,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3998,117,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(3999,117,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4000,117,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4001,117,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4002,117,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4003,117,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4004,117,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4005,117,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4006,117,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4007,117,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4008,117,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4009,117,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4010,117,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4011,117,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4012,117,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4013,118,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4014,118,'CAL_RESULT','Whenever a calibration or calibration check sequence is completed, the result is reported with a monitor request. This monitor point returns a bit and a floating point number. The bit indicates if the calibration is with in tolerances and the floating po','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4015,118,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4016,118,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4017,118,'CNTR','Current fringe count','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4018,118,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4019,118,'FIRMWARE_REV','Returns the date and the Perforce (backend repository software) version of the firmware. If no perforce version of the firmware exist, 0x00 is returned for that byte.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4020,118,'FRAM_BYTE','Retrieves a byte from FRAM. This is a tow step process. The command READ_FRAM must be written to load the byte into a buffer.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4021,118,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4022,118,'LOCK','LLC PLL Lock Status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4023,118,'LOCK_ALARM','LLC PLL Lock Alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4024,118,'LVL_50MHZ','50 MHz Reference Level','%none','decibel','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4025,118,'MODULE_ID','Returns the identification information for the module which includes the CIN, Serial Number and Hardware Version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4026,118,'PC_MON1','Read back of polarization line 1 driver','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4027,118,'PC_MON2','Read back of polarization line 2 driver','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4028,118,'PC_MON3','Read back of polarization line 3 driver','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4029,118,'PC_MON4','Read back of polarization line 4 driver','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4030,118,'POLARIZATION_CONTROLLER_CALIBRATION_STATUS','Polarization controller calibration status 1= calibration sequence needed 0= current calibration with tolerances.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4031,118,'POL_MON1','Signal level polarimeter output 1','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4032,118,'POL_MON2','Signal level polarimeter output 2','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4033,118,'POL_MON3','Signal level polarimeter output 3','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4034,118,'POL_MON4','Signal level polarimeter output 4','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4035,118,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4036,118,'P_DET','Signal level output photo detector','%none','decibel','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4037,118,'ROUTINE_STATUS','Status of the automated firmware routines','%none','none','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4038,118,'RST_CTL_MON','Archive monitor point of the fast and the slow reset stretcher voltages to midrange (2.5 Volts). The power state default for this bit is 1 (Reset), so in order to operate the line length corrector a 0 needs to be written to this bit. This reset only applies to closed loop operat','%none','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4039,118,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4040,118,'SOPC','Returns value of SOPC as floating point number.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4041,118,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4042,118,'TEMP','Stretcher temperature','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4043,118,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4044,118,'VF_CTL_MON','Archive monitor point of the closed-loop (PLL) or open loop (DAC) operation applied to the fast fiber stretcher. Logic 0 selects closed-loop (PLL) operation. Logic 1 selects open-loop control via a DAC using SET_VF_O. Default power up state is closed-loop.','%none','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4045,118,'VF_MON','Signal level from fast fiber stretcher','%none','volt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4046,118,'VS_CTL_MON','Archive monitor point of the closed-loop (PLL) or open loop (DAC) operation to the slow fiber stretcher. Logic 0 selects closed-loop (PLL) operation. Logic 1 selects open-loop control via a DAC using SET_VS_O. Default power up state is closed-loop.','%none','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4047,118,'VS_MON','Signal level from slow fiber stretcher','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4048,119,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4049,119,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4050,119,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4051,119,'CLOCK_COUNTS','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4052,119,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4053,119,'FIRMWARE_DAY','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4054,119,'FIRMWARE_MONTH','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4055,119,'FIRMWARE_REVISION_MAJOR','Firmware Major Revision 0 to 15','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4056,119,'FIRMWARE_REVISION_MINOR','Firmware Minor Revision 0 to 15','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4057,119,'FIRMWARE_YEAR','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4058,119,'FREQ','Frequency vs. Time','%2d','hertz','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',20.0E0,45.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4059,119,'FTS_STATUS','FTS Status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4060,119,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4061,119,'MODULE_CODES','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4062,119,'PHASE_OFFSET','Phase Offset vs. Time','%2d','second','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',8.0E0,15.999600410461426E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4063,119,'PHASE_SEQ1','Readback for Phase Sequence 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4064,119,'PHASE_SEQ2','Readback for Phase Sequence 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4065,119,'PHASE_VALS','Phase Values','%none','radian','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,6.28000020980835E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4066,119,'PRODUCT_TREE_DIGIT_FOUR','Product Tree Digit 4','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4067,119,'PRODUCT_TREE_DIGIT_ONE','Product Tree Digit 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4068,119,'PRODUCT_TREE_DIGIT_SIX','Product Tree Digit 6','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4069,119,'PRODUCT_TREE_DIGIT_TWO','Product Tree Digit 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4070,119,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4071,119,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4072,119,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4073,119,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4074,120,'ALMA_TIME','ALMA time at the rising edge of current TE','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4075,120,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4076,120,'AMB_CMD_COUNTER','Number of commands over the AMB bus','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4077,120,'AMB_INVALID_CMD','Read data on the last invalid command','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4078,120,'ANALOG_5_GOOD','5 V analog power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4079,120,'ARP_FULL','ARP table full','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4080,120,'A_VREF_GOOD','IFDC Channel A voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4081,120,'BDB_PER_PACKET','Number of Basic Data Blocks','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',32.0E0,255.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4082,120,'B_VREF_GOOD','IFDC Channel B voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4083,120,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4084,120,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4085,120,'CURRENTS_10V','Current in 10 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4086,120,'CURRENTS_6_5V','Current in 6.5 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4087,120,'CURRENTS_8V','Current in 8 V power supply','%2d','ampere','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4088,120,'C_VREF_GOOD','IFDC Channel C voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4089,120,'DATA_AVE_LENGTH','Number of 2 kHz samples that are averaged to generate data','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4090,120,'DATA_MONITOR_1','Monitor of the Total Power Data.','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4091,120,'DATA_MONITOR_2','Monitor of the Total Power Data.','%2d','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4092,120,'DATA_REMAP','TPD signal flow','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4093,120,'DATA_TRANSFER_ACTIVE','Data transfer active if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4094,120,'DEST_IP_ADDR','TCP connection IP address','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4095,120,'DIGITAL_1DOT2_GOOD','1.2 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4096,120,'DIGITAL_2DOT5_GOOD','2.5 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4097,120,'DIGITAL_3DOT3_GOOD','3.3 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4098,120,'DIGITAL_5_GOOD','5 V digital power supply good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4099,120,'D_VREF_GOOD','IFDC Channel D voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4100,120,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4101,120,'ETHERNET_CONNECTED','Ethernet connected if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4102,120,'ETHERNET_MAC','MAC address of the Ethernet controller','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4103,120,'ETHER_CONT_VOLTAGE_GOOD','Ethernet controller voltage good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4104,120,'FIFO_DEPTHS','Reads the internal and external FIFO depths.','%2d','none','1',15,15.0E0,15.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4105,120,'FIFO_FULL','FIFO Full - lost data flag if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4106,120,'FIRST_BYTE_INVALID','First byte of the last invalid command','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4107,120,'GAINS','Attenuator settings for the IFDC','%2d','decibel','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4108,120,'IFDC_ADS','IFDC ADS','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4109,120,'IFDC_FOUND','IFDC Found when true','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4110,120,'IFDC_LENGTH','IFDC Length','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4111,120,'IFDC_MCS','IFDC MCS','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4112,120,'IFDC_SPI_PROTO_ERR_COUNTER','IFDC SPI Protocol Error Counter','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4113,120,'IFDC_SPI_STATUS','Status of SPI interface','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4114,120,'IFDC_VAR_LENGTH_READS','IFDC Variable length reads','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4115,120,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4116,120,'LAST_ADDRESS_INTERACTION','Last address interaction','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4117,120,'LENGTH_48MS','number of 125 clock cycles in the last TE','%2d','second','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4118,120,'LSBS_8_RCAS','8 LSBs of the RCA of the last invalid command','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4119,120,'MAX_ETHERNET_TIMES','Maximum time the Ethernet controller spend handling data from the FPGA','%2d','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4120,120,'MODULE_CODES','IFDC Module Codes','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4121,120,'MODULE_CODES_CDAY','Compile day','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4122,120,'MODULE_CODES_CMONTH','Compile month','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4123,120,'MODULE_CODES_DIG1','Digit 1 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4124,120,'MODULE_CODES_DIG2','Digit 2 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4125,120,'MODULE_CODES_DIG4','Digit 4 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4126,120,'MODULE_CODES_DIG6','Digit 6 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4127,120,'MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4128,120,'MODULE_CODES_VERSION_MAJOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4129,120,'MODULE_CODES_VERSION_MINOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4130,120,'MODULE_CODES_YEAR','Compile year (2000 -> 0x00)','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4131,120,'MODULE_GATEWAY','Gateway','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4132,120,'MODULE_IP_ADDR','Ethernet controller IP Address','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4133,120,'MODULE_NETMASK','Netmask','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4134,120,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4135,120,'ROUTER_NOT_FOUND','Router not found','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4136,120,'S0_VREF_GOOD','Sideband 0 voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4137,120,'S1_VREF_GOOD','Sideband 1 voltage reference is good if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4138,120,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4139,120,'SIGNAL_PATHS','Filter values in the IFDC','%2d','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4140,120,'SPI_ERRORS','Errors on the IFDC SPI interface','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4141,120,'STATUS','Read Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4142,120,'STATUS_START_COMM_TEST','Read back of the START_COMM_TEST command','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4143,120,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4144,120,'TCP_CONNECTED','TCP connected if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4145,120,'TCP_DISCONN_CMD','Disconnected by command if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4146,120,'TCP_DISCONN_ERROR','Disconnected by error if true','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4147,120,'TCP_PORT','TCP Port','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4148,120,'TEMPS_1','Temperatures in the IFDC','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4149,120,'TEMPS_2','Temperatures in the IFDC','%2d','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4150,120,'TEMPS_3','Temps in Comm modules','%2d','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-25.0E0,100.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4151,120,'TIMING_ERROR_FLAG','Indication of a timing error between the 125MHz clock and the 48ms timing event.','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4152,120,'TPD_MODULE_CODES','IFMC Module Codes','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4153,120,'TPD_MODULE_CODES_CDAY','Compile day','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4154,120,'TPD_MODULE_CODES_CMONTH','Compile month','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4155,120,'TPD_MODULE_CODES_DIG1','Digit 1 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4156,120,'TPD_MODULE_CODES_DIG2','Digit 2 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4157,120,'TPD_MODULE_CODES_DIG4','Digit 4 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4158,120,'TPD_MODULE_CODES_DIG6','Digit 6 of the product tree #','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4159,120,'TPD_MODULE_CODES_SERIAL','Serial number if available, otherwise 0xFFFF','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4160,120,'TPD_MODULE_CODES_VERSION_MAJOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4161,120,'TPD_MODULE_CODES_VERSION_MINOR','Version 0.0 to 16.16 high nibble - major revision, low nibble - minor revision','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4162,120,'TPD_MODULE_CODES_YEAR','Compile year (2000 -> 0x00)','%2d','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4163,120,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4164,120,'VAL_READ_AMB_CMD_COUNTER','the value of READ_AMB_CMD_COUNTER','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4165,120,'VOLTAGES_1','Voltage levels','%2d','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4166,120,'VOLTAGES_2','Voltage levels','%2d','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4167,122,'Antenna_State','-','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,300.0E0,0.001E0,FALSE,0.0E0,'0',0.0E0,2.0E0,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,'ANT_OK, ANT_OPEN, ANT_SHORTED','!','!','!','!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4168,122,'GPS_Locked','-','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,300.0E0,0.001E0,FALSE,0.0E0,'0',0.0E0,1.0E0,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,'True, False','!','!','!','!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4169,122,'GPS_Time','-','%d','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,0.0E0,0.001E0,FALSE,0.0E0,'0',0.0E0,1.8446744073709552E19,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4170,122,'PLL_Locked','-','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,300.0E0,0.001E0,FALSE,0.0E0,'0',0.0E0,1.0E0,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,'True, False','!','!','!','!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4171,122,'RS232_OK','-','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,300.0E0,0.001E0,FALSE,0.0E0,'0',0.0E0,1.0E0,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,'True, False','!','!','!','!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4172,122,'Time_Error','-','%9.4f','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,300.0E0,0.001E0,FALSE,0.0E0,'0.0E1',-1E0/0,1E0/0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4173,124,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4174,124,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4175,124,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4176,124,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4177,124,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4178,124,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4179,124,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4180,124,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4181,124,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4182,124,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4183,124,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4184,124,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4185,124,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4186,124,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4187,124,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4188,124,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4189,124,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4190,124,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4191,124,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4192,124,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4193,124,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4194,124,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4195,124,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4196,124,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4197,124,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4198,124,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4199,124,'MID_3_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4200,124,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4201,124,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4202,124,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4203,124,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4204,124,'MID_4_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4205,124,'MID_4_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4206,124,'MID_4_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4207,124,'MID_4_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4208,124,'MID_4_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4209,124,'MID_5_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4210,124,'MID_5_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4211,124,'MID_5_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4212,124,'MID_5_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4213,124,'MID_5_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4214,124,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4215,124,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4216,124,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4217,124,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4218,124,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4219,124,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4220,124,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4221,124,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4222,124,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4223,124,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4224,124,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4225,124,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4226,124,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4227,124,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4228,124,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4229,124,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4230,124,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4231,124,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4232,124,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4233,124,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4234,124,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4235,124,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4236,124,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4237,124,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4238,125,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4239,125,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4240,125,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4241,125,'CRD_MODULE_CODES','Module codes for the CRD.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4242,125,'CRG_VDC_12','CRG 12 VDC voltage regulator output monitor. The 12 V runs through a divid-by-2 voltage divider to accommodate the ADC range.','%7.2f','volt','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',11.0E0,13.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4243,125,'EFC_5_MHZ','Electronic Frequency Control voltage of 5 MHz PLL','%7.2f','volt','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4244,125,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4245,125,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4246,125,'LASER_CURRENT','Laser Diode current in the LO Ref Laser','%7.2f','ampere','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.03999999910593033E0,0.10000000149011612E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4247,125,'MASER_COUNTER','125 MHz (Coherent to the Hydrogen Maser or Rubidium Oscillator) counter. An 8-byte integer from a 64-bit counter inside the FPGA. This is the same counter as the MASER_VS_GPS_COUNTER. The difference is that this monitor point is not latched, i.e. it returns the current contents of the 125 MHz counter.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4248,125,'MASER_VS_GPS_COUNTER','125 MHz (Coherent to the Hydrogen Maser or Rubidium Oscillator) counter latched on 1 PPS from GPS receiver. An 8-byte integer from a 64-bit counter inside the FPGA. In one-second intervals, (based on the 1 PPS timing signal from the GPS receiver) the 64-bits from the counter are latched and loaded to shift registers (all internal to the FPGA). This count data is updated once every second (1 PPS).','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4249,125,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4250,125,'PWR_10_MHZ','10 MHz RF output power level from CRG','%7.2f','volt','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.10000000149011612E0,2.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4251,125,'PWR_125_MHZ','125 MHz RF output power level from CRG','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.10000000149011612E0,2.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4252,125,'PWR_2_GHZ','2 GHz RF output power level from CRG','%7.2f','volt','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.10000000149011612E0,2.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4253,125,'PWR_5_MHZ','5 MHz RF output power level from CRG','%7.2f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.10000000149011612E0,2.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4254,125,'RESET_TIME','This is an 8-byte register, (zeroed by the MASER_COUNTER_RESET control), that the ARTM can read and write to via the CAN bus. It is used by the ARTM to record the time of the most recent reset. This time is obtained from the GPS and aligned with the maser clock at the instance of reset. Using this register, the reset time is only lost if the CRG is shutdown. Without this register, the ARTM would need to perform a reset each time it is started in order to know the reset time. Having the MASER_COUNTER_RESET command clear this register provides an easy way for a reader to know the register has not been properly set.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4255,125,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4256,125,'STATUS','Read Status','%1u','none','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4257,125,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4258,125,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4259,125,'VDC_15','1.2 V digital power supply good if true','%7.2f','volt','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',14.5E0,15.5E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4260,125,'VDC_7','7 VDC voltage input monitor.','%7.2f','volt','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',6.0E0,8.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4261,125,'VDC_MINUS_7','Minus 7 VDC voltage regulator','%7.2f','volt','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-8.0E0,-6.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4262,127,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4263,127,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4264,127,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4265,127,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4266,127,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4267,127,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4268,127,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4269,127,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4270,127,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4271,127,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4272,127,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4273,127,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4274,127,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4275,127,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4276,127,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4277,127,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4278,127,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4279,127,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4280,127,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4281,127,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4282,127,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4283,127,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4284,127,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4285,127,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4286,127,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4287,127,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4288,127,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4289,127,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4290,127,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4291,127,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4292,127,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4293,127,'MID_3_CURRENT','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4294,127,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4295,127,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4296,127,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4297,127,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4298,127,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4299,127,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4300,127,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4301,127,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4302,127,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4303,127,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4304,127,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4305,127,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4306,127,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4307,127,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4308,127,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4309,127,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4310,127,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4311,127,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4312,127,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4313,127,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4314,127,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4315,127,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4316,127,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4317,127,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4318,127,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4319,127,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4320,127,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4321,127,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4322,129,'AL_ALREADY_SCANNED_RANGE_MAX','Returns the already scanned range maximum temperature when operating the automatic lock algorithm in optimistic mode.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4323,129,'AL_ALREADY_SCANNED_RANGE_MIN','Returns the already scanned range minimum temperature when operating the automatic lock algorithm in optimistic mode.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4324,129,'AL_DETECTION_P_GAIN','Proportional gain to use for peak detection.','%none','decibel','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4325,129,'AL_ERROR_AMPLITUDE','Returns the amplitude of the error signal, when using lock gain instead of detection gain (determined in the EVAL_ERROR_AMPLITUDE state of the automatic lock algorithm).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4326,129,'AL_IDENTIFICATION_INVALID_GROUP','The detected group is invalid and does not correspond to any Rb line.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4327,129,'AL_IDENTIFICATION_VALID_RIGHT_GROUP','The detected group is valid and is the group of interest.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4328,129,'AL_IDENTIFICATION_VALID_WRONG_GROUP','The detected group is valid, but is not the group of interest.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4329,129,'AL_LAST_LOCK_TEMPERATURE','Last fibre laser temperature at which the PML has successfully locked.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4330,129,'AL_MODE','Autolock Mode: 0: Standard 1: Optimistic','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4331,129,'AL_NB_GROUPS','Returns the number of groups as determined by running the group forming algorithm on the detected peaks.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4332,129,'AL_NB_SCANS','Returns the number of PZT scans and temperature steps performed when scanning the current temperature scan range (the count is reset for each new scan range).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4333,129,'AL_OPTIMISTIC_CUR_SCAN_RANGE','Returns the current temperature scan range used by the automatic lock algorithm, when operating in optimistic mode.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4334,129,'AL_OPTIMISTIC_LAMBDA_OVERLAP','Overlapping between two adjacent wavelength scans.','%none','meter','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4335,129,'AL_OPTIMISTIC_SCAN_RANGE','Temperature scan range to use for first wavelength scan in optimistic mode.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4336,129,'AL_START_TEMP','Temperature where to start the fibre laser wavelength scanning when in optimistic mode.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4337,129,'AL_STATE','Returns the autolock algorithm current state.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4338,129,'AL_TEMP_MAX','Autolock maximum laser temperature for fibre laser wavelength scanning.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4339,129,'AL_TEMP_MIN','Autolock minimum laser temperature for fibre laser wavelength scanning.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4340,129,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4341,129,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4342,129,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4343,129,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4344,129,'INTERLOCK_BYPASS_ENABLE','Sets the responsivity parameter for the red power detector in the ORM.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4345,129,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4346,129,'IR_PD_RESPONSIVITY','Sets the responsivity parameter for the infrared power detector in the ORM.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4347,129,'LASER_ALARMS','LASER_ALARMS','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4348,129,'LASER_ERROR','laser monitoring error word','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4349,129,'LASER_LOCKED','Laser is considered Locked by the lock monitoring algorithm.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4350,129,'LASER_POWER_MON_TOLERANCE','Fibre laser temperature power monitoring tolerance. Tolerance is given relative to output power setpoint. Monitored value must stay within setpoint +/- tolerance.','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4351,129,'LASER_PWR','Controls the fibre laser unit output power.','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4352,129,'LASER_PWRAMP_ENABLE','Enable/disable the fibre laser unit power amplifier.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4353,129,'LASER_PZT_LEVEL','Control the Optical Reference Module on-board I/O expander outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4354,129,'LASER_PZT_TUNING_COEFF','Configures the fibre laser unit PZT tuning coefficient.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4355,129,'LASER_SIGNAL_FL_MODULE_NTC_V','fibre laser unit base temp','%f','kelvin','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4356,129,'LASER_SIGNAL_FL_OUTPUT_PWR','Fibre laser output power','%f','watt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4357,129,'LASER_SIGNAL_FL_PUMP_I','Fibre laser pump current','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4358,129,'LASER_SIGNAL_FL_PUMP_I_MON','Fibre laser pump monitor current','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4359,129,'LASER_SIGNAL_FL_PUMP_TEC_I','Fibre laser pump TEC current','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4360,129,'LASER_SIGNAL_FL_PUMP_TEMP','Fibre laser pump temperature','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4361,129,'LASER_SIGNAL_FL_TEC_I','TEC current','%f','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1.5E0,1.5E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4362,129,'LASER_SIGNAL_FL_TEMP_MON','Fibre Laser temperature','%f','kelvin','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',19.5E0,50.5E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4363,129,'LASER_SIGNAL_FL_TEMP_SETP','fibre laser temp setpoint','%f','kelvin','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',20.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4364,129,'LASER_SIGNAL_FL_THERMV','Fibre laser thermistor voltage','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4365,129,'LASER_SIGNAL_MODULE_OUTPUT_PWR','fibre laser unit output power','%f','watt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,0.2199999988079071E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4366,129,'LASER_SIGNAL_MODULE_OUTPUT_PWR_SETP','Fibre laser unit ouput power setpoint','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4367,129,'LASER_SIGNAL_PWRAMP_INPUT_PWR','Power amplifier input power','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4368,129,'LASER_SIGNAL_PWRAMP_PUMP_I','Power amplifier pump current','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4369,129,'LASER_SIGNAL_PWRAMP_REFL_PWR','Power amplifier reflected power','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4370,129,'LASER_SIGNAL_REF_2_048V','Fibre laser unit 2.048 V reference','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4371,129,'LASER_STATUS','Laser Status','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4372,129,'LASER_STICKY_ALARMS','LASER_STICKY_ALARMS','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4373,129,'LASER_STICKY_ERROR','LASER_STICKY_ERROR','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4374,129,'LASER_T','Controls the fibre laser unit operating temperature.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4375,129,'LASER_TEMPMON_ABS_ERR','Fibre laser temperature monitoring absolute error parameter.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4376,129,'LASER_TEMPMON_ENABLE','Enable/Disable fibre laser temperature monitoring.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4377,129,'LASER_TEMPMON_FAST_FILTA','Fibre laser temperature fast low-pass filter A coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4378,129,'LASER_TEMPMON_SLOW_FILTA','Fibre laser temperature slow low-pass filter A coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4379,129,'LASER_TEMPMON_STABILIZATION_TIME','Stabilisation Time. Time (ms) required to achieve temperature stabilisation.','%f','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4380,129,'LASER_TEMPMON_STABLE_TIME','Fibre laser temperature stabilisation time parameter.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4381,129,'LASER_TEMPMON_STATE','LASER_TEMPMON_STATE','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4382,129,'LASER_TEMPMON_TIMEOUT','Fibre laser temperature monitoring timeout.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4383,129,'LASER_TEMPMON_TUNNEL','Fibre laser temperature monitoring stabilisation tunnel (relative stability) parameter.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4384,129,'LASER_TEMP_CTRL_ENABLE','Enable/disable the fibre laser unit temperature controller.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4385,129,'LASER_T_TUNING_COEFF','Configures the fibre laser unit temperature tuning coefficient.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4386,129,'LL_ADC_CELL_PWR_I_MON','Rubidium Cell oven heater current','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4387,129,'LL_ADC_CELL_TEMP_MON','Rubidium Cell temperature','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4388,129,'LL_ADC_ERROR_PEAK_MON','Error signal peak detector output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4389,129,'LL_ADC_GND','Laser module control PCB ground voltage','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4390,129,'LL_ADC_HV_MON','Photomultiplier tube supply voltage monitor','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4391,129,'LL_ADC_INFRARED_PD_PWR_MON','Infrared PD level at PPLN output','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4392,129,'LL_ADC_LASER_MOD_TEMP_MON','Laser Module heatsink temperature','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4393,129,'LL_ADC_OPT_REF_MOD_TEMP_MON','Optical Reference Module heatsink temperature','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4394,129,'LL_ADC_PID_ERROR_MON','PID Error signal','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4395,129,'LL_ADC_PID_LASER_CORR_MON','PID Correction voltage','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4396,129,'LL_ADC_PIEZO_OUT_MON','PZT summator driver output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4397,129,'LL_ADC_PIEZO_SUM_MON','PZT summator circuit output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4398,129,'LL_ADC_PM_DC_10V','Photomultiplier DC voltage','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4399,129,'LL_ADC_PM_DC_PEAK_MON','Photomultiplier DC signal peak detector output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4400,129,'LL_ADC_PM_TEMP_MON','Photomultiplier tube temperature','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4401,129,'LL_ADC_POWER_MOD_TEMP_MON','Power Supply Module heatsink temperature','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4402,129,'LL_ADC_PPLN_PWR_I_MON','PPLN oven heater current','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4403,129,'LL_ADC_PPLN_TEMP_MON','PPLN oven temperature','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4404,129,'LL_ADC_RED_PD_PWR_MON','Red PD level at PPLN output','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4405,129,'LL_ADC_RIN_DC_CORR_MON','RIN DC Corr monitor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4406,129,'LL_ADC_RIN_DC_MON','RIN DC monitor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4407,129,'LL_ADC_RIN_ERROR_MON','RIN Error monitor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4408,129,'LL_ADC_RIN_LASER_PWR_MON','Laser power monitor output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4409,129,'LL_ADC_TIP_TEMP_MON','Rubidium Cell Tip temperature','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4410,129,'LL_ADC_VREF','Laser module control PCB voltage reference','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4411,129,'LL_DAC_PID_OFFSET_CORR','Control the Laser Module on-board DAC outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4412,129,'LL_DAC_PID_P_GAIN_SETP','Control the Laser Module on-board DAC outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4413,129,'LL_DAC_PIEZO_SETP','Control the Laser Module on-board DAC outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4414,129,'LL_DAC_RAMP_SLOPE','Control the Laser Module on-board DAC outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4415,129,'LL_DAC_RAMP_TRIG_SETP','Control the Laser Module on-board DAC outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4416,129,'LL_DAC_RIN_DC_OFFSET_P','Control the Laser Module on-board DAC outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4417,129,'LL_DAC_RIN_LOCK_SETP','Control the Laser Module on-board DAC outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4418,129,'LL_DAC_TRIG_ERROR_SETP','Control the Laser Module on-board DAC outputs (low-level).','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4419,129,'LL_DDS_OSCILLATOR_LOCAL_OSCILLATOR','Sets Direct Digital Synthesizer parameters.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4420,129,'LL_DDS_OSCILLATOR_PHASE_MODULATOR','Sets Direct Digital Synthesizer parameters.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4421,129,'LL_DIGIPOT_DDS_LO_ADJ','Sets the value of a digital potentiometer. (Low-level)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4422,129,'LL_DIGIPOT_DDS_MOD_ADJ','Sets the value of a digital potentiometer. (Low-level)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4423,129,'LL_DIGIPOT_ORM_CELL_GAIN','Sets the value of a digital potentiometer. (Low-level)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4424,129,'LL_DIGIPOT_ORM_PPLN_GAIN','Sets the value of a digital potentiometer. (Low-level)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4425,129,'LL_DIGIPOT_RIN_POWER_MON_GAIN','Sets the value of a digital potentiometer. (Low-level)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4426,129,'LL_DIGIPOT_RIN_REFERENCE_MON_GAIN','Sets the value of a digital potentiometer. (Low-level)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4427,129,'LL_GPIO','Control the Laser Module GPIO outputs (low-level).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4428,129,'LL_IOX','Control the Laser Module on-board I/O expander outputs (low-level).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4429,129,'LL_ORM_IOX','Control the Optical Reference Module on-board I/O expander outputs (low-level).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4430,129,'LL_SELECTOR_ADC_MUX','Control the Laser Module Selectors (low-level).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4431,129,'LL_SELECTOR_PID_TAU','Control the Laser Module Selectors (low-level).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4432,129,'LOCKMON_ENABLE','Enable / Disable the lock monitoring algorithm.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4433,129,'LOCKMON_FAST_FILTA','Lock monitoring fast low-pass filter A coefficient. Filters the PM DC signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4434,129,'LOCKMON_NOMINAL_FLUO_LEVEL','Nominal fluorescence level used by the lock monitoring algorithm. Note: This level is automatically determined by the PM DC amplitude corresponding to the line of interest when performing signal detection identification at system startup.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4435,129,'LOCKMON_SLOW_FILTA','Lock monitoring slow low-pass filter A coefficient. Filters the PM DC signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4436,129,'LOCKMON_STATE','LOCKMON_STATE','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4437,129,'LOCKMON_TOLERANCE','Lock monitoring absolute tolerance on PM DC level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4438,129,'LOCKMON_TUNNEL','Lock monitoring relative stability tunnel for fast and slow filters.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4439,129,'LOCKMON_UNLOCK_DETECT_THRESH','Enable / Disable the lock monitoring algorithm.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4440,129,'LOCK_INTEGRATOR_ENABLE','Enable / Disable PI Controller loop.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4441,129,'LOCK_PROPORTIONAL_ENABLE','Enable/disable additional proportional gain in parallel with integral gain in PI controller.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4442,129,'ORM_INTERLOCK_CLOSED','Returns the Optical Reference Module interlock state. 0: ORM Interlock Opened (Bypass is required to enable laser power) 1: ORM Interlock Closed (OK)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4443,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_EIGHT','Error signal amplitude at peak, peak ID 8','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4444,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_FIVE','Error signal amplitude at peak, peak ID 5','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4445,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_FOUR','Error signal amplitude at peak, peak ID 4','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4446,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_NINE','Error signal amplitude at peak, peak ID 9','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4447,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_ONE','Error signal amplitude at peak, peak ID 1','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4448,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_SEVEN','Error signal amplitude at peak, peak ID 7','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4449,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_SIX','Error signal amplitude at peak, peak ID 6','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4450,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_THREE','Error signal amplitude at peak, peak ID 3','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4451,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_TWO','Error signal amplitude at peak, peak ID 2','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4452,129,'PEAKS_INFORMATION_ERROR_LEVEL_PEAK_ID_ZERO','Error signal amplitude at peak, peak ID 0','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4453,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_EIGHT','Group ID, peak ID 8','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4454,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_FIVE','Group ID, peak ID 5','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4455,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_FOUR','Group ID, peak ID 4','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4456,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_NINE','Group ID, peak ID 9','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4457,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_ONE','Group ID, peak ID 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4458,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_SEVEN','Group ID, peak ID 7','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4459,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_SIX','Group ID, peak ID 6','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4460,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_THREE','Group ID, peak ID 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4461,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_TWO','Group ID, peak ID 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4462,129,'PEAKS_INFORMATION_GROUP_ID_PEAK_ID_ZERO','Group ID, peak ID 0','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4463,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_EIGHT','Fluorescence level at peak, peak ID 8','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4464,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_FIVE','Fluorescence level at peak, peak ID 5','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4465,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_FOUR','Fluorescence level at peak, peak ID 4','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4466,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_NINE','Fluorescence level at peak, peak ID 9','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4467,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_ONE','Fluorescence level at peak, peak ID 1','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4468,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_SEVEN','Fluorescence level at peak, peak ID 7','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4469,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_SIX','Fluorescence level at peak, peak ID 6','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4470,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_THREE','Fluorescence level at peak, peak ID 3','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4471,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_TWO','Fluorescence level at peak, peak ID 2','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4472,129,'PEAKS_INFORMATION_PM_DC_LEVEL_PEAK_ID_ZERO','Fluorescence level at peak, peak ID 0','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4473,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_EIGHT','PZT level at peak, peak ID 8','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4474,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_FIVE','PZT level at peak, peak ID 5','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4475,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_FOUR','PZT level at peak, peak ID 4','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4476,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_NINE','PZT level at peak, peak ID 9','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4477,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_ONE','PZT level at peak, peak ID 1','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4478,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_SEVEN','PZT level at peak, peak ID 7','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4479,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_SIX','PZT level at peak, peak ID 6','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4480,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_THREE','PZT level at peak, peak ID 3','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4481,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_TWO','PZT level at peak, peak ID 2','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4482,129,'PEAKS_INFORMATION_PZT_LEVEL_PEAK_ID_ZERO','PZT level at peak, peak ID 0','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4483,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_EIGHT','Timestamp of peak detection, peak ID 8','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4484,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_FIVE','Timestamp of peak detection, peak ID 5','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4485,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_FOUR','Timestamp of peak detection, peak ID 4','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4486,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_NINE','Timestamp of peak detection, peak ID 9','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4487,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_ONE','Timestamp of peak detection, peak ID 1','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4488,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_SEVEN','Timestamp of peak detection, peak ID 7','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4489,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_SIX','Timestamp of peak detection, peak ID 6','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4490,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_THREE','Timestamp of peak detection, peak ID 3','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4491,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_TWO','Timestamp of peak detection, peak ID 2','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4492,129,'PEAKS_INFORMATION_TIMESTAMP_PEAK_ID_ZERO','Timestamp of peak detection, peak ID 0','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4493,129,'PEAKS_MAX_THRESHOLD','Sets the peak detection module maximum trigger level for error signal detection.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4494,129,'PEAKS_MIN_FLUO_LEVEL','Minimum fluorescence signal level for peak detection. *Note: this parameter is not used by the peaks detection routines in firmware revisions v.1.0.2 and earlier.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4495,129,'PEAKS_MIN_THRESHOLD','Sets the peak detection module minimum trigger level for error signal detection.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4496,129,'PEAKS_NB_PEAKS','Returns the number of peaks detected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4497,129,'PEAKS_NEW_DETECTION_AVAILABLE','Returns if the peaks detection algorithm has new detected peaks.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4498,129,'PEAKS_SIGNAL_VALIDATION','Returns the validation results for the whole series of detected peaks. 0: No Signal: No signal detected. 1: Invalid: Signal detected, but considered as invalid by the peak detection algorithm. 2: Valid: Signal detected, considered as valid by the peak detection algorithm (not yet identified as a valid Rb peak).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4499,129,'PEAKS_STATE','Returns the Peak detection algorithm state. 0: INITIALIZATION: Initialising Peaks detection algorithm. 1: START_SCAN: Starting the laser wavelength scanning algorithm. 2: SCANNING: Performing the laser wavelength scanning algorithm. 3: SIGNAL_FOUND: Signal was found while scanning the PZT. 4: VALID_SIGNAL_FOUND: Valid signal was found while scanning the PZT. 5: NO_SIGNAL: No signal was found scanning the laser on the temperature range specified. 6: ERROR: The peaks detection algorithm has encountered a fatal error. 7: IDLE: The peaks detection algorithm is halted.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4500,129,'PEAKS_THRESHOLD_INCREMENT','Absolute increment of threshold to perform when an invalid signal is detected.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4501,129,'PEAKS_THRESHOLD_LEVEL','Returns the Peak detection algorithm current detection threshold.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4502,129,'PM_AC_GAIN','Gain for photomultiplier AC signal coming from ORM.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4503,129,'PM_DC_GAIN','Gain for photomultiplier DC signal coming from ORM.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4504,129,'PM_SUPPLY_ENABLE','Enable/Disable Photomultiplier voltage supply.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4505,129,'PM_SUPPLY_VOLTAGE','Photomultiplier supply voltage','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4506,129,'PPLN_EFFICIENCY_CONTROL_ACTIVE','Returns if the PPLN efficiency control algorithm is active or not.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4507,129,'PPLN_EFFICIENCY_CONTROL_LASTPWR','Returns the efficiency control algorithm red level last power (when the red level triggered a correction on the PPLN temperature).','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4508,129,'PPLN_EFFICIENCY_CONTROL_PWR_MINUS','Returns the red level after a negative correction has been made on the PPLN temperature setpoint.','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4509,129,'PPLN_EFFICIENCY_CONTROL_PWR_PLUS','Returns the red level after a positive correction has been made on the PPLN temperature setpoint.','%none','watt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4510,129,'PPLN_EFFICIENCY_CTRL_ENABLE','Enable/Disable PPLN efficiency control algorithm.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4511,129,'PPLN_EFFICIENCY_CTRL_STEP','PPLN efficiency control algorithm temperature step.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4512,129,'PPLN_MINIMUM_IR_POWER','Sets PPLN infrared power minimum threshold at which it should not attempt an automatic lock.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4513,129,'PPLN_MINIMUM_RED_POWER','Sets PPLN red power minimum threshold at which it should not attempt an automatic lock.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4514,129,'PPLN_OPT_RESULTS','Returns the PPLN optimisation scan results.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4515,129,'PPLN_OPT_START_TEMP','Sets start temperature for PPLN optimisation scan.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4516,129,'PPLN_OPT_STOP_TEMP','Sets stop temperature for PPLN optimisation scan.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4517,129,'PPLN_OPT_TEMP_STEP','Sets temperature step for PPLN optimisation scan.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4518,129,'PPLN_REDPWR_MON_THRESHOLD','Sets PPLN red power monitor threshold before warning and/or trying to correct if the PPLN efficiency control algorithm is enabled.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4519,129,'PPLN_STABILIZATION_TIME','Stabilisation Time. Time (in ms) required to achieve temperature stabilisation.','%f','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4520,129,'PPLN_STATE','PPLN_STATE','%f','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4521,129,'PPLN_TEMPMON_ABS_ERR','PPLN temperature monitoring absolute error parameter.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4522,129,'PPLN_TEMPMON_ENABLE','Enable/Disable PPLN temperature monitoring.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4523,129,'PPLN_TEMPMON_FAST_FILTA','PPLN temperature fast low-pass filter A coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4524,129,'PPLN_TEMPMON_SLOW_FILTA','PPLN temperature slow low-pass filter A coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4525,129,'PPLN_TEMPMON_STABLE_TIME','PPLN temperature stabilisation time parameter.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4526,129,'PPLN_TEMPMON_STATE','PPLN_TEMPMON_STATE','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4527,129,'PPLN_TEMPMON_TIMEOUT','PPLN temperature monitoring timeout.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4528,129,'PPLN_TEMPMON_TUNNEL','PPLN temperature monitoring stabilisation tunnel (relative stability) parameter.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4529,129,'PPLN_TEMP_CTRL_ENABLE','Enable the PPLN oven temperature controller.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4530,129,'PPLN_TEMP_SETP','Sets the PPLN operating temperature.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4531,129,'PPLN_TEMP_STABLE','Temperature Stable. Indicates if Rb Cell tip temperature is stable.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4532,129,'PPLN_TEMP_TIMEOUT','Temperature Timeout. Indicates if there was a timeout waiting for the Rb Cell tip temperature to stabilise.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4533,129,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4534,129,'PZT_RANGE_CONTROL_ENABLE','Enable the PZT range control algorithm.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4535,129,'PZT_RANGE_CONTROL_STATE','PZT_RANGE_CONTROL_STATE','%f','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4536,129,'PZT_RANGE_CONTROL_V_MAX','Sets the higher threshold PZT voltage for applying a PZT range control correction.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4537,129,'PZT_RANGE_CONTROL_V_MIN','Sets the lower threshold PZT voltage for applying a PZT range control correction.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4538,129,'PZT_SWEEP_DELAY','Delay before starting PZT sweep.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4539,129,'PZT_SWEEP_FILTER','Configures the PZT driver output low-pass filter bandwidth.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4540,129,'PZT_SWEEP_PERIOD','Controls the time required for the PZT sweep to go from the start voltage to the stop voltage.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4541,129,'PZT_SWEEP_PERIODIC','Determines whether to automatically restart the PZT sweep when voltage ramp is over.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4542,129,'PZT_SWEEP_START_VOLTAGE','Fibre laser PZT sweeping start voltage.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4543,129,'PZT_SWEEP_STOP_VOLTAGE','Fibre laser PZT sweeping stop voltage..','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4544,129,'RB_CELL_STABILIZATION_TIME','Stabilisation Time. Time (in ms) required to achieve temperature stabilisation.','%f','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4545,129,'RB_CELL_TEMPMON_ABS_ERR','Rubidium Cell temperature monitoring absolute error parameter.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4546,129,'RB_CELL_TEMPMON_ENABLE','Enable/Disable Rubidium Cell temperature monitoring.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4547,129,'RB_CELL_TEMPMON_FAST_FILTA','Rubidium Cell temperature fast low-pass filter A coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4548,129,'RB_CELL_TEMPMON_SLOW_FILTA','Rubidium Cell temperature slow low-pass filter A coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4549,129,'RB_CELL_TEMPMON_STABLE_TIME','Rubidium Cell temperature stabilisation time parameter.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4550,129,'RB_CELL_TEMPMON_STATE','RB_CELL_TEMPMON_STATE','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4551,129,'RB_CELL_TEMPMON_TIMEOUT','Rubidium Cell temperature monitoring timeout.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4552,129,'RB_CELL_TEMPMON_TUNNEL','Rubidium Cell temperature monitoring stabilisation tunnel (relative stability) parameter.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4553,129,'RB_CELL_TEMP_CTRL_ENABLE','Enable the Rb Cell oven temperature controller.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4554,129,'RB_CELL_TEMP_SETP','Sets the Rubidium Cell operating temperature.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4555,129,'RB_CELL_TEMP_STABLE','Temperature Stable. Indicates if Rb Cell temperature is stable.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4556,129,'RB_CELL_TEMP_TIMEOUT','Temperature Timeout. Indicates if there was a timeout waiting for the Rb Cell temperature to stabilise.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4557,129,'RB_CELL_TIP_STABILIZATION_TIME','Stabilisation Time. Time (in ms) required to achieve temperature stabilisation.','%f','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4558,129,'RB_CELL_TIP_TEMPMON_ABS_ERR','Rubidium Cell Tip temperature monitoring absolute error parameter.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4559,129,'RB_CELL_TIP_TEMPMON_STATE','RB_CELL_TIP_TEMPMON_STATE','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4560,129,'RB_CELL_TIP_TEMP_STABLE','Temperature Stable. Indicates if Rb Cell tip temperature is stable.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4561,129,'RB_CELL_TIP_TEMP_TIMEOUT','Temperature Timeout. Indicates if there was a timeout waiting for the Rb Cell tip temperature to stabilise.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4562,129,'RED_PD_RESPONSIVITY','Sets the responsivity parameter for the red power detector in the ORM.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4563,129,'SCAN_DELTA_LAMBDA_OVERLAP','Controls the wavelength overlapping of successive laser scans.','%none','meter','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4564,129,'SCAN_DELTA_T_STEPS','Returns the laser temperature steps associated with the wavelength scan overlap.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4565,129,'SCAN_PZT_DELAY','Sets delay before starting each PZT sweep when performing a wavelength scan.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4566,129,'SCAN_PZT_PERIOD','Controls the time required for the PZT sweep to go from the start voltage to the stop voltage when performing a wavelength scan.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4567,129,'SCAN_PZT_START_VOLTAGE','Sets the PZT level at which to start each PZT sweep when performing a Wavelength scan.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4568,129,'SCAN_PZT_STOP_VOLTAGE','Sets the PZT level at which to stop each PZT sweep when performing a Wavelength scan.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4569,129,'SCAN_START_TEMP','Sets the start temperature for laser wavelength scan. *Note: this parameter is overwritten by the automatic lock current range start temperature.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4570,129,'SCAN_STATE','Returns the current state of the laser wavelength scan algorithm. 0: STOPPED: Laser scan is stopped. 1: UPDATE_TEMP: Updating the laser temperature. 2: WAIT_TEMP: Waiting for the laser temperature to stabilise. 3: START_PIEZO_SCAN: Setting up PZT scan. 4: WAIT_PIEZO_SCAN: Waiting for PZT scan to complete.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4571,129,'SCAN_STOP_TEMP','Sets the stop temperature for laser wavelength scan. *Note: this parameter is overwritten by the automatic lock current range start temperature.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4572,129,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4573,129,'SIGNAL_CELL_PWR_I_MON','SIGNAL_CELL_PWR_I_MON','%f','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.2000000476837158E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4574,129,'SIGNAL_CELL_TEMP_MON','SIGNAL_CELL_TEMP_MON','%f','kelvin','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,125.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4575,129,'SIGNAL_ERROR_PEAK_MON','Error signal peak detector output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4576,129,'SIGNAL_FL_FAST_TEMP','Fibre Laser temperature fast filter output','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4577,129,'SIGNAL_FL_SLOW_TEMP','Fibre Laser temperature slow filter output','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4578,129,'SIGNAL_FL_TEMP','Fibre Laser temperature internal signal','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4579,129,'SIGNAL_GND','Laser module control PCB ground voltage','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4580,129,'SIGNAL_HV_MON','SIGNAL_HV_MON','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4581,129,'SIGNAL_INFO_CELL_PWR_I_MON','SIGNAL_INFO_CELL_PWR_I_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4582,129,'SIGNAL_INFO_CELL_PWR_I_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4583,129,'SIGNAL_INFO_CELL_PWR_I_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4584,129,'SIGNAL_INFO_CELL_TEMP_MON','SIGNAL_INFO_CELL_TEMP_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4585,129,'SIGNAL_INFO_CELL_TEMP_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4586,129,'SIGNAL_INFO_CELL_TEMP_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4587,129,'SIGNAL_INFO_ERROR_PEAK_MON','Signal ID for error signal peak detector output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4588,129,'SIGNAL_INFO_ERROR_PEAK_MON_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4589,129,'SIGNAL_INFO_ERROR_PEAK_MON_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4590,129,'SIGNAL_INFO_FL_FAST_TEMP','Signal ID for fibre laser temperature fast filter output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4591,129,'SIGNAL_INFO_FL_FAST_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4592,129,'SIGNAL_INFO_FL_FAST_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4593,129,'SIGNAL_INFO_FL_SLOW_TEMP','Signal ID for fibre laser temperature slow filter output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4594,129,'SIGNAL_INFO_FL_SLOW_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4595,129,'SIGNAL_INFO_FL_SLOW_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4596,129,'SIGNAL_INFO_FL_TEMP','Signal ID for fibre laser temperature internal signal','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4597,129,'SIGNAL_INFO_FL_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4598,129,'SIGNAL_INFO_FL_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4599,129,'SIGNAL_INFO_GND','Signal ID for laser module control PCB ground voltage','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4600,129,'SIGNAL_INFO_GND_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4601,129,'SIGNAL_INFO_GND_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4602,129,'SIGNAL_INFO_HV_MON','SIGNAL_INFO_HV_MON','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4603,129,'SIGNAL_INFO_HV_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4604,129,'SIGNAL_INFO_HV_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4605,129,'SIGNAL_INFO_INFRARED_PD_PWR_MON','SIGNAL_INFO_INFRARED_PD_PWR_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4606,129,'SIGNAL_INFO_INFRARED_PD_PWR_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4607,129,'SIGNAL_INFO_INFRARED_PD_PWR_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4608,129,'SIGNAL_INFO_LASER_MOD_TEMP_MON','SIGNAL_INFO_LASER_MOD_TEMP_MON','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4609,129,'SIGNAL_INFO_LASER_MOD_TEMP_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4610,129,'SIGNAL_INFO_LASER_MOD_TEMP_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4611,129,'SIGNAL_INFO_LOCKMON_FAST_FLUO','Signal ID for lock monitoring photomultiplier DC signal fast filter','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4612,129,'SIGNAL_INFO_LOCKMON_FAST_FLUO_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4613,129,'SIGNAL_INFO_LOCKMON_FAST_FLUO_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4614,129,'SIGNAL_INFO_LOCKMON_SLOW_FLUO','Signal ID for lock monitoring photomultiplier DC signal slow filter','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4615,129,'SIGNAL_INFO_LOCKMON_SLOW_FLUO_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4616,129,'SIGNAL_INFO_LOCKMON_SLOW_FLUO_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4617,129,'SIGNAL_INFO_OPT_REF_MOD_TEMP_MON','SIGNAL_INFO_OPT_REF_MOD_TEMP_MON','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4618,129,'SIGNAL_INFO_OPT_REF_MOD_TEMP_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4619,129,'SIGNAL_INFO_OPT_REF_MOD_TEMP_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4620,129,'SIGNAL_INFO_PID_ERROR_MON','Signal ID for PID error signal','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4621,129,'SIGNAL_INFO_PID_ERROR_MON_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4622,129,'SIGNAL_INFO_PID_ERROR_MON_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4623,129,'SIGNAL_INFO_PID_LASER_CORR_MON','SIGNAL_INFO_PID_LASER_CORR_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4624,129,'SIGNAL_INFO_PID_LASER_CORR_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4625,129,'SIGNAL_INFO_PID_LASER_CORR_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4626,129,'SIGNAL_INFO_PIEZO_OUT_MON','SIGNAL_INFO_PIEZO_OUT_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4627,129,'SIGNAL_INFO_PIEZO_OUT_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4628,129,'SIGNAL_INFO_PIEZO_OUT_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4629,129,'SIGNAL_INFO_PIEZO_SUM_MON','Signal ID for PZT summator circuit output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4630,129,'SIGNAL_INFO_PIEZO_SUM_MON_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4631,129,'SIGNAL_INFO_PIEZO_SUM_MON_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4632,129,'SIGNAL_INFO_PM_DC_10V','SIGNAL_INFO_PM_DC_10V','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4633,129,'SIGNAL_INFO_PM_DC_10V_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4634,129,'SIGNAL_INFO_PM_DC_10V_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4635,129,'SIGNAL_INFO_PM_DC_PEAK_MON','Signal ID for photomultiplier DC signal peak detector output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4636,129,'SIGNAL_INFO_PM_DC_PEAK_MON_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4637,129,'SIGNAL_INFO_PM_DC_PEAK_MON_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4638,129,'SIGNAL_INFO_PM_TEMP_MON','SIGNAL_INFO_PM_TEMP_MON','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4639,129,'SIGNAL_INFO_PM_TEMP_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4640,129,'SIGNAL_INFO_PM_TEMP_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4641,129,'SIGNAL_INFO_POWER_MOD_TEMP_MON','SIGNAL_INFO_POWER_MOD_TEMP_MON','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4642,129,'SIGNAL_INFO_POWER_MOD_TEMP_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4643,129,'SIGNAL_INFO_POWER_MOD_TEMP_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4644,129,'SIGNAL_INFO_PPLN_FAST_TEMP','Signal ID for PPLN termperature fast filter output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4645,129,'SIGNAL_INFO_PPLN_FAST_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4646,129,'SIGNAL_INFO_PPLN_FAST_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4647,129,'SIGNAL_INFO_PPLN_PWR_I_MON','SIGNAL_INFO_PPLN_PWR_I_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4648,129,'SIGNAL_INFO_PPLN_PWR_I_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4649,129,'SIGNAL_INFO_PPLN_PWR_I_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4650,129,'SIGNAL_INFO_PPLN_SLOW_TEMP','Signal ID for PPLN termperature slow filter output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4651,129,'SIGNAL_INFO_PPLN_SLOW_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4652,129,'SIGNAL_INFO_PPLN_SLOW_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4653,129,'SIGNAL_INFO_PPLN_TEMP_MON','SIGNAL_INFO_PPLN_TEMP_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4654,129,'SIGNAL_INFO_PPLN_TEMP_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4655,129,'SIGNAL_INFO_PPLN_TEMP_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4656,129,'SIGNAL_INFO_RBCELL_FAST_TEMP','Signal ID for rubidium cell temperature fast filter output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4657,129,'SIGNAL_INFO_RBCELL_FAST_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4658,129,'SIGNAL_INFO_RBCELL_FAST_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4659,129,'SIGNAL_INFO_RBCELL_SLOW_TEMP','Signal ID for rubidium cell temperature slow filter output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4660,129,'SIGNAL_INFO_RBCELL_SLOW_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4661,129,'SIGNAL_INFO_RBCELL_SLOW_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4662,129,'SIGNAL_INFO_RBCELL_TIP_FAST_TEMP','Signal ID for rubidium cell tip temperature fast filter output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4663,129,'SIGNAL_INFO_RBCELL_TIP_FAST_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4664,129,'SIGNAL_INFO_RBCELL_TIP_FAST_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4665,129,'SIGNAL_INFO_RBCELL_TIP_SLOW_TEMP','Signal ID for rubidium cell tip temperature slow filter output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4666,129,'SIGNAL_INFO_RBCELL_TIP_SLOW_TEMP_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4667,129,'SIGNAL_INFO_RBCELL_TIP_SLOW_TEMP_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4668,129,'SIGNAL_INFO_RED_PD_PWR_MON','SIGNAL_INFO_RED_PD_PWR_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4669,129,'SIGNAL_INFO_RED_PD_PWR_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4670,129,'SIGNAL_INFO_RED_PD_PWR_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4671,129,'SIGNAL_INFO_RIN_DC_CORR_MON','Signal ID for RIN DC corr monitor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4672,129,'SIGNAL_INFO_RIN_DC_CORR_MON_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4673,129,'SIGNAL_INFO_RIN_DC_CORR_MON_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4674,129,'SIGNAL_INFO_RIN_DC_MON','Signal ID for RIN DC monitor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4675,129,'SIGNAL_INFO_RIN_DC_MON_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4676,129,'SIGNAL_INFO_RIN_DC_MON_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4677,129,'SIGNAL_INFO_RIN_ERROR_MON','Signal ID for RIN error monitor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4678,129,'SIGNAL_INFO_RIN_ERROR_MON_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4679,129,'SIGNAL_INFO_RIN_ERROR_MON_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4680,129,'SIGNAL_INFO_RIN_LASER_PWR_MON','Signal ID for laser power monitor output','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4681,129,'SIGNAL_INFO_RIN_LASER_PWR_MON_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4682,129,'SIGNAL_INFO_RIN_LASER_PWR_MON_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4683,129,'SIGNAL_INFO_TIP_TEMP_MON','SIGNAL_INFO_TIP_TEMP_MON','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4684,129,'SIGNAL_INFO_TIP_TEMP_MON_BIPOLAR_SIGNAL','Unipolar or bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4685,129,'SIGNAL_INFO_TIP_TEMP_MON_VOLTAGE_RANGE','Voltage range','%f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4686,129,'SIGNAL_INFO_VREF','Signal ID for laser module control PCB voltage reference','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4687,129,'SIGNAL_INFO_VREF_BIPOLAR_SIGNAL','0 = unipolar signal, 1 = bipolar signal.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4688,129,'SIGNAL_INFO_VREF_VOLTAGE_RANGE','Voltage range','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4689,129,'SIGNAL_INFRARED_PD_PWR_MON','SIGNAL_INFRARED_PD_PWR_MON','%f','watt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4690,129,'SIGNAL_LASER_MOD_TEMP_MON','SIGNAL_LASER_MOD_TEMP_MON','%f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',4.0E0,35.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4691,129,'SIGNAL_LOCKMON_FAST_FLUO','Lock monitoring photomultiplier DC signal fast filter','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4692,129,'SIGNAL_LOCKMON_SLOW_FLUO','Lock monitoring photomultiplier DC signal slow filter','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4693,129,'SIGNAL_OPT_REF_MOD_TEMP_MON','SIGNAL_OPT_REF_MOD_TEMP_MON','%f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',4.0E0,35.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4694,129,'SIGNAL_PID_ERROR_MON','PID Error signal','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4695,129,'SIGNAL_PID_LASER_CORR_MON','SIGNAL_PID_LASER_CORR_MON','%f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-10.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4696,129,'SIGNAL_PIEZO_OUT_MON','SIGNAL_PIEZO_OUT_MON','%f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,85.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4697,129,'SIGNAL_PIEZO_SUM_MON','PZT summator circuit output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4698,129,'SIGNAL_PM_DC_10V','SIGNAL_PM_DC_10V','%f','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4699,129,'SIGNAL_PM_DC_PEAK_MON','Photomultiplier DC signal peak detector output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4700,129,'SIGNAL_PM_TEMP_MON','SIGNAL_PM_TEMP_MON','%f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,40.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4701,129,'SIGNAL_POWER_MOD_TEMP_MON','SIGNAL_POWER_MOD_TEMP_MON','%f','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',4.0E0,35.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4702,129,'SIGNAL_PPLN_FAST_TEMP','PPLN temperature fast filter output','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4703,129,'SIGNAL_PPLN_PWR_I_MON','SIGNAL_PPLN_PWR_I_MON','%f','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,0.75E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4704,129,'SIGNAL_PPLN_SLOW_TEMP','PPLN temperature slow filter output','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4705,129,'SIGNAL_PPLN_TEMP_MON','SIGNAL_PPLN_TEMP_MON','%f','kelvin','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,83.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4706,129,'SIGNAL_RBCELL_FAST_TEMP','Rubidium cell temperature fast filter output','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4707,129,'SIGNAL_RBCELL_SLOW_TEMP','Rubidium cell temperature slow filter output','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4708,129,'SIGNAL_RBCELL_TIP_FAST_TEMP','Rubidium cell tip temperature fast filter output','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4709,129,'SIGNAL_RBCELL_TIP_SLOW_TEMP','Rubidium cell tip temperature slow filter output','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4710,129,'SIGNAL_RED_PD_PWR_MON','SIGNAL_RED_PD_PWR_MON','%f','watt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4711,129,'SIGNAL_RIN_DC_CORR_MON','SIGNAL_RIN_DC_CORR_MON','%f','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4712,129,'SIGNAL_RIN_DC_MON','RIN DC monitor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4713,129,'SIGNAL_RIN_ERROR_MON','RIN Error monitor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4714,129,'SIGNAL_RIN_LASER_PWR_MON','Laser power monitor output','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4715,129,'SIGNAL_TIP_TEMP_MON','SIGNAL_TIP_TEMP_MON','%f','kelvin','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,125.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4716,129,'SIGNAL_VREF','Laser module control PCB voltage reference','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4717,129,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4718,129,'SYSTEM_ERROR','Retrieves the oldest error from the error queue (FIFO). This function can be used to report errors detected by the PML firmware. Please refer to Appendix A for more information on error codes (in the ICD).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4719,129,'SYSTEM_ERROR_FLAG','Error Flag','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4720,129,'SYSTEM_LM_SERIAL_NUMBER','Sets the LM serial number.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4721,129,'SYSTEM_MONITORING_ERROR','Returns the System Monitoring error word','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4722,129,'SYSTEM_MONITORING_STATUS','System monitoring status word','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4723,129,'SYSTEM_MONITORING_STICKY_ERROR','Returns the System Monitoring sticky error word','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(4724,129,'SYSTEM_OP_PENDING','Operation Pending Flag','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4725,129,'SYSTEM_ORM_SERIAL_NUMBER','Sets the ORM serial number.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4726,129,'SYSTEM_STARTUP_MODE','Sets the PML system startup mode. Startup mode selects the sequence of events which the PML firmware will perform at system power-up or reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4727,129,'SYSTEM_STARTUP_PARAM_SET','Sets the parameter set to use at system startup. byte 0: Parameter Set (UINT8) Parameter set from which to load the parameters. Available choices are: 0: Default 1: Factory 2: User','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4728,129,'SYSTEM_STARTUP_STATE','Retrieves current sub-state of the system startup procedure to provide more detailed information about tasks performed at startup.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4729,129,'SYSTEM_STATE','System State','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4730,129,'SYSTEM_STATUS','General system status and mode.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4731,129,'SYSTEM_WARNING','Retrieves the oldest warning from the warning queue (FIFO). This function can be used to report warnings detected by the PML firmware. Please refer to Appendix A for more information on error codes (in the ICD).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4732,129,'SYSTEM_WARNING_FLAG','Warning Flag','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4733,129,'TEMP_STABLE','Temperature Stable','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4734,129,'TEMP_TIMEOUT','Temperature Timeout','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4735,129,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4736,129,'UNLOCK_DETECTOR_STATE','Trigger detector','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4737,130,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4738,130,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4739,130,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4740,130,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4741,130,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4742,130,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4743,130,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4744,130,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4745,130,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4746,130,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4747,130,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4748,130,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4749,130,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4750,130,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4751,130,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4752,130,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4753,130,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4754,130,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4755,130,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4756,130,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4757,130,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4758,130,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4759,130,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4760,130,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4761,130,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4762,130,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4763,130,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4764,130,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4765,130,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4766,130,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4767,130,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4768,130,'MID_4_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4769,130,'MID_4_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4770,130,'MID_4_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4771,130,'MID_4_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4772,130,'MID_4_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4773,130,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4774,130,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4775,130,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4776,130,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4777,130,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4778,130,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4779,130,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4780,130,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4781,130,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4782,130,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4783,130,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4784,130,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4785,130,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4786,130,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4787,130,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4788,130,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4789,130,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4790,130,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4791,130,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4792,130,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4793,130,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4794,130,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4795,130,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4796,130,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4797,132,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4798,132,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4799,132,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4800,132,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4801,132,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4802,132,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4803,132,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4804,132,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4805,132,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4806,132,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4807,132,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4808,132,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4809,132,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4810,132,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4811,132,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4812,132,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4813,132,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4814,132,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4815,132,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4816,132,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4817,132,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4818,132,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4819,132,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4820,132,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4821,132,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4822,132,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4823,132,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4824,132,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4825,132,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4826,132,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4827,132,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4828,132,'MID_3_CURRENT','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4829,132,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4830,132,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4831,132,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4832,132,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4833,132,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4834,132,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4835,132,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4836,132,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4837,132,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4838,132,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4839,132,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4840,132,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4841,132,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4842,132,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4843,132,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4844,132,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4845,132,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4846,132,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4847,132,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4848,132,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4849,132,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4850,132,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4851,132,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4852,132,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4853,132,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4854,132,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4855,132,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4856,132,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4857,133,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4858,133,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4859,133,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4860,133,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4861,133,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4862,133,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4863,133,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4864,133,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4865,133,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4866,133,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4867,133,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4868,133,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4869,133,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4870,133,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4871,133,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4872,133,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4873,133,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4874,133,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4875,133,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4876,133,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4877,133,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4878,133,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4879,133,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4880,133,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4881,133,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4882,133,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4883,133,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4884,133,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4885,133,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4886,133,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4887,133,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4888,133,'MID_3_CURRENT','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4889,133,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4890,133,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4891,133,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4892,133,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4893,133,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4894,133,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4895,133,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4896,133,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4897,133,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4898,133,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4899,133,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4900,133,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4901,133,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4902,133,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4903,133,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4904,133,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4905,133,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4906,133,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4907,133,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4908,133,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4909,133,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4910,133,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4911,133,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4912,133,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4913,133,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4914,133,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4915,133,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4916,133,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4917,136,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4918,136,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4919,136,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4920,136,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4921,136,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4922,136,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4923,136,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4924,136,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4925,136,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4926,136,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4927,136,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4928,136,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4929,136,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4930,136,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4931,136,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4932,136,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4933,136,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4934,136,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4935,136,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4936,136,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4937,136,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4938,136,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4939,136,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4940,136,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4941,136,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4942,136,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4943,136,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4944,136,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4945,136,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4946,136,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4947,136,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4948,136,'MID_3_CURRENT','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4949,136,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4950,136,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4951,136,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4952,136,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4953,136,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4954,136,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4955,136,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4956,136,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4957,136,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4958,136,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4959,136,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4960,136,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4961,136,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4962,136,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4963,136,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4964,136,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4965,136,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4966,136,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4967,136,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4968,136,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4969,136,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4970,136,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4971,136,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4972,136,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4973,136,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4974,136,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4975,136,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4976,136,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4977,137,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4978,137,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4979,137,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4980,137,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4981,137,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4982,137,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4983,137,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4984,137,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4985,137,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4986,137,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4987,137,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4988,137,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4989,137,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4990,137,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4991,137,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4992,137,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4993,137,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4994,137,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4995,137,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4996,137,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4997,137,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4998,137,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(4999,137,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5000,137,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5001,137,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5002,137,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5003,137,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5004,137,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5005,137,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5006,137,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5007,137,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5008,137,'MID_4_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5009,137,'MID_4_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5010,137,'MID_4_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5011,137,'MID_4_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5012,137,'MID_4_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5013,137,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5014,137,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5015,137,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5016,137,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5017,137,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5018,137,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5019,137,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5020,137,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5021,137,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5022,137,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5023,137,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5024,137,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5025,137,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5026,137,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5027,137,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5028,137,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5029,137,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5030,137,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5031,137,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5032,137,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5033,137,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5034,137,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5035,137,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5036,137,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5037,138,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5038,138,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5039,138,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5040,138,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5041,138,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5042,138,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5043,138,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5044,138,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5045,138,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5046,138,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5047,138,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5048,138,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5049,138,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5050,138,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5051,138,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5052,138,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5053,138,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5054,138,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5055,138,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5056,138,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5057,138,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5058,138,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5059,138,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5060,138,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5061,138,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5062,138,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5063,138,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5064,138,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5065,138,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5066,138,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5067,138,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5068,138,'MID_3_CURRENT','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5069,138,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5070,138,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5071,138,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5072,138,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5073,138,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5074,138,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5075,138,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5076,138,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5077,138,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5078,138,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5079,138,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5080,138,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5081,138,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5082,138,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5083,138,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5084,138,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5085,138,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5086,138,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5087,138,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5088,138,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5089,138,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5090,138,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5091,138,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5092,138,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5093,138,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5094,138,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5095,138,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5096,138,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5097,139,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5098,139,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5099,139,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5100,139,'COMMAND_BUFFER_OVERRUN','Command buffer overrun status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5101,139,'DEVICE_ID','Returns the Configuration Item Number (CIN) for the device with which the FDMC is communicating. Byte 0 (11) - ubyte for first level of the Device CIN, byte 1 (22) - ubyte for second level of the Device CIN, byte 2 (33) - ubyte for third level of the Device CIN, byte 3 (44) - ubyte for forth level of the Device CIN. LFRD should return 56.06.00.00, MLD should return 56.07.00.00, PRD should return 56.08.00.00.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5102,139,'EDFA_CP_SETTING','EDFA output power setting','%none','dBm','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5103,139,'EDFA_MODE','EDFA mode setting','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5104,139,'EDFA_UNIT_OVERTEMP_STATUS','EDFA unit overtemperature alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5105,139,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5106,139,'FAULT_STATUS','Fault hardware failure detect (status)','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5107,139,'FIRMWARE_REV','Returns the date and the Perforce (backend repository software) version of the firmware. If no perforce version of firmware exists, 0x00 is returned for that byte. Byte 0 - ubyte representing the firmware revision month, byte 1 - ubyte representing the firmware revision day, byte 2 - ubyte representing that last two digits of the firmware revision year, byte 3 - ubyte representing the Perforce version of the firmware.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5108,139,'INPUT_LOS_THRESHOLD','The input LOS alarm trigger threshold setting','%none','dBm','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5109,139,'INPUT_POWER_LOS_STATUS','Input power LOS alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5110,139,'INPUT_SWITCH','Returns the input switch active port.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5111,139,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5112,139,'KEY_SWITCH_STATUS','Bit 7:Interlock status (0 interlock closed,1 interlock open)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5113,139,'LD1_CURRENT','Laser diode 1 current','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5114,139,'LD1_OUTPUT','Output power laser diode 1 in milliwatts','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5115,139,'LD1_PELTIER','Peltier to cool the laser diode 1','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5116,139,'LD1_TEMP','Temperature of pump laser diode 1','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5117,139,'LD2_CURRENT','Laser diode 2 current','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5118,139,'LD2_OUTPUT','Output power laser diode 2 in milliwatts','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5119,139,'LD2_PELTIER','Peltier to cool the laser diode 2','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5120,139,'LD2_TEMP','Temperature of pump laser diode 2','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5121,139,'LD3_CURRENT','Laser diode 3 current','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5122,139,'LD3_OUTPUT','Output power laser diode 3 in milliwatts','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5123,139,'LD3_PELTIER','Peltier to cool the laser diode 3','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5124,139,'LD3_TEMP','Temperature of pump laser diode 3','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5125,139,'LD4_CURRENT','Monitors the current in the specified pump laser diode. If the diode temperature alarm is active, the current drive is automatically disabled, and a value of 0 is returned','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5126,139,'LD_CURRENT_ALARM','Laser diode current alarm','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5127,139,'LD_TEMP_ALARM','Temperature alarm status alarm of all pump laser diodes','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5128,139,'MODULE_ID','Returns the Configuration Item Number (CIN) for the FDMC module. Byte 0 (11) - ubyte for first level of the LRU CIN, byte 1 (22) - ubyte for second level of the LRU CIN, byte 2 (33) - ubyte for third level of the LRU CIN, byte 3 (44) - ubyte for forth level of the LRU CIN.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5129,139,'MODULE_MODE_STATUS','module mode status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5130,139,'MUTE_MODE_STATUS','Bit 1: Automatic laser shutdown enable status (0 Disable, 1 Enable)','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5131,139,'OPT_IN','Power detected at the EDFA input','%none','dBm','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5132,139,'OPT_OUT','Power detected at the EDFA output','%none','dBm','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5133,139,'OUTPUT_LOS_THRESHOLD','The output LOS alarm trigger threshold setting','%none','dBm','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5134,139,'OUTPUT_POWER_LOS_STATUS','Output power LOS alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5135,139,'PENDING_COMMAND_REQUESTS','Pneding command buffer status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5136,139,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5137,139,'PUMP_LASER_DIODES_OVERTEMP_STATUS','Pump laser diodes overtemperature alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5138,139,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5139,139,'STATUS','Module configuration and status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5140,139,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5141,139,'TEMP','EDFA stage temperature','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5142,139,'TEMP_FIBER','Get the EDFA passive fiber module temperature.','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5143,139,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5144,139,'VENDOR_SW_VER','Returns the vendor assigned software version number of the amplifier.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5145,139,'VENDOR_S_N','Returns the vendor assigned serial number of the amplifier.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5146,143,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5147,143,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5148,143,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5149,143,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5150,143,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5151,143,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5152,143,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5153,143,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5154,143,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5155,143,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5156,143,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5157,143,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5158,143,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5159,143,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5160,143,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5161,143,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5162,143,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5163,143,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5164,143,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5165,143,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5166,143,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5167,143,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5168,143,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5169,143,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5170,143,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5171,143,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5172,143,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5173,143,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5174,143,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5175,143,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5176,143,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5177,143,'MID_3_CURRENT','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5178,143,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5179,143,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5180,143,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5181,143,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,30.0E0,30.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5182,143,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5183,143,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5184,143,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5185,143,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5186,143,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5187,143,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5188,143,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5189,143,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5190,143,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5191,143,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5192,143,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5193,143,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5194,143,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5195,143,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5196,143,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5197,143,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5198,143,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5199,143,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5200,143,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5201,143,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5202,143,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5203,143,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5204,143,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5205,143,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5206,144,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5207,144,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5208,144,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5209,144,'COMMAND_BUFFER_OVERRUN','Command buffer overrun status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5210,144,'DEVICE_ID','Returns the Configuration Item Number (CIN) for the device with which the FDMC is communicating. Byte 0 (11) - ubyte for first level of the Device CIN, byte 1 (22) - ubyte for second level of the Device CIN, byte 2 (33) - ubyte for third level of the Device CIN, byte 3 (44) - ubyte for forth level of the Device CIN. LFRD should return 56.06.00.00, MLD should return 56.07.00.00, PRD should return 56.08.00.00.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5211,144,'EDFA_CP_SETTING','EDFA output power setting','%none','dBm','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5212,144,'EDFA_MODE','EDFA mode setting','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5213,144,'EDFA_UNIT_OVERTEMP_STATUS','EDFA unit overtemperature alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5214,144,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5215,144,'FAULT_STATUS','Fault hardware failure detect (status)','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5216,144,'FIRMWARE_REV','Returns the date and the Perforce (backend repository software) version of the firmware. If no perforce version of firmware exists, 0x00 is returned for that byte. Byte 0 - ubyte representing the firmware revision month, byte 1 - ubyte representing the firmware revision day, byte 2 - ubyte representing that last two digits of the firmware revision year, byte 3 - ubyte representing the Perforce version of the firmware.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5217,144,'INPUT_LOS_THRESHOLD','The input LOS alarm trigger threshold setting','%none','dBm','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5218,144,'INPUT_POWER_LOS_STATUS','Input power LOS alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5219,144,'INPUT_SWITCH','Returns the input switch active port.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5220,144,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5221,144,'KEY_SWITCH_STATUS','Bit 7:Interlock status (0 interlock closed,1 interlock open)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5222,144,'LD1_CURRENT','Laser diode 1 current','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5223,144,'LD1_OUTPUT','Output power laser diode 1 in milliwatts','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5224,144,'LD1_PELTIER','Peltier to cool the laser diode 1','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5225,144,'LD1_TEMP','Temperature of pump laser diode 1','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5226,144,'LD2_CURRENT','Laser diode 2 current','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5227,144,'LD2_OUTPUT','Output power laser diode 2 in milliwatts','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5228,144,'LD2_PELTIER','Peltier to cool the laser diode 2','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5229,144,'LD2_TEMP','Temperature of pump laser diode 2','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5230,144,'LD3_CURRENT','Laser diode 3 current','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5231,144,'LD3_OUTPUT','Output power laser diode 3 in milliwatts','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5232,144,'LD3_PELTIER','Peltier to cool the laser diode 3','%none','ampere','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5233,144,'LD3_TEMP','Temperature of pump laser diode 3','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5234,144,'LD4_CURRENT','Monitors the current in the specified pump laser diode. If the diode temperature alarm is active, the current drive is automatically disabled, and a value of 0 is returned','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5235,144,'LD_CURRENT_ALARM','Laser diode current alarm','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5236,144,'LD_TEMP_ALARM','Temperature alarm status alarm of all pump laser diodes','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5237,144,'MODULE_ID','Returns the Configuration Item Number (CIN) for the FDMC module. Byte 0 (11) - ubyte for first level of the LRU CIN, byte 1 (22) - ubyte for second level of the LRU CIN, byte 2 (33) - ubyte for third level of the LRU CIN, byte 3 (44) - ubyte for forth level of the LRU CIN.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5238,144,'MODULE_MODE_STATUS','module mode status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5239,144,'MUTE_MODE_STATUS','Bit 1: Automatic laser shutdown enable status (0 Disable, 1 Enable)','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5240,144,'OPT_IN','Power detected at the EDFA input','%none','dBm','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5241,144,'OPT_OUT','Power detected at the EDFA output','%none','dBm','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5242,144,'OUTPUT_LOS_THRESHOLD','The output LOS alarm trigger threshold setting','%none','dBm','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5243,144,'OUTPUT_POWER_LOS_STATUS','Output power LOS alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5244,144,'PENDING_COMMAND_REQUESTS','Pneding command buffer status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5245,144,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5246,144,'PUMP_LASER_DIODES_OVERTEMP_STATUS','Pump laser diodes overtemperature alarm status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5247,144,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5248,144,'STATUS','Module configuration and status','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5249,144,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5250,144,'TEMP','EDFA stage temperature','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5251,144,'TEMP_FIBER','Get the EDFA passive fiber module temperature.','%none','kelvin','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5252,144,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5253,144,'VENDOR_SW_VER','Returns the vendor assigned software version number of the amplifier.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5254,144,'VENDOR_S_N','Returns the vendor assigned serial number of the amplifier.','%none','none','1',15,3600.0E0,3600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5255,145,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5256,145,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5257,145,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5258,145,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5259,145,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5260,145,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5261,145,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5262,145,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5263,145,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5264,145,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5265,145,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5266,145,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5267,145,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5268,145,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5269,145,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5270,145,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5271,145,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5272,145,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5273,145,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5274,145,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5275,145,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5276,145,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5277,145,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5278,145,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5279,145,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5280,145,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5281,145,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5282,145,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5283,145,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5284,145,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5285,145,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5286,145,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5287,145,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5288,145,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5289,145,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5290,145,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5291,145,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5292,145,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5293,145,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5294,145,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5295,145,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5296,145,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5297,145,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5298,145,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5299,145,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5300,145,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5301,145,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5302,145,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5303,145,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5304,145,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5305,145,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5306,145,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5307,145,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5308,145,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5309,145,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5310,145,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5311,145,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5312,145,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5313,145,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5314,145,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5315,145,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5316,145,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5317,145,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5318,145,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5319,145,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5320,145,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5321,145,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5322,145,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5323,145,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5324,145,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5325,145,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5326,145,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5327,145,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5328,145,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5329,145,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5330,145,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5331,145,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5332,145,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5333,145,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5334,145,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5335,145,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5336,145,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5337,145,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5338,145,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5339,145,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5340,145,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5341,145,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5342,145,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5343,145,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5344,145,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5345,145,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5346,145,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5347,145,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5348,145,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5349,145,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5350,145,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5351,145,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5352,145,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5353,145,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5354,145,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5355,145,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5356,145,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5357,145,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5358,145,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5359,145,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5360,145,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5361,145,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5362,145,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5363,145,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5364,145,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5365,145,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5366,145,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5367,145,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5368,145,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5369,145,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5370,145,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5371,145,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5372,145,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5373,145,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5374,145,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5375,145,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5376,145,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5377,145,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5378,145,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5379,145,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5380,145,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5381,145,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5382,146,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5383,146,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5384,146,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5385,146,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5386,146,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5387,146,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5388,146,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5389,146,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5390,146,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5391,146,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5392,146,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5393,146,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5394,146,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5395,146,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5396,146,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5397,146,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5398,146,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5399,146,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5400,146,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5401,146,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5402,146,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5403,146,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5404,146,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5405,146,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5406,146,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5407,146,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5408,146,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5409,146,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5410,146,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5411,146,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5412,146,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5413,146,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5414,146,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5415,146,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5416,146,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5417,146,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5418,146,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5419,146,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5420,146,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5421,146,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5422,146,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5423,146,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5424,146,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5425,146,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5426,146,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5427,146,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5428,146,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5429,146,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5430,146,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5431,146,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5432,146,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5433,146,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5434,146,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5435,146,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5436,146,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5437,146,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5438,146,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5439,146,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5440,146,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5441,146,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5442,146,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5443,146,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5444,146,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5445,146,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5446,146,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5447,146,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5448,146,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5449,146,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5450,146,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5451,146,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5452,146,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5453,146,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5454,146,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5455,146,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5456,146,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5457,146,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5458,146,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5459,146,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5460,146,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5461,146,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5462,146,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5463,146,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5464,146,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5465,146,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5466,146,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5467,146,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5468,146,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5469,146,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5470,146,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5471,146,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5472,146,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5473,146,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5474,146,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5475,146,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5476,146,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5477,146,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5478,146,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5479,146,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5480,146,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5481,146,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5482,146,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5483,146,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5484,146,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5485,146,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5486,146,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5487,146,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5488,146,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5489,146,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5490,146,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5491,146,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5492,146,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5493,146,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5494,146,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5495,146,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5496,146,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5497,146,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5498,146,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5499,146,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5500,146,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5501,146,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5502,146,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5503,146,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5504,146,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5505,146,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5506,146,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5507,146,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5508,146,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5509,147,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5510,147,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5511,147,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5512,147,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5513,147,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5514,147,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5515,147,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5516,147,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5517,147,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5518,147,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5519,147,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5520,147,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5521,147,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5522,147,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5523,147,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5524,147,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5525,147,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5526,147,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5527,147,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5528,147,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5529,147,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5530,147,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5531,147,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5532,147,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5533,147,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5534,147,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5535,147,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5536,147,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5537,147,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5538,147,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5539,147,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5540,147,'MID_3_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5541,147,'MID_3_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5542,147,'MID_3_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5543,147,'MID_3_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5544,147,'MID_3_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5545,147,'MID_4_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5546,147,'MID_4_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5547,147,'MID_4_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5548,147,'MID_4_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5549,147,'MID_4_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5550,147,'MID_5_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5551,147,'MID_5_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5552,147,'MID_5_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5553,147,'MID_5_SHUTDOWN_VOLTAGE','Measured output voltage of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5554,147,'MID_5_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5555,147,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5556,147,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5557,147,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5558,147,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5559,147,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5560,147,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5561,147,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5562,147,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5563,147,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5564,147,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5565,147,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5566,147,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5567,147,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5568,147,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5569,147,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5570,147,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5571,147,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5572,147,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5573,147,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5574,147,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5575,147,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5576,147,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5577,147,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5578,147,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5579,150,'ACTIVE_PROG_SEG_00','Active program segment 0','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5580,150,'ACTIVE_PROG_SEG_00_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5581,150,'ACTIVE_PROG_SEG_00_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5582,150,'ACTIVE_PROG_SEG_00_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5583,150,'ACTIVE_PROG_SEG_01','Active program segment 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5584,150,'ACTIVE_PROG_SEG_01_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5585,150,'ACTIVE_PROG_SEG_01_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5586,150,'ACTIVE_PROG_SEG_01_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5587,150,'ACTIVE_PROG_SEG_02','Active program segment 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5588,150,'ACTIVE_PROG_SEG_02_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5589,150,'ACTIVE_PROG_SEG_02_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5590,150,'ACTIVE_PROG_SEG_02_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5591,150,'ACTIVE_PROG_SEG_03','Active program segment 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5592,150,'ACTIVE_PROG_SEG_03_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5593,150,'ACTIVE_PROG_SEG_03_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5594,150,'ACTIVE_PROG_SEG_03_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5595,150,'ACTIVE_PROG_SEG_04','Active program segment 4','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5596,150,'ACTIVE_PROG_SEG_04_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5597,150,'ACTIVE_PROG_SEG_04_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5598,150,'ACTIVE_PROG_SEG_04_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5599,150,'ACTIVE_PROG_SEG_05','Active program segment 5','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5600,150,'ACTIVE_PROG_SEG_05_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5601,150,'ACTIVE_PROG_SEG_05_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5602,150,'ACTIVE_PROG_SEG_05_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5603,150,'ACTIVE_PROG_SEG_06','Active program segment 6','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5604,150,'ACTIVE_PROG_SEG_06_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5605,150,'ACTIVE_PROG_SEG_06_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5606,150,'ACTIVE_PROG_SEG_06_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5607,150,'ACTIVE_PROG_SEG_07','Active program segment 7','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5608,150,'ACTIVE_PROG_SEG_07_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5609,150,'ACTIVE_PROG_SEG_07_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5610,150,'ACTIVE_PROG_SEG_07_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5611,150,'ACTIVE_PROG_SEG_08','Active program segment 8','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5612,150,'ACTIVE_PROG_SEG_08_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5613,150,'ACTIVE_PROG_SEG_08_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5614,150,'ACTIVE_PROG_SEG_08_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5615,150,'ACTIVE_PROG_SEG_09','Active program segment 9','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5616,150,'ACTIVE_PROG_SEG_09_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5617,150,'ACTIVE_PROG_SEG_09_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5618,150,'ACTIVE_PROG_SEG_09_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5619,150,'ACTIVE_PROG_SEG_10','Active program segment 10','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5620,150,'ACTIVE_PROG_SEG_10_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5621,150,'ACTIVE_PROG_SEG_10_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5622,150,'ACTIVE_PROG_SEG_10_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5623,150,'ACTIVE_PROG_SEG_11','Active program segment 11','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5624,150,'ACTIVE_PROG_SEG_11_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5625,150,'ACTIVE_PROG_SEG_11_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5626,150,'ACTIVE_PROG_SEG_11_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5627,150,'ACTIVE_PROG_SEG_12','Active program segment 12','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5628,150,'ACTIVE_PROG_SEG_12_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5629,150,'ACTIVE_PROG_SEG_12_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5630,150,'ACTIVE_PROG_SEG_12_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5631,150,'ACTIVE_PROG_SEG_13','Active program segment 13','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5632,150,'ACTIVE_PROG_SEG_13_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5633,150,'ACTIVE_PROG_SEG_13_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5634,150,'ACTIVE_PROG_SEG_13_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5635,150,'ACTIVE_PROG_SEG_14','Active program segment 14','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5636,150,'ACTIVE_PROG_SEG_14_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5637,150,'ACTIVE_PROG_SEG_14_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5638,150,'ACTIVE_PROG_SEG_14_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5639,150,'ACTIVE_PROG_SEG_I','Active program initial segment. The initial segment is used when starting the program.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5640,150,'ACTIVE_PROG_SEG_I_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5641,150,'ACTIVE_PROG_SEG_I_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5642,150,'ACTIVE_PROG_SEG_I_VALUE','Active program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5643,150,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5644,150,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5645,150,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5646,150,'DEBUG_NOP','Returns fixed message 0x5A','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5647,150,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5648,150,'EXT48MS_SYNC','Internal or External timing events, Default is External.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5649,150,'FEEDFORWARD_GAIN_ACC','Acceleration feed forward gain of main loop.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5650,150,'FEEDFORWARD_GAIN_VEL','Velocity feed forward gain of main loop.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5651,150,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5652,150,'LINAMP_STATUS','Linear amplifier status','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5653,150,'LOAD_STANDBY_PROGRAM','Determine if program is loaded and is valid.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5654,150,'LOOP1_AO_LIMIT','Main loop analog output limit in volt.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5655,150,'LOOP1_D','Main loop Derivative coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5656,150,'LOOP1_I','Main loop Integral coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5657,150,'LOOP1_P','Main loop proportional coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5658,150,'LOOP2_AO_LIMIT','Auxiliary loop analog output limit in volt.','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5659,150,'LOOP2_D','Auxiliary loop derivative coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5660,150,'LOOP2_I','Auxiliary loop integral coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5661,150,'LOOP2_P','Auxiliary loop proportional coefficient.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5662,150,'LOOP_00_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5663,150,'LOOP_00_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5664,150,'LOOP_00_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5665,150,'LOOP_01_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5666,150,'LOOP_01_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5667,150,'LOOP_01_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5668,150,'LOOP_02_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5669,150,'LOOP_02_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5670,150,'LOOP_02_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5671,150,'LOOP_03_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5672,150,'LOOP_03_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5673,150,'LOOP_03_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5674,150,'LOOP_04_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5675,150,'LOOP_04_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5676,150,'LOOP_04_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5677,150,'LOOP_05_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5678,150,'LOOP_05_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5679,150,'LOOP_05_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5680,150,'LOOP_06_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5681,150,'LOOP_06_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5682,150,'LOOP_06_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5683,150,'LOOP_07_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5684,150,'LOOP_07_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5685,150,'LOOP_07_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5686,150,'LOOP_08_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5687,150,'LOOP_08_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5688,150,'LOOP_08_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5689,150,'LOOP_09_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5690,150,'LOOP_09_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5691,150,'LOOP_09_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5692,150,'LOOP_10_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5693,150,'LOOP_10_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5694,150,'LOOP_10_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5695,150,'LOOP_11_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5696,150,'LOOP_11_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5697,150,'LOOP_11_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5698,150,'LOOP_12_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5699,150,'LOOP_12_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5700,150,'LOOP_12_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5701,150,'LOOP_13_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5702,150,'LOOP_13_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5703,150,'LOOP_13_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5704,150,'LOOP_14_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5705,150,'LOOP_14_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5706,150,'LOOP_14_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5707,150,'LOOP_15_D_R_F','Main loop transition time Derivative coefficient. This number willdivide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5708,150,'LOOP_15_I_R_F','Main loop transition time Integral coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5709,150,'LOOP_15_P_R_F','Main loop transition time Proportional coefficient. This number will divide by 65536.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5710,150,'MIRROR_POSITION_MAX','Mirror position limit in arcsec.(max)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5711,150,'MIRROR_POSITION_MIN','Mirror position limit in arcsec.(min)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5712,150,'MODE_OPERATION','Operation mode includes two position switching, multi step switching, triangular trajectory, sinusoidal trajectory modes.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5713,150,'NUTATOR_ID','Nutator ID. Each nutator set is given a unique name.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5714,150,'POSITION','Current Nutator position.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5715,150,'PROGRAM_VALIDITY','Determine if standby program is valid.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5716,150,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5717,150,'PTOS_ESTIMATOR_COEFFICIENTS_00','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5718,150,'PTOS_ESTIMATOR_COEFFICIENTS_01','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5719,150,'PTOS_ESTIMATOR_COEFFICIENTS_02','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5720,150,'PTOS_ESTIMATOR_COEFFICIENTS_03','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5721,150,'PTOS_ESTIMATOR_COEFFICIENTS_04','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5722,150,'PTOS_ESTIMATOR_COEFFICIENTS_05','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5723,150,'PTOS_ESTIMATOR_COEFFICIENTS_06','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5724,150,'PTOS_ESTIMATOR_COEFFICIENTS_07','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5725,150,'PTOS_ESTIMATOR_COEFFICIENTS_08','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5726,150,'PTOS_ESTIMATOR_COEFFICIENTS_09','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5727,150,'PTOS_ESTIMATOR_COEFFICIENTS_10','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5728,150,'PTOS_ESTIMATOR_COEFFICIENTS_11','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5729,150,'PTOS_ESTIMATOR_COEFFICIENTS_12','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5730,150,'PTOS_ESTIMATOR_COEFFICIENTS_13','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5731,150,'PTOS_ESTIMATOR_COEFFICIENTS_14','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5732,150,'PTOS_ESTIMATOR_COEFFICIENTS_15','The estimator coefficients consist of the state-space model of the nutator. The inputs to the estimator are the position measurement and the controller output command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5733,150,'PTOS_GAIN_00','The gains for the PTOS are loaded when the trajectory of the mirror is changed by changing the chopping throw.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5734,150,'PTOS_GAIN_01','The gains for the PTOS are loaded when the trajectory of the mirror is changed by changing the chopping throw.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5735,150,'PTOS_GAIN_02','The gains for the PTOS are loaded when the trajectory of the mirror is changed by changing the chopping throw.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5736,150,'PTOS_GAIN_03','The gains for the PTOS are loaded when the trajectory of the mirror is changed by changing the chopping throw.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5737,150,'PULSE_OUT_1_00','1st pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5738,150,'PULSE_OUT_1_01','1st pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5739,150,'PULSE_OUT_1_02','2nd pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5740,150,'PULSE_OUT_1_03','3rd pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5741,150,'PULSE_OUT_1_04','4th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5742,150,'PULSE_OUT_1_05','5th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5743,150,'PULSE_OUT_1_06','6th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5744,150,'PULSE_OUT_1_07','7th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5745,150,'PULSE_OUT_1_08','8th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5746,150,'PULSE_OUT_1_09','9th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5747,150,'PULSE_OUT_1_10','10th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5748,150,'PULSE_OUT_1_11','11th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5749,150,'PULSE_OUT_1_12','12th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5750,150,'PULSE_OUT_1_13','13th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5751,150,'PULSE_OUT_1_14','14th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5752,150,'PULSE_OUT_1_15','15th pulse voltage output command to improve track performance. These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5753,150,'PULSE_OUT_2_00','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5754,150,'PULSE_OUT_2_01','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5755,150,'PULSE_OUT_2_02','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5756,150,'PULSE_OUT_2_03','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5757,150,'PULSE_OUT_2_04','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5758,150,'PULSE_OUT_2_05','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5759,150,'PULSE_OUT_2_06','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5760,150,'PULSE_OUT_2_07','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5761,150,'PULSE_OUT_2_08','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5762,150,'PULSE_OUT_2_09','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5763,150,'PULSE_OUT_2_10','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5764,150,'PULSE_OUT_2_11','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5765,150,'PULSE_OUT_2_12','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5766,150,'PULSE_OUT_2_13','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5767,150,'PULSE_OUT_2_14','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5768,150,'PULSE_OUT_2_15','2nd pulse voltage output command to improve track performance.These numbers will divide by 256.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5769,150,'RELAYS_CNTRL','The controller uses 4 Relays to isolate amplifiers output driving signals to motors. They are Mirror Relay in Controller (M1-Relay), Mirror Relay in Apex Side (M2-Relay), Rocker Relay in Controller (R1-Relay), Rocker Relay in Apex Side (R2-Relay)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5770,150,'ROCKER_POSITION_MAX','Rocker position limit in arcsec.(max)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5771,150,'ROCKER_POSITION_MIN','Rocker position limit in arcsec.(min)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5772,150,'SELFTEST','Return selftest most recen result.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5773,150,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5774,150,'STANDBY_PROG_SEG_00','Standby program segment 0','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5775,150,'STANDBY_PROG_SEG_00_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5776,150,'STANDBY_PROG_SEG_00_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5777,150,'STANDBY_PROG_SEG_00_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5778,150,'STANDBY_PROG_SEG_01','Standby program segment 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5779,150,'STANDBY_PROG_SEG_01_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5780,150,'STANDBY_PROG_SEG_01_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5781,150,'STANDBY_PROG_SEG_01_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5782,150,'STANDBY_PROG_SEG_02','Standby program segment 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5783,150,'STANDBY_PROG_SEG_02_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5784,150,'STANDBY_PROG_SEG_02_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5785,150,'STANDBY_PROG_SEG_02_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5786,150,'STANDBY_PROG_SEG_03','Standby program segment 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5787,150,'STANDBY_PROG_SEG_03_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5788,150,'STANDBY_PROG_SEG_03_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5789,150,'STANDBY_PROG_SEG_03_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5790,150,'STANDBY_PROG_SEG_04','Standby program segment 4','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5791,150,'STANDBY_PROG_SEG_04_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5792,150,'STANDBY_PROG_SEG_04_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5793,150,'STANDBY_PROG_SEG_04_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5794,150,'STANDBY_PROG_SEG_05','Standby program segment 5','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5795,150,'STANDBY_PROG_SEG_05_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5796,150,'STANDBY_PROG_SEG_05_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5797,150,'STANDBY_PROG_SEG_05_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5798,150,'STANDBY_PROG_SEG_06','Standby program segment 6','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5799,150,'STANDBY_PROG_SEG_06_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5800,150,'STANDBY_PROG_SEG_06_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5801,150,'STANDBY_PROG_SEG_06_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5802,150,'STANDBY_PROG_SEG_07','Standby program segment 7','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5803,150,'STANDBY_PROG_SEG_07_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5804,150,'STANDBY_PROG_SEG_07_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5805,150,'STANDBY_PROG_SEG_07_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5806,150,'STANDBY_PROG_SEG_08','Standby program segment 8','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5807,150,'STANDBY_PROG_SEG_08_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5808,150,'STANDBY_PROG_SEG_08_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5809,150,'STANDBY_PROG_SEG_08_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5810,150,'STANDBY_PROG_SEG_09','Standby program segment 9','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5811,150,'STANDBY_PROG_SEG_09_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5812,150,'STANDBY_PROG_SEG_09_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5813,150,'STANDBY_PROG_SEG_09_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5814,150,'STANDBY_PROG_SEG_10','Standby program segment 10','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5815,150,'STANDBY_PROG_SEG_10_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5816,150,'STANDBY_PROG_SEG_10_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5817,150,'STANDBY_PROG_SEG_10_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5818,150,'STANDBY_PROG_SEG_11','Standby program segment 11','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5819,150,'STANDBY_PROG_SEG_11_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5820,150,'STANDBY_PROG_SEG_11_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5821,150,'STANDBY_PROG_SEG_11_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5822,150,'STANDBY_PROG_SEG_12','Standby program segment 12','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5823,150,'STANDBY_PROG_SEG_12_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5824,150,'STANDBY_PROG_SEG_12_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5825,150,'STANDBY_PROG_SEG_12_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5826,150,'STANDBY_PROG_SEG_13','Standby program segment 13','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5827,150,'STANDBY_PROG_SEG_13_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5828,150,'STANDBY_PROG_SEG_13_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5829,150,'STANDBY_PROG_SEG_13_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5830,150,'STANDBY_PROG_SEG_14','Standby program segment 14','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5831,150,'STANDBY_PROG_SEG_14_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5832,150,'STANDBY_PROG_SEG_14_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5833,150,'STANDBY_PROG_SEG_14_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5834,150,'STANDBY_PROG_SEG_I','Standby program initial segment. The initial segment is used when starting the program.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5835,150,'STANDBY_PROG_SEG_I_DWELL','Dwell time in 48ms intervals','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5836,150,'STANDBY_PROG_SEG_I_TRANS','Transition time in ms','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5837,150,'STANDBY_PROG_SEG_I_VALUE','Standby program segment value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5838,150,'STATUS','Current Nutator status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5839,150,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5840,150,'TEMPERATURE_0','Monitor temperature probe 0. Controller .','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5841,150,'TEMPERATURE_1','Monitor temperature probe 1. Mirror T1 amplifier.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5842,150,'TEMPERATURE_2','Monitor temperature probe 2. Mirror T2 amplifier.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5843,150,'TEMPERATURE_3','Monitor temperature probe 3.Rocker amplifier.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5844,150,'TEMPERATURE_4','Monitor temperature probe 4. Apex controller.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5845,150,'TEMPERATURE_5','Monitor temperature probe 5. Apex mechanical housing.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5846,150,'TEMPERATURE_6','Monitor temperature probe 6. Left mirror motor.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5847,150,'TEMPERATURE_7','Monitor temperature probe 7. Right mirror motor.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5848,150,'TEMPERATURE_8','Monitor temperature probe 8. Left rocker motor.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5849,150,'TEMPERATURE_9','Monitor temperature probe 9. Right rocker motor.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5850,150,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5851,151,'ACU_MODE_RSP','Current Operational and Access Mode Information for ACU','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5852,151,'ACU_TRK_MODE_RSP','Current tracking mode information for ACU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5853,151,'AC_ATU_AIR_CIRCULATION_OVERLOAD_RELEASE','ATU: Air recirculation devices overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5854,151,'AC_ATU_DIFFERENTIAL_PRESSURE_SWITCH','ATU: Differential pressure switch (not set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5855,151,'AC_ATU_FAN_ON','ATU: Fan on (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5856,151,'AC_ATU_FAN_OVERLOAD_RELEASE','ATU fan overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5857,151,'AC_ATU_FLOW_LACK_ALARM','ATU: Lack of flow alarm (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5858,151,'AC_ATU_MANUAL_REQUEST','ATU: Manual start/stop request (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5859,151,'AC_ATU_OVERTEMP_ALARM','ATU: Overtemperature alarm (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5860,151,'AC_ATU_RESISTORS_OVERLOAD_RELEASE','ATU resistors overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5861,151,'AC_ATU_RESISTORS_SAFETY_THERMOSTAT','ATU: Resistors safety thermostat (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5862,151,'AC_ATU_SETPOINT_NOT_REACHED','ATU: Setpoint not reached (set = not reached)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5863,151,'AC_ATU_THERMAL_PROBE_S47_FAULT','ATU: Thermal probe S47 fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5864,151,'AC_ATU_THERMAL_PROBE_S48_FAULT','ATU: Thermal probe S48 fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5865,151,'AC_ATU_WATCHDOG','ATU: Watchdog (not set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5866,151,'AC_CHILLER_ANTI_FREEZE','CHILLER: Anti freeze (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5867,151,'AC_CHILLER_COMPRESSOR_OVERLOAD_RELEASE','CHILLER: Compressor overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5868,151,'AC_CHILLER_CPR_COMMAND','CHILLER: CPR command (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5869,151,'AC_CHILLER_DELIVERY_PROBE_FAULT','CHILLER: Delivery probe fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5870,151,'AC_CHILLER_FAN_FAULT','CHILLER: Fan fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5871,151,'AC_CHILLER_FLOW_LACK_ALARM','CHILLER: Lack of flow alarm (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5872,151,'AC_CHILLER_FLOW_PROBE','CHILLER: Flow probe (not set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5873,151,'AC_CHILLER_HIGH_PRESSURE','CHILLER: High pressure (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5874,151,'AC_CHILLER_INVERTER_COMMAND','CHILLER: Inverter command (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5875,151,'AC_CHILLER_INVERTER_FAULT','CHILLER: Inverter fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5876,151,'AC_CHILLER_LOW_PRESSURE','CHILLER: Low pressure (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5877,151,'AC_CHILLER_MANUAL_REQUEST','CHILLER: Manual start/stop request (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5878,151,'AC_CHILLER_PHASE_SEQ_FAULT','CHILLER: Phase sequence fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5879,151,'AC_CHILLER_PRESSURE_SENSOR_FAULT','CHILLER: Pressure sensor fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5880,151,'AC_CHILLER_PUMP_ON','CHILLER: Pump on (set = on)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5881,151,'AC_CHILLER_PUMP_OVERLOAD_RELEASE','CHILLER: Pump overload release (set = active)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5882,151,'AC_CHILLER_RETURN_PROBE_FAULT','CHILLER: Return probe fault (set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5883,151,'AC_CHILLER_TEMP','Temperature of chiller','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5884,151,'AC_CHILLER_WATCHDOG','CHILLER: Watchdog (not set = fault)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5885,151,'AC_HVAC_ATU_CONNECTION_OK','HVAC: ATU connection OK (set = ok)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5886,151,'AC_HVAC_CHILLER_CONNECTION_OK','HVAC: Chiller connection OK (set = ok)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5887,151,'AC_HVAC_DISABLED','HVAC disabled (set = disabled)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5888,151,'AC_STATUS','Air conditioning subsystem status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5889,151,'AC_TEMP','Get HVAC calibration volume temperature sensor and HVAC set-point','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5890,151,'ANTENNA_TEMPS','Antenna Temperatures','%2d','kelvin','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5891,151,'AZ_ENC','Position in raw encoder bits at last 20.83 Hz tick.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5892,151,'AZ_ENCODER_OFFSET','Offset between raw encoder reading and azimuth position excluding contribution from pointing and metrology corrections.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5893,151,'AZ_MOTOR_CURRENTS','Actual motor currents in all azimuth axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5894,151,'AZ_MOTOR_TEMPS','Motor temperatures in all azimuth axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5895,151,'AZ_MOTOR_TORQUE','Applied motor torque in all azmiuth axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5896,151,'AZ_POSN_RSP','Position of azimuth axis in turns at the last 20.83Hz pulse and 24ms before. Note that the interpretation of the value depends on the current active mode. In ENCODER mode, the position values are uncorrected; in AUTONOMOUS mode the values have been corrected by pointing model and metrology.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5897,151,'AZ_SERVO_COEFF_0','Azimuth servo coefficient 0.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5898,151,'AZ_SERVO_COEFF_1','Azimuth servo coefficient 1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5899,151,'AZ_SERVO_COEFF_2','Azimuth servo coefficient 2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5900,151,'AZ_SERVO_COEFF_3','Azimuth servo coefficient 3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5901,151,'AZ_SERVO_COEFF_4','Azimuth servo coefficient 4.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5902,151,'AZ_SERVO_COEFF_5','Azimuth servo coefficient 5.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5903,151,'AZ_SERVO_COEFF_6','Azimuth servo coefficient 6.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5904,151,'AZ_SERVO_COEFF_7','Azimuth servo coefficient 7.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5905,151,'AZ_SERVO_COEFF_8','Azimuth servo coefficient 8.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5906,151,'AZ_SERVO_COEFF_9','Azimuth servo coefficient 9.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5907,151,'AZ_SERVO_COEFF_A','Azimuth servo coefficient A.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5908,151,'AZ_SERVO_COEFF_B','Azimuth servo coefficient B.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5909,151,'AZ_SERVO_COEFF_C','Azimuth servo coefficient C.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5910,151,'AZ_SERVO_COEFF_D','Azimuth servo coefficient D','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5911,151,'AZ_SERVO_COEFF_E','Azimuth servo coefficient E','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5912,151,'AZ_SERVO_COEFF_F','Azimuth servo coefficient F','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5913,151,'AZ_STATUS','Status of azimuth axis.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5914,151,'AZ_TRAJ','Position in turns and velocity in turns/sec set with the last AZ_TRAJ_CMD','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5915,151,'CAN_ERROR','Status of CAN interface board.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5916,151,'EL_ENC','Position in raw encoder bits at last 20.83 Hz tick.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5917,151,'EL_ENCODER_OFFSET','Offset between raw encoder reading and azimuth position excluding contribution from pointing and metrology corrections.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5918,151,'EL_MOTOR_CURRENTS','Actual motor currents in all elevation axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5919,151,'EL_MOTOR_TEMPS','Motor temperatures in all elevation axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5920,151,'EL_MOTOR_TORQUE','Applied motor torque in all elevation axis drive motors','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5921,151,'EL_POSN_RSP','Position of elevation axis in turns at the last 20.83Hz pulse and 24ms before. Note that the interpretation of the value depends on the current active mode. In ENCODER mode, the position values are uncorrected; in AUTONOMOUS mode the values have been corrected by pointing model and metrology.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5922,151,'EL_SERVO_COEFF_0','Elevation servo coefficient 0.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5923,151,'EL_SERVO_COEFF_1','Elevation servo coefficient 1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5924,151,'EL_SERVO_COEFF_2','Elevation servo coefficient 2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5925,151,'EL_SERVO_COEFF_3','Elevation servo coefficient 3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5926,151,'EL_SERVO_COEFF_4','Elevation servo coefficient 4.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5927,151,'EL_SERVO_COEFF_5','Elevation servo coefficient 5.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5928,151,'EL_SERVO_COEFF_6','Elevation servo coefficient 6.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5929,151,'EL_SERVO_COEFF_7','Elevation servo coefficient 7.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5930,151,'EL_SERVO_COEFF_8','Elevation servo coefficient 8.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5931,151,'EL_SERVO_COEFF_9','Elevation servo coefficient 9.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5932,151,'EL_SERVO_COEFF_A','Elevation servo coefficient A.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5933,151,'EL_SERVO_COEFF_B','Elevation servo coefficient B.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5934,151,'EL_SERVO_COEFF_C','Elevation servo coefficient C.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5935,151,'EL_SERVO_COEFF_D','Elevation servo coefficient D','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5936,151,'EL_SERVO_COEFF_E','Elevation servo coefficient E','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5937,151,'EL_SERVO_COEFF_F','Elevation servo coefficient F','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5938,151,'EL_STATUS','Status of elevation axis.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5939,151,'EL_TRAJ','Position in turns and velocity in turns/sec set with the last EL_TRAJ_CMD','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5940,151,'IDLE_STOW_TIME','Currently set time for ACU to enter survival stow if no communication is received on CAN bus or timing pulse has ceased.','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5941,151,'IP_ADDRESS','ACU IP address (external LAN).','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5942,151,'IP_GATEWAY','ACU gateway IP address.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5943,151,'METR_COEFF_1','AN0 (Az axis tilt to be substracted from titmeter readout)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5944,151,'METR_COEFF_2','AW0 (Az axis tilt to be substracted from titmeter readout)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5945,151,'METR_DELTAPATH','Error in path length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5946,151,'METR_DELTAS','Metrology Deltas','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5947,151,'METR_DELTAS_TEMP','Get Az and El total delta corecton applied by the metrology system due to temperature variations','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5948,151,'METR_EQUIP_STATUS','Metrology equipment status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5949,151,'METR_MODE','Get metrology mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5950,151,'METR_TEMPS_00','Metrology Temperatures Sensor Pack 00','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5951,151,'METR_TEMPS_01','Metrology Temperatures Sensor Pack 01','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5952,151,'METR_TEMPS_02','Metrology Temperatures Sensor Pack 02','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5953,151,'METR_TEMPS_03','Metrology Temperatures Sensor Pack 03','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5954,151,'METR_TEMPS_04','Metrology Temperatures Sensor Pack 04','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5955,151,'METR_TEMPS_05','Metrology Temperatures Sensor Pack 05','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5956,151,'METR_TEMPS_06','Metrology Temperatures Sensor Pack 06','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5957,151,'METR_TEMPS_07','Metrology Temperatures Sensor Pack 07','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5958,151,'METR_TEMPS_08','Metrology Temperatures Sensor Pack 08','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5959,151,'METR_TEMPS_09','Metrology Temperatures Sensor Pack 09','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5960,151,'METR_TEMPS_0A','Metrology Temperatures Sensor Pack 0A','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5961,151,'METR_TEMPS_0B','Metrology Temperatures Sensor Pack 0B','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5962,151,'METR_TEMPS_0C','Metrology Temperatures Sensor Pack 0C','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5963,151,'METR_TEMPS_0D','Metrology Temperatures Sensor Pack 0D','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5964,151,'METR_TEMPS_0E','Metrology Temperatures Sensor Pack 0E','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5965,151,'METR_TEMPS_0F','Metrology Temperatures Sensor Pack 0F','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5966,151,'METR_TEMPS_10','Metrology Temperatures Sensor Pack 10','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5967,151,'METR_TEMPS_11','Metrology Temperatures Sensor Pack 11','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5968,151,'METR_TEMPS_12','Metrology Temperatures Sensor Pack 12','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5969,151,'METR_TEMPS_13','Metrology Temperatures Sensor Pack 13','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5970,151,'METR_TEMPS_14','Metrology Temperatures Sensor Pack 14','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5971,151,'METR_TEMPS_15','Metrology Temperatures Sensor Pack 15','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5972,151,'METR_TEMPS_16','Metrology Temperatures Sensor Pack 16','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5973,151,'METR_TEMPS_17','Metrology Temperatures Sensor Pack 17','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5974,151,'METR_TEMPS_18','Metrology Temperatures Sensor Pack 18','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5975,151,'METR_TILT_0','Metrology system tiltmeter readouts.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5976,151,'METR_TILT_1','Metrology system tiltmeter readouts.','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5977,151,'NUM_TRANS','Number of CAN transactions handled by ACU since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5978,151,'POWER_STATUS','Get power and UPS status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(5979,151,'PT_MODEL_COEFF_00','Pointing model coefficient to be used in autonomous mode. IA azimuth encoder zero offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5980,151,'PT_MODEL_COEFF_01','Pointing model coefficient to be used in autonomous mode. CA collimation error of electromagnetic offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5981,151,'PT_MODEL_COEFF_02','Pointing model coefficient to be used in autonomous mode. NPAE non-perpendicularity of mount azimuth and elevation axes.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5982,151,'PT_MODEL_COEFF_03','Pointing model coefficient to be used in autonomous mode. AN azimuth axis offset (misalignment north-south)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5983,151,'PT_MODEL_COEFF_04','Pointing model coefficient to be used in autonomous mode. AW azimuth axis offset (misalingment east-west)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5984,151,'PT_MODEL_COEFF_05','Pointing model coefficient to be used in autonomous mode. IE elevation encoder zero offset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5985,151,'PT_MODEL_COEFF_06','Pointing model coefficient to be used in autonomous mode. HECE gravitational flexure correction at the horizon.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5986,151,'PT_MODEL_COEFF_07','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5987,151,'PT_MODEL_COEFF_08','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5988,151,'PT_MODEL_COEFF_09','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5989,151,'PT_MODEL_COEFF_0A','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5990,151,'PT_MODEL_COEFF_0B','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5991,151,'PT_MODEL_COEFF_0C','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5992,151,'PT_MODEL_COEFF_0D','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5993,151,'PT_MODEL_COEFF_0E','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5994,151,'PT_MODEL_COEFF_0F','Pointing model coefficient to be used in autonomous mode. Reserved.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5995,151,'PT_MODEL_COEFF_10','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5996,151,'PT_MODEL_COEFF_11','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5997,151,'PT_MODEL_COEFF_12','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5998,151,'PT_MODEL_COEFF_13','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(5999,151,'PT_MODEL_COEFF_14','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6000,151,'PT_MODEL_COEFF_15','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6001,151,'PT_MODEL_COEFF_16','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6002,151,'PT_MODEL_COEFF_17','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6003,151,'PT_MODEL_COEFF_18','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6004,151,'PT_MODEL_COEFF_19','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6005,151,'PT_MODEL_COEFF_1A','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6006,151,'PT_MODEL_COEFF_1B','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6007,151,'PT_MODEL_COEFF_1C','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6008,151,'PT_MODEL_COEFF_1D','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6009,151,'PT_MODEL_COEFF_1E','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6010,151,'PT_MODEL_COEFF_1F','Pointing model coefficient to be used in autonomous mode.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-1E0/0,1E0/0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6011,151,'SELFTEST_ERR','Reads one entry from the self test failure stack','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6012,151,'SELFTEST_ERR_1','Reads one entry from the self test failure stack (additional information)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6013,151,'SELFTEST_ERR_1_ERROR_CODE','Error code: Test failed no detailed information available (0), Test not executed due to failed previous required test (1)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6014,151,'SELFTEST_ERR_1_FAILED_COUNT','Number of failed tests','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6015,151,'SELFTEST_ERR_1_VALUE','Measured value, if applicable','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6016,151,'SELFTEST_ERR_FAILED_COUNT','Number of failed tests','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6017,151,'SELFTEST_ERR_VALUE','Measured value','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6018,151,'SELFTEST_RSP','Get self test status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6019,151,'SELFTEST_RSP_COMPLETED','Self-test completed','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6020,151,'SELFTEST_RSP_ERROR_COUNT','Number of errors on the self-test error stack','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6021,151,'SELFTEST_RSP_FAILED','Self-test failed','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6022,151,'SELFTEST_RSP_FAILED_COUNT','Number of failing tests','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6023,151,'SELFTEST_RSP_RUNNING','Self-test running','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6024,151,'SHUTTER','Shutter Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6025,151,'STOW_PIN','Stow Pin Status','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6026,151,'STOW_PIN_1','Position of antenna stow pins (additional information)','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6027,151,'SUBREF_ABS_POSN','Subreflector Absolute Positions','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6028,151,'SUBREF_DELTA_POSN','Subreflector Delta Positions','%2d','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6029,151,'SUBREF_LIMITS','Get subreflector mechanism limit status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6030,151,'SUBREF_ROTATION','Subreflector rotation position.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6031,151,'SUBREF_STATUS','Get subreflector mechanism status','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6032,151,'SW_REV_LEVEL','Revision level of vendor ACU code.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6033,151,'SYSTEM_ID','Get ACU hardware and software identifiers. Currently only a software revision level is supported, but could be expanded to include hardware identifiers in future.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6034,151,'SYSTEM_STATUS','State of miscellaneous related systems','%none','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6035,151,'UPS_OUTPUT_CURRENT','UPS Output Currents','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6036,151,'UPS_OUTPUT_VOLTS','UPS Output Voltages','%2d','none','1',15,5.0E0,5.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6037,152,'ALARM_STATUS_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6038,152,'ALARM_STATUS_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6039,152,'ALARM_STATUS_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6040,152,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6041,152,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6042,152,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6043,152,'DFR_CONTROL_REG_B','CH3 - Bit B: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6044,152,'DFR_CONTROL_REG_C','CH2 - Bit C: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6045,152,'DFR_CONTROL_REG_D','CH1 - Bit D: Read control register for deformatting control','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6046,152,'DFR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a DFR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the DFR_EEPROM_FETCH command. If the DFR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6047,152,'DFR_FPGA_FW_VER_B','CH3 - Bit B: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6048,152,'DFR_FPGA_FW_VER_B_BE','CH3 - Bit B: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6049,152,'DFR_FPGA_FW_VER_B_DAY','CH3 - Bit B: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6050,152,'DFR_FPGA_FW_VER_B_MAJOR','CH3 - Bit B: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6051,152,'DFR_FPGA_FW_VER_B_MINOR','CH3 - Bit B: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6052,152,'DFR_FPGA_FW_VER_B_MONTH','CH3 - Bit B: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6053,152,'DFR_FPGA_FW_VER_B_TYPEID','CH3 - Bit B: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6054,152,'DFR_FPGA_FW_VER_B_YEAR','CH3 - Bit B: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6055,152,'DFR_FPGA_FW_VER_C','CH2 - Bit C: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6056,152,'DFR_FPGA_FW_VER_C_BE','CH2 - Bit C: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6057,152,'DFR_FPGA_FW_VER_C_DAY','CH2 - Bit C: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6058,152,'DFR_FPGA_FW_VER_C_MAJOR','CH2 - Bit C: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6059,152,'DFR_FPGA_FW_VER_C_MINOR','CH2 - Bit C: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6060,152,'DFR_FPGA_FW_VER_C_MONTH','CH2 - Bit C: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6061,152,'DFR_FPGA_FW_VER_C_TYPEID','CH2 - Bit C: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6062,152,'DFR_FPGA_FW_VER_C_YEAR','CH2 - Bit C: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6063,152,'DFR_FPGA_FW_VER_D','CH1 - Bit D: FPGA Firmware version.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6064,152,'DFR_FPGA_FW_VER_D_BE','CH1 - Bit D: byte 0 - Hex Value BE (Back End)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6065,152,'DFR_FPGA_FW_VER_D_DAY','CH1 - Bit D: byte 3 - Day (0-31) day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6066,152,'DFR_FPGA_FW_VER_D_MAJOR','CH1 - Bit D: byte 2 - bits 0 - 3 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6067,152,'DFR_FPGA_FW_VER_D_MINOR','CH1 - Bit D: byte 2 - bits 4 - 7 : minor revision','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6068,152,'DFR_FPGA_FW_VER_D_MONTH','CH1 - Bit D: byte 4 - Month (0-12) month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6069,152,'DFR_FPGA_FW_VER_D_TYPEID','CH1 - Bit D: byte 1 - Module Type ID = xF1 for receiver','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6070,152,'DFR_FPGA_FW_VER_D_YEAR','CH1 - Bit D: byte 5 - Year (00-99) year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6071,152,'DFR_FRAME_ALIGNER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6072,152,'DFR_FRAME_ALIGNER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6073,152,'DFR_LRU_CIN','Read the line replacable units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6074,152,'DFR_LRU_CIN_4THLEVEL','Bytes 0-3: LRU CIN to the 4th level','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6075,152,'DFR_LRU_CIN_REV','Byte 6: LRU revision 1=A, 2=B, etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6076,152,'DFR_LRU_CIN_SN','Bytes 4-5: LRU serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6077,152,'DFR_PARITY_COUNTER_B','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6078,152,'DFR_PARITY_COUNTER_C','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6079,152,'DFR_PARITY_COUNTER_D','none','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6080,152,'DFR_PARITY_TIMER_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6081,152,'DFR_PARITY_TIMER_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6082,152,'DFR_PARITY_TIMER_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6083,152,'DFR_PAYLOAD_HI_B','CH3 - Bit B: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6084,152,'DFR_PAYLOAD_HI_C','CH2 - Bit C: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6085,152,'DFR_PAYLOAD_HI_D','CH1 - Bit D: Read the most significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6086,152,'DFR_PAYLOAD_LO_B','CH3 - Bit B: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6087,152,'DFR_PAYLOAD_LO_C','CH2 - Bit C: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6088,152,'DFR_PAYLOAD_LO_D','CH1 - Bit D: Read the least significant 8 bytes of internal FIFO payload data. This command allows the user to examine sequential input data using the DFR_CAPTURE_PAYLOAD control command','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6089,152,'DFR_SCRAMBLE_MODE_B','CH3 - Bit B: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6090,152,'DFR_SCRAMBLE_MODE_C','CH2 - Bit C: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6091,152,'DFR_SCRAMBLE_MODE_D','CH1 - Bit D: Read Scramble Code mode. If bit 0 = 0, scramble code ON, if bit 0 = 1, scramble code OFF.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6092,152,'DFR_STATUS_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6093,152,'DFR_STATUS_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6094,152,'DFR_STATUS_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6095,152,'DFR_SWITCH_B','CH3 - Bit B: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6096,152,'DFR_SWITCH_C','CH2 - Bit C: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6097,152,'DFR_SWITCH_D','CH1 - Bit D: Switch setting: show the value of the test switch setting. All bits = 0 normal. If bit 7 is set, the ouptut data to the correlator can be affected.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6098,152,'DFR_SYNC_ERR_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6099,152,'DFR_SYNC_ERR_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6100,152,'DFR_SYNC_ERR_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6101,152,'DFR_SYNC_LOSS_CNT_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6102,152,'DFR_SYNC_LOSS_CNT_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6103,152,'DFR_SYNC_LOSS_CNT_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6104,152,'DFR_SYNC_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6105,152,'DFR_SYNC_STATUS_B_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6106,152,'DFR_SYNC_STATUS_B_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6107,152,'DFR_SYNC_STATUS_B_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6108,152,'DFR_SYNC_STATUS_C','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6109,152,'DFR_SYNC_STATUS_C_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6110,152,'DFR_SYNC_STATUS_C_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6111,152,'DFR_SYNC_STATUS_C_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6112,152,'DFR_SYNC_STATUS_D','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6113,152,'DFR_SYNC_STATUS_D_OFFSET','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6114,152,'DFR_SYNC_STATUS_D_OFFSETBIT','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6115,152,'DFR_SYNC_STATUS_D_STATUS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6116,152,'DFR_TEST_DATA_B','CH3 - Bit B: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6117,152,'DFR_TEST_DATA_C','CH2 - Bit C: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6118,152,'DFR_TEST_DATA_D','CH1 - Bit D: Read the test data configuration','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6119,152,'DFR_VOLTAGE_STATUS_B','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6120,152,'DFR_XBAR_B','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6121,152,'DFR_XBAR_B_BASEBANDS','CH3 - Bit B: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6122,152,'DFR_XBAR_B_SWAP_16_IN_TIME','Bit B: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6123,152,'DFR_XBAR_B_SWAP_32_IN_TIME','Bit B: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6124,152,'DFR_XBAR_C','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6125,152,'DFR_XBAR_C_BASEBANDS','CH2 - Bit C: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6126,152,'DFR_XBAR_C_SWAP_16_IN_TIME','Bit C: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6127,152,'DFR_XBAR_C_SWAP_32_IN_TIME','Bit C: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6128,152,'DFR_XBAR_D','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6129,152,'DFR_XBAR_D_BASEBANDS','CH1 - Bit D: Read the XBAR Switch','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6130,152,'DFR_XBAR_D_SWAP_16_IN_TIME','Bit D: swap 16 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6131,152,'DFR_XBAR_D_SWAP_32_IN_TIME','Bit D: swap 32 channels in time','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6132,152,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6133,152,'I2C_DATA','ALL: Read the response from a SET_I2C_CMD control point.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6134,152,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6135,152,'METAFRAME_DELAY_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6136,152,'METAFRAME_DELAY_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6137,152,'METAFRAME_DELAY_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6138,152,'METAFRAME_DELAY_RAW','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6139,152,'POWER_ALARM_REG_B','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6140,152,'POWER_ALARM_REG_C','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6141,152,'POWER_ALARM_REG_D','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6142,152,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6143,152,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6144,152,'SIGNAL_AVG_B','BIT C Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6145,152,'SIGNAL_AVG_C','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6146,152,'SIGNAL_AVG_D','BIT D Optical Power','%none','watt','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',2500.0E0,800000.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6147,152,'SPECIFIED_METAFRAME_DELAY','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6148,152,'SPECIFIED_METAFRAME_DELAY_DEBUG','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6149,152,'SPECIFIED_METAFRAME_DELAY_EXT_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6150,152,'SPECIFIED_METAFRAME_DELAY_OFFSET','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6151,152,'SPECIFIED_METAFRAME_DELAY_SIDEFRAME_COUNT_ERROR','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6152,152,'SPECIFIED_METAFRAME_STORED_DELAY','EEPROM stored delay parameter (MSB, stored, and LSB - bytes 0-2)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6153,152,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6154,152,'TE_ERRS','none','%none','none','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6155,152,'TE_ERRS_CLKEDGE','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6156,152,'TE_ERRS_CURRENTERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6157,152,'TE_ERRS_EARLYERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6158,152,'TE_ERRS_LATEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6159,152,'TE_ERRS_TEERR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6160,152,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6161,152,'TRX_TEMPERATURE_B','CH3 - Bit B: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6162,152,'TRX_TEMPERATURE_C','CH2 - Bit C: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6163,152,'TRX_TEMPERATURE_D','CH1 - Bit D: Receiver Transponder Temperature Monitor (I2C cmd 0x66) mC per Count.','%none','kelvin','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6164,153,'AC_STATUS_OK','ac status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6165,153,'ALIVE_COUNTER','Alive counter increments for each cycle of the PSUs internal MC routine','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6166,153,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6167,153,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6168,153,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6169,153,'CURRENT_LIMITS_OK','current limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6170,153,'DC_STATUS_OK','global dc ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6171,153,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6172,153,'FAN_STATUS_OK','fan status ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6173,153,'FAN_WARNING_OK','fan warning ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6174,153,'GLOBAL_WARNING','Global warning flag','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6175,153,'INTERNAL_COMMAND_IDENTIFIER_RX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6176,153,'INTERNAL_COMMAND_IDENTIFIER_TX','Internal Command Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6177,153,'INTERNAL_MODULE_IDENTIFIER_RX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6178,153,'INTERNAL_MODULE_IDENTIFIER_TX','Internal Module Identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6179,153,'INTERNAL_SLAVE_ERROR_CODE','Internal slave error code','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6180,153,'INTERNAL_UNIT_IDENTIFIER_RX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6181,153,'INTERNAL_UNIT_IDENTIFIER_TX','Internal unit identifier','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6182,153,'LAMBDA_SERIAL_NUMBER','Lambda serial number. Please see ICD to learn the meaning of this bytes','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6183,153,'MESSAGE_LENGTH_RX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6184,153,'MESSAGE_LENGTH_TX','Message Length','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6185,153,'MID_1_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6186,153,'MID_1_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6187,153,'MID_1_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6188,153,'MID_1_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6189,153,'MID_1_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6190,153,'MID_2_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6191,153,'MID_2_MAXMIN_POWER','Voltage and current mix max, as measured by the power suply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6192,153,'MID_2_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6193,153,'MID_2_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6194,153,'MID_2_VOLTAGE','Measured output voltage of the power supply. When PS Shutdown status bits is asserted, the values are tied to 0xFFFF','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6195,153,'MID_4_CURRENT','Measured output current of the power supply. When PS SHUTDOWN status bits is asserted, the values are tied to 0xFFFF','%none','ampere','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6196,153,'MID_4_MAXMIN_POWER','The voltage and current extrema, as measured by the power supply','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6197,153,'MID_4_SHUTDOWN_CURRENT','Measured output current of the power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','ampere','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6198,153,'MID_4_SHUTDOWN_VOLTAGE','Measured output voltage of power supply at last shutdown. The data will be latched at zero until the supply is first shutdown','%none','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6199,153,'MID_4_VOLTAGE','Measure output voltage of the power supply. When PS SHUTDOWN status bit is asserted, the values are tied to oxFFFF. This monitor point is reimplemented on real impl components','%none','volt','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6200,153,'MODULES_ALL_OK','all modules in good condition','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6201,153,'MODULE_CODES','Returns administrative information about PSU','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6202,153,'OVER_TEMP_OK','over temperature ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6203,153,'PAYLOAD_1_RX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6204,153,'PAYLOAD_1_TX','Payload 1 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6205,153,'PAYLOAD_2_RX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6206,153,'PAYLOAD_2_TX','Payload 2 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6207,153,'PAYLOAD_3_RX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6208,153,'PAYLOAD_3_TX','Payload 3 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6209,153,'PAYLOAD_4_RX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6210,153,'PAYLOAD_4_TX','Payload 4 relative to command id','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6211,153,'PROTOCOL_REV_LEVEL','Generic Monitor Point. Protocol revision level.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6212,153,'PS_SHUTDOWN','Power Supply Shutdown','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6213,153,'RS232_COMM_ERRORS','Returns available information for errors during RS232 communication','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6214,153,'RS232_RX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6215,153,'RS232_TX_BUFFER','Returns contents of the RS232 RX Buffer','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6216,153,'SERIAL_NUMBER','Generic Monitor Point. Serial number of the device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6217,153,'SHUTDOWN_AMBIENT_TEMPERATURE','Shutdown Ambient Temperature. Temperature recorded at last shutdown event.','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6218,153,'SHUTDOWN_CMD_RECEIVED','Shutdown command received','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6219,153,'SHUTDOWN_ERROR_CODE','Shutdown Error Code indicates the cause of the last shutdown.','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6220,153,'STATUS','Three bits indicating the general status of PS','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6221,153,'SW_REV_LEVEL','Generic Monitor Point. Revision level of embedded code. This is the software embedded in the AMBSI or the programmable device that is handling the AMB communications.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6222,153,'TRANS_NUM','Generic Monitor Point. Number of transactions handled by the slave node since power up.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.8446744073709552E19,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6223,153,'VOLTAGE_LIMITS_OK','voltage limits ok','%none','none','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6224,154,'mode','TE handler ticks mode','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,0.0E0,'2',0.0E0,0.0E0,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,1.0E0,NULL,NULL,NULL,NULL,NULL,'SOFT,FW,HARD','!','0,1','2','!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6225,154,'type','TE handler time type','-','-','65535',3,0.0E0,0.0E0,'monitor_collector',FALSE,1.0E0,1.0E0,FALSE,0.0E0,'0',0.0E0,0.0E0,NULL,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,'LOCALCPU,ARRAY','!','!','!','!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6226,155,'AMBIENT_TEMPERATURE','Generic Monitor Point. Temperature measured by the DS1820 chip.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6227,155,'CAN_ERROR','Generic Monitor Point. CAN-bus errors since power up and error code of last error.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6228,155,'CAN_ERROR_COUNT','Number of CAN errors since last power up or last reset.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6229,155,'DG_250MHZ_WD','Get relative 250 MHz delay setting. This is a DAC setting in the DG. It is cyclical and relative. This value is adjusted when a module is first installed in an antenna. It should not change between power cycles.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6230,155,'DG_3_3_V','3.3 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6231,155,'DG_5_V','5.0 Voltage reading from the DG','%7.2f','volt','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6232,155,'DG_EE_FLAG','Bit 0: 1 = error, 0 = NO error','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6233,155,'DG_FW_VER','Firmware version','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6234,155,'DG_HARDWARE_REV','Hardware revision 1 = A, 2 = B etc.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6235,155,'DG_MEM','Read memory location specified in SET_DG_CMD','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6236,155,'DG_PS_ON_OFF','Read power supply status, Bit 0 = 1 power suply ON, if bit 0 = 0 power supply OFF','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6237,155,'DG_SN','Serial number for DG','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6238,155,'DG_TEMP','Temperature from DG','%7.2f','kelvin','1',15,10.0E0,10.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,50.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6239,155,'DG_TEST_PAT_MODE','DG test mode status bit, bit 0 = 1 test mode active, bit 0 = 0 normal mode','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6240,155,'DG_VH1','Phase 1 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6241,155,'DG_VH2','Phase 2 Reference Voltage High','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6242,155,'DG_VL1','Phase 1 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6243,155,'DG_VL2','Phase 2 Reference Voltage Low','%7.2f','volt','1',15,600.0E0,600.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,3.299999952316284E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6244,155,'DG_VMAG1_WD','Get reference voltage for Phase 1(BB0), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6245,155,'DG_VMAG2_WD','Get reference voltage for Phase 2(BB1), ADC magnitude setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6246,155,'DG_VOFF1_WD','Get reference voltage for Phase 1(BB0), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6247,155,'DG_VOFF2_WD','Get reference voltage for Phase 2(BB1), ADC offset setting','%none','none','1',15,60.0E0,60.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6248,155,'ERROR_CODE_LAST_CAN_ERROR','Error code of last CAN error. Codes are those defined by the INTEL 82527 CAN Controller status.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6249,155,'FR_1_5_V','1.5 Voltage data for FPGAs 1,2,3.','%7.2f','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6250,155,'FR_1_8_V','1.8 Voltage data for FPGAs 1,2,3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6251,155,'FR_48_V','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6252,155,'FR_BOARD_VOLTAGE','Voltage data for board voltages','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6253,155,'FR_BOARD_VOLTAGE_15_V','15.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,20.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6254,155,'FR_BOARD_VOLTAGE_3_3_V','3.3 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,5.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6255,155,'FR_BOARD_VOLTAGE_5_V','5.0 Volts','%7.2f','volt','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,10.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6256,155,'FR_BOARD_VOLTAGE_NEG_5_2_V','-5.2 Volts not present','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6257,155,'FR_CW_CH1','Get Control Word of configuration of the output data stream of Channel 1. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6258,155,'FR_CW_CH1_FRAME_DATA','Data Frame Configuration of channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6259,155,'FR_CW_CH1_PARITY','parity bit of channel 1 control word','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6260,155,'FR_CW_CH1_PAYLOAD_DATA','Payload data of channel 1 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6261,155,'FR_CW_CH1_SCRAMBLE_CODE','Get scramble code config for channel 1','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6262,155,'FR_CW_CH2','Get Control Word of configuration of the output data stream for Channel 2. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6263,155,'FR_CW_CH2_FRAME_DATA','Data Frame Configuration of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6264,155,'FR_CW_CH2_PARITY','parity bit of control word of channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6265,155,'FR_CW_CH2_PAYLOAD_DATA','Payload data of channel 2 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6266,155,'FR_CW_CH2_SCRAMBLE_CODE','Get scramble code config for channel 2','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6267,155,'FR_CW_CH3','Get Control Word of configuration of the output data stream for Channel 3. Used for debug and verification','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6268,155,'FR_CW_CH3_FRAME_DATA','Data Frame Configuration of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6269,155,'FR_CW_CH3_PARITY','parity bit of control word of channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6270,155,'FR_CW_CH3_PAYLOAD_DATA','Payload data of channel 3 of the output data stream.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6271,155,'FR_CW_CH3_SCRAMBLE_CODE','Get scramble code config for channel 3','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',NULL,1.0E0,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6272,155,'FR_EEPROM_DATA','Read data from the EEPROM. If this command is preceded by a FR_EEPROM_FETCH then the data will be the byte programmed into the EEPROM at the address given in the FR_EEPROM_FETCH command. If the FR_EEPROM_FETCH does not precede this command, the data returned will be the status register of the EEPROM device.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6273,155,'FR_FPGA_FW_VER_CH1','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6274,155,'FR_FPGA_FW_VER_CH2','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6275,155,'FR_FPGA_FW_VER_CH2_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6276,155,'FR_FPGA_FW_VER_CH2_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6277,155,'FR_FPGA_FW_VER_CH2_FORMATTER_SN','Formatter serial number','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6278,155,'FR_FPGA_FW_VER_CH2_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6279,155,'FR_FPGA_FW_VER_CH2_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6280,155,'FR_FPGA_FW_VER_CH2_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6281,155,'FR_FPGA_FW_VER_CH2_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6282,155,'FR_FPGA_FW_VER_CH2_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6283,155,'FR_FPGA_FW_VER_CH3','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6284,155,'FR_FPGA_FW_VER_CH3_BE','Hex BE','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6285,155,'FR_FPGA_FW_VER_CH3_DAY','Day of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6286,155,'FR_FPGA_FW_VER_CH3_ID','Module Type ID (x40 for transmitter)','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6287,155,'FR_FPGA_FW_VER_CH3_MONTH','Month of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6288,155,'FR_FPGA_FW_VER_CH3_RESET_TIME','Time since reset - DEBUG','%none','second','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6289,155,'FR_FPGA_FW_VER_CH3_REV_MAJ','Revision Major','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6290,155,'FR_FPGA_FW_VER_CH3_REV_MIN','Revision Minor','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6291,155,'FR_FPGA_FW_VER_CH3_YEAR','Year of revision compilation','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6292,155,'FR_INPUT_TEST_CH1','Read CH1 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6293,155,'FR_INPUT_TEST_CH2','Read CH2 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6294,155,'FR_INPUT_TEST_CH3','Read CH3 input test mode register setting.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6295,155,'FR_LASER_BIAS','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6296,155,'FR_LASER_PWR','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-3.4028234663852886E38,3.4028234663852886E38,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6297,155,'FR_LRU_CIN','Line Replaceable Units CIN','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6298,155,'FR_LRU_CIN_CIN4THLEVEL','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,4.294967296E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6299,155,'FR_LRU_CIN_LRU_REV','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6300,155,'FR_LRU_CIN_LRU_SN','none','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6301,155,'FR_PAYLOAD_HI_CH1','Read upper 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6302,155,'FR_PAYLOAD_HI_CH2','Read upper 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6303,155,'FR_PAYLOAD_HI_CH3','Read upper 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6304,155,'FR_PAYLOAD_LO_CH1','Read lower 64 bits of CH1 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6305,155,'FR_PAYLOAD_LO_CH2','Read lower 64 bits of CH2 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6306,155,'FR_PAYLOAD_LO_CH3','Read lower 64 bits of CH3 internal FIFO payload data.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6307,155,'FR_PAYLOAD_STATUS','Read internal payload FIFO status. In order to get sequential data, the fifo should not be read until the fifo full flag has gone high after sending the FR_CAPTURE_PAYLOAD command.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,0.0E0,'0',NULL,NULL,1.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,0.0E0,NULL,NULL,'!','!','!',NULL,NULL,NULL,NULL,'!','!',0,'\u000a\u000a') +INSERT INTO BACIPROPERTY VALUES(6308,155,'FR_PHASE_OFFSET','Phase Switching Value','%none','second','1',15,1.0E0,1.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',0.0E0,30.0E0,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6309,155,'FR_PHASE_SEQ_A','This is a read back of the SET_PHASE_SEQ_A command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6310,155,'FR_PHASE_SEQ_B','This is a read back of the SET_PHASE_SEQ_B command. It is used to verify that the DTX has received the previous SET_PHASE_SEQ command. It will return all zeros if the SET_PHASE_SEQ command has never been called. See section 4.2.3 for a description of how this sequence affects the D (sign) bits.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6311,155,'FR_RNG_CH1','Read RNG mode register setting of CH1.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6312,155,'FR_RNG_CH2','Read RNG mode register setting of CH2.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,'!','!',0,NULL) +INSERT INTO BACIPROPERTY VALUES(6313,155,'FR_RNG_CH3','Read RNG mode register setting of CH3.','%none','none','1',15,300.0E0,300.0E0,'monitor_collector',FALSE,1.0E0,0.048E0,FALSE,1.0E0,'0',-2.147483648E9,2.147483648E9,1.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,0.0E0,NULL,NU