/// <summary> /// Set a string setting value. /// </summary> /// <param name="setting">Setting key.</param> /// <param name="value">Setting value.</param> internal void EngineSetStr(UnsafeNativeMethods.cl_engine_field setting, string value) { int error = UnsafeNativeMethods.cl_engine_set_str(_engine, setting, value); if (error != UnsafeNativeMethods.CL_SUCCESS) { throw new ClamException(error, ErrorString(error)); } }
/// <summary> /// Set a numerical setting value. /// </summary> /// <param name="setting">Setting key.</param> /// <param name="value">Setting value.</param> private void EngineSetNum(UnsafeNativeMethods.cl_engine_field setting, long value) { int error = UnsafeNativeMethods.cl_engine_set_num(_engine, setting, value); if (error != UnsafeNativeMethods.CL_SUCCESS) { throw new ClamException(error, ErrorString(error)); } }
/// <summary> /// Get a string setting value. /// </summary> /// <param name="setting">Setting key.</param> /// <returns>Setting value.</returns> internal string EngineGetStr(UnsafeNativeMethods.cl_engine_field setting) { int error = 0; IntPtr strPtr = UnsafeNativeMethods.cl_engine_get_str(_engine, setting, ref error); if (error != UnsafeNativeMethods.CL_SUCCESS) { throw new ClamException(error, ErrorString(error)); } return(Marshal.PtrToStringAnsi(strPtr)); }
/// <summary> /// Get a numerical settings value. /// </summary> /// <param name="setting">Setting key.</param> /// <returns>Setting value.</returns> internal long EngineGetNum(UnsafeNativeMethods.cl_engine_field setting) { int error = 0; long numValue = UnsafeNativeMethods.cl_engine_get_num(_engine, setting, ref error); if (error != UnsafeNativeMethods.CL_SUCCESS) { throw new ClamException(error, ErrorString(error)); } return(numValue); }