diff options
Diffstat (limited to 'APEX_1.4/shared/external/include/SimpleErrorStream.h')
| -rw-r--r-- | APEX_1.4/shared/external/include/SimpleErrorStream.h | 66 |
1 files changed, 66 insertions, 0 deletions
diff --git a/APEX_1.4/shared/external/include/SimpleErrorStream.h b/APEX_1.4/shared/external/include/SimpleErrorStream.h new file mode 100644 index 00000000..0d8d52bd --- /dev/null +++ b/APEX_1.4/shared/external/include/SimpleErrorStream.h @@ -0,0 +1,66 @@ +/* + * Copyright (c) 2008-2015, NVIDIA CORPORATION. All rights reserved. + * + * NVIDIA CORPORATION and its licensors retain all intellectual property + * and proprietary rights in and to this software, related documentation + * and any modifications thereto. Any use, reproduction, disclosure or + * distribution of this software and related documentation without an express + * license agreement from NVIDIA CORPORATION is strictly prohibited. + */ + +#include "PxErrorCallback.h" + +#include <ApexDefs.h> + +class SimplePxErrorStream : public physx::PxErrorCallback +{ + virtual void reportError(physx::PxErrorCode::Enum code, const char* message, const char* file, int line) + { + const char* errorCode = NULL; + switch (code) + { + case physx::PxErrorCode::eNO_ERROR : + return; + case physx::PxErrorCode::eINVALID_PARAMETER: + errorCode = "Invalid Parameter"; + break; + case physx::PxErrorCode::eINVALID_OPERATION: + errorCode = "Invalid Operation"; + break; + case physx::PxErrorCode::eOUT_OF_MEMORY: + errorCode = "Out of Memory"; + break; + case physx::PxErrorCode::eINTERNAL_ERROR : + errorCode = "Internal Error"; + break; +// case physx::PxErrorCode::eASSERTION: +// errorCode = "Assertion"; +// break; + case physx::PxErrorCode::eDEBUG_INFO: + errorCode = "Debug Info"; + break; + case physx::PxErrorCode::eDEBUG_WARNING: + errorCode = "Debug Warning"; + break; +// case physx::PxErrorCode::eSERIALIZATION_ERROR: +// errorCode = "Serialization Error"; +// break; + default: + errorCode = "Unknown Error Code"; + } + + if (errorCode != NULL) + { + printf("PhysX error: %s %s:%d\n%s\n", errorCode, file, line, message); + } + else + { + printf("PhysX error: physx::PxErrorCode is %d in %s:%d\n%s\n", code, file, line, message); + } + } + + virtual void print(const char* message) + { + printf("%s", message); + } +}; |