Canorus  0.7
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
/home/iurt/rpm/BUILD/canorus-0.7.R1002/src/core/ritardando.h
Go to the documentation of this file.
00001 
00008 #ifndef RITARDANDO_H_
00009 #define RITARDANDO_H_
00010 
00011 #include "core/mark.h"
00012 
00013 class CAPlayable;
00014 
00015 class CARitardando: public CAMark {
00016 public:
00017         enum CARitardandoType {
00018                 Ritardando,
00019                 Accellerando
00020         };
00021         
00022         CARitardando( int finalTempo, CAPlayable *p, int timeLength, CARitardandoType t=Ritardando );
00023         virtual ~CARitardando();
00024         
00025         CARitardando *clone(CAMusElement* elt=0);
00026         int compare( CAMusElement* );
00027         
00028         inline const int finalTempo() { return _finalTempo; }
00029         inline void setFinalTempo( const int t ) { _finalTempo = t; }
00030         inline const CARitardandoType ritardandoType() { return _ritardandoType; }
00031         inline void setRitardandoType( CARitardandoType t ) { _ritardandoType = t; }
00032         
00033         static const QString ritardandoTypeToString( CARitardandoType t );
00034         static CARitardandoType ritardandoTypeFromString( const QString r );
00035         
00036 private:
00037         int _finalTempo; // tempo bpm at the end
00038         CARitardandoType _ritardandoType;
00039 };
00040 
00041 #endif /* RITARDANDO_H_ */