public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((byte)LibraryType); if (MsexVersion < CitpMsexVersions.Msex11Version) { data.Write(LibraryNumber); } else { data.WriteMsexLibraryId(LibraryId); } if (MsexVersion < CitpMsexVersions.Msex12Version) { data.Write((byte)ElementNumbers.Count); } else { data.Write((UInt16)ElementNumbers.Count); } foreach (byte number in ElementNumbers) { data.Write(number); } }
public override void WriteData(CitpBinaryWriter data) { if (MsexVersion < CitpMsexVersions.Msex11Version) { data.Write(LibraryNumber); } else { data.WriteMsexLibraryId(LibraryId); } if (MsexVersion > CitpMsexVersions.Msex11Version) { data.Write(SerialNumber); } data.Write(DmxRangeMin); data.Write(DmxRangeMax); data.WriteUcs2(Name); if (MsexVersion >= CitpMsexVersions.Msex12Version) { data.Write(LibraryCount); data.Write(ElementCount); } else if (MsexVersion == CitpMsexVersions.Msex11Version) { data.Write((byte)LibraryCount); data.Write((byte)ElementCount); } else { data.Write((byte)ElementCount); } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); //This message is not in the 1.0 spec, server should ignore the empty header. if (MsexVersion > CitpMsexVersions.Msex10Version) { data.WriteMsexLibraryId(LibraryId); if (MsexVersion < CitpMsexVersions.Msex12Version) { data.Write((byte)Elements.Count); } else { data.Write((UInt16)Elements.Count); } foreach (ElementInfomation info in Elements) { info.MsexVersion = MsexVersion; info.WriteData(data); } } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((ushort)Fixtures.Count); foreach (FixtureChange change in Fixtures) { data.Write(change.FixtureId); data.Write((byte)change.ChangedFields); data.Write(change.Patched); data.Write(change.DMXUniverse); data.Write(change.DMXAddress); data.WriteUcs2(change.Unit); data.Write(change.Channel); data.WriteUcs2(change.Circuit); data.WriteUcs2(change.Note); data.Write(change.Position.X); data.Write(change.Position.Y); data.Write(change.Position.Z); data.Write(change.Angle.X); data.Write(change.Angle.Y); data.Write(change.Angle.Z); } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.WriteCookie(ThumbnailFormat); data.Write(ThumbnailWidth); data.Write(ThumbnailHeight); data.Write((byte)ThumbnailFlags); data.Write((byte)LibraryType); if (MsexVersion < CitpMsexVersions.Msex11Version) { data.Write(LibraryId.ToNumber()); } else { data.WriteMsexLibraryId(LibraryId); } if (MsexVersion < CitpMsexVersions.Msex12Version) { data.Write((byte)ElementNumbers.Count); } else { data.Write((UInt16)ElementNumbers.Count); } foreach (byte element in ElementNumbers) { data.Write(element); } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); if (MsexVersion < CitpMsexVersions.Msex11Version) { data.Write(LibraryNumber); } else { data.WriteMsexLibraryId(LibraryId); } if (MsexVersion < CitpMsexVersions.Msex12Version) { data.Write((byte)Elements.Count); } else { data.Write((UInt16)Elements.Count); } foreach (EffectInfomation info in Elements) { info.MsexVersion = MsexVersion; info.WriteData(data); } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((byte)Format); data.Write(Data.Length); data.Write(Data); }
protected override void SerializeToStream(CitpBinaryWriter writer) { base.SerializeToStream(writer); writer.Write(UniverseIndex); writer.Write(UniverseName, true); }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); if (MsexVersion < 1.1) { data.Write(LibraryNumber); } else { data.WriteMsexLibraryId(LibraryId); } if (MsexVersion < 1.2) { data.Write((byte)Elements.Count); } else { data.Write((UInt16)Elements.Count); } foreach (MediaInformation info in Elements) { info.WriteData(data); } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((byte)LibraryType); if (MsexVersion < CitpMsexVersions.Msex11Version) { data.Write(LibraryNumber); } else { data.WriteMsexLibraryId(LibraryId); } data.Write((byte)UpdateFlags); if (MsexVersion >= CitpMsexVersions.Msex12Version) { byte[] elementsData = new byte[32]; AffectedElements.CopyTo(elementsData, 0); data.Write(elementsData); byte[] libraryData = new byte[32]; AffectedLibraries.CopyTo(libraryData, 0); data.Write(libraryData); } }
protected override void SerializeToStream(CitpBinaryWriter writer) { base.SerializeToStream(writer); switch (Version) { case MsexVersion.Version1_0: case MsexVersion.Version1_1: writer.Write(ProductName); writer.Write(ProductVersionMajor); writer.Write(ProductVersionMinor); writer.Write((byte)LayerDmxSources.Count); foreach (var d in LayerDmxSources) { writer.Write(d.ToUtf8ByteArray()); } break; case MsexVersion.Version1_2: writer.Write(Encoding.UTF8.GetBytes(Uuid.ToString("D"))); writer.Write(ProductName); writer.Write(ProductVersionMajor); writer.Write(ProductVersionMinor); writer.Write(ProductVersionBugfix); writer.Write((byte)SupportedMsexVersions.Count); foreach (var v in SupportedMsexVersions) { writer.Write(v.GetCustomAttribute <CitpVersionAttribute>().ToByteArray()); } ushort supportedLibraryTypes = 0; foreach (var t in SupportedLibraryTypes) { supportedLibraryTypes |= (ushort)(2 ^ (int)t); } writer.Write(supportedLibraryTypes); writer.Write((byte)ThumbnailFormats.Count); foreach (var f in ThumbnailFormats) { writer.Write(f.GetCustomAttribute <CitpId>().Id); } writer.Write((byte)StreamFormats.Count); foreach (var f in StreamFormats) { writer.Write(f.GetCustomAttribute <CitpId>().Id); } writer.Write((byte)LayerDmxSources.Count); foreach (var d in LayerDmxSources) { writer.Write(d.ToUtf8ByteArray()); } break; } }
protected override void SerializeToStream(CitpBinaryWriter writer) { base.SerializeToStream(writer); writer.Write(UniverseIndex); writer.Write(ConnectionString.ToUtf8ByteArray()); }
protected override void SerializeToStream(CitpBinaryWriter writer) { base.SerializeToStream(writer); writer.Write((ushort)Sources.Count); foreach (var s in Sources) { writer.Write(s.SourceIdentifier); writer.Write(s.SourceName); if (s.PhysicalOutput.HasValue) { writer.Write(s.PhysicalOutput.Value); } else { writer.Write((byte)0xFF); } if (s.LayerNumber.HasValue) { writer.Write(s.LayerNumber.Value); } else { writer.Write((byte)0xFF); } writer.Write((ushort)s.Flags); writer.Write(s.Width); writer.Write(s.Height); } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); if (ReceivedContentType != null) { data.WriteCookie(ReceivedContentType); } }
protected override void SerializeToStream(CitpBinaryWriter writer) { base.SerializeToStream(writer); switch (Version) { case MsexVersion.Version1_0: writer.Write((byte)LibraryType); writer.Write(LibraryNumber); writer.Write((byte)UpdateFlags); break; case MsexVersion.Version1_1: writer.Write((byte)LibraryType); if (!LibraryId.HasValue) { throw new InvalidOperationException("LibraryId has no value. Required for MSEX V1.1"); } writer.Write(LibraryId.Value.ToByteArray()); writer.Write((byte)UpdateFlags); break; case MsexVersion.Version1_2: writer.Write((byte)LibraryType); if (!LibraryId.HasValue) { throw new InvalidOperationException("LibraryId has no value. Required for MSEX V1.2"); } writer.Write(LibraryId.Value.ToByteArray()); writer.Write((byte)UpdateFlags); var affectedElements = new BitArray(256); foreach (byte a in AffectedElements) { affectedElements[a] = true; } var affectedElementsBytes = new byte[32]; ((ICollection)affectedElements).CopyTo(affectedElementsBytes, 0); writer.Write(affectedElementsBytes); var affectedLibraries = new BitArray(256); foreach (byte a in AffectedLibraries) { affectedLibraries[a] = true; } var affectedLibrariesBytes = new byte[32]; ((ICollection)affectedLibraries).CopyTo(affectedLibrariesBytes, 0); writer.Write(affectedLibrariesBytes); break; } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write(Blind); data.Write(UniverseIndex); data.Write(FirstChannel); data.Write((ushort)ChannelLevels.Length); data.Write(ChannelLevels); }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write(ListeningTCPPort); data.WriteUcs1(Type); data.WriteUcs1(Name); data.WriteUcs1(State); }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((ushort)FixtureIdentifiers.Count); foreach (ushort id in FixtureIdentifiers) { data.Write(id); } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((ushort)Capabilities.Count); foreach (DmxCapabilities capability in Capabilities) { data.Write((ushort)capability); } }
public void BeginSend(CitpHeader citpMessage) { MemoryStream data = new MemoryStream(); CitpBinaryWriter writer = new CitpBinaryWriter(data); citpMessage.WriteData(writer); citpMessage.WriteMessageSize(writer); BeginSendTo(data.GetBuffer(), 0, (int)data.Length, SocketFlags.None, new IPEndPoint(MulticastGroup, Port), null, null); }
public override void WriteData(CitpBinaryWriter data) { data.Write(SourceIdentifier); data.WriteUcs2(SourceName); data.Write(PhysicalOutput); data.Write(LayerNumber); data.Write(Flags); data.Write(Width); data.Write(Height); }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((UInt16)Sources.Count); foreach (SourceInformation source in Sources) { source.WriteData(data); } }
protected override void SerializeToStream(CitpBinaryWriter writer) { base.SerializeToStream(writer); writer.Write((byte)SupportedMsexVersions.Count); foreach (var v in SupportedMsexVersions) { writer.Write(v.GetCustomAttribute <CitpVersionAttribute>().ToByteArray()); } }
public void BeginSend(CitpPacket citpMessage) { MemoryStream data = new MemoryStream(); CitpBinaryWriter writer = new CitpBinaryWriter(data); citpMessage.WriteData(writer); ((CitpHeader)citpMessage).WriteMessageSize(writer); client.Client.BeginSend(data.GetBuffer(), 0, (int)data.Length, SocketFlags.None, new AsyncCallback(OnSendCompleted), null); }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((byte)Options.Count); foreach (RecordCueOption option in Options) { data.WriteUcs2(option.Name); data.WriteUcs2(option.Value); } }
/// <summary> /// Similar to the send method in the client. /// Fills out the size field and adds the data to a memory stream. /// </summary> /// <param name="citpMessage">The citp message.</param> /// <returns>The read packet.</returns> private static CitpRecieveData WriteToMemoryStream(CitpHeader citpMessage) { CitpRecieveData data = new CitpRecieveData(); CitpBinaryWriter writer = new CitpBinaryWriter(data); citpMessage.WriteData(writer); citpMessage.WriteMessageSize(writer); return(data); }
protected override void SerializeToStream(CitpBinaryWriter writer) { base.SerializeToStream(writer); writer.Write((ushort)Capabilities.Count); foreach (var c in Capabilities) { writer.Write((ushort)c); } }
/// <summary> /// Writes the information in this packet to the specified stream. /// </summary> /// <param name="data">The stream to write the packet information to.</param> public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((ushort)FixtureLinks.Count); foreach (var link in FixtureLinks) { data.WriteGuid(link.CaptureInstanceId); data.Write((uint)link.FixtureId); } }
public override void WriteData(CitpBinaryWriter data) { base.WriteData(data); data.Write((byte)SupportedMSEXVersions.Count); foreach (Version version in SupportedMSEXVersions) { data.Write(version.ToMsexShort()); } }
public override void WriteData(CitpBinaryWriter data) { data.WriteCookie(Cookie); data.Write(VersionMajor); data.Write(VersionMinor); data.Write(RequestId); data.Write(MessageSize); data.Write(MessagePartCount); data.Write(MessagePart); data.WriteCookie(ContentType); }