#ifndef INC_6502_EMULATOR_REGISTER_MANAGER_H #define INC_6502_EMULATOR_REGISTER_MANAGER_H #include "register.h" #include "status-register.h" #include using namespace std; class RegisterManager { public: explicit RegisterManager(); shared_ptr> get_accumulator(); shared_ptr> get_x_index(); shared_ptr> get_y_index(); shared_ptr> get_stack_pointer(); shared_ptr get_status_register(); shared_ptr> get_program_counter(); private: shared_ptr> accumulator; shared_ptr> x_index; shared_ptr> y_index; shared_ptr> stack_pointer; shared_ptr status_register; shared_ptr> program_counter; }; #endif //INC_6502_EMULATOR_REGISTER_MANAGER_H