spo/ass2/headers/cpu.h
2025-12-10 18:28:54 +01:00

25 lines
544 B
C++

#pragma once
#include "machine.h"
#include <atomic>
#include <thread>
#include <chrono>
class cpu {
private:
std::atomic<bool> running;
std::thread nitUre;
int hitrostKhz;
int operacijeNaTick;
machine *m;
public:
cpu(machine *m) : running(false), hitrostKhz(1), operacijeNaTick(10), m(m) {}
void start();
void stop();
bool isRunning();
void setSpeed(int kHz);
int getSpeed();
void step();
private:
void zankaUre();
};