summaryrefslogtreecommitdiff
path: root/common/JackTimedDriver.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/JackTimedDriver.h')
-rw-r--r--common/JackTimedDriver.h32
1 files changed, 23 insertions, 9 deletions
diff --git a/common/JackTimedDriver.h b/common/JackTimedDriver.h
index 987bfab4..e2d26ca1 100644
--- a/common/JackTimedDriver.h
+++ b/common/JackTimedDriver.h
@@ -32,33 +32,47 @@ namespace Jack
class SERVER_EXPORT JackTimedDriver : public JackAudioDriver
{
- private:
+ protected:
int fCycleCount;
- jack_time_t fAnchorTime;
-
+ jack_time_t fAnchorTimeUsec;
+
int FirstCycle(jack_time_t cur_time);
int CurrentCycle(jack_time_t cur_time);
-
- int ProcessAux();
+
+ void ProcessWait();
public:
JackTimedDriver(const char* name, const char* alias, JackLockedEngine* engine, JackSynchro* table)
- : JackAudioDriver(name, alias, engine, table), fCycleCount(0), fAnchorTime(0)
+ : JackAudioDriver(name, alias, engine, table), fCycleCount(0), fAnchorTimeUsec(0)
{}
virtual ~JackTimedDriver()
{}
- virtual int Process();
- virtual int ProcessNull();
-
// BufferSize can be changed
bool IsFixedBufferSize()
{
return false;
}
+ int Start();
+
+};
+
+class SERVER_EXPORT JackWaiterDriver : public JackTimedDriver
+{
+
+ public:
+
+ JackWaiterDriver(const char* name, const char* alias, JackLockedEngine* engine, JackSynchro* table)
+ : JackTimedDriver(name, alias, engine, table)
+ {}
+ virtual ~JackWaiterDriver()
+ {}
+
+ virtual int ProcessNull();
+
};
} // end of namespace