/media/hdb5/canorusNightlyBuildSystem/trunk/src/core/dynamic.cpp

Go to the documentation of this file.
00001 
00008 #include "core/dynamic.h"
00009 #include "core/note.h"
00010 
00018 CADynamic::CADynamic( QString text, int volume, CANote *note )
00019  : CAMark( CAMark::Dynamic, note ) {
00020         setText(text);
00021         setVolume(volume);
00022 }
00023 
00024 CADynamic::~CADynamic() {
00025 }
00026 
00027 CAMusElement* CADynamic::clone() {
00028         return new CADynamic( text(), volume(), static_cast<CANote*>(associatedElement()) );
00029 }
00030 
00031 int CADynamic::compare( CAMusElement *elt ) {
00032         if (elt->musElementType()!=CAMusElement::Mark)
00033                 return -2;
00034         
00035         if (static_cast<CAMark*>(elt)->markType()!=CAMark::Dynamic)
00036                 return -1;
00037         
00038         if (static_cast<CADynamic*>(elt)->text()!=text())
00039                 return 1;
00040         
00041         return 0;
00042 }
00043 
00044 const QString CADynamic::dynamicTextToString( CADynamicText t ) {
00045         switch (t) {
00046                 case ppppp: return "ppppp";
00047                 case pppp: return "pppp";
00048                 case ppp: return "ppp";
00049                 case pp: return "pp";
00050                 case p: return "p";
00051                 case fffff: return "fffff";
00052                 case ffff: return "ffff";
00053                 case fff: return "fff";
00054                 case ff: return "ff";
00055                 case f: return "f";
00056                 case fp: return "fp";
00057                 case mf: return "mf";
00058                 case mp: return "mp";
00059                 case rfz: return "rfz";
00060                 case sff: return "sff";
00061                 case sf: return "sf";
00062                 case sfz: return "sfz";
00063                 case spp: return "spp";
00064                 case sp: return "sp";
00065                 case Custom: return "";
00066         }
00067 }
00068 
00069 CADynamic::CADynamicText CADynamic::dynamicTextFromString( const QString t ) {
00070         if (t=="ppppp") return ppppp;
00071         if (t=="pppp") return pppp;
00072         if (t=="ppp") return ppp;
00073         if (t=="pp") return pp;
00074         if (t=="p") return p;
00075         if (t=="fffff") return fffff;
00076         if (t=="ffff") return ffff;
00077         if (t=="fff") return fff;
00078         if (t=="ff") return ff;
00079         if (t=="f") return f;
00080         if (t=="fp") return fp;
00081         if (t=="mf") return mf;
00082         if (t=="mp") return mp;
00083         if (t=="rfz") return rfz;
00084         if (t=="sff") return sff;
00085         if (t=="sf") return sf;
00086         if (t=="sfz") return sfz;
00087         if (t=="spp") return spp;
00088         if (t=="sp") return sp;
00089         return Custom;
00090 }

Generated on Sat Feb 9 13:06:25 2008 for Canorus by  doxygen 1.5.3