예제 #1
0
        private void signalTest(string fileFormat, DataType dataType)
        {
            string[]       Channelnames = { "CH1", "CH2" };
            UnisensFactory uf           = UnisensFactoryBuilder.createFactory();
            Unisens        u            = uf.createUnisens(path);
            string         fileName     = "signal_" + dataType.ToString() + "_" + fileFormat + "." + fileFormat.Substring(0, 3);
            string         fileName1    = "value_" + dataType.ToString() + "_" + fileFormat + "." + fileFormat.Substring(0, 3);
            ValuesEntry    ve           = u.createValuesEntry(fileName1, new String[] { "A", "B" }, dataType, 250);
            SignalEntry    se           = u.createSignalEntry(fileName, new String[] { "A", "B" }, dataType, 250);

            switch (fileFormat)
            {
            case "bin_LITTLE":
                // BIN
                BinFileFormat bffsili = se.createBinFileFormat();
                bffsili.setEndianess(Endianess.LITTLE);
                se.setFileFormat(bffsili);
                BinFileFormat bffva = ve.createBinFileFormat();
                bffva.setEndianess(Endianess.LITTLE);
                ve.setFileFormat(bffva);
                break;

            case "bin_BIG":
                // BIN
                BinFileFormat bffsibi = se.createBinFileFormat();
                bffsibi.setEndianess(Endianess.BIG);
                se.setFileFormat(bffsibi);
                BinFileFormat bffvabi = ve.createBinFileFormat();
                bffvabi.setEndianess(Endianess.BIG);
                ve.setFileFormat(bffvabi);
                break;

            case "xml":
                // XML
                XmlFileFormat xffsi = se.createXmlFileFormat();
                se.setFileFormat(xffsi);
                XmlFileFormat xffva = ve.createXmlFileFormat();
                ve.setFileFormat(xffva);
                break;

            case "csv":
                // CSV
                CsvFileFormat cffsi = se.createCsvFileFormat();
                cffsi.setSeparator("\t");
                cffsi.setDecimalSeparator(",");
                se.setFileFormat(cffsi);
                CsvFileFormat cffva = ve.createCsvFileFormat();
                cffva.setComment("csv , 2 channel ");
                cffva.setSeparator(";");
                cffva.setDecimalSeparator(".");
                ve.setFileFormat(cffva);
                break;
            }

            var samplestamp = new long[3] {
                1320, 22968, 30232
            };

            switch (dataType)
            {
            case DataType.INT8:
                var A = new sbyte[][] { new sbyte[] { -128, 127 }, new sbyte[] { 2, 5 }, new sbyte[] { 3, 6 } };
                se.append(A);
                ValueList valueList = new ValueList(samplestamp, A);
                ve.appendValuesList(valueList);
                break;

            case DataType.UINT8:
                var B = new byte[][] { new byte[] { 255, 4 }, new byte[] { 2, 5 }, new byte[] { 3, 6 } };
                se.append(B);
                ValueList valueList1 = new ValueList(samplestamp, B);
                ve.appendValuesList(valueList1);
                break;

            case DataType.INT16:
                var C = new short[][] { new short[] { -32768, 32767 }, new short[] { 2, 5 }, new short[] { 3, 6 } };
                se.append(C);
                ValueList valueList2 = new ValueList(samplestamp, C);
                ve.appendValuesList(valueList2);
                break;

            case DataType.UINT16:
                var D = new UInt16[][] { new UInt16[] { 65535, 4 }, new UInt16[] { 2, 5 }, new UInt16[] { 3, 6 } };
                se.append(D);
                ValueList valueList3 = new ValueList(samplestamp, D);
                ve.appendValuesList(valueList3);
                break;

            case DataType.INT32:
                var E = new int[][] { new int[] { -2147483648, 2147483647 }, new int[] { 2, 5 }, new int[] { 3, 6 } };
                se.append(E);
                ValueList valueList4 = new ValueList(samplestamp, E);
                ve.appendValuesList(valueList4);
                break;

            case DataType.UINT32:
                var F = new UInt32[][] { new UInt32[] { 4294967295, 4 }, new UInt32[] { 2, 5 }, new UInt32[] { 3, 6 } };
                se.append(F);
                ValueList valueList5 = new ValueList(samplestamp, F);
                ve.appendValuesList(valueList5);
                break;

            case DataType.FLOAT:
                var G = new float[][] { new float[] { 123.4567F, 4 }, new float[] { 2, 5 }, new float[] { 3, 6 } };
                se.append(G);
                ValueList valueList6 = new ValueList(samplestamp, G);
                ve.appendValuesList(valueList6);
                break;

            case DataType.DOUBLE:
                var H = new double[][] { new double[] { 123.4567D, 4 }, new double[] { 2, 5 }, new double[] { 3, 6 } };
                se.append(H);
                ValueList valueList7 = new ValueList(samplestamp, H);
                ve.appendValuesList(valueList7);
                break;
            }
            u.save();
            //Console.WriteLine("hallo");
            //Console.WriteLine(uf.ToString());
            //Console.ReadKey();
        }
예제 #2
0
        // WRITE
        private void signalTest(string fileFormat, DataType dataType)
        {
            string[]       Channelnames = { "CH1", "CH2" };
            UnisensFactory uf           = UnisensFactoryBuilder.createFactory();
            Unisens        u            = uf.createUnisens(path);
            string         fileName     = "signal_" + dataType.ToString() + "." + fileFormat;

            SignalEntry se = u.createSignalEntry(fileName, new String[] { "A", "B" }, dataType, 250);

            switch (fileFormat)
            {
            case "bin":
                // BIN
                BinFileFormat bff = se.createBinFileFormat();
                bff.setEndianess(Endianess.LITTLE);
                se.setFileFormat(bff);
                break;

            case "xml":
                // XML
                XmlFileFormat xff = se.createXmlFileFormat();
                se.setFileFormat(xff);
                break;

            case "csv":
                // CSV
                CsvFileFormat cff = se.createCsvFileFormat();
                cff.setSeparator("\t");
                cff.setDecimalSeparator(".");
                se.setFileFormat(cff);
                break;
            }

            switch (dataType)
            {
            case DataType.INT8:
                var A = new sbyte[][] { new sbyte[] { 127, -128 }, new sbyte[] { 2, 5 }, new sbyte[] { 3, 6 } };
                //var A = new byte[][] { new byte[] { 127, 255 }, new byte[] { 1, 0 }, new byte[] { 3, 6 } };
                se.append(A);
                break;

            case DataType.UINT8:
                //var B = new short[][] { new short[] { 255, 0 }, new short[] { 2, 5 }, new short[] { 3, 6 } };
                var B = new byte[][] { new byte[] { 127, 255 }, new byte[] { 1, 0 }, new byte[] { 3, 6 } };
                se.append(B);
                break;

            case DataType.INT16:
                var C = new short[][] { new short[] { 32767, -32768 }, new short[] { 2, 5 }, new short[] { 3, 6 } };
                se.append(C);
                break;

            case DataType.UINT16:
                var D = new UInt16[][] { new UInt16[] { 65535, 0 }, new UInt16[] { 2, 5 }, new UInt16[] { 3, 6 } };
                se.append(D);
                break;

            case DataType.INT32:
                var E = new int[][] { new int[] { 2147483647, -2147483648 }, new int[] { 2, 5 }, new int[] { 3, 6 } };
                se.append(E);
                break;

            case DataType.UINT32:
                var F = new UInt32[][] { new UInt32[] { 4294967295, 0 }, new UInt32[] { 2, 5 }, new UInt32[] { 3, 6 } };
                se.append(F);
                break;

            case DataType.FLOAT:
                var G = new float[][] { new float[] { 123.4567F, 4 }, new float[] { 2, 5 }, new float[] { 3, 6 } };
                se.append(G);
                break;

            case DataType.DOUBLE:
                var H = new double[][] { new double[] { 123.4567D, 4 }, new double[] { 2, 5 }, new double[] { 3, 6 } };
                se.append(H);
                break;
            }

            // Attributes
            se.setAdcResolution(16);
            se.setBaseline(0);
            se.setAdcZero(0);
            se.setComment("FhG - Elektroden ");
            se.setContentClass("ECG");
            se.setSourceId("ecg_m500_250 .bin ");
            se.setSource("FhG-Elektroden , ADS8345 ");
            se.setUnit("uV");
            se.setLsbValue(1.8273);
            se.setSampleRate(250);
            se.setChannelNames(Channelnames);

            // Save and close
            u.save();
            u.closeAll();
        }
예제 #3
0
 internal XmlFileFormatImpl(XmlFileFormat xmlFileFormat)
     : base(xmlFileFormat)
 {
 }
예제 #4
0
        private void valueTest(string fileFormat, DataType dataType)
        {
            UnisensFactory uf       = UnisensFactoryBuilder.createFactory();
            Unisens        u        = uf.createUnisens(path);
            string         fileName = "value_" + dataType.ToString() + "." + fileFormat;
            ValuesEntry    ve       = u.createValuesEntry(fileName, new String[] { "A", "B" }, dataType, 250);

            switch (fileFormat)
            {
            case "bin":
                // BIN
                BinFileFormat bff = ve.createBinFileFormat();
                bff.setEndianess(Endianess.LITTLE);
                ve.setFileFormat(bff);
                break;

            case "xml":
                // XML
                XmlFileFormat xff = ve.createXmlFileFormat();
                ve.setFileFormat(xff);
                break;

            case "csv":
                // CSV
                CsvFileFormat cff = ve.createCsvFileFormat();
                cff.setComment("csv , 2 channel ");
                cff.setSeparator(";");
                cff.setDecimalSeparator(".");
                ve.setFileFormat(cff);
                break;
            }

            var samplestamp = new long[3] {
                1320, 22968, 30232
            };

            switch (dataType)
            {
            case DataType.INT8:
                var       A         = new sbyte[][] { new sbyte[] { 127, 4 }, new sbyte[] { 2, 5 }, new sbyte[] { 3, 6 } };
                ValueList valueList = new ValueList(samplestamp, A);
                ve.appendValuesList(valueList);
                break;

            case DataType.UINT8:
                var       B          = new short[][] { new short[] { 255, 4 }, new short[] { 2, 5 }, new short[] { 3, 6 } };
                ValueList valueList1 = new ValueList(samplestamp, B);
                ve.appendValuesList(valueList1);
                break;

            case DataType.INT16:
                var       C          = new short[][] { new short[] { 32767, 4 }, new short[] { 2, 5 }, new short[] { 3, 6 } };
                ValueList valueList2 = new ValueList(samplestamp, C);
                ve.appendValuesList(valueList2);
                break;

            case DataType.UINT16:
                var       D          = new int[][] { new int[] { 65535, 4 }, new int[] { 2, 5 }, new int[] { 3, 6 } };
                ValueList valueList3 = new ValueList(samplestamp, D);
                ve.appendValuesList(valueList3);
                break;

            case DataType.INT32:
                var       E          = new int[][] { new int[] { 2147483647, 4 }, new int[] { 2, 5 }, new int[] { 3, 6 } };
                ValueList valueList4 = new ValueList(samplestamp, E);
                ve.appendValuesList(valueList4);
                break;

            //case DataType.UINT32:
            //    var F = new long[][] { new long[] { 4294967295, 4 }, new long[] { 2, 5 }, new long[] { 3, 6 } };
            //    ValueList valueList5 = new ValueList(samplestamp, F);
            //    ve.appendValuesList(valueList5);
            //    break;
            case DataType.FLOAT:
                var       G          = new float[][] { new float[] { 123.4567F, 4 }, new float[] { 2, 5 }, new float[] { 3, 6 } };
                ValueList valueList6 = new ValueList(samplestamp, G);
                ve.appendValuesList(valueList6);
                break;

            case DataType.DOUBLE:
                var       H          = new double[][] { new double[] { 123.4567D, 4 }, new double[] { 2, 5 }, new double[] { 3, 6 } };
                ValueList valueList7 = new ValueList(samplestamp, H);
                ve.appendValuesList(valueList7);
                break;
            }
        }