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 __TTranspose__
00026 #define __TTranspose__
00027
00028 #include "exports.h"
00029 #include "TScoreVisitor.h"
00030
00031 namespace MusicXML
00032 {
00033
00050 class EXP TTranspose : public visitable, public smartable {
00051
00052 public:
00053 enum { undefined = -1 };
00054
00055 EXP friend SMARTP<TTranspose> newTranspose();
00056
00057 virtual void accept(TScoreVisitor& visitor);
00058
00059 void setDiatonic(long diat);
00060 void setChromatic(long chrom);
00061 void setOctaveChge(long oct);
00062 void setDouble (long dbl);
00063
00064 long getDiatonic() const { return fDiatonic;}
00065 long getChromatic() const { return fChromatic;}
00066 long getOctaveChge() const { return fOctaveChge;}
00067 long getDouble() const { return fDouble;}
00068
00069 protected:
00070 TTranspose() : fDiatonic(undefined), fChromatic(0), fOctaveChge(undefined), fDouble(undefined) {}
00071 virtual ~TTranspose() {}
00072
00073 private:
00074 long fDiatonic;
00075 long fChromatic;
00076 long fOctaveChge;
00077 long fDouble;
00078 };
00079 typedef SMARTP<TTranspose> STranspose;
00080
00081 }
00082
00083 #endif
00084