コード例 #1
0
        public Atomic(SectionHeader header, Stream stream)
            : base(header, stream)
        {
            var data   = ReadSection <Data>(); // Struct
            var reader = new BinaryReader(new MemoryStream(data.Value));

            FrameIndex    = reader.ReadUInt32();
            GeometryIndex = reader.ReadUInt32();
            Flags         = (AtomicFlag)reader.ReadUInt32();
            Unused        = reader.ReadUInt32();
        }
コード例 #2
0
        public Atomic(SectionHeader header, Stream stream)
            : base(header, stream)
        {
            var data = ReadSection<Data>(); // Struct
            var reader = new BinaryReader(new MemoryStream(data.Value));

            FrameIndex = reader.ReadUInt32();
            GeometryIndex = reader.ReadUInt32();
            Flags = (AtomicFlag)reader.ReadUInt32();
            Unused = reader.ReadUInt32();
        }
コード例 #3
0
 public static RunOnceState RunOnce(AtomicFlag flag)
 {
     return(new RunOnceState(flag));
 }
コード例 #4
0
 public RunOnceState(AtomicFlag flag)
 {
     _flag = flag;
     Run   = !flag.CheckAndSet();
 }