Commit Graph

908 Commits

Author SHA1 Message Date
Lioncash d93810568b CScriptObject: Make use of ranged for where applicable 2020-06-19 23:31:30 -04:00
Lioncash 9f8ecc855b CScriptNode: Tidy up code
- Collapse loops to ranged for where applicable, etc.
2020-06-19 20:55:39 -04:00
Lioncash 0a66503026 CScriptNode: Initialize all class variables
Provides a consistent initial state.
2020-06-19 20:31:08 -04:00
Lioncash 48e182ca80 CScriptLoader: Make use of unsigned stream helpers where applicable 2020-06-19 20:27:49 -04:00
Lioncash 888ceb55d5 CScriptLoader: Make use of in-class initializers
Same behavior, less code.
2020-06-19 20:23:38 -04:00
Lioncash 7629f15f40 CScriptCooker: Make use of unsigned stream helpers
Same behavior, less sign conversion warnings.
2020-06-19 20:21:01 -04:00
Lioncash d9046b4fd9 CScene: Prevent redundant lookups in DeleteNode()
Avoids unnecessary repeated map lookups.
2020-06-19 19:25:12 -04:00
Lioncash d7574a1965 CScene: General tidying up
- Ranged for, sign conversion fixes, etc.
2020-06-19 19:18:13 -04:00
Lioncash 1adb20dc0b CResourceEntry: Eliminate sign conversion warning 2020-06-19 19:03:27 -04:00
Lioncash 92fe105e82 CRenderer: Make use of std::array 2020-06-19 18:57:33 -04:00
Lioncash 9441933ce2 CRenderer: Make use of in-class initializers
Same behavior, less code.
2020-06-19 18:51:45 -04:00
Lioncash f88122b2ed CRenderBucket: Tidy up code 2020-06-19 18:47:24 -04:00
Lioncash b02b507675 CRayCollisionTester: Tidy up code a little 2020-06-19 18:39:21 -04:00
Lioncash 40f0fbca4c CPointOfInterestExtra: Make color instances constexpr
Avoids unnecessary file-scope static constructors.
2020-06-19 18:35:11 -04:00
Lioncash 84506c99fb CModelCooker: Make use of unsigned stream helpers where applicable 2020-06-19 18:04:37 -04:00
Lioncash 0059558efc CScene: Make use of in-class initializers 2020-06-19 03:44:19 -04:00
Lioncash ffbe857c2c CScanLoader: Make use of unsigned stream helpers 2020-06-19 03:41:41 -04:00
Lioncash 125da2d930 CScanCooking: Make use of unsigned stream helpers 2020-06-19 03:40:31 -04:00
Lioncash 61ec2f2e08 CResourceEntry: Make use of static qualifier
This function doesn't depend on instance state.
2020-06-19 03:38:02 -04:00
Lioncash 1e46717b57 CPropertyNameGenerator: Make use of in-class initializers
Same behavior, less code.
2020-06-19 03:32:25 -04:00
Lioncash 53881d1748 CPoiToWorldLoader: Make use of unsigned stream utilities 2020-06-19 03:30:42 -04:00
Lioncash be97a39778 CPoiToWorldCooker: Make use of unsigned stream utilities 2020-06-19 03:30:10 -04:00
Lioncash 5661d0263e CPoiToWorld: Make use of ranged for 2020-06-19 03:27:46 -04:00
Lioncash a6caff1387 CPoiToWorld: Make use of unique_ptr
Safer memory management.
2020-06-19 03:22:24 -04:00
Lioncash df29cc2109 CPackage: Make use of unsigned stream helpers where applicable 2020-06-19 03:13:41 -04:00
Lioncash 9a2580ad03 CModelNode: Make use of in-class initializers
Same behavior, less code.
2020-06-19 02:56:52 -04:00
Lioncash 73d010e6d1 CModelLoader: Make use of unsigned stream helpers where applicable
Same behavior without implicit sign conversions
2020-06-19 02:50:40 -04:00
Lioncash 80e4790384 CFontLoader: Make use of unsigned stream helpers
Same behavior, minus implicit sign conversions.
2020-06-19 02:44:46 -04:00
Lioncash b559df4e0a CDoorExtra: Tidying up
- Fix wonky formatting
- Apply const
2020-06-19 02:38:35 -04:00
Lioncash 0ec31eef71 CDependencyGroupLoader: Make use of unsigned stream helpers
Eliminates implicit sign conversions
2020-06-19 02:35:21 -04:00
Lioncash 3dd325f708 CDamageableTriggerExtra: Make use of unique_ptr
Safer lifetime management.
2020-06-19 00:28:25 -04:00
Lioncash 81560138c0 CDamageableTriggerExtra: add missing override specifier 2020-06-19 00:26:48 -04:00
Lioncash 75be364148 CDamageableTriggerExtra: Make use of std::array
Stronger typing.
2020-06-19 00:26:09 -04:00
Lioncash e875c2bf08 CCollisionLoader: Make use of unsigned helper functions where applicable
Same behavior minus several sign conversion warnings.
2020-06-19 00:19:44 -04:00
Lioncash bcc27ddd5c CAudioGroupLoader: Make use of unsigned stream helpers where applicable
Same behavior, minus implicit sign conversions.
2020-06-18 19:38:22 -04:00
Lioncash 59cfe6fc02 CAreaLoader: Make use of unsigned stream helpers
Same behavior, minus all the implicit sign conversions.
2020-06-18 19:35:11 -04:00
Lioncash d646b896e1 CAreaLoader: Make use of in-class initializers where applicable
Same behavior, less code.
2020-06-18 19:20:01 -04:00
Lioncash 4d4f1490b7 CAreaCooker: Make use of unsigned stream helpers where applicable
Same behavior minus numerous implicit sign conversions.
2020-06-18 19:16:51 -04:00
Lioncash cf0898792a CAnimSetLoader: Make use of unsigned stream helpers where applicable
Same behavior, minus all of the implicit sign conversions.
2020-06-18 19:08:37 -04:00
Lioncash 36e005844f CPackage: std::move strings in constructor where applicable
Allows calling code to completely avoid copies.
2020-06-18 18:47:23 -04:00
Lioncash bf9be7f2ad CGameProject: Mark vars as const where applicable 2020-06-18 18:45:45 -04:00
Lioncash 811447a387 CGameExporter: Mark ShouldExportDiscNode() as a const member function
This doesn't modify internal state.
2020-06-18 18:41:00 -04:00
Lioncash 2d1e6b9672 CGameExporter: Make use of unsigned stream helpers where applicable 2020-06-18 18:39:44 -04:00
Lioncash a603b3a4ef CMaterialLoader: Make use of unsigned stream helpers where applicable 2020-06-18 18:14:33 -04:00
Lioncash 4b20a8ad9f CMaterialCooker: Make use of unsigned write variants where applicable
Gets rid of a bunch of implicit sign conversion warnings.
2020-06-18 17:50:25 -04:00
Lioncash 4b980458ef CAnimationLoader: Make use of ranged for where applicable 2020-06-18 15:55:19 -04:00
Lioncash 87fac0896d CModelLoader: Eliminate some sign conversion warnings 2020-06-18 15:38:52 -04:00
Lioncash 80d5983229 CMaterialPass: Add another missing break for Mode 6 in SetAnimCurrent 2020-06-18 13:51:08 -04:00
Lioncash e65a2a7cc8 CMaterialPass: Add missing break for Mode 6 in SetAnimCurrent 2020-06-18 13:39:20 -04:00
Lioncash 1c0e7a3b1d CGameExporter: Make use of in-class initializers
Same behavior, less code.
2020-06-18 13:35:01 -04:00
Lioncash 7177295cbb CCamera: Make use of in-class initializers
Same behavior, less code.
2020-06-18 13:32:49 -04:00
Lioncash 46e5056ba7 CMaterial: Make use of in-class initializers
Same behavior, less code.
2020-06-18 13:28:25 -04:00
Lioncash b18accfa60 CFramebuffer: Make use of in-class initializers
Same behavior, less code.
2020-06-18 13:23:51 -04:00
Lioncash 3d74639bea CScriptTemplate: Fix debug print formatting in CheckVolumeConditions
Ensures that the proper type is passed in.
2020-06-18 13:17:30 -04:00
Lioncash e75ef00d1c CAreaLoader: Fix debug print formatting
Passes the correct type to the formatting specifier.
2020-06-18 13:15:42 -04:00
Lioncash 9d21516296 CWorldCooker: Prevent signed overflow in CookMLVL
Even if all 32 bits aren't used, this still eliminates a sign-conversion
warning from int to uint64.`
2020-06-18 13:13:26 -04:00
Lioncash 1d54df7185 CAnimSetLoader: Collapse emplace_back() and back() calls into one
emplace_back returns a reference to the emplaced element.
2020-06-18 12:47:37 -04:00
Lioncash 4f4ef28bb1 CUniformBuffer: Convert 0 literal into nullptr
Explicit typing.
2020-06-18 12:43:09 -04:00
Lioncash 82d47e82e9 CUniformBuffer: uint -> uint32 2020-06-18 12:42:34 -04:00
Lioncash db7614be95 CTweakData: uint -> uint32
Makes the assumption about having a 32-bit value explicit in the
class itself.
2020-06-18 12:40:53 -04:00
Lioncash 24bfee8528 DependencyListBuilders: Make use of ranged for where applicable 2020-06-18 12:19:43 -04:00
Lioncash a0ec0d938f GLCommon: Make use of std::array where applicable 2020-06-18 12:00:31 -04:00
Lioncash b781ca7b89 CPointOfInterestExtra: Convert 0 literal to nullptr 2020-06-18 08:03:54 -04:00
Lioncash 09de312ac3 CPoiToWorld: Make use of size_t where applicable
Plays nicer with standard containers.
2020-06-18 08:02:43 -04:00
Lioncash 709fcf18ae CPackage: Make use of size_t where applicable
Plays nicer with std containers.
2020-06-18 07:54:17 -04:00
Lioncash 59ef329c27 CPackage: Remove unnecessary qualifier in EPackageDefinitionVersion
Same thing, less code.
2020-06-18 07:50:08 -04:00
Lioncash bc05e9bd4b CResource: Make StaticType() constexpr
These only return enum values, so this can be trivially made constexpr
2020-06-18 07:35:08 -04:00
Lioncash 84e0d177d8 CSkeleton: Remove default constructor from SBoneTransformInfo
This is unnecessary given initializers are already provided.

This also makes the struct constexpr capable by default as well.
2020-06-18 07:31:07 -04:00
Lioncash 60d003df88 CSkeleton: Make BoneByName() use a string view
Same behavior, but without a mandatory allocating API.
2020-06-18 07:29:19 -04:00
Lioncash 671b8037b9 CSkeleton: Make NumBones() return a size_t
Consistent with the rest of the API.
2020-06-18 07:27:58 -04:00
Lioncash 132d452c88 CScriptObject: Mark IsEditorProperty() as const
This doesn't modify internal member state.
2020-06-18 07:23:10 -04:00
Lioncash 6f1d6a8649 CScriptObject: Make use of size_t where applicable
Plays with standard containers nicer.
2020-06-18 07:17:02 -04:00
Lioncash 0cda26b105 CScriptTemplate: Make use of size_t where applicable
Plays nicer with standard containers and eliminates implicit truncation
warnings.
2020-06-18 06:54:55 -04:00
Lioncash 3bd84d8c41 CScriptTemplate: Convert EAttachType into an enum class
Prevents polluting the global namespace.
2020-06-18 06:52:56 -04:00
Lioncash 31a1de9191 CScriptExtra: Eliminate sign conversion warnings 2020-06-18 06:50:17 -04:00
Lioncash 1b71d91ea7 CResourceStore: Make use of ranged for where applicable
Same behavior, less code.
2020-06-18 06:47:02 -04:00
Lioncash e9dd2c57a6 CResTypeInfo: Shorten std::sort call
We can remove unnecessary qualifiers to make this a little less verbose.
2020-06-18 06:35:18 -04:00
Lioncash 2b7c4941e5 CResTypeInfo: Make use of std::move in the constructor
Allows calling code to eliminate copies altogether from occurring.
2020-06-18 06:30:21 -04:00
Lioncash 8f70b20312 CResTypeInfo: Make use of ranged for where applicable
Same behavior, better readability
2020-06-18 06:28:00 -04:00
Lioncash a612751cb0 CResTypeInfo: Make use of in-class initializers where applicable
Same behavior, less code.
2020-06-18 06:19:08 -04:00
Lioncash b77f52bb0e CResTypeFilter: Make use of ranged for where applicable
We can also collapse a loop down into a std::any_of.
2020-06-18 06:14:50 -04:00
Lioncash 5ce6b972a0 CGameProject: Make use of size_t where applicable
Plays nicely with standard containers.
2020-06-18 06:14:26 -04:00
Lioncash 6a0a20e3fa CGameProject: Make use of std::move where applicable
Same behavior, but allows calling code to completely eliminate copies.
2020-06-18 05:30:29 -04:00
Lioncash bb9947fe0e CGameProject: Make use of std::string_view where applicable
Makes a few functions have non-allocating arguments
2020-06-18 05:29:52 -04:00
Lioncash 6d98e918ae CGameArea: Make use of size_t where applicable
Plays nicer with the standard library and avoids truncation warnings.
2020-06-18 05:16:46 -04:00
Lioncash 456530605f NGameList: Remove const qualifier
Fixes the build.
2020-06-18 04:52:35 -04:00
Lioncash e9df5625e6 CScriptLayer: std::move string in SetName()
Allows calling code to avoid copies.
2020-06-18 04:48:15 -04:00
Lioncash a55fafac22 CScriptLayer: Add const overload for operator[]
Behavioral symmetry.
2020-06-18 04:47:17 -04:00
Lioncash 2b7c322e59 CScriptLayer: Make use of prefix increment on iterators 2020-06-18 04:46:38 -04:00
Lioncash 363b19ebe6 CScriptLayer: Make use of explicit 2020-06-18 04:45:40 -04:00
Lioncash 26f847494e CDynamicVertexBuffer: Make use of std::array where applicable
Same behavior, but eliminates hardcoded sizes.
2020-06-18 04:42:57 -04:00
Lioncash 65482ba272 CCollisionMeshData: Make use of size_t where applicable
Plays nicer with standard types.
2020-06-18 04:37:20 -04:00
Lioncash ce97d79fa3 CBoneTransformData: Make use of size_t where applicable
Plays nicer with standard containers and prevents truncation warnings.
2020-06-18 04:30:57 -04:00
Lioncash cc04eee1b7 NGameList: Tidying up
Cleans up linkage and casts.
2020-06-18 04:20:41 -04:00
Lioncash a54bd900c0 NPropertyMap: Make use of ranged for where applicable
While we're at it, we can tidy up a few other things like linkage
2020-06-18 04:13:18 -04:00
Lioncash 6799e40ef5 IProperty: Make use of ranged for where applicable
Same behavior, less moving parts.
2020-06-17 17:54:57 -04:00
Lioncash e4feff9930 CTweakManager: Remove unnecessary inline specifier 2020-06-17 17:34:34 -04:00
Lioncash b2ad9cf13b CTweakData: Fix -Wreorder warnings 2020-06-17 04:32:14 -04:00
Lioncash 4a020d1d4a CSkin: Make use of ranged for where applicable
Same behavior, less code.
2020-06-17 04:27:54 -04:00
Lioncash 32dafc6bb8 CSkeleton: Make use of size_t where applicable
Prevents truncation warnings.
2020-06-17 04:24:49 -04:00
Lioncash 566a32fd75 General: Migrate off non-constexpr constants 2020-06-16 22:48:11 -04:00
Lioncash c8ebbc860b CMaterialSet: Collapse loop into find_if
Same behavior, explicit intent.
2020-06-16 18:45:52 -04:00
Lioncash 2d2210cd9e CMaterial: Make use of size_t for loops where applicable
Consistency.

While we're at it, remove an unused include.
2020-06-16 18:42:28 -04:00
Lioncash f44a5fc8d2 CShader: Mark several functions as const
These don't modify internal member state.
2020-06-16 18:33:01 -04:00
Lioncash a67df9865e CShader: Make use of unique_ptr where applicable
Prevents unsafe allocations by default.
2020-06-16 18:27:13 -04:00
Lioncash 4d34589816 CDrawUtil: Make use of std::array
While we're at it, we can make several arrays constexpr.
2020-06-16 18:04:10 -04:00
Lioncash 43596280c5 CVertexBuffer: Make use of size_t in Reserve() 2020-06-16 17:42:24 -04:00
Lioncash 3d1ced47e2 CVertex: Make use of std::array where applicable
Allows dehardcoding sizes and simplifies comparison code.
2020-06-16 17:17:20 -04:00
Lioncash a17d43a87d CVertexBuffer: Make use of size_t where applicable
Same behavior, less truncations.
2020-06-16 16:48:25 -04:00
Lioncash d081dd87cf CVertexBuffer: Make use of std::array
Same behavior, but without hardcoded array sizes.
2020-06-16 16:13:47 -04:00
Lioncash 09f5163184 CStringTable: Make use of size_t
Plays nicer with standard containers. While we're at it, we can use
std::move where applicable.
2020-06-16 15:17:23 -04:00
Lioncash f71ef1e615 CStringList: Make use of size_t
Prevents truncation warnings.
2020-06-16 14:25:07 -04:00
Lioncash c980df5188 CSourceAnimData: Make use of ranged for where applicable 2020-06-16 14:21:02 -04:00
Lioncash 84a42cd3c2 CWorld: Make use of size_t where applicable
Plays nicer with standard types and prevents type truncations.
2020-06-15 20:14:17 -04:00
Lioncash c9270b65ed CWorld: Make use of std::move in SetName()
Allows calling code to avoid copies.
2020-06-15 19:55:43 -04:00
Lioncash e18e73cca5 CBasicModel: Make use of size_t where applicable
Same behavior, but without some internal variable truncation.
2020-06-15 19:48:25 -04:00
Lioncash 4978bc9e5c CBasicModel: Make use of explicit 2020-06-15 19:32:44 -04:00
Lioncash fa883930db CAudioManager: Make use of ranged for 2020-06-15 19:28:34 -04:00
Lioncash 7a6c30861d CAreaAttributes: Make constructor explicit 2020-06-15 18:59:04 -04:00
Lioncash 9bcb2f288d CAnimationParameters: Provide operator!=
Provides logical symmetry.
2020-06-15 15:41:58 -04:00
Lioncash f498088bed CAnimationParameters: Default copy constructor and assignment operator
Same behavior, less code.
2020-06-15 15:36:33 -04:00
Lioncash 247fcd37a8 CAnimationParameters: Remove unnecessary inline specifiers 2020-06-15 15:34:57 -04:00
LC d0a32518cd
Merge pull request #21 from lioncash/anim
CAnimationParameters: Add missing break in switch cases in SetUnknown()
2020-06-15 15:33:31 -04:00
Lioncash 7ba5a0cc58 CSceneNode: Convert 0 literal to nullptr 2020-06-15 15:31:12 -04:00
Lioncash 77248960f8 CModel: Simplify InternalGetIBO() a little
We can use the result of the emplace_back directly.
2020-06-15 14:55:50 -04:00
Lioncash 79f7b62960 CMaterialSet/CModel: Make use of size_t where applicable
Prevents type truncation warnings internally and also provides slightly
better code-gen, given the upper half of 64-bit registers don't need to
be constantly cleared.
2020-06-15 14:49:38 -04:00
Lioncash 6edea6a225 CMaterialSet: Make Clone() return a unique_ptr
Makes the returned pointer leak-free by default.
2020-06-15 14:12:06 -04:00
Lioncash 95f6c3360d CMaterialPass: Make use of size_t where applicable
Plays nicer with standard types.
2020-06-15 14:08:36 -04:00
Lioncash b90bd90e03 CMaterial: std::move string in SetName()
Allows callers to avoid copies.
2020-06-15 14:02:59 -04:00
Lioncash e7b3015f08 CMaterial: Make use of size_t where applicable
Prevents truncation warnings from occurring.
2020-06-15 14:02:55 -04:00
Lioncash 5b96480a45 CMaterial: Simplify Clone() a little
Given we use std::array now, we can perform a direct assignment instead
of a loop.
2020-06-15 13:55:22 -04:00
Lioncash 28587fb622 CSceneNode: std::move string in SetName()
Allows for calling code to completely avoid copies being made.
2020-06-15 13:48:57 -04:00
Lioncash e962d9ba96 CLight: Correct lack of assignment in SetSpotCutoff()
Brought this up with Antidote and was told that this is likely what was
intended to be done.
2020-06-14 20:16:54 -04:00
Lioncash 9e3018809f CWorld: Eliminate sign conversion warnings 2020-06-14 19:48:23 -04:00
Lioncash 35ea47e473 CWorld: Make use of in-class initializers
Same behavior, less code.
2020-06-14 19:47:05 -04:00
Lioncash 128ee0d01c CMaterialLoader: Make use of static
This function doesn't touch instance state at all
2020-06-14 19:43:43 -04:00
Lioncash cc376d3e21 CMaterialLoader: Make use of std::array 2020-06-14 19:41:42 -04:00
Lioncash 903f6dfe7e CGameArea: Make use of in-class initializers where applicable
Same behavior, less code.
2020-06-14 19:27:54 -04:00
Lioncash 2c274897c9 CLightParameters: Make EWorldLightingOptions an enum class
Avoids polluting the global namespace.
2020-06-14 19:21:30 -04:00
Lioncash cec88d182b CLightNode: Mark member functions as const where applicable
Several functions don't modify internal member state.
2020-06-14 19:13:35 -04:00
Lioncash f2201ca03c CLight: Make CalculateSpotAngleAtten() const
This member function doesn't modify internal member state.
2020-06-14 19:05:29 -04:00
Lioncash b439e4bba1 CLight: Make use of in-class initializers where applicable
Same behavior, less code.
2020-06-14 19:03:32 -04:00
Lioncash f942ad6551 CGameTemplate: Mark getter functions as const
These don't modify internal class state, so we can mark them as const.
2020-06-14 18:58:05 -04:00
Lioncash 15708b8624 CGameTemplate: Collapse loops into ranged for where applicable 2020-06-14 18:49:37 -04:00
Lioncash d9bb255518 CGameTemplate: Use in-class initializers where applicable
Same behavior, less code.
2020-06-14 18:35:10 -04:00
Lioncash 332be356de CIndexBuffer: Make use of size_t where applicable
Provides a nicer interface for operating with standard types, etc.
2020-06-14 18:29:39 -04:00
Lioncash d4564434c3 FShowFlags: Remove use of cpp file
Now that these constructs are constexpr capable, we can make use of
constexpr here to contain it fully within the header.
2020-06-14 17:12:37 -04:00
Lioncash b2db6a21fa CFlagsProperty: Mark HasValidValue() as const
This doesn't modify internal state.
2020-06-14 17:07:47 -04:00
Lioncash d5a33b631a CFlagsProperty: Make use of a ranged for loop 2020-06-14 17:06:46 -04:00
Lioncash 84184da66d CFont: Prevent Wmaybe-uninitialized warning 2020-06-14 17:04:35 -04:00
Lioncash 4861f118fb CFont: Make PtsToFloat() internally linked
This is only ever used within the cpp file
2020-06-14 17:04:35 -04:00
Lioncash 1c292f5e2d CFont: Make use of std::array
Same behavior, stronger typing.
2020-06-14 17:04:32 -04:00
Lioncash b6b7bcace1 CFont: In-class initialize members where applicable
Provides a consistent initial state.
2020-06-14 16:54:16 -04:00
Lioncash 01e68ec5d8 CFontLoader: Default constructor 2020-06-14 16:51:13 -04:00
Lioncash e49315a645 CSkeleton: Make use of unique_ptr where applicable
Makes ownership semantics explicit.
2020-06-14 16:49:51 -04:00
Lioncash 4dcb539763 CSkeletonLoader: Make use of ranged for where applicable
Same behavior, less code.
2020-06-14 16:13:28 -04:00
Lioncash 6909c75d64 CTextureDecoder: Misc cleanup
Const correctness, unimplemented prototypes, reducing copies, etc.
2020-06-14 16:07:43 -04:00
Lioncash 68455c54e8 CTextureDecoder: Make utility functions internally linked
Same behavior, but keeps implementation details internal.
2020-06-14 15:41:32 -04:00
Lioncash f0cd6ee99b CStructProperty: Make use of ranged for 2020-06-12 17:25:06 -04:00
Lioncash 7b40eec19c CScriptObject: Collapse for loops into ranged for loops
While we're at it, eliminate sign conversion warnings.
2020-06-12 17:12:37 -04:00
Lioncash 5c42bcc580 CLink: Resolve sign conversion warnings 2020-06-12 16:46:49 -04:00
Lioncash 38d245b460 CLink: Make constructor explicit 2020-06-12 16:45:33 -04:00
Lioncash f5e9254c9a CIndexBuffer: Make use of in-class initializers where applicable 2020-06-12 16:43:54 -04:00
Lioncash 721c4d8121 CIndexBuffer: Make constructor explicit
Prevents implicit constructions.
2020-06-12 16:41:47 -04:00
Lioncash ece0aec27a CGraphics: Make use of std::array 2020-06-12 16:36:34 -04:00
Lioncash bf9233779a CGraphics: Make skDefaultAmbientColor constexpr
Same behavior, no runtime initializer.
2020-06-12 16:19:59 -04:00
Lioncash e8a20933de CVirtualDirectory: Resolve -Wreorder warnings 2020-06-12 16:09:20 -04:00
Lioncash 1ae5462cd7 CGameProject: Make use of unique_ptr where applicable
Makes the ownership semantics explicit.
2020-06-12 16:07:04 -04:00
Lioncash 1bdcdb85de CResourceStore: Use unique_ptr where applicable
Makes the ownership semantics explicit and prevents leaks from occurring
a little better.
2020-06-12 14:43:39 -04:00
Lioncash 137b2395c9 CResourceStore: Use in-class initializers where applicable 2020-06-12 14:11:57 -04:00
Lioncash 7da16efe9d CDependencyTree: Make use of unique_ptr
Makes the ownership semantics explicit in the interface.
2020-06-12 14:09:08 -04:00
Lioncash e2190793fd CDependencyTree: Tidying up
- Convert for loops to ranged for loops.
- Collapse loop into an any_of.
2020-06-12 13:37:54 -04:00
Lioncash 7d4ce7e909 CDependencyGroupLoader: Default constructor 2020-06-12 13:26:39 -04:00
LC 10cbcd4024
Merge pull request #31 from lioncash/properties
Property: Make use of override where applicable
2020-06-12 13:17:05 -04:00
Lioncash c020084587 CCollisionMaterial: Make use of std::array
Allows simplifying some size calculations.
2020-06-12 13:14:39 -04:00
Lioncash a51604ca91 CCollisionMeshGroup: Make use of unique_ptr 2020-06-12 13:08:48 -04:00
Lioncash 48d8d361b6 CCollisionLoader: Collapse for loop into ranged for pt. 2 2020-06-12 12:57:18 -04:00
Lioncash 3b3b2cc80f CCollisionLoader: Collapse for loop into ranged for
Also removes a delete left behind in an error case.
2020-06-12 12:52:28 -04:00
Lioncash 3449f60317 CCollisionLoader: Make use of unique_ptr more
Same behavior, but makes the allocation ownership explicit
2020-06-12 12:50:19 -04:00
Lioncash d43f2dab31 CAudioGroupLoader: Default constructor 2020-06-12 12:44:27 -04:00
Lioncash 9e2a8bd693 CAnimationLoader: Make use of std::array
Prevents implicit array to pointer decay.
2020-06-12 12:43:09 -04:00
Lioncash 12ccb2fbd4 CGameArea: Simplify allocation handling
Eliminates manual new/delete and also makes the lifecycle of allocations
enforced within the interface.
2020-06-12 12:38:54 -04:00
Lioncash 674ae65e56 CAnimSetLoader: Collapse for loops into ranged for loops 2020-06-12 11:28:05 -04:00
Lioncash 9921ccfe25 IMetaTransition: Always initialize CMetaTransTrans members
Always provides a deterministic initial state.
2020-06-12 10:47:22 -04:00
Lioncash eabc789910 CAnimSet: Simplify allocation code
We can make use of std::unique_ptr to prevent any potential memory leaks
from occurring and simplifying the destruction code.
2020-06-12 10:43:29 -04:00
Lioncash 4eb1027362 CAnimSet: Collapse loops into ranged for where applicable 2020-06-12 10:03:02 -04:00
Lioncash 2a5ab1ed32 CAnimEventLoader: Use unique_ptr more
Makes memory handling a little more robust.
2020-06-11 21:10:02 -04:00
Lioncash ecbd3eb83d CAnimEventLoader: Default destructor
Allows the constructor to be considered trivial.
2020-06-11 21:00:08 -04:00
Lioncash 114742fc37 CCamera: Resolve -Wreorder warnings 2020-06-11 20:58:59 -04:00
Lioncash 6f0c8669de CCollisionLoader: Formatting 2020-06-11 20:53:11 -04:00
Lioncash d0bd7eb292 CCollisionLoader: Make LoadAreaCollision() return a unique_ptr
Same behavior, less boilerplate
2020-06-11 20:46:39 -04:00
Lioncash 907f1270bd CResourceFactory: Make use of unique_ptr
Makes the API more memory safe
2020-06-11 20:22:21 -04:00
Lioncash ce315280c3 CResource: Make BuildDependencyTree() return a unique_ptr
Makes the functions more memory safe in terms of freeing memory in
exceptional paths .
2020-06-11 18:39:07 -04:00
Lioncash eb8ca98a8a CAnimEventData: Collapse for loop into a ranged for loop 2020-06-11 18:02:52 -04:00
Lioncash 044efcf59d CAnimEventData: Remove unnecessary inline specifiers 2020-06-11 18:01:18 -04:00
Lioncash aeea0f8052 CMaterialPass: Make use of std::array 2020-06-11 17:50:40 -04:00
Lioncash 7b81aa5268 CMaterialPass: Simplify initialization code 2020-06-11 17:41:54 -04:00
Lioncash 92811a9309 CShader: Simplify initialization 2020-06-11 17:34:52 -04:00
Lioncash b8078e7419 CShaderGenerator: Fix compiler warning
MSVC desires the namespace version
2020-06-11 15:55:06 -04:00
Lioncash 012da6fb6d General: Remove unnecessary inline specifiers and add overrides 2020-06-11 15:49:42 -04:00
Lioncash 2d76c5865a CCharacterNode: Add missing override specifiers 2020-06-11 13:44:20 -04:00
Lioncash 060101c718 CCharacterNode: Remove unnecessary inline specifiers
Functions defined in class declarations are implicitly inline
2020-06-11 13:43:19 -04:00
Lioncash 100453b356 CCamera: Remove unnecessary inline specifiers
Functions defined within a class declaration are inline by default.
2020-06-11 13:41:33 -04:00
Lioncash 53b257fb8a CBoneTransformData: Remove unnecessary inline keywords
Functions defined within the class declaration are inline by default.
2020-06-11 13:40:00 -04:00
Lioncash 9ec61de2ca CAudioManager: Make LogSoundInfo() a const member function
This function doesn't modify internal state.
2020-06-11 13:38:00 -04:00
Lioncash 872c38b384 CAudioManager: Make GetSoundInfo() a const member function
This doesn't modify internal member state.
2020-06-11 13:35:38 -04:00
Lioncash 9692a064cd CAudioManager: Make constructor explicit
Prevents potentially error-prone constructions from occurring
2020-06-11 13:34:17 -04:00
Lioncash 7f881b1b10 CAudioMacro: Make use of ranged for where applicable
Same behavior, less moving parts.
2020-06-11 13:32:29 -04:00
Lioncash f9031283d0 CAudioMacro: Add missing override specifier 2020-06-11 13:31:40 -04:00
Lioncash 416608a76a CAudioMacro: Remove unnecessary inline specifiers
Functions defined within a class declaration are already inline by
default.
2020-06-11 13:31:00 -04:00
Lioncash edaafd4bcf CAudioMacro: Make constructor explicit
Prevents implicit error-prone constructions from occurring.
2020-06-11 13:30:07 -04:00
Lioncash e95cb1117a CAudioLookupTable: Include used headers 2020-06-11 13:28:11 -04:00
Lioncash 1b4ebd5f7b CAudioLookupTable: Make FindSoundDefineID() const
This doesn't mutate any contained state, so it can be const.
2020-06-11 13:26:32 -04:00
Lioncash a82f9c197b CAudioLookupTable: Make use of explicit constructors
Prevents implicit constructions
2020-06-11 13:25:19 -04:00
Lioncash d223bac56a CAudioGroup: Make use of in-class initializers 2020-06-11 13:23:50 -04:00
Lioncash 7ce0e14e29 CAssetNameMap: Eliminate file-scope string allocations 2020-06-11 13:21:33 -04:00
Lioncash 9925925b6f TResPtr: Use in-class initializers where applicable 2020-06-11 13:14:33 -04:00
Lioncash 11f156352a CAnimSetLoader: Default constructor 2020-06-11 13:11:38 -04:00
Lioncash 61a6151afe externals: Update LibCommon 2020-06-11 11:10:04 -04:00
LC b5ddc20771
Merge pull request #26 from lioncash/scene
CSceneNode: Minor cleanup
2020-06-11 10:53:51 -04:00
LC 1fb554fa4c
Merge pull request #24 from lioncash/cook
CAreaCooker: Minor cleanup
2020-06-11 10:53:17 -04:00
LC 8babcc13bb
Merge pull request #22 from lioncash/anim2
CAnimation: Minor clean up
2020-06-11 10:52:59 -04:00
LC 9c2b7e4c95
Merge pull request #23 from lioncash/iter
CResourceIterator: Cleanup and undefined behavior prevention
2020-06-11 10:52:41 -04:00
LC d7b6ab81ea
Merge pull request #27 from lioncash/gen
CShaderGenerator: Make file-scope arrays non-allocating
2020-06-11 10:52:19 -04:00
LC 80ccc32e68
Merge pull request #29 from lioncash/viewport
CBasicViewport: Make member functions const where applicable
2020-06-11 10:51:53 -04:00
LC 919dcfd8d9
Merge pull request #28 from lioncash/table
CStringTable: Eliminate file-scope allocations
2020-06-11 10:51:34 -04:00
LC 4f289193bb
Merge pull request #32 from lioncash/str
CGameInfo: Make file-scope strings non-allocating
2020-06-11 10:51:20 -04:00
LC 156c92909e
Merge pull request #33 from lioncash/index
CIndexBuffer: Mark member functions as const where applicable
2020-06-11 10:50:52 -04:00
Lioncash 76ec0df8a2 externals: Update LibCommon 2020-06-11 10:49:37 -04:00
Lioncash c929293789 CIndexBuffer: Mark member functions as const where applicable
These member functions don't alter internal state, so we can mark them
as const.
2020-06-10 19:33:50 -04:00
Lioncash 7da0cdb8a3 CGameInfo: Make file-scope strings non-allocating
Same behavior, minus any potential heap allocations and static
constructors.
2020-06-10 18:04:40 -04:00
Lioncash 96876b70e0 Property: Make use of override where applicable
Makes the API strongly enforced. This also fixes a bug in CBoolProperty,
where ValueAsString() had an incorrect signature (was missing a const).
2020-06-10 09:19:12 -04:00
Lioncash 01372f7049 CBasicViewport: Make member functions const where applicable
These don't modify member state. While we're at it, we can mark
functions as override where applicable.
2020-06-10 01:47:51 -04:00
Lioncash 583472f2f9 CStringTable: Eliminate file-scope allocations
Eliminates all runtime static initializers, reducing the heap usage of
the application lifetime just a little bit.
2020-06-10 01:06:46 -04:00
Lioncash ef0030872a CShaderGenerator: default constructor and destructor 2020-06-10 00:55:12 -04:00
Lioncash e75c077bda CShaderGenerator: Make file-scope arrays non-allocating
We can make these plain views to eliminate any potential static runtime
constructors.
2020-06-10 00:55:08 -04:00
Lioncash c285207f24 CSceneNode: Collapse loops into ranged for loops
Where applicable, we can simplify some loops a little bit, migrating off
the slightly more verbose iterator means of traversing standard
containers.
2020-06-09 23:07:47 -04:00
Lioncash 3d4f2d60eb CSceneNode: Make use of std::array
Same behavior, stronger typing.
2020-06-09 22:57:44 -04:00
Lioncash 7065005c30 CSceneNode: Make use of override
Same behavior, stronger enforcement of API.
2020-06-09 22:56:38 -04:00
Lioncash d3315bf84f CSceneNode: Make use of in-class initializers
Same behavior, less code.
2020-06-09 22:55:25 -04:00
Lioncash 03f1aba7e8 CAreaCooker: Collapse for loops into ranged for where applicable
Same behavior, less code.
2020-06-09 07:56:56 -04:00
Lioncash f727c07d13 CAreaCooker: Make use of in-class initializers where applicable
Simplifies the construction code.
2020-06-09 07:42:51 -04:00
Lioncash 0eef99f72e CResourceIterator: Provide a virtual destructor
Prevents any potential undefined behavior from occurring from deleting a
derived type from a base class pointer.
2020-06-09 05:14:15 -04:00
Lioncash 621367e120 CResourceIterator: Make use of override where applicable
Same behavior, but enforces the interface.
2020-06-09 05:11:08 -04:00
Lioncash 65cc3a0d89 CResourceIterator: Use prefix form for iterators
Same behavior, minus any created temporaries.
2020-06-09 05:10:09 -04:00
Lioncash e2209106fb CResourceIterator: Remove unnecessary inline specifiers 2020-06-09 05:09:31 -04:00
Lioncash 0c784aa305 CAnimation: Make use of std::array
Same behavior, but more strongly typed.
2020-06-09 04:21:45 -04:00
Lioncash 9f63991a0a CAnimation: Mark BuildDependencyTree() as overwritten
Same behavior, but enforces the interface.
2020-06-09 04:21:45 -04:00
Lioncash a4f45aeb2d CAnimation: Remove unnecessary inline specifiers
Same behavior, less writing. Functions defined in a class declaration
are already implicitly inline.
2020-06-09 04:21:45 -04:00
Lioncash f233af5de4 CAnimation: Convert typedefs into using aliases
Same behavior, nicer readability
2020-06-09 04:21:45 -04:00