/// <summary> /// Returns the number of source bytes for a given number of destination bytes /// </summary> /// <param name="dest">Number of destination bytes</param> /// <returns>Number of source bytes</returns> public int DestToSource(int dest) { if (dest == 0) // zero is an invalid parameter to acmStreamSize { return(0); } int convertedBytes; MmException.Try(AcmInterop.acmStreamSize(streamHandle, dest, out convertedBytes, AcmStreamSizeFlags.Destination), "acmStreamSize"); return(convertedBytes); }
/// <summary> /// Returns the number of output bytes for a given number of input bytes /// </summary> /// <param name="source">Number of input bytes</param> /// <returns>Number of output bytes</returns> public int SourceToDest(int source) { if (source == 0) // zero is an invalid parameter to acmStreamSize { return(0); } int convertedBytes; var mmResult = AcmInterop.acmStreamSize(streamHandle, source, out convertedBytes, AcmStreamSizeFlags.Source); MmException.Try(mmResult, "acmStreamSize"); return(convertedBytes); }