00001 00008 #ifndef CRESCENDO_H_ 00009 #define CRESCENDO_H_ 00010 00011 #include "core/mark.h" 00012 00013 class CANote; 00014 00015 class CACrescendo: public CAMark { 00016 public: 00017 enum CACrescendoType { 00018 Crescendo, 00019 Decrescendo 00020 }; 00021 00022 CACrescendo( int finalVolume, CANote *note, CACrescendoType t=Crescendo, int timeStart=-1, int timeLength=-1 ); 00023 virtual ~CACrescendo(); 00024 00025 CAMusElement *clone(); 00026 int compare( CAMusElement* ); 00027 00028 inline const int finalVolume() { return _finalVolume; } 00029 inline void setFinalVolume( const int v ) { _finalVolume = v; } 00030 inline const CACrescendoType crescendoType() { return _crescendoType; } 00031 inline void setCrescendoType( CACrescendoType t ) { _crescendoType = t; } 00032 00033 static const QString crescendoTypeToString( CACrescendoType t ); 00034 static CACrescendoType crescendoTypeFromString( const QString r ); 00035 00036 private: 00037 int _finalVolume; // volume percantage - from 0% to 100% 00038 CACrescendoType _crescendoType; 00039 }; 00040 00041 #endif /* CRESCENDO_H_ */
1.5.3