/// <summary> /// Calculates sizes of additional buffers used by the job. /// </summary> /// <param name="pJob">has to point to properly initialized job</param> public SizeT JobMemorySize(NppiJpegDecodeJob pJob) { SizeT ret = new SizeT(); status = NPPNativeMethods.NPPi.CompressionDCT.nppiJpegDecodeJobMemorySize(ref pJob, ref ret); Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "nppiJpegDecodeJobMemorySize", status)); NPPException.CheckNppStatus(status, this); return(ret); }
/// <summary> /// Initializes a job that has to be called at the beginning of decoding. /// </summary> public NppiJpegDecodeJob JobCreateMemzero() { NppiJpegDecodeJob ret = new NppiJpegDecodeJob(); status = NPPNativeMethods.NPPi.CompressionDCT.nppiJpegDecodeJobCreateMemzero(ref ret); Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "nppiJpegDecodeJobCreateMemzero", status)); NPPException.CheckNppStatus(status, this); return(ret); }
/// <summary> /// Initializes a job that has to be called at the end of decoding, /// in order to convert temporary representation of DCT coefficients /// to the final one. /// </summary> /// <param name="pJob">pJob.pFrame should point to valid frame description. /// pJob.pScan will be overwritten.</param> public void DecodeJobCreateFinalize(ref NppiJpegDecodeJob pJob) { status = NPPNativeMethods.NPPi.CompressionDCT.nppiJpegDecodeJobCreateFinalize(ref pJob); Debug.WriteLine(String.Format("{0:G}, {1}: {2}", DateTime.Now, "nppiJpegDecodeJobCreateFinalize", status)); NPPException.CheckNppStatus(status, this); }