#ifndef _STRETCH_H_
#define _STRETCH_H_

#include <element.h>

#include <addon.h>
#include <table.h>
#include <part.h>
#include <track.h>


class Stretch : public Addon
{
 private:

 public:
  /** The constructor is given a parameter specifying the target of the operation
   * implement this typically for a Song, Track, Part and NULL, where NULL indicates that
   * the globally defined table * selectioN is used as a target
   */
  Stretch(Element*);
  ~Stretch();

  virtual void selection(Table*);
  virtual void part(Part*);
  virtual void track(Track*);
  virtual void song(Song*);
  
  void undo();
  void redo();



};

#endif
