1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
use crate::sundials::sundials_types::{SUNComm, SUNContext, SUNErrCode};
unsafe extern "C" {
// /* -----------------------------------------------------------------
// * Programmer(s): Cody J. Balos @ LLNL
// * -----------------------------------------------------------------
// * SUNDIALS Copyright Start
// * Copyright (c) 2025-2026, Lawrence Livermore National Security,
// * University of Maryland Baltimore County, and the SUNDIALS contributors.
// * Copyright (c) 2013-2025, Lawrence Livermore National Security
// * and Southern Methodist University.
// * Copyright (c) 2002-2013, Lawrence Livermore National Security.
// * All rights reserved.
// *
// * See the top-level LICENSE and NOTICE files for details.
// *
// * SPDX-License-Identifier: BSD-3-Clause
// * SUNDIALS Copyright End
// * -----------------------------------------------------------------
// * SUNDIALS context class. A context object holds data that all
// * SUNDIALS objects in a simulation share. It is thread-safe provided
// * that each thread has its own context object.
// * ----------------------------------------------------------------*/
// #ifndef _SUNDIALS_CONTEXT_H
// #define _SUNDIALS_CONTEXT_H
// #include <sundials/priv/sundials_context_impl.h>
// #ifdef __cplusplus /* wrapper to enable C++ usage */
// extern "C" {
// #endif
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_Create(SUNComm comm, SUNContext* sunctx_out);
pub fn SUNContext_Create(comm: SUNComm, sunctx_out: *mut SUNContext) -> SUNErrCode;
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_GetLastError(SUNContext sunctx);
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_PeekLastError(SUNContext sunctx);
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_PushErrHandler(SUNContext sunctx, SUNErrHandlerFn err_fn,
// void* err_user_data);
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_PopErrHandler(SUNContext sunctx);
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_ClearErrHandlers(SUNContext sunctx);
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_GetProfiler(SUNContext sunctx,
// SUNProfiler* profiler); // nb::rv_policy::reference
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_SetProfiler(SUNContext sunctx, SUNProfiler profiler);
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_GetLogger(SUNContext sunctx,
// SUNLogger* logger); // nb::rv_policy::reference
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_SetLogger(SUNContext sunctx, SUNLogger logger);
// SUNDIALS_EXPORT
// SUNErrCode SUNContext_Free(SUNContext* ctx);
pub unsafe fn SUNContext_Free(ctx: *mut SUNContext) -> SUNErrCode;
// #ifdef __cplusplus
// }
// #endif
// #endif
}