tma: first pass at TmaServiceManager

This commit is contained in:
Michael Scire
2018-12-05 04:16:48 -08:00
parent bb48e33074
commit bf7dc84893
11 changed files with 595 additions and 22 deletions

View File

@@ -31,13 +31,13 @@ class TmaService {
const TmaServiceId id;
protected:
u32 GetNextTaskId();
virtual TmaTask *NewTask(TmaPacket *packet) = 0;
virtual void OnSleep();
virtual void OnWake();
public:
TmaService(TmaServiceManager *m, const char *n) : manager(m), service_name(n), id(static_cast<TmaServiceId>(HashServiceName(this->service_name))) { }
virtual ~TmaService() { }
TmaServiceId GetServiceId() const { return this->id; }
virtual TmaTask *NewTask(TmaPacket *packet) = 0;
virtual void OnSleep();
virtual void OnWake();
};