88 lines
1.8 KiB
C
88 lines
1.8 KiB
C
|
/*
|
||
|
File automatically generated by SOAdvancedDissector.py
|
||
|
More information at http://indefero.soutade.fr/p/soadvanceddissector
|
||
|
*/
|
||
|
|
||
|
#ifndef _DPTIMER_H
|
||
|
#define _DPTIMER_H
|
||
|
|
||
|
#include <dp.h>
|
||
|
|
||
|
|
||
|
namespace dptimer {
|
||
|
|
||
|
class Timer;
|
||
|
class MultiplexedTimer;
|
||
|
class TimerClient;
|
||
|
class TimerProvider;
|
||
|
class MultiplexedTimerProvider;
|
||
|
|
||
|
|
||
|
class Timer: public dp::Releasable
|
||
|
{
|
||
|
public:
|
||
|
virtual ~Timer();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void release() = 0;
|
||
|
virtual void setTimeout(int) = 0;
|
||
|
virtual void cancel() = 0;
|
||
|
|
||
|
};
|
||
|
|
||
|
class MultiplexedTimer: public dptimer::Timer
|
||
|
{
|
||
|
public:
|
||
|
MultiplexedTimer(dptimer::TimerClient*);
|
||
|
|
||
|
virtual ~MultiplexedTimer();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void release();
|
||
|
virtual void setTimeout(int);
|
||
|
virtual void cancel();
|
||
|
|
||
|
};
|
||
|
|
||
|
class TimerClient: public dp::Unknown
|
||
|
{
|
||
|
public:
|
||
|
virtual ~TimerClient();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void timerFired(dptimer::Timer*) = 0;
|
||
|
|
||
|
};
|
||
|
|
||
|
class TimerProvider: public dp::Unknown
|
||
|
{
|
||
|
public:
|
||
|
virtual ~TimerProvider();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void virtfunc24() = 0;
|
||
|
|
||
|
void getProvider();
|
||
|
void setProvider(dptimer::TimerProvider*);
|
||
|
|
||
|
};
|
||
|
|
||
|
class MultiplexedTimerProvider: public dptimer::TimerClient, public dptimer::TimerProvider
|
||
|
{
|
||
|
public:
|
||
|
MultiplexedTimerProvider();
|
||
|
|
||
|
virtual ~MultiplexedTimerProvider();
|
||
|
virtual void* getInterfaceID();
|
||
|
virtual void timerFired(dptimer::Timer*);
|
||
|
virtual void createTimer(dptimer::TimerClient*);
|
||
|
|
||
|
void add(dptimer::MultiplexedTimer*);
|
||
|
void rearm();
|
||
|
void remove(dptimer::MultiplexedTimer*);
|
||
|
|
||
|
};
|
||
|
|
||
|
|
||
|
}
|
||
|
|
||
|
|
||
|
|
||
|
#endif // _DPTIMER_H
|