Sha256: a6d882df1a69da6f83d2c4fb0fab81e77847ab09abfd761ec4a604be12a947f4

Contents?: true

Size: 1.67 KB

Versions: 18

Compression:

Stored size: 1.67 KB

Contents

// -*- c++ -*-
#pragma once
#ifndef __BEEPS_PROCESSOR_H__
#define __BEEPS_PROCESSOR_H__


#include <xot/pimpl.h>
#include <beeps/defs.h>


namespace Beeps
{


	class Signals;


	class Processor
	{

		public:

			virtual ~Processor ();

			virtual void process (Signals* signals);

			virtual operator bool () const;

			virtual bool operator ! () const;

		protected:

			Processor ();

	};// Processor


	class SineWave : public Processor
	{

		typedef Processor Super;

		public:

			SineWave ();

			virtual ~SineWave ();

			virtual void set_frequency (float frequency);

			virtual float    frequency () const;

			virtual void process (Signals* signals);

			struct Data;

			Xot::PSharedImpl<Data> self;

	};// SineWave


	class SquareWave : public Processor
	{

		typedef Processor Super;

		public:

			SquareWave ();

			virtual ~SquareWave ();

			virtual void set_frequency (float frequency);

			virtual float    frequency () const;

			virtual void process (Signals* signals);

			struct Data;

			Xot::PSharedImpl<Data> self;

	};// SquareWave


	class SawtoothWave : public Processor
	{

		typedef Processor Super;

		public:

			SawtoothWave ();

			virtual ~SawtoothWave ();

			virtual void set_frequency (float frequency);

			virtual float    frequency () const;

			virtual void process (Signals* signals);

			struct Data;

			Xot::PSharedImpl<Data> self;

	};// SawtoothWave


	class FileIn : public Processor
	{

		typedef Processor Super;

		public:

			FileIn (const char* path = NULL);

			virtual ~FileIn ();

			virtual void process (Signals* signals);

			virtual operator bool () const;

			struct Data;

			Xot::PSharedImpl<Data> self;

	};// FileIn


}// Beeps


#endif//EOH

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
beeps-0.1.32 include/beeps/processor.h
beeps-0.1.31 include/beeps/processor.h
beeps-0.1.30 include/beeps/processor.h
beeps-0.1.29 include/beeps/processor.h
beeps-0.1.28 include/beeps/processor.h
beeps-0.1.27 include/beeps/processor.h
beeps-0.1.26 include/beeps/processor.h
beeps-0.1.25 include/beeps/processor.h
beeps-0.1.24 include/beeps/processor.h
beeps-0.1.23 include/beeps/processor.h
beeps-0.1.22 include/beeps/processor.h
beeps-0.1.21 include/beeps/processor.h
beeps-0.1.20 include/beeps/processor.h
beeps-0.1.18 include/beeps/processor.h
beeps-0.1.16 include/beeps/processor.h
beeps-0.1.15 include/beeps/processor.h
beeps-0.1.14 include/beeps/processor.h
beeps-0.1.13 include/beeps/processor.h