CSL  6.0
Lorenz.h
Go to the documentation of this file.
1 ///
2 /// Lorenz.h -- Header file for the Lorenz chaotic oscillator
3 /// See the copyright notice and acknowledgment of authors in the file COPYRIGHT
4 ///
5 
6 #ifndef CSL_Lorenz_H
7 #define CSL_Lorenz_H
8 
9 #include "CSL_Core.h"
10 
11 namespace csl {
12 
13 ///
14 /// Lorenz chaotic oscillator = this plays one variable of the Lorenz Strange Attractor between +1 and -1
15 ///
16 
17 class Lorenz : public UnitGenerator {
18 
19 public:
20  /// Constructor
21  Lorenz(float x = 0.02, float y = 20., float z = 20.);
22  ~Lorenz();
23 
24  /// Accessors
25  float x() const { return mX; }
26  float y() const { return mY; }
27  float z() const { return mZ; }
28 
29  void setX(float tx) { mX = tx; }
30  void setY(float ty) { mY = ty; }
31  void setZ(float tz) { mZ = tz; }
32 
33  void dump();
34  void nextBuffer(Buffer& outputBuffer, unsigned outBufNum) throw (CException);
35 
36 protected:
37  float mX, mY, mZ;
38 };
39 
40 }
41 
42 #endif
AdditiveInstrument.h – Sum-of-sines synthesis instrument class.
Definition: Accessor.h:17
void setZ(float tz)
Definition: Lorenz.h:31
float y() const
Definition: Lorenz.h:26
float mX
Definition: Lorenz.h:37
void nextBuffer(Buffer &outputBuffer, unsigned outBufNum)
really compute the next buffer given an offset base channel; this is called by nextBuffer, possibly multiple times
Definition: Lorenz.cpp:23
Lorenz chaotic oscillator = this plays one variable of the Lorenz Strange Attractor between +1 and -1...
Definition: Lorenz.h:17
float z() const
Definition: Lorenz.h:27
void setX(float tx)
Definition: Lorenz.h:29
void dump()
pretty-print the receiver
Definition: Lorenz.cpp:18
Lorenz(float x=0.02, float y=20., float z=20.)
Constructor.
Definition: Lorenz.cpp:13
float mZ
Definition: Lorenz.h:37
Buffer – the multi-channel sample buffer class (passed around between generators and IO guys)...
Definition: CSL_Core.h:106
float x() const
Accessors.
Definition: Lorenz.h:25
forward declaration
Definition: CSL_Core.h:241
void setY(float ty)
Definition: Lorenz.h:30
float mY
Definition: Lorenz.h:37
Base class of CSL exceptions (written upper-case). Has a string message.