Ejemplo n.º 1
0
        public static RegisterSensor loadFile()
        {
            XmlSerializer ser = new XmlSerializer(typeof(RegisterSensor));
            StreamReader  fs  = new StreamReader(new FileStream("test/sensorRegistration.xml", FileMode.OpenOrCreate));
            //String s;
            //while ((s=fs.ReadLine())!=null)
            //{
            //    Console.WriteLine(s);
            //}
            RegisterSensor rs = (RegisterSensor)ser.Deserialize(fs);

            fs.Close();
            return(rs);
            //XmlDocument doc = new XmlDocument();
            //doc.Load("test/sensorRegistration.xml");
            //System.Console.Write(doc.InnerXml);
        }
Ejemplo n.º 2
0
		// resume scanning of a SCANsat module
		// - v: vessel that own the module
		// - m: protomodule of a SCANsat or a resource scanner
		// - p: prefab of the part owning the module
		public static bool ResumeScanner(Vessel v, ProtoPartModuleSnapshot m, Part part_prefab)
		{
			return SCANUtils != null && (bool)RegisterSensor.Invoke(null, new Object[] { v, m, part_prefab });
		}
        public String registerMeter(string meterId)
        {
            RegisterSensor rs = new RegisterSensor();

            rs.sensorDescription = new SensorDescription();

            rs.sensorDescription.system    = new SML.System();
            rs.sensorDescription.system.id = "meter:" + meterId;

            rs.sensorDescription.system.identification = new Identification();
            rs.sensorDescription.system.identification.identifierList                                  = new IdentifierList();
            rs.sensorDescription.system.identification.identifierList.identifier                       = new Identifier[1];
            rs.sensorDescription.system.identification.identifierList.identifier[0]                    = new Identifier();
            rs.sensorDescription.system.identification.identifierList.identifier[0].term               = new Term();
            rs.sensorDescription.system.identification.identifierList.identifier[0].term.definition    = "urn:x-ogc:def:identifier:IDAS:1.0:localIdentifier";
            rs.sensorDescription.system.identification.identifierList.identifier[0].term.value         = new SMLValue();
            rs.sensorDescription.system.identification.identifierList.identifier[0].term.value.content = "meter:" + meterId;

            rs.sensorDescription.system.inputs                    = new Inputs();
            rs.sensorDescription.system.inputs.inputList          = new InputList();
            rs.sensorDescription.system.inputs.inputList.input    = new Input[10];
            rs.sensorDescription.system.inputs.inputList.input[0] = new Input("upstreamActivePower");
            rs.sensorDescription.system.inputs.inputList.input[0].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:upstreamActivePower");
            rs.sensorDescription.system.inputs.inputList.input[1] = new Input("downstreamActivePower");
            rs.sensorDescription.system.inputs.inputList.input[1].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:downstreamActivePower");
            rs.sensorDescription.system.inputs.inputList.input[2] = new Input("RP_Q1");
            rs.sensorDescription.system.inputs.inputList.input[2].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:RP_Q1");
            rs.sensorDescription.system.inputs.inputList.input[3] = new Input("RP_Q2");
            rs.sensorDescription.system.inputs.inputList.input[3].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:RP_Q2");
            rs.sensorDescription.system.inputs.inputList.input[4] = new Input("RP_Q3");
            rs.sensorDescription.system.inputs.inputList.input[4].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:RP_Q3");
            rs.sensorDescription.system.inputs.inputList.input[5] = new Input("RP_Q4");
            rs.sensorDescription.system.inputs.inputList.input[5].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:RP_Q4");
            rs.sensorDescription.system.inputs.inputList.input[6] = new Input("isConcentrator");
            rs.sensorDescription.system.inputs.inputList.input[6].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:isConcentrator");
            rs.sensorDescription.system.inputs.inputList.input[7] = new Input("currentTime");
            rs.sensorDescription.system.inputs.inputList.input[7].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:currentTime");
            rs.sensorDescription.system.inputs.inputList.input[8] = new Input("meterID");
            rs.sensorDescription.system.inputs.inputList.input[8].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:meterID");
            rs.sensorDescription.system.inputs.inputList.input[9] = new Input("meterType");
            rs.sensorDescription.system.inputs.inputList.input[9].observableProperty = new ObservableProperty("urn:x-ogc:def:phenomenon:FINESCE:1.0:meterType");

            rs.sensorDescription.system.outputs                                   = new Outputs();
            rs.sensorDescription.system.outputs.outputList                        = new OutputList();
            rs.sensorDescription.system.outputs.outputList.output                 = new Output[10];
            rs.sensorDescription.system.outputs.outputList.output[0]              = new Output("upstreamActivePower");
            rs.sensorDescription.system.outputs.outputList.output[0].quantity     = new Quantity("urn:x-ogc:def:phenomenon:IDAS:1.0:power");
            rs.sensorDescription.system.outputs.outputList.output[0].quantity.uom = new Uom("kW");
            rs.sensorDescription.system.outputs.outputList.output[1]              = new Output("downstreamActivePower");
            rs.sensorDescription.system.outputs.outputList.output[1].quantity     = new Quantity("urn:x-ogc:def:phenomenon:IDAS:1.0:power");
            rs.sensorDescription.system.outputs.outputList.output[1].quantity.uom = new Uom("kW");
            rs.sensorDescription.system.outputs.outputList.output[2]              = new Output("RP_Q1");
            rs.sensorDescription.system.outputs.outputList.output[2].quantity     = new Quantity("urn:x-ogc:def:phenomenon:IDAS:1.0:reactivePower");
            rs.sensorDescription.system.outputs.outputList.output[2].quantity.uom = new Uom("kVAr");
            rs.sensorDescription.system.outputs.outputList.output[3]              = new Output("RP_Q2");
            rs.sensorDescription.system.outputs.outputList.output[3].quantity     = new Quantity("urn:x-ogc:def:phenomenon:IDAS:1.0:reactivePower");
            rs.sensorDescription.system.outputs.outputList.output[3].quantity.uom = new Uom("kVAr");
            rs.sensorDescription.system.outputs.outputList.output[4]              = new Output("RP_Q3");
            rs.sensorDescription.system.outputs.outputList.output[4].quantity     = new Quantity("urn:x-ogc:def:phenomenon:IDAS:1.0:reactivePower");
            rs.sensorDescription.system.outputs.outputList.output[4].quantity.uom = new Uom("kVAr");
            rs.sensorDescription.system.outputs.outputList.output[5]              = new Output("RP_Q4");
            rs.sensorDescription.system.outputs.outputList.output[5].quantity     = new Quantity("urn:x-ogc:def:phenomenon:IDAS:1.0:reactivePower");
            rs.sensorDescription.system.outputs.outputList.output[5].quantity.uom = new Uom("kVAr");
            rs.sensorDescription.system.outputs.outputList.output[6]              = new Output("isConcentrator");
            rs.sensorDescription.system.outputs.outputList.output[6].text         = new Text();
            rs.sensorDescription.system.outputs.outputList.output[7]              = new Output("currentTime");
            rs.sensorDescription.system.outputs.outputList.output[7].text         = new Text();
            rs.sensorDescription.system.outputs.outputList.output[8]              = new Output("meterID");
            rs.sensorDescription.system.outputs.outputList.output[8].text         = new Text();
            rs.sensorDescription.system.outputs.outputList.output[9]              = new Output("meterType");
            rs.sensorDescription.system.outputs.outputList.output[9].text         = new Text();

            rs.observationTemplate             = new ObservationTemplate();
            rs.observationTemplate.observation = new Observation();
            rs.observationTemplate.observation.samplingTime      = new SamplingTime();
            rs.observationTemplate.observation.observedProperty  = new ObservedProperty();
            rs.observationTemplate.observation.procedure         = new Procedure();
            rs.observationTemplate.observation.featureOfInterest = new FeatureOfInterest();
            rs.observationTemplate.observation.parameter         = new Parameter();
            rs.observationTemplate.observation.result            = new Result();

            XmlSerializer ser = new XmlSerializer(typeof(RegisterSensor));

            Utf8StringWriter textWriter = new Utf8StringWriter();

            ser.Serialize(textWriter, rs);
            return(sendMessage(textWriter.ToString()));
        }