Commit Graph

889 Commits

Author SHA1 Message Date
Lioncash 794a680797 IWindow: Use std::array where applicable
Allows for more flexible copying/manipulation within using code. While
we're at it, we can make the interface of SWindowRect and SScrollData
constexpr, given they only manipulate primitives.
2019-09-09 21:32:15 -04:00
Lioncash f2ab814ce1 System: Implement False() in terms of True()
This is just a negation, so we can do this to place the logic in one
spot.
2019-09-09 21:02:32 -04:00
Lioncash 660df8f7e6 System: Make enum functions noexcept
Allows them to be used within noexcept contexts
2019-09-09 21:00:43 -04:00
Phillip Stephens 4f4250baf7
Update athena 2019-09-06 23:30:04 -07:00
Phillip Stephens a46858acec
Merge pull request #38 from lioncash/cast
NintendoPowerA: Use std::memcpy within transferCycle()
2019-09-06 23:24:56 -07:00
Phillip Stephens 82f3dd2b58
Merge pull request #37 from lioncash/deprecated
ApplicationWin32/WindowWin32: Get/SetWindowLong -> Get/SetWindowLongPtr
2019-09-06 23:24:07 -07:00
Phillip Stephens 85bdc694bf
Merge pull request #36 from lioncash/array
DolphinSmashAdapter: Make use of std::array where applicable
2019-09-06 23:23:08 -07:00
Lioncash f445df1701 NintendoPowerA: Use std::memcpy within transferCycle()
Eliminates undefined behavior within the function.
2019-09-06 07:30:13 -04:00
Lioncash 4b82c6510f NintendoPowerA: Use std::array where applicable 2019-09-06 07:28:10 -04:00
Lioncash 2e0c7dc973 NintendoPowerA: Use deduction guides for locks
Same behavior, but without the need to explicitly hardcode the mutex
type.
2019-09-06 07:26:05 -04:00
Lioncash 7496109ff6 NintendoPowerA: Make constructor explicit
While we're at it we can also ensure that all class members have
deterministic initial state.
2019-09-06 07:24:17 -04:00
Lioncash bfd042f156 ApplicationWin32/WindowWin32: Get/SetWindowLong -> Get/SetWindowLongPtr
Get/SetWindowLong is superseded on 64-bit Windows platform with
Get/SetWindowLongPtr. These are trivial to migrate over and have been
available since Windows 2000 Professional, so there's no need to worry
about breaking meaningful platform support
2019-09-06 07:13:27 -04:00
Lioncash b5c0c9e599 DolphinSmashAdapter: Make use of [[maybe_unused]] 2019-09-06 06:41:03 -04:00
Lioncash 475037f0e5 DolphinSmashAdapter: Use std::array where applicable 2019-09-06 06:35:27 -04:00
Jack Andersen 9b8ef4695f Add missing override keywords 2019-08-31 11:20:30 -10:00
Jack Andersen c642bccf03 Merge branch 'master' of ssh://git.axiodl.com:6431/AxioDL/boo 2019-08-31 10:34:11 -10:00
Jack Andersen 804ee871f4 MacOS build fixes 2019-08-31 10:12:12 -10:00
Phillip Stephens bebc4072d7
Update logvisor 2019-08-26 15:57:55 -07:00
Phillip Stephens 6fc01ba50b
Merge pull request #35 from lioncash/audio
IAudioVoice: Make ChannelMap's array a std::array
2019-08-24 20:46:23 -07:00
Phillip Stephens efbb2f96ec
Merge pull request #34 from lioncash/ltrt
LtRtProcessing: Make use of if constexpr in ClampFull()
2019-08-24 20:46:08 -07:00
Phillip Stephens b9971502a5
Merge pull request #33 from lioncash/midi-dec
MIDIDecoder: Make readContinuedValue internal + other cleanups
2019-08-24 20:45:57 -07:00
Lioncash 606839dd17 IAudioVoice: Make ChannelMap's array a std::array
Same thing, but more strongly typed.
2019-08-24 23:16:57 -04:00
Lioncash 097df47641 LtRtProcessing: Amend code formatting in if'd out code block 2019-08-24 23:13:01 -04:00
Lioncash f4fafbcb26 LtRtProcessing: Simplify allocations in LtRtProcessing constructor
We can use std::make_unique, which provides the same behavior as zeroing
out the buffer. Now we can remove the use of memset here.
2019-08-24 23:13:01 -04:00
Lioncash f8e827fcd4 LtRtProcessing: Make use of if constexpr in ClampFull()
This is a condition known at compile-time, so we can turn it into an
if-constexpr statement. We can also make use of std::clamp in this
scenario.
2019-08-24 23:12:56 -04:00
Lioncash 93045d5264 LtRtProcessing: Make ClampFull() internally linked
inline provides external linkage instead of internal linkage which is
more desirable here. We can enclose it within an anonymous namespace to
make it internally linked.
2019-08-24 22:58:14 -04:00
Lioncash 068ff29b44 MIDIDecoder: Use auto for iterator type
Same thing, significantly less reading.
2019-08-24 22:49:16 -04:00
Lioncash e7fe7ff49f MIDIDecoder: Make use of std::clamp() within clamp7()
We can simplify the implementation of clamp7() with the use of
std::clamp().
2019-08-24 22:47:09 -04:00
Lioncash e48a094198 MIDIDecoder: Convert return value of readContinuedValue into a std::optional
Rather than use an out reference, we can convert the return value into a
std::optional, combining the out reference and boolean return value into
one.
2019-08-24 22:44:33 -04:00
Phillip Stephens 7c5a9ab4df
Merge pull request #32 from lioncash/midi
MIDIEncoder: Make _sendMessage overload for the ContiguousContainer concept
2019-08-24 19:43:54 -07:00
Lioncash 64fbb923ca MIDIDecoder: Make readContinuedValue an internal function
This doesn't rely on any member state, so it can be decoupled from the
interface entirely.
2019-08-24 22:39:13 -04:00
Lioncash 890ac24068 MIDIEncoder: Make use of _sendMessage overload 2019-08-24 22:26:20 -04:00
Lioncash 0eb9f2caeb MIDIEncoder: Make _sendMessage overload for the ContiguousContainer concept
We can utilize the std::data and std::size utility functions to support
passthrough-ing data for any container that satisfies the
ContiguousContainer concept, which would be either std::array,
std::string, or std::vector.

This way we can utilize std::array internally without exposing the
inclusion within the header.
2019-08-24 21:50:08 -04:00
Phillip Stephens 4d1c7d444d
Merge pull request #31 from lioncash/hid
HIDParser: Use std::array where applicable
2019-08-24 18:06:10 -07:00
Lioncash a3a9b1ada7 HIDParser: Use emplace() instead of insert()
Same thing, but shorter.
2019-08-24 20:58:56 -04:00
Phillip Stephens eacb231fb8 Deprecate OpenGL 2019-08-24 17:57:39 -07:00
Lioncash c8bebc9948 HIDParser: Eliminate variable shadowing
We can rename some locals to avoid shadowing other variables.
2019-08-24 20:55:52 -04:00
Lioncash 14369a9853 HIDParser: Use std::array where applicable
Same thing, but strongly enforces the type of the array. This also
allows removing the <type_traits> include, since we can just query the
size of the array.
2019-08-24 20:51:46 -04:00
Phillip Stephens 37ee1895ee
Merge pull request #30 from lioncash/move
IGraphicsDataFactory: std::move vertex and fragment tokens in newShaderPipeline
2019-08-24 17:32:59 -07:00
Phillip Stephens 6648f9f17c
Merge pull request #29 from lioncash/gl
GL: Use std::array where applicable
2019-08-24 17:32:49 -07:00
Phillip Stephens 6a62f96ea8
Merge pull request #28 from lioncash/array
D3D11: Make use of std::array where applicable
2019-08-24 17:32:04 -07:00
Lioncash bda59575b7 IGraphicsDataFactory: std::move vertex and fragment tokens in newShaderPipeline
Forwards the passed in tokens to the implementing function without an
unnecessary atomic reference count increment and decrement.
2019-08-24 20:21:28 -04:00
Lioncash ab65983750 GL: std::move vertex and fragment instances in SetupGammaResources()
Avoids an atomic reference count increment and decrement.
2019-08-24 20:16:04 -04:00
Lioncash c0c353f56b GL: Avoid casting away const
Resolves some -Wcast-qual warnings.
2019-08-24 20:13:57 -04:00
Lioncash 63c89a0bbf GL: Use return value of emplace_back()
emplace_back() returns a reference to the emplaced element, so we can
just make use of it instead of repeatedly querying back().
2019-08-24 20:07:49 -04:00
Lioncash e3b44edd51 GL: Use std::array where applicable 2019-08-24 19:53:23 -04:00
Lioncash 07835b58fb GL: Make const char* pointers arrays
Same behavior, but only stores the string data within the executable as
opposed to the data and a pointer to it. Also makes for less reading.
2019-08-24 19:02:13 -04:00
Lioncash 8642d71e89 D3D11: Convert const char* pointers to arrays
Reduces binary size a little, as only the string data will be stored in
the executable and not a pointer to accompany it as well.

A trivial change that's essentially "free".
2019-08-24 18:58:50 -04:00
Lioncash 4605581d6f D3D11: Invert conditional within setViewport()
Performs the same thing as the previous change, but applies it to
setViewport() instead. This also allows unindenting all code within the
function by one level.
2019-08-24 18:55:56 -04:00
Lioncash 532e58414c D3D11: Invert conditional within setScissor()
Turns the condition into a guard clause, which allows unindenting all of
the code within the function by one level.
2019-08-24 18:55:56 -04:00