~ubuntu-branches/ubuntu/breezy/muse/breezy

« back to all changes in this revision

Viewing changes to synti/stklib/SingWave.h

  • Committer: Bazaar Package Importer
  • Author(s): Daniel Kobras
  • Date: 2004-02-07 15:18:22 UTC
  • mfrom: (1.1.1 upstream)
  • Revision ID: james.westby@ubuntu.com-20040207151822-es27xxkzbcxkebjm
Tags: 0.6.3-1
* New upstream version.
* Added patches:
  + [10_alsa_init_fix] New, from upstream CVS.
    Initialize direction variable when setting Alsa parameters.
  + [10_canvas_translation_fix] New, from upstream CVS.
    Do not translate tooltips twice in canvas popup.
  + [10_checkbox_fix] New, from upstream CVS.
    Use proper set/test methods on metronome checkboxes.
  + [10_html_doc_cleanup] New.
    Fix links and HTML errors in documentation.
  + [20_allow_system_timer] New.
    The new upstream version fails by default if the real-time clock
    could not be accessed (usually the case when not running suid-root).
    This patch reverts the old behaviour of falling back to the more
    inaccurate system timer.
* Updated patches:
  + [11_PIC_fixes_fixup] Rediffed.
* Removed patches:
  + [20_no_atomic_asm] Merged upstream.
* debian/compat: Splice out debhelper compatibility level from rules file.
* debian/control: Build-depend on latest jack release by default.
  Closes: #228788
* debian/control: Bump standards version.
* debian/control: Use auto-generated debconf dependency via misc:Depends.
* debian/control: Minor tweaks to the long description.
* debian/control: Tighten fluidsynth build dependency to sane version.
* debian/muse.doc-base: New. Register HTML documentation with doc-base.
* debian/templates: Tiny rewording, and typo fix.
* debian/templates, debian/po/*: Switch to po-debconf for translations.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*******************************************/
2
 
/*  "Singing" Looped Soundfile Class,      */
3
 
/*  by Perry R. Cook, 1995-96              */ 
4
 
/*  This Object contains all that's needed */
5
 
/*  to make a pitched musical sound, like  */
6
 
/*  a simple voice or violin.  In general, */  
7
 
/*  it will not be used alone (because of  */
8
 
/*  of munchinification effects from pitch */
9
 
/*  shifting.  It will be used as an       */
10
 
/*  excitation source for other instruments*/
11
 
/*******************************************/
12
 
 
13
 
#if !defined(__SingWave_h)
14
 
#define __SingWave_h
15
 
 
16
 
#include "Object.h"
17
 
#include "Modulatr.h"
18
 
#include "Envelope.h"
19
 
#include "StkError.h"
20
 
 
21
 
class SingWave : public Object
22
 
{
23
 
  protected:  
24
 
    Modulatr *modulator;
25
 
    Envelope *envelope;
26
 
    Envelope *pitchEnvelope;
27
 
    long length;
28
 
    MY_FLOAT *data;
29
 
    MY_FLOAT rate;
30
 
    MY_FLOAT sweepRate;
31
 
    MY_FLOAT mytime;
32
 
    MY_FLOAT lastOutput;
33
 
  public:
34
 
    SingWave(char *fileName);
35
 
    ~SingWave();
36
 
    void reset();
37
 
    void normalize();
38
 
    void normalize(MY_FLOAT newPeak);
39
 
    void setFreq(MY_FLOAT aFreq);    
40
 
    void setVibFreq(MY_FLOAT vibFreq);
41
 
    void setVibAmt(MY_FLOAT vibAmt);
42
 
    void setRndAmt(MY_FLOAT rndVib);
43
 
    void setSweepRate(MY_FLOAT swpRate);
44
 
    void setGainRate(MY_FLOAT gainRate);    
45
 
    void setGainTarget(MY_FLOAT aTarget);
46
 
    void noteOn();
47
 
    void noteOff();
48
 
    MY_FLOAT tick();
49
 
    MY_FLOAT lastOut();
50
 
};
51
 
 
52
 
#endif