1 #define NVOC_CRASHCAT_WAYFINDER_H_PRIVATE_ACCESS_ALLOWED 2 #include "nvoc/runtime.h" 3 #include "nvoc/rtti.h" 4 #include "nvtypes.h" 5 #include "nvport/nvport.h" 6 #include "nvport/inline/util_valist.h" 7 #include "utils/nvassert.h" 8 #include "g_crashcat_wayfinder_nvoc.h" 9 10 void __nvoc_init_halspec_CrashCatWayfinderHal(CrashCatWayfinderHal *pCrashCatWayfinderHal, NV_CRASHCAT_WAYFINDER_VERSION version) 11 { 12 // V1 13 if(version == 0x1) 14 { 15 pCrashCatWayfinderHal->__nvoc_HalVarIdx = 0; 16 } 17 } 18 19 #ifdef DEBUG 20 char __nvoc_class_id_uniqueness_check_0x085e32 = 1; 21 #endif 22 23 extern const struct NVOC_CLASS_DEF __nvoc_class_def_CrashCatWayfinder; 24 25 extern const struct NVOC_CLASS_DEF __nvoc_class_def_Object; 26 27 void __nvoc_init_CrashCatWayfinder(CrashCatWayfinder*, 28 NV_CRASHCAT_WAYFINDER_VERSION CrashCatWayfinderHal_version); 29 void __nvoc_init_funcTable_CrashCatWayfinder(CrashCatWayfinder*); 30 NV_STATUS __nvoc_ctor_CrashCatWayfinder(CrashCatWayfinder*, NvU32 arg_wfl0); 31 void __nvoc_init_dataField_CrashCatWayfinder(CrashCatWayfinder*); 32 void __nvoc_dtor_CrashCatWayfinder(CrashCatWayfinder*); 33 extern const struct NVOC_EXPORT_INFO __nvoc_export_info_CrashCatWayfinder; 34 35 static const struct NVOC_RTTI __nvoc_rtti_CrashCatWayfinder_CrashCatWayfinder = { 36 /*pClassDef=*/ &__nvoc_class_def_CrashCatWayfinder, 37 /*dtor=*/ (NVOC_DYNAMIC_DTOR) &__nvoc_dtor_CrashCatWayfinder, 38 /*offset=*/ 0, 39 }; 40 41 static const struct NVOC_RTTI __nvoc_rtti_CrashCatWayfinder_Object = { 42 /*pClassDef=*/ &__nvoc_class_def_Object, 43 /*dtor=*/ &__nvoc_destructFromBase, 44 /*offset=*/ NV_OFFSETOF(CrashCatWayfinder, __nvoc_base_Object), 45 }; 46 47 static const struct NVOC_CASTINFO __nvoc_castinfo_CrashCatWayfinder = { 48 /*numRelatives=*/ 2, 49 /*relatives=*/ { 50 &__nvoc_rtti_CrashCatWayfinder_CrashCatWayfinder, 51 &__nvoc_rtti_CrashCatWayfinder_Object, 52 }, 53 }; 54 55 const struct NVOC_CLASS_DEF __nvoc_class_def_CrashCatWayfinder = 56 { 57 /*classInfo=*/ { 58 /*size=*/ sizeof(CrashCatWayfinder), 59 /*classId=*/ classId(CrashCatWayfinder), 60 /*providerId=*/ &__nvoc_rtti_provider, 61 #if NV_PRINTF_STRINGS_ALLOWED 62 /*name=*/ "CrashCatWayfinder", 63 #endif 64 }, 65 /*objCreatefn=*/ (NVOC_DYNAMIC_OBJ_CREATE) &__nvoc_objCreateDynamic_CrashCatWayfinder, 66 /*pCastInfo=*/ &__nvoc_castinfo_CrashCatWayfinder, 67 /*pExportInfo=*/ &__nvoc_export_info_CrashCatWayfinder 68 }; 69 70 const struct NVOC_EXPORT_INFO __nvoc_export_info_CrashCatWayfinder = 71 { 72 /*numEntries=*/ 0, 73 /*pExportEntries=*/ 0 74 }; 75 76 void __nvoc_dtor_Object(Object*); 77 void __nvoc_dtor_CrashCatWayfinder(CrashCatWayfinder *pThis) { 78 __nvoc_crashcatWayfinderDestruct(pThis); 79 __nvoc_dtor_Object(&pThis->__nvoc_base_Object); 80 PORT_UNREFERENCED_VARIABLE(pThis); 81 } 82 83 void __nvoc_init_dataField_CrashCatWayfinder(CrashCatWayfinder *pThis) { 84 CrashCatWayfinderHal *wayfinderHal = &pThis->wayfinderHal; 85 const unsigned long wayfinderHal_HalVarIdx = (unsigned long)wayfinderHal->__nvoc_HalVarIdx; 86 PORT_UNREFERENCED_VARIABLE(pThis); 87 PORT_UNREFERENCED_VARIABLE(wayfinderHal); 88 PORT_UNREFERENCED_VARIABLE(wayfinderHal_HalVarIdx); 89 } 90 91 NV_STATUS __nvoc_ctor_Object(Object* ); 92 NV_STATUS __nvoc_ctor_CrashCatWayfinder(CrashCatWayfinder *pThis, NvU32 arg_wfl0) { 93 NV_STATUS status = NV_OK; 94 status = __nvoc_ctor_Object(&pThis->__nvoc_base_Object); 95 if (status != NV_OK) goto __nvoc_ctor_CrashCatWayfinder_fail_Object; 96 __nvoc_init_dataField_CrashCatWayfinder(pThis); 97 98 status = __nvoc_crashcatWayfinderConstruct(pThis, arg_wfl0); 99 if (status != NV_OK) goto __nvoc_ctor_CrashCatWayfinder_fail__init; 100 goto __nvoc_ctor_CrashCatWayfinder_exit; // Success 101 102 __nvoc_ctor_CrashCatWayfinder_fail__init: 103 __nvoc_dtor_Object(&pThis->__nvoc_base_Object); 104 __nvoc_ctor_CrashCatWayfinder_fail_Object: 105 __nvoc_ctor_CrashCatWayfinder_exit: 106 107 return status; 108 } 109 110 static void __nvoc_init_funcTable_CrashCatWayfinder_1(CrashCatWayfinder *pThis) { 111 CrashCatWayfinderHal *wayfinderHal = &pThis->wayfinderHal; 112 const unsigned long wayfinderHal_HalVarIdx = (unsigned long)wayfinderHal->__nvoc_HalVarIdx; 113 PORT_UNREFERENCED_VARIABLE(pThis); 114 PORT_UNREFERENCED_VARIABLE(wayfinderHal); 115 PORT_UNREFERENCED_VARIABLE(wayfinderHal_HalVarIdx); 116 } 117 118 void __nvoc_init_funcTable_CrashCatWayfinder(CrashCatWayfinder *pThis) { 119 __nvoc_init_funcTable_CrashCatWayfinder_1(pThis); 120 } 121 122 void __nvoc_init_Object(Object*); 123 void __nvoc_init_CrashCatWayfinder(CrashCatWayfinder *pThis, 124 NV_CRASHCAT_WAYFINDER_VERSION CrashCatWayfinderHal_version) { 125 pThis->__nvoc_pbase_CrashCatWayfinder = pThis; 126 pThis->__nvoc_pbase_Object = &pThis->__nvoc_base_Object; 127 __nvoc_init_Object(&pThis->__nvoc_base_Object); 128 __nvoc_init_halspec_CrashCatWayfinderHal(&pThis->wayfinderHal, CrashCatWayfinderHal_version); 129 __nvoc_init_funcTable_CrashCatWayfinder(pThis); 130 } 131 132 NV_STATUS __nvoc_objCreate_CrashCatWayfinder(CrashCatWayfinder **ppThis, Dynamic *pParent, NvU32 createFlags, 133 NV_CRASHCAT_WAYFINDER_VERSION CrashCatWayfinderHal_version, NvU32 arg_wfl0) { 134 NV_STATUS status; 135 Object *pParentObj; 136 CrashCatWayfinder *pThis; 137 138 status = __nvoc_handleObjCreateMemAlloc(createFlags, sizeof(CrashCatWayfinder), (void**)&pThis, (void**)ppThis); 139 if (status != NV_OK) 140 return status; 141 142 portMemSet(pThis, 0, sizeof(CrashCatWayfinder)); 143 144 __nvoc_initRtti(staticCast(pThis, Dynamic), &__nvoc_class_def_CrashCatWayfinder); 145 146 pThis->__nvoc_base_Object.createFlags = createFlags; 147 148 if (pParent != NULL && !(createFlags & NVOC_OBJ_CREATE_FLAGS_PARENT_HALSPEC_ONLY)) 149 { 150 pParentObj = dynamicCast(pParent, Object); 151 objAddChild(pParentObj, &pThis->__nvoc_base_Object); 152 } 153 else 154 { 155 pThis->__nvoc_base_Object.pParent = NULL; 156 } 157 158 __nvoc_init_CrashCatWayfinder(pThis, CrashCatWayfinderHal_version); 159 status = __nvoc_ctor_CrashCatWayfinder(pThis, arg_wfl0); 160 if (status != NV_OK) goto __nvoc_objCreate_CrashCatWayfinder_cleanup; 161 162 *ppThis = pThis; 163 164 return NV_OK; 165 166 __nvoc_objCreate_CrashCatWayfinder_cleanup: 167 // do not call destructors here since the constructor already called them 168 if (createFlags & NVOC_OBJ_CREATE_FLAGS_IN_PLACE_CONSTRUCT) 169 portMemSet(pThis, 0, sizeof(CrashCatWayfinder)); 170 else 171 portMemFree(pThis); 172 173 // coverity[leaked_storage:FALSE] 174 return status; 175 } 176 177 NV_STATUS __nvoc_objCreateDynamic_CrashCatWayfinder(CrashCatWayfinder **ppThis, Dynamic *pParent, NvU32 createFlags, va_list args) { 178 NV_STATUS status; 179 NV_CRASHCAT_WAYFINDER_VERSION CrashCatWayfinderHal_version = va_arg(args, NV_CRASHCAT_WAYFINDER_VERSION); 180 NvU32 arg_wfl0 = va_arg(args, NvU32); 181 182 status = __nvoc_objCreate_CrashCatWayfinder(ppThis, pParent, createFlags, CrashCatWayfinderHal_version, arg_wfl0); 183 184 return status; 185 } 186 187