summaryrefslogtreecommitdiffstats
path: root/src/core/tracer/recorder.h
diff options
context:
space:
mode:
authorTony Wasserka <NeoBrainX@gmail.com>2015-07-12 03:20:19 +0200
committerTony Wasserka <NeoBrainX@gmail.com>2015-07-13 22:27:21 +0200
commit29abb11e8fbb6a78edf84496979ef946bf4e45a7 (patch)
tree9359e9b88f0147879c672638d8c02960d2179d3a /src/core/tracer/recorder.h
parentCiTrace: Record LCD registers. Cleanup recording code. (diff)
downloadyuzu-29abb11e8fbb6a78edf84496979ef946bf4e45a7.tar
yuzu-29abb11e8fbb6a78edf84496979ef946bf4e45a7.tar.gz
yuzu-29abb11e8fbb6a78edf84496979ef946bf4e45a7.tar.bz2
yuzu-29abb11e8fbb6a78edf84496979ef946bf4e45a7.tar.lz
yuzu-29abb11e8fbb6a78edf84496979ef946bf4e45a7.tar.xz
yuzu-29abb11e8fbb6a78edf84496979ef946bf4e45a7.tar.zst
yuzu-29abb11e8fbb6a78edf84496979ef946bf4e45a7.zip
Diffstat (limited to '')
-rw-r--r--src/core/tracer/recorder.h35
1 files changed, 15 insertions, 20 deletions
diff --git a/src/core/tracer/recorder.h b/src/core/tracer/recorder.h
index da77aac56..6e4b70015 100644
--- a/src/core/tracer/recorder.h
+++ b/src/core/tracer/recorder.h
@@ -17,21 +17,25 @@ namespace CiTrace {
class Recorder {
public:
+ struct InitialState {
+ std::vector<u32> gpu_registers;
+ std::vector<u32> lcd_registers;
+ std::vector<u32> pica_registers;
+ std::vector<u32> default_attributes;
+ std::vector<u32> vs_program_binary;
+ std::vector<u32> vs_swizzle_data;
+ std::vector<u32> vs_float_uniforms;
+ std::vector<u32> gs_program_binary;
+ std::vector<u32> gs_swizzle_data;
+ std::vector<u32> gs_float_uniforms;
+ };
+
/**
* Recorder constructor
* @param default_attributes Pointer to an array of 32-bit-aligned 24-bit floating point values.
* @param vs_float_uniforms Pointer to an array of 32-bit-aligned 24-bit floating point values.
*/
- Recorder(u32* gpu_registers, u32 gpu_registers_size,
- u32* lcd_registers, u32 lcd_registers_size,
- u32* pica_registers, u32 pica_registers_size,
- u32* default_attributes, u32 default_attributes_size,
- u32* vs_program_binary, u32 vs_program_binary_size,
- u32* vs_swizzle_data, u32 vs_swizzle_data_size,
- u32* vs_float_uniforms, u32 vs_float_uniforms_size,
- u32* gs_program_binary, u32 gs_program_binary_size,
- u32* gs_swizzle_data, u32 gs_swizzle_data_size,
- u32* gs_float_uniforms, u32 gs_float_uniforms_size);
+ Recorder(const InitialState& initial_state);
/// Finish recording of this Citrace and save it using the given filename.
void Finish(const std::string& filename);
@@ -55,16 +59,7 @@ public:
private:
// Initial state of recording start
- std::vector<u32> gpu_registers;
- std::vector<u32> lcd_registers;
- std::vector<u32> pica_registers;
- std::vector<u32> default_attributes;
- std::vector<u32> vs_program_binary;
- std::vector<u32> vs_swizzle_data;
- std::vector<u32> vs_float_uniforms;
- std::vector<u32> gs_program_binary;
- std::vector<u32> gs_swizzle_data;
- std::vector<u32> gs_float_uniforms;
+ InitialState initial_state;
// Command stream
struct StreamElement {