Exemple #1
0
 public override void SetValueType(Type t)
 {
     if (t == typeof(byte))
     {
         Mode = EMDataType.Byte;
     }
     else if (t == typeof(float))
     {
         Mode = EMDataType.Single;
     }
     else if (t == typeof(double))
     {
         Mode = EMDataType.Double;
     }
     else if (t == typeof(short))
     {
         Mode = EMDataType.Short;
     }
     else if (t == typeof(int))
     {
         Mode = EMDataType.Long;
     }
     else
     {
         throw new Exception("Unknown data type.");
     }
 }
Exemple #2
0
        public HeaderEM(BinaryReader reader)
        {
            MachineCoding = reader.ReadByte();
            OS9           = reader.ReadByte();
            Invalid       = reader.ReadByte();
            Mode          = (EMDataType)reader.ReadByte();

            Dimensions = new int3(reader.ReadBytes(3 * sizeof(int)));

            Comment = reader.ReadBytes(80);

            Voltage           = reader.ReadInt32();
            Cs                = (float)reader.ReadInt32() / 1000f;
            Aperture          = reader.ReadInt32();
            Magnification     = reader.ReadInt32();
            CCDMagnification  = (float)reader.ReadInt32() / 1000f;
            ExposureTime      = (float)reader.ReadInt32() / 1000f;
            PixelSize         = (float)reader.ReadInt32() / 1000f;
            EMCode            = reader.ReadInt32();
            CCDPixelsize      = (float)reader.ReadInt32() / 1000f;
            CCDArea           = (float)reader.ReadInt32() / 1000f;
            Defocus           = reader.ReadInt32();
            Astigmatism       = reader.ReadInt32();
            AstigmatismAngle  = (float)reader.ReadInt32() / 1000f;
            FocusIncrement    = (float)reader.ReadInt32() / 1000f;
            DQE               = (float)reader.ReadInt32() / 1000f;
            C2Intensity       = (float)reader.ReadInt32() / 1000f;
            SlitWidth         = reader.ReadInt32();
            EnergyOffset      = reader.ReadInt32();
            TiltAngle         = (float)reader.ReadInt32() / 1000f;
            TiltAxis          = (float)reader.ReadInt32() / 1000f;
            NoName1           = reader.ReadInt32();
            NoName2           = reader.ReadInt32();
            NoName3           = reader.ReadInt32();
            MarkerPosition    = new int2(reader.ReadBytes(2 * sizeof(int)));
            Resolution        = reader.ReadInt32();
            Density           = reader.ReadInt32();
            Contrast          = reader.ReadInt32();
            NoName4           = reader.ReadInt32();
            CenterOfMass      = new int3(reader.ReadBytes(3 * sizeof(int)));
            Height            = reader.ReadInt32();
            NoName5           = reader.ReadInt32();
            DreiStrahlBereich = reader.ReadInt32();
            AchromaticRing    = reader.ReadInt32();
            Lambda            = reader.ReadInt32();
            DeltaTheta        = reader.ReadInt32();
            NoName6           = reader.ReadInt32();
            NoName7           = reader.ReadInt32();

            UserData = reader.ReadBytes(256);
        }
Exemple #3
0
        public HeaderEM(BinaryReader reader)
        {
            MachineCoding = reader.ReadByte();
            OS9 = reader.ReadByte();
            Invalid = reader.ReadByte();
            Mode = (EMDataType)reader.ReadByte();

            Dimensions = new int3(reader.ReadBytes(3 * sizeof(int)));

            Comment = reader.ReadBytes(80);

            Voltage = reader.ReadInt32();
            Cs = (float)reader.ReadInt32() / 1000f;
            Aperture = reader.ReadInt32();
            Magnification = reader.ReadInt32();
            CCDMagnification = (float)reader.ReadInt32() / 1000f;
            ExposureTime = (float)reader.ReadInt32() / 1000f;
            PixelSize = (float)reader.ReadInt32() / 1000f;
            EMCode = reader.ReadInt32();
            CCDPixelsize = (float)reader.ReadInt32() / 1000f;
            CCDArea = (float)reader.ReadInt32() / 1000f;
            Defocus = reader.ReadInt32();
            Astigmatism = reader.ReadInt32();
            AstigmatismAngle = (float)reader.ReadInt32() / 1000f;
            FocusIncrement = (float)reader.ReadInt32() / 1000f;
            DQE = (float)reader.ReadInt32() / 1000f;
            C2Intensity = (float)reader.ReadInt32() / 1000f;
            SlitWidth = reader.ReadInt32();
            EnergyOffset = reader.ReadInt32();
            TiltAngle = (float)reader.ReadInt32() / 1000f;
            TiltAxis = (float)reader.ReadInt32() / 1000f;
            NoName1 = reader.ReadInt32();
            NoName2 = reader.ReadInt32();
            NoName3 = reader.ReadInt32();
            MarkerPosition = new int2(reader.ReadBytes(2 * sizeof(int)));
            Resolution = reader.ReadInt32();
            Density = reader.ReadInt32();
            Contrast = reader.ReadInt32();
            NoName4 = reader.ReadInt32();
            CenterOfMass = new int3(reader.ReadBytes(3 * sizeof(int)));
            Height = reader.ReadInt32();
            NoName5 = reader.ReadInt32();
            DreiStrahlBereich = reader.ReadInt32();
            AchromaticRing = reader.ReadInt32();
            Lambda = reader.ReadInt32();
            DeltaTheta = reader.ReadInt32();
            NoName6 = reader.ReadInt32();
            NoName7 = reader.ReadInt32();

            UserData = reader.ReadBytes(256);
        }
Exemple #4
0
 public override void SetValueType(Type t)
 {
     if (t == typeof(byte))
         Mode = EMDataType.Byte;
     else if (t == typeof(float))
         Mode = EMDataType.Single;
     else if (t == typeof(double))
         Mode = EMDataType.Double;
     else if (t == typeof(short))
         Mode = EMDataType.Short;
     else if (t == typeof(int))
         Mode = EMDataType.Long;
     else
         throw new Exception("Unknown data type.");
 }