1 #ifndef _G_CRASHCAT_WAYFINDER_NVOC_H_
2 #define _G_CRASHCAT_WAYFINDER_NVOC_H_
3 #include "nvoc/runtime.h"
4 
5 #ifdef __cplusplus
6 extern "C" {
7 #endif
8 
9 /*
10  * SPDX-FileCopyrightText: Copyright (c) 2023 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
11  * SPDX-License-Identifier: MIT
12  *
13  * Permission is hereby granted, free of charge, to any person obtaining a
14  * copy of this software and associated documentation files (the "Software"),
15  * to deal in the Software without restriction, including without limitation
16  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
17  * and/or sell copies of the Software, and to permit persons to whom the
18  * Software is furnished to do so, subject to the following conditions:
19  *
20  * The above copyright notice and this permission notice shall be included in
21  * all copies or substantial portions of the Software.
22  *
23  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
24  * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
25  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
26  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
27  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
28  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
29  * DEALINGS IN THE SOFTWARE.
30  */
31 
32 #include "g_crashcat_wayfinder_nvoc.h"
33 
34 #ifndef CRASHCAT_WAYFINDER_H
35 #define CRASHCAT_WAYFINDER_H
36 
37 #include "nvoc/object.h"
38 #include "nv-crashcat.h"
39 
40 struct CrashCatQueue;
41 
42 #ifndef __NVOC_CLASS_CrashCatQueue_TYPEDEF__
43 #define __NVOC_CLASS_CrashCatQueue_TYPEDEF__
44 typedef struct CrashCatQueue CrashCatQueue;
45 #endif /* __NVOC_CLASS_CrashCatQueue_TYPEDEF__ */
46 
47 #ifndef __nvoc_class_id_CrashCatQueue
48 #define __nvoc_class_id_CrashCatQueue 0xbaa900
49 #endif /* __nvoc_class_id_CrashCatQueue */
50 
51 
52 struct CrashCatReport;
53 
54 #ifndef __NVOC_CLASS_CrashCatReport_TYPEDEF__
55 #define __NVOC_CLASS_CrashCatReport_TYPEDEF__
56 typedef struct CrashCatReport CrashCatReport;
57 #endif /* __NVOC_CLASS_CrashCatReport_TYPEDEF__ */
58 
59 #ifndef __nvoc_class_id_CrashCatReport
60 #define __nvoc_class_id_CrashCatReport 0xde4777
61 #endif /* __nvoc_class_id_CrashCatReport */
62 
63 
64 
65 struct CrashCatWayfinderHal {
66     unsigned short __nvoc_HalVarIdx;
67 };
68 typedef struct CrashCatWayfinderHal CrashCatWayfinderHal;
69 void __nvoc_init_halspec_CrashCatWayfinderHal(CrashCatWayfinderHal*, NV_CRASHCAT_WAYFINDER_VERSION);
70 
71 #ifdef NVOC_CRASHCAT_WAYFINDER_H_PRIVATE_ACCESS_ALLOWED
72 #define PRIVATE_FIELD(x) x
73 #else
74 #define PRIVATE_FIELD(x) NVOC_PRIVATE_FIELD(x)
75 #endif
76 struct __nvoc_inner_struc_CrashCatWayfinder_1__ {
77     NvCrashCatWayfinderL0_V1 wfl0;
78     NvCrashCatWayfinderL1_V1 wfl1;
79 };
80 
81 
82 struct CrashCatWayfinder {
83     const struct NVOC_RTTI *__nvoc_rtti;
84     struct Object __nvoc_base_Object;
85     struct Object *__nvoc_pbase_Object;
86     struct CrashCatWayfinder *__nvoc_pbase_CrashCatWayfinder;
87     struct CrashCatWayfinderHal wayfinderHal;
88     struct CrashCatQueue *PRIVATE_FIELD(pQueue);
89     struct __nvoc_inner_struc_CrashCatWayfinder_1__ PRIVATE_FIELD(v1);
90 };
91 
92 #ifndef __NVOC_CLASS_CrashCatWayfinder_TYPEDEF__
93 #define __NVOC_CLASS_CrashCatWayfinder_TYPEDEF__
94 typedef struct CrashCatWayfinder CrashCatWayfinder;
95 #endif /* __NVOC_CLASS_CrashCatWayfinder_TYPEDEF__ */
96 
97 #ifndef __nvoc_class_id_CrashCatWayfinder
98 #define __nvoc_class_id_CrashCatWayfinder 0x085e32
99 #endif /* __nvoc_class_id_CrashCatWayfinder */
100 
101 extern const struct NVOC_CLASS_DEF __nvoc_class_def_CrashCatWayfinder;
102 
103 #define __staticCast_CrashCatWayfinder(pThis) \
104     ((pThis)->__nvoc_pbase_CrashCatWayfinder)
105 
106 #ifdef __nvoc_crashcat_wayfinder_h_disabled
107 #define __dynamicCast_CrashCatWayfinder(pThis) ((CrashCatWayfinder*)NULL)
108 #else //__nvoc_crashcat_wayfinder_h_disabled
109 #define __dynamicCast_CrashCatWayfinder(pThis) \
110     ((CrashCatWayfinder*)__nvoc_dynamicCast(staticCast((pThis), Dynamic), classInfo(CrashCatWayfinder)))
111 #endif //__nvoc_crashcat_wayfinder_h_disabled
112 
113 
114 NV_STATUS __nvoc_objCreateDynamic_CrashCatWayfinder(CrashCatWayfinder**, Dynamic*, NvU32, va_list);
115 
116 NV_STATUS __nvoc_objCreate_CrashCatWayfinder(CrashCatWayfinder**, Dynamic*, NvU32,
117         NV_CRASHCAT_WAYFINDER_VERSION CrashCatWayfinderHal_version, NvU32 arg_wfl0);
118 #define __objCreate_CrashCatWayfinder(ppNewObj, pParent, createFlags, CrashCatWayfinderHal_version, arg_wfl0) \
119     __nvoc_objCreate_CrashCatWayfinder((ppNewObj), staticCast((pParent), Dynamic), (createFlags), CrashCatWayfinderHal_version, arg_wfl0)
120 
121 struct CrashCatQueue *crashcatWayfinderGetReportQueue_V1(struct CrashCatWayfinder *arg0);
122 
123 
124 #ifdef __nvoc_crashcat_wayfinder_h_disabled
125 static inline struct CrashCatQueue *crashcatWayfinderGetReportQueue(struct CrashCatWayfinder *arg0) {
126     NV_ASSERT_FAILED_PRECOMP("CrashCatWayfinder was disabled!");
127     return NULL;
128 }
129 #else //__nvoc_crashcat_wayfinder_h_disabled
130 #define crashcatWayfinderGetReportQueue(arg0) crashcatWayfinderGetReportQueue_V1(arg0)
131 #endif //__nvoc_crashcat_wayfinder_h_disabled
132 
133 #define crashcatWayfinderGetReportQueue_HAL(arg0) crashcatWayfinderGetReportQueue(arg0)
134 
135 void crashcatWayfinderSetWFL0_V1(struct CrashCatWayfinder *arg0, NvU32 wfl0);
136 
137 
138 #ifdef __nvoc_crashcat_wayfinder_h_disabled
139 static inline void crashcatWayfinderSetWFL0(struct CrashCatWayfinder *arg0, NvU32 wfl0) {
140     NV_ASSERT_FAILED_PRECOMP("CrashCatWayfinder was disabled!");
141 }
142 #else //__nvoc_crashcat_wayfinder_h_disabled
143 #define crashcatWayfinderSetWFL0(arg0, wfl0) crashcatWayfinderSetWFL0_V1(arg0, wfl0)
144 #endif //__nvoc_crashcat_wayfinder_h_disabled
145 
146 #define crashcatWayfinderSetWFL0_HAL(arg0, wfl0) crashcatWayfinderSetWFL0(arg0, wfl0)
147 
148 NV_STATUS crashcatWayfinderConstruct_IMPL(struct CrashCatWayfinder *arg_, NvU32 arg_wfl0);
149 
150 #define __nvoc_crashcatWayfinderConstruct(arg_, arg_wfl0) crashcatWayfinderConstruct_IMPL(arg_, arg_wfl0)
151 void crashcatWayfinderDestruct_IMPL(struct CrashCatWayfinder *arg0);
152 
153 #define __nvoc_crashcatWayfinderDestruct(arg0) crashcatWayfinderDestruct_IMPL(arg0)
154 #undef PRIVATE_FIELD
155 
156 #ifndef NVOC_CRASHCAT_WAYFINDER_H_PRIVATE_ACCESS_ALLOWED
157 #ifndef __nvoc_crashcat_wayfinder_h_disabled
158 #undef crashcatWayfinderSetWFL0
159 void NVOC_PRIVATE_FUNCTION(crashcatWayfinderSetWFL0)(struct CrashCatWayfinder *arg0, NvU32 wfl0);
160 #endif //__nvoc_crashcat_wayfinder_h_disabled
161 
162 #endif // NVOC_CRASHCAT_WAYFINDER_H_PRIVATE_ACCESS_ALLOWED
163 
164 
165 #endif // CRASHCAT_VECTOR_H
166 
167 #ifdef __cplusplus
168 } // extern "C"
169 #endif
170 #endif // _G_CRASHCAT_WAYFINDER_NVOC_H_
171