/// <summary> /// Reads the full box properties from stream. /// </summary> /// <param name="reader">The binary reader with the stream.</param> protected override void ReadFullBoxPropertiesFromStream(BoxBinaryReader reader) { var sampleCount = reader.ReadUInt32(); this.samples = new Sample[sampleCount]; for (int i = 0; i < sampleCount; i++) { // TODO: Figure out the iv_size to read this value correctly. ulong initializationVector = reader.ReadUInt64(); SubSample[] subSamples; if ((this.Flags & 0x02) == 0x02) { var subSampleCount = reader.ReadUInt16(); subSamples = new SubSample[subSampleCount]; for (int j = 0; j < subSampleCount; j++) { subSamples[j] = new SubSample( reader.ReadUInt16(), reader.ReadUInt32()); } } else { subSamples = new SubSample[0]; } this.samples[i] = new Sample(initializationVector, subSamples); } }
public void Assign_value_to_non_built_in_type_private_field() { var sample = new Sample(); var instanceOfSubSample = new SubSample(30000); sample.With("privateInstanceOfSubSample", instanceOfSubSample); sample.ValueOfPrivateInstanceOfSubSample.Should().BeEquivalentTo(instanceOfSubSample); }
public void Assign_value_to_non_built_in_type_public_property() { var sample = new Sample(); var instanceOfSubSample = new SubSample(40000); sample.With("InstanceOfSubSample", instanceOfSubSample); sample.InstanceOfSubSample.Should().BeEquivalentTo(instanceOfSubSample); }
public void Skip_assigning_to_already_assigned_members_of_non_built_in_type() { var sample = new Sample(); var instanceOfSubSample = new SubSample(50000); sample .With("privateInstanceOfSubSample", instanceOfSubSample) .With("InstanceOfSubSample", instanceOfSubSample); sample.Generate(); sample.ValueOfPrivateInstanceOfSubSample.Should().BeEquivalentTo(instanceOfSubSample); sample.InstanceOfSubSample.Should().BeEquivalentTo(instanceOfSubSample); }
public Sample(ulong initializationVector, SubSample[] subSamples) { this.InitializationVector = initializationVector; this.subSamples = subSamples; }