22 lines
479 B
C++
22 lines
479 B
C++
#pragma once
|
|
|
|
#define MAX_KEYER_QUEUE 5
|
|
|
|
typedef enum {
|
|
PADDLE_DIT = 0,
|
|
PADDLE_DAH = 1,
|
|
} Paddle;
|
|
|
|
class Keyer {
|
|
public:
|
|
virtual char *Name() = 0;
|
|
virtual void Reset() = 0;
|
|
virtual void SetDitDuration(unsigned int d) = 0;
|
|
virtual void Key(Paddle key, bool pressed) = 0;
|
|
|
|
// Tick updates internal state,
|
|
// and returns whether the keyer is transmitting at time now.
|
|
virtual bool Tick(unsigned long now) = 0;
|
|
};
|
|
|
|
Keyer *GetKeyerByNumber(int n); |