Exemple #1
0
        public OmDevice(Om om, ushort deviceId)
        {
            this.om       = om;
            this.deviceId = deviceId;
            validData     = false;

            filename = null;
            try
            {
                StringBuilder filenamesb = new StringBuilder(256);
                if (OmApi.OmGetDataFilename(deviceId, filenamesb) == OmApi.OM_OK)
                {
                    filename = filenamesb.ToString();
                }
            }
            catch (Exception) { Console.Error.WriteLine("ERROR: Problem getting data filename for device " + deviceId + "."); }
        }
        // Base constructor
        protected OmReader(Om om, IntPtr handle)
        {
            this.om = om;
            Handle  = handle;

            // Get data range
            int  dataBlockSize = 0, dataOffsetBlocks = 0, dataNumBlocks = 0;
            uint startTime = 0, endTime = 0;

            OmApi.OmReaderDataRange(handle, out dataBlockSize, out dataOffsetBlocks, out dataNumBlocks, out startTime, out endTime);
            DataBlockSize    = dataBlockSize;
            DataOffsetBlocks = dataOffsetBlocks;
            DataNumBlocks    = dataNumBlocks;
            StartTime        = OmApi.OmDateTimeUnpack(startTime);
            EndTime          = OmApi.OmDateTimeUnpack(endTime);

            // Defer this
            //EnsureMetadataRead();

            // Seek
            Seek(0);
        }
Exemple #3
0
        public OmDevice(Om om, uint deviceId)
        {
            this.om       = om;
            this.deviceId = deviceId;
            validData     = false;

            filename = null;
            port     = null;
            serialId = null;
            try
            {
                StringBuilder filenamesb = new StringBuilder(256);
                if (OmApi.OmGetDataFilename((int)deviceId, filenamesb) == OmApi.OM_OK)
                {
                    filename = filenamesb.ToString();
                    path     = Path.GetDirectoryName(filename);
                }

                StringBuilder pathsb = new StringBuilder(256);
                if (OmApi.OmGetDevicePath((int)deviceId, pathsb) == OmApi.OM_OK)
                {
                    path = pathsb.ToString();
                }

                StringBuilder portsb = new StringBuilder(256);
                if (OmApi.OmGetDevicePort((int)deviceId, portsb) == OmApi.OM_OK)
                {
                    port = portsb.ToString();
                }

                StringBuilder serialIdsb = new StringBuilder(256);
                if (OmApi.OmGetDeviceSerial((int)deviceId, serialIdsb) == OmApi.OM_OK)
                {
                    serialId = serialIdsb.ToString();
                }
            }
            catch (Exception) { Console.Error.WriteLine("ERROR: Problem getting data filename for device " + deviceId + "."); }
        }
 // Constructor for a reader of a disk file
 protected OmReader(Om om, string filename, IntPtr handle) : this(om, handle)
 {
     Filename = filename;
 }
 // Constructor for a reader of a device file
 protected OmReader(Om om, uint deviceId, IntPtr handle) : this(om, handle)
 {
     OpenDeviceId = deviceId;
 }