mirror of
https://github.com/hch12907/orbum.git
synced 2024-05-20 05:00:48 -04:00
38 lines
844 B
C++
38 lines
844 B
C++
#pragma once
|
|
|
|
#include <cereal/cereal.hpp>
|
|
|
|
#include "Common/Constants.hpp"
|
|
#include "Resources/Iop/Timers/IopTimersUnits.hpp"
|
|
|
|
/// IOP timers.
|
|
class RIopTimers
|
|
{
|
|
public:
|
|
RIopTimers();
|
|
|
|
/// Contains 16-bit (0 -> 2) and 32-bit (3 -> 5) timers.
|
|
IopTimersUnit_Base unit_0;
|
|
IopTimersUnit_Base unit_1;
|
|
IopTimersUnit_Base unit_2;
|
|
IopTimersUnit_Base unit_3;
|
|
IopTimersUnit_Base unit_4;
|
|
IopTimersUnit_Base unit_5;
|
|
|
|
/// Timer abstractions.
|
|
IopTimersUnit_Base* units[Constants::IOP::Timers::NUMBER_TIMERS];
|
|
|
|
public:
|
|
template<class Archive>
|
|
void serialize(Archive & archive)
|
|
{
|
|
archive(
|
|
CEREAL_NVP(unit_0),
|
|
CEREAL_NVP(unit_1),
|
|
CEREAL_NVP(unit_2),
|
|
CEREAL_NVP(unit_3),
|
|
CEREAL_NVP(unit_4),
|
|
CEREAL_NVP(unit_5)
|
|
);
|
|
}
|
|
}; |