Skip to content

Commit

Permalink
Merge pull request #163 from AnalyticalGraphicsInc/czmlDeleteIntervals
Browse files Browse the repository at this point in the history
Add ability to delete data from properties over an interval.
  • Loading branch information
shunter authored May 16, 2019
2 parents 2710987 + 8f9295c commit 3bab8f6
Show file tree
Hide file tree
Showing 141 changed files with 2,613 additions and 294 deletions.
17 changes: 17 additions & 0 deletions DotNet/CesiumLanguageWriter/Generated/AlignedAxisCesiumWriter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,11 @@ public class AlignedAxisCesiumWriter : CesiumInterpolatablePropertyWriter<Aligne
/// </summary>
public const string VelocityReferencePropertyName = "velocityReference";

/// <summary>
/// The name of the <c>delete</c> property.
/// </summary>
public const string DeletePropertyName = "delete";

private readonly Lazy<ICesiumInterpolatableValuePropertyWriter<UnitCartesian>> m_asUnitCartesian;
private readonly Lazy<ICesiumInterpolatableValuePropertyWriter<UnitSpherical>> m_asUnitSpherical;
private readonly Lazy<ICesiumValuePropertyWriter<Reference>> m_asReference;
Expand Down Expand Up @@ -244,6 +249,18 @@ public void WriteVelocityReference(string identifier, string[] propertyNames)
CesiumWritingHelper.WriteReference(Output, identifier, propertyNames);
}

/// <summary>
/// Writes the value expressed as a <c>delete</c>, which is whether the client should delete existing samples or interval data for this property. Data will be deleted for the containing interval, or if there is no containing interval, then all data. If true, all other properties in this property will be ignored.
/// </summary>
/// <param name="value">The value.</param>
public void WriteDelete(bool value)
{
const string PropertyName = DeletePropertyName;
OpenIntervalIfNecessary();
Output.WritePropertyName(PropertyName);
Output.WriteValue(value);
}

/// <summary>
/// Returns a wrapper for this instance that implements <see cref="ICesiumInterpolatableValuePropertyWriter{T}" /> to write a value in <c>UnitCartesian</c> format. Because the returned instance is a wrapper for this instance, you may call <see cref="ICesiumElementWriter.Close" /> on either this instance or the wrapper, but you must not call it on both.
/// </summary>
Expand Down
17 changes: 17 additions & 0 deletions DotNet/CesiumLanguageWriter/Generated/ArcTypeCesiumWriter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ public class ArcTypeCesiumWriter : CesiumPropertyWriter<ArcTypeCesiumWriter>
/// </summary>
public const string ReferencePropertyName = "reference";

/// <summary>
/// The name of the <c>delete</c> property.
/// </summary>
public const string DeletePropertyName = "delete";

private readonly Lazy<ICesiumValuePropertyWriter<CesiumArcType>> m_asArcType;
private readonly Lazy<ICesiumValuePropertyWriter<Reference>> m_asReference;

Expand Down Expand Up @@ -123,6 +128,18 @@ public void WriteReference(string identifier, string[] propertyNames)
CesiumWritingHelper.WriteReference(Output, identifier, propertyNames);
}

/// <summary>
/// Writes the value expressed as a <c>delete</c>, which is whether the client should delete existing data for this property. Data will be deleted for the containing interval, or if there is no containing interval, then all data. If true, all other properties in this property will be ignored.
/// </summary>
/// <param name="value">The value.</param>
public void WriteDelete(bool value)
{
const string PropertyName = DeletePropertyName;
OpenIntervalIfNecessary();
Output.WritePropertyName(PropertyName);
Output.WriteValue(value);
}

/// <summary>
/// Returns a wrapper for this instance that implements <see cref="ICesiumValuePropertyWriter{T}" /> to write a value in <c>ArcType</c> format. Because the returned instance is a wrapper for this instance, you may call <see cref="ICesiumElementWriter.Close" /> on either this instance or the wrapper, but you must not call it on both.
/// </summary>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,11 @@ public class BackgroundPaddingCesiumWriter : CesiumInterpolatablePropertyWriter<
/// </summary>
public const string ReferencePropertyName = "reference";

/// <summary>
/// The name of the <c>delete</c> property.
/// </summary>
public const string DeletePropertyName = "delete";

private readonly Lazy<ICesiumInterpolatableValuePropertyWriter<Rectangular>> m_asCartesian2;
private readonly Lazy<ICesiumValuePropertyWriter<Reference>> m_asReference;

Expand Down Expand Up @@ -152,6 +157,18 @@ public void WriteReference(string identifier, string[] propertyNames)
CesiumWritingHelper.WriteReference(Output, identifier, propertyNames);
}

/// <summary>
/// Writes the value expressed as a <c>delete</c>, which is whether the client should delete existing samples or interval data for this property. Data will be deleted for the containing interval, or if there is no containing interval, then all data. If true, all other properties in this property will be ignored.
/// </summary>
/// <param name="value">The value.</param>
public void WriteDelete(bool value)
{
const string PropertyName = DeletePropertyName;
OpenIntervalIfNecessary();
Output.WritePropertyName(PropertyName);
Output.WriteValue(value);
}

/// <summary>
/// Returns a wrapper for this instance that implements <see cref="ICesiumInterpolatableValuePropertyWriter{T}" /> to write a value in <c>Cartesian2</c> format. Because the returned instance is a wrapper for this instance, you may call <see cref="ICesiumElementWriter.Close" /> on either this instance or the wrapper, but you must not call it on both.
/// </summary>
Expand Down
28 changes: 14 additions & 14 deletions DotNet/CesiumLanguageWriter/Generated/BillboardCesiumWriter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -984,7 +984,7 @@ public void WriteHeightReferencePropertyReference(string identifier, string[] pr
}

/// <summary>
/// Gets the writer for the <c>color</c> property. The returned instance must be opened by calling the <see cref="CesiumElementWriter.Open"/> method before it can be used for writing. The <c>color</c> property defines the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Gets the writer for the <c>color</c> property. The returned instance must be opened by calling the <see cref="CesiumElementWriter.Open"/> method before it can be used for writing. The <c>color</c> property defines the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
[NotNull]
public ColorCesiumWriter ColorWriter
Expand All @@ -993,7 +993,7 @@ public ColorCesiumWriter ColorWriter
}

/// <summary>
/// Opens and returns the writer for the <c>color</c> property. The <c>color</c> property defines the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Opens and returns the writer for the <c>color</c> property. The <c>color</c> property defines the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
[NotNull]
public ColorCesiumWriter OpenColorProperty()
Expand All @@ -1003,7 +1003,7 @@ public ColorCesiumWriter OpenColorProperty()
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>rgba</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>rgba</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="color">The color.</param>
public void WriteColorProperty(Color color)
Expand All @@ -1015,7 +1015,7 @@ public void WriteColorProperty(Color color)
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>rgba</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>rgba</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="red">The red component in the range 0 to 255.</param>
/// <param name="green">The green component in the range 0 to 255.</param>
Expand All @@ -1030,7 +1030,7 @@ public void WriteColorProperty(int red, int green, int blue, int alpha)
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>rgba</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>rgba</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="dates">The dates at which the value is specified.</param>
/// <param name="values">The values corresponding to each date.</param>
Expand All @@ -1043,7 +1043,7 @@ public void WriteColorProperty(IList<JulianDate> dates, IList<Color> values)
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>rgba</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>rgba</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="dates">The dates at which the value is specified.</param>
/// <param name="colors">The color corresponding to each date.</param>
Expand All @@ -1058,7 +1058,7 @@ public void WriteColorProperty(IList<JulianDate> dates, IList<Color> colors, int
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>rgbaf</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>rgbaf</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="color">The color.</param>
public void WriteColorPropertyRgbaf(Color color)
Expand All @@ -1070,7 +1070,7 @@ public void WriteColorPropertyRgbaf(Color color)
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>rgbaf</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>rgbaf</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="red">The red component in the range 0 to 1.0.</param>
/// <param name="green">The green component in the range 0 to 1.0.</param>
Expand All @@ -1085,7 +1085,7 @@ public void WriteColorPropertyRgbaf(float red, float green, float blue, float al
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>rgbaf</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>rgbaf</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="dates">The dates at which the value is specified.</param>
/// <param name="values">The values corresponding to each date.</param>
Expand All @@ -1098,7 +1098,7 @@ public void WriteColorPropertyRgbaf(IList<JulianDate> dates, IList<Color> values
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>rgbaf</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>rgbaf</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="dates">The dates at which the value is specified.</param>
/// <param name="colors">The color corresponding to each date.</param>
Expand All @@ -1113,7 +1113,7 @@ public void WriteColorPropertyRgbaf(IList<JulianDate> dates, IList<Color> colors
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>reference</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>reference</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="value">The reference.</param>
public void WriteColorPropertyReference(Reference value)
Expand All @@ -1125,7 +1125,7 @@ public void WriteColorPropertyReference(Reference value)
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>reference</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>reference</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="value">The earliest date of the interval.</param>
public void WriteColorPropertyReference(string value)
Expand All @@ -1137,7 +1137,7 @@ public void WriteColorPropertyReference(string value)
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>reference</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>reference</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="identifier">The identifier of the object which contains the referenced property.</param>
/// <param name="propertyName">The property on the referenced object.</param>
Expand All @@ -1150,7 +1150,7 @@ public void WriteColorPropertyReference(string identifier, string propertyName)
}

/// <summary>
/// Writes a value for the <c>color</c> property as a <c>reference</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's "image" to produce the final color. If not specified, the default value is white.
/// Writes a value for the <c>color</c> property as a <c>reference</c> value. The <c>color</c> property specifies the color of the billboard. This color value is multiplied with the values of the billboard's <c>image</c> to produce the final color. If not specified, the default value is white.
/// </summary>
/// <param name="identifier">The identifier of the object which contains the referenced property.</param>
/// <param name="propertyNames">The hierarchy of properties to be indexed on the referenced object.</param>
Expand Down
17 changes: 17 additions & 0 deletions DotNet/CesiumLanguageWriter/Generated/BooleanCesiumWriter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,11 @@ public class BooleanCesiumWriter : CesiumPropertyWriter<BooleanCesiumWriter>
/// </summary>
public const string ReferencePropertyName = "reference";

/// <summary>
/// The name of the <c>delete</c> property.
/// </summary>
public const string DeletePropertyName = "delete";

private readonly Lazy<ICesiumValuePropertyWriter<bool>> m_asBoolean;
private readonly Lazy<ICesiumValuePropertyWriter<Reference>> m_asReference;

Expand Down Expand Up @@ -123,6 +128,18 @@ public void WriteReference(string identifier, string[] propertyNames)
CesiumWritingHelper.WriteReference(Output, identifier, propertyNames);
}

/// <summary>
/// Writes the value expressed as a <c>delete</c>, which is whether the client should delete existing data for this property. Data will be deleted for the containing interval, or if there is no containing interval, then all data. If true, all other properties in this property will be ignored.
/// </summary>
/// <param name="value">The value.</param>
public void WriteDelete(bool value)
{
const string PropertyName = DeletePropertyName;
OpenIntervalIfNecessary();
Output.WritePropertyName(PropertyName);
Output.WriteValue(value);
}

/// <summary>
/// Returns a wrapper for this instance that implements <see cref="ICesiumValuePropertyWriter{T}" /> to write a value in <c>Boolean</c> format. Because the returned instance is a wrapper for this instance, you may call <see cref="ICesiumElementWriter.Close" /> on either this instance or the wrapper, but you must not call it on both.
/// </summary>
Expand Down
Loading

0 comments on commit 3bab8f6

Please sign in to comment.