public override long Read(Stream stream) { long bytes = 0; if (stream.CanRead) { EndianBinaryReader reader = new EndianBinaryReader(stream, Endian.Big); long start = stream.Position; base.Read(stream); id = reader.ReadByte(); reserved2 = reader.ReadByte(); reason = (PCIReason)reader.ReadByte(); reserved3 = reader.ReadByte(); byte next = reader.PeekByte(); while (next == 0x30 || next == 0x40) { Item item = new SyntaxItem(next); fields.Add(item); item.Read(stream); if (stream.Position >= stream.Length) { break; } next = reader.PeekByte(); } if (fields.Count < 1) { throw new Exception("ill-formed presentation_context"); } bytes = stream.Position - start; } return(bytes); }
protected ServiceClass(string uid) { this.uid = uid; this.id = 0xff; this.reason = PCIReason.Undefined; completeEvent = new System.Threading.AutoResetEvent(false); message = null; role = Role.Scu; // this is only sent in an A_ASSOCIATE_RQ pdu, so this default is OK }
public PresentationContextItem(byte type) : base(type) { this.id = 0; this.reserved2 = 0; this.reason = 0; this.reserved3 = 0; fields = new List <Item>(); }
public PresentationContextItem(byte type, byte id) : base(type) { this.id = id; this.reserved2 = 0; this.reason = PCIReason.Undefined; this.reserved3 = 0; fields = new List <Item>(); }
protected ServiceClass(ServiceClass other) { this.association = null; this.uid = other.uid; foreach (string syntax in other.syntaxes) { this.syntaxes.Add((string)syntax.Clone()); } completeEvent = new System.Threading.AutoResetEvent(false); this.id = 0xff; this.reason = PCIReason.Undefined; this.role = other.role; }