00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef __TTimeModification__
00026 #define __TTimeModification__
00027
00028 #include "exports.h"
00029 #include "smartpointer.h"
00030 #include "TScoreVisitor.h"
00031 #include "conversions.h"
00032
00033 namespace MusicXML
00034 {
00035
00050 class EXP TTimeModification : public visitable, public smartable {
00051
00052 public:
00053 enum { undefined = -1 };
00054 EXP friend SMARTP<TTimeModification> newTimeModification();
00055
00056 virtual void accept(TScoreVisitor& visitor);
00057
00058 void setActualNotes(long v);
00059 void setNormalNotes(long v);
00060 void setNormalType(NoteType::type v);
00061 void setNormalDots(long v);
00062
00063 long getActualNotes() const { return fActualNotes; }
00064 long getNormalNotes() const { return fNormalNotes; }
00065 NoteType::type getNormalType() const { return fNormalType; }
00066 long getNormalDots() const { return fNormalDots; }
00067
00068 protected:
00069 TTimeModification()
00070 : fActualNotes(undefined), fNormalNotes(undefined), fNormalType(NoteType::undefined), fNormalDots(0) {}
00071 virtual ~TTimeModification() {}
00072 private:
00073 long fActualNotes;
00074 long fNormalNotes;
00075 NoteType::type fNormalType;
00076 long fNormalDots;
00077 };
00078 typedef SMARTP<TTimeModification> STimeModification;
00079
00080 }
00081
00082
00083 #endif