/// <summary> /// Generate a new <see cref="CaptureBufferCommand"/>. /// </summary> /// <param name="bufferOffset">The target buffer offset.</param> /// <param name="inputBufferOffset">The input buffer offset.</param> /// <param name="sendBufferInfo">The capture state.</param> /// <param name="isEnabled">Set to true if the effect should be active.</param> /// <param name="countMax">The limit of the circular buffer.</param> /// <param name="outputBuffer">The guest address of the output buffer.</param> /// <param name="updateCount">The count to add on the offset after write operations.</param> /// <param name="writeOffset">The write offset.</param> /// <param name="nodeId">The node id associated to this command.</param> public void GenerateCaptureEffect(uint bufferOffset, byte inputBufferOffset, ulong sendBufferInfo, bool isEnabled, uint countMax, CpuAddress outputBuffer, uint updateCount, uint writeOffset, int nodeId) { if (sendBufferInfo != 0) { CaptureBufferCommand command = new CaptureBufferCommand(bufferOffset, inputBufferOffset, sendBufferInfo, isEnabled, countMax, outputBuffer, updateCount, writeOffset, nodeId); command.EstimatedProcessingTime = _commandProcessingTimeEstimator.Estimate(command); AddCommand(command); } }
public override uint Estimate(CaptureBufferCommand command) { Debug.Assert(_sampleCount == 160 || _sampleCount == 240); if (_sampleCount == 160) { if (command.Enabled) { return((uint)435.2f); } return((uint)4261.0f); } if (command.Enabled) { return((uint)5858.26f); } return((uint)435.2f); }
public uint Estimate(CaptureBufferCommand command) { return(0); }