Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > b908fbf6412c51882b2aebf8342c549f > files > 88

libecasound-devel-2.5.2-2mdv2009.1.i586.rpm

#ifndef INCLUDED_ECA_ENGINE_IMPL_H
#define INCLUDED_ECA_ENGINE_IMPL_H

#include <ctime>
#include <pthread.h>
#include <unistd.h>
#include <sys/time.h>

#include <kvu_value_queue.h>
#include <kvu_procedure_timer.h>

#include "eca-chainsetup.h"

/**
 * Private class used in ECA_ENGINE 
 * implementation.
 */
class ECA_ENGINE_impl {

  friend class ECA_ENGINE;

 private:

  PROCEDURE_TIMER looptimer_rep;
  PROCEDURE_TIMER looptimer_range_rep;

  double looptimer_low_rep;
  double looptimer_mid_rep;
  double looptimer_high_rep;

  VALUE_QUEUE_RT_C command_queue_rep;

  pthread_cond_t ecasound_stop_cond_repp;
  pthread_mutex_t ecasound_stop_mutex_repp;
  pthread_cond_t ecasound_exit_cond_repp;
  pthread_mutex_t ecasound_exit_mutex_repp;

  struct timeval multitrack_input_stamp_rep;
};

#endif /* INCLUDED_ECA_ENGINE_IMPL_H */