Finale PDK Framework  0.54
Public Member Functions | List of all members
FCNote Class Reference

Encapsulates one note in a note entry (from the FCNoteEntry class). More...

#include <ff_noteframe.h>

Inheritance diagram for FCNote:
__FCBase FCNotePitch

Public Member Functions

virtual const char * ClassName ()
 Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class. More...
 
 FCNote (int index, EXNOTE *pexnote, FCNoteEntry *pParent)
 The constructor.
 
FCNoteEntryGetEntry () const
 Returns the note entry object for the note. More...
 
bool GetAccidental () const
 Gets the accidental state bit for the note. This method should normally NOT be used (use CalcAccidental instead). More...
 
bool GetAccidentalFreeze () const
 Returns the freezed accidental state. More...
 
bool GetAccidentalParentheses () const
 Returns the parentheses accidental state. More...
 
twobyte GetDisplacement () const
 Returns the vertical note position on the staff. More...
 
bool GetLegality () const
 Gets the legality bit, that marks that the note is valid. More...
 
twobyte GetRaiseLower () const
 Returns the raised/lowered state of the note. More...
 
bool GetSpacing () const
 Returns if the note should be used in the spacing algorithm or not. More...
 
bool GetPlayback () const
 Gets the playback status for the note. More...
 
bool GetTie () const
 Gets the tie start state for the note. More...
 
bool GetTieBackwards () const
 Gets the backwards tie state for the note. More...
 
bool GetCrossStaff () const
 Gets the cross staff state for the note. More...
 
eNoteID GetNoteID () const
 Returns the unique note ID. More...
 
void GetString (FCString *pString, FCKeySignature *pKey, bool simplifydoublesharp=false, bool writtenpitch=false)
 Creates a string representation of the note. More...
 
bool CalcAccidental () const
 Returns the displayed state of an accidental. This is the method that should be used to find out if an accidental is displayed. More...
 
twobyte CalcOctave (FCKeySignature *pKey, int transposeinterval=0)
 Returns the sounding octave for the note. More...
 
twobyte CalcWrittenOctave (FCKeySignature *pKey, int transposevalue, bool simplifytranspose, bool chromatictranspose)
 Returns the written octave for the note, taking a specific transposition into account. More...
 
bool SetString (FCString *pString, FCKeySignature *pKey, bool writtenpitch)
 Changes the note based on the string representation. See FCNote::GetString for syntax. More...
 
void SetAccidental (bool state)
 Sets the accidental state for the note. More...
 
void SetAccidentalFreeze (bool state)
 Sets the freezed accidental state. More...
 
void SetAccidentalParentheses (bool state)
 Sets the parentheses accidental state. More...
 
void SetSpacing (bool state)
 Sets if the note should be used in the spacing algorithm or not. More...
 
void SetPlayback (bool state)
 Sets if the note should play back or be muted. More...
 
void SetLegality (bool state)
 Sets the legality bit, marking that the note is valid. More...
 
void SetDisplacement (twobyte disp)
 Sets the note's vertical position on the staff. The displacement is relative to the key. More...
 
void SetRaiseLower (twobyte amount)
 Raises or lowers the pitch of the note. More...
 
void SetNoteID (eNoteID noteid)
 Sets the unique note ID. Use with extreme care! More...
 
void SetTie (bool value)
 Sets the tie state for the note. More...
 
void SetTieBackwards (bool value)
 Sets the "tie end" state for the note. More...
 
void SetCrossStaff (bool state)
 Sets the cross staff state for the note. More...
 
bool CalcOnLedgerLine ()
 Returns true if the note appears on a ledger line. More...
 
int CalcCrossStaffNumber ()
 Returns the staff ID that belongs to the cross staff note. More...
 
bool CalcRightsidePlacement ()
 Returns true if the notehead is on the right side of the stem. More...
 
twobyte CalcNoteheadWidth ()
 Returns the width of the notehead. More...
 
twobyte CalcStaffPosition ()
 Calculates the displacement from the top staffline. It takes the current score position into account (including clefs, staff styles and so on). More...
 
char CalcPitchChar ()
 Returns the sounding note name character for the note. More...
 
char CalcWrittenPitchChar ()
 Returns the written note name character for the note. More...
 
twobyte CalcPitchRaiseLower (bool writtenpitch)
 Returns the number of sharps or flats the note actually has in the key signature. More...
 
twobyte CalcMIDIKey ()
 Returns the MIDI key number for the note. More...
 
void SetMIDIKey (twobyte midikey)
 Sets the MIDI key number for the note. More...
 
bool IsIdenticalPitch (FCNote *pPitchNote)
 Returns true if the pitch is identical to the supplied note. More...
 
bool IsHigherPitchThan (FCNote *pPitchCompareNote)
 Returns true if the pitch is higher than the pitch in the parameter's note. More...
 
bool IsLowerPitchThan (FCNote *pPitchCompareNote)
 Returns true if the pitch is lower than the pitch in the parameter's note. More...
 
void MarkForErase ()
 Marks the note for erase when the entry is saved. More...
 
virtual void DebugDump ()
 Outputs the class data/information for debugging purposes. More...
 
- Public Member Functions inherited from __FCBase
virtual const PDKFRAMEWORK_CLASSID GetClassID ()
 Returns the internal class ID for the PDK Framework class. This is implemented mostly because Lua has problems to resolve the true classes of inherited objects. More...
 
 __FCBase ()
 The constructor.
 
virtual ~__FCBase ()
 Virtual destructor, so all inherited classes get the virtual destructor. More...
 
void DebugMsgDigit (const char *pszPrefixText, int i)
 Creates a simple Message Box for debug purposes. The text appears with the extra digit (in decimal presentation) appearing afterwards. More...
 
void DebugMsgHex (const char *pszPrefixText, int i)
 Creates a simple Message Box for debug purposes. The text appears with the extra digit (as a hexadecimal number) appearing afterwards. More...
 
void DebugMsgString (const char *pszPrefixText, const char *thestring)
 Creates a simple Message Box for debug purposes. The text appears with the extra string appearing afterwards. More...
 
void DebugMsg (const char *pszMsg)
 Creates a simple Message Box for debug purposes with just one text string. More...
 
void DebugOutMenuInfo (FCUI *pUI, int menuixd_horiz, int menuixd_vert) const
 Outputs the menu command info for debugging purposes. More...
 
int DebugOutFormat (const char *fmt,...)
 Outputs debug text using C style "printf" syntax. More...
 
virtual void DebugDataDump ()
 Outputs a memory dump of the data block in the object for debugging purposes. More...
 
virtual void DebugDataByteArrayDump ()
 Outputs a memory dump of the data block in the object for debugging purposes, as a C++ byte array. More...
 
void Set16BitFlag (FLAG_16 *flag, FLAG_16 flagbits, bool state)
 Sets a 16 bit flag in the data block. More...
 
void Set32BitFlag (FLAG_32 *flag, FLAG_32 flagbits, bool state)
 Sets a 32 bit flag in the data block. More...
 
bool GetBitFlag (FLAG_32 flag, FLAG_32 flagbits) const
 Gets a state from flag bits. Returns true if any bit in the mask is set. More...
 
void SetUserData (void *pData)
 Sets the user data attached to the instance of an object. More...
 
void SetUserData2 (void *pData)
 Sets the additional user data attached to the instance of an object. More...
 
void * GetUserData () const
 Gets the user data attached to the instance of an object. More...
 
void * GetUserData2 () const
 Gets the additional user data attached to the instance of an object. More...
 
virtual bool IsIdentical (__FCBase *pCompareObject)
 Returns true if the data in the passed object is considered to be identical to the current object, otherwise false. More...
 
void StoreXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue)
 Helper function to store FCString objects in the XML file. More...
 
void StoreXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int value)
 Helper function to store integer objects in the XML file. More...
 
void StoreXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool value)
 Helper function to store boolean objects in the XML file. More...
 
void StoreXML_StringAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, FCString *pStringValue)
 Helper function to store FCString objects in the XML file, as an attribute to a node. More...
 
void StoreXML_IntegerAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, int value)
 Helper function to store integer objects in the XML file, as an attribute to a node. More...
 
void StoreXML_BoolAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, bool value)
 Helper function to store boolean objects in the XML file, as an attribute to a node. More...
 
void StoreXML_FloatAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, float value)
 Helper function to store floating point objects in the XML file, as an attribute to a node. More...
 
virtual void StoreToXML (tinyxml2::XMLElement *pParentNode)
 Virtual method that is used to store an object's data. More...
 
bool ReadXML_String (tinyxml2::XMLElement *pParentNode, const char *pszElementName, FCString *pStringValue)
 Helper method to read FCString objects from the XML file. More...
 
bool ReadXML_Integer (tinyxml2::XMLElement *pParentNode, const char *pszElementName, int *pValue)
 Helper method to read integer objects from the XML file. More...
 
bool ReadXML_Bool (tinyxml2::XMLElement *pParentNode, const char *pszElementName, bool *pValue)
 Helper method to read boolean objects from the XML file. More...
 
bool ReadXML_StringAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, FCString *pStringValue)
 Helper method to read FCString objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_IntegerAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, int *pValue)
 Helper method to read integer objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_BoolAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, bool *pValue)
 Helper method to read boolean objects from the XML file, as an attribute to a node. More...
 
bool ReadXML_FloatAttribute (tinyxml2::XMLElement *pNode, const char *pszAttributeName, float *pValue)
 Helper method to read floating point objects from the XML file, as an attribute to a node. More...
 
virtual bool ReadFromXML (tinyxml2::XMLElement *pParentNode)
 Virtual method that is used to read object data. More...
 

Additional Inherited Members

- Public Types inherited from __FCBase
enum  PDKFRAMEWORK_CLASSID {
  FCID_UNKNOWN = 0, FCID_ACCIDENTALMOD, FCID_ALLOTMENT, FCID_ARTICULATION,
  FCID_ARTICULATIONDEF, FCID_BACKWARDREPEAT, FCID_BASELINE, FCID_BEAMMOD,
  FCID_BEATCHARTELEMENT, FCID_BROKENBEAMMOD, FCID_CATEGORYDEF, FCID_CELLCLEFCHANGE,
  FCID_CELLFRAMEHOLD, FCID_CELLGRAPHIC, FCID_CELLTEXT, FCID_CENTERSMARTSHAPE,
  FCID_CHORD, FCID_CHORDPREFS, FCID_CHORDSUFFIXELEMENT, FCID_CHORUSSYLLABLE,
  FCID_CLEFDEF, FCID_COMPOSITETIMESIGBOTTOMELEMENT, FCID_COMPOSITETIMESIGTOPELEMENT, FCID_CROSSSTAFFMOD,
  FCID_CUSTOMSMARTLINEDEF, FCID_CUSTOMSTEMMOD, FCID_DISTANCEPREFS, FCID_DOTMOD,
  FCID_ENCLOSURE, FCID_ENDINGREPEAT, FCID_ENTRYALTERMOD, FCID_EXECUTABLESHAPEDEF,
  FCID_EXPRESSION, FCID_FONTINFO, FCID_FONTPREFS, FCID_FREEZESYSTEM,
  FCID_FRETBOARDSTYLEDEF, FCID_FRETBOARDSTYLEDEFS, FCID_FRETBOARDGROUPDEF, FCID_FRETBOARDGROUPDEFS,
  FCID_FRETINSTRUMENTDEF, FCID_GENERALPREFS, FCID_GRIDSGUIDESPREFS, FCID_GROUP,
  FCID_GROUPNAMEPOSITIONPREFS, FCID_HUMANPLAYBACKPREFS, FCID_INDEPENDENTCELLDETAIL, FCID_INSTRUMENTDEF,
  FCID_INSTRUMENTPLAYBACKDATA, FCID_KEYSIGNATURE, FCID_LAYERPREFS, FCID_LYRICSPREFS,
  FCID_MEASURE, FCID_MEASURENUMBERREGION, FCID_METATOOLASSIGNMENT, FCID_MIDIEXPRESSION,
  FCID_MISCDOCPREFS, FCID_MULTIMEASUREREST, FCID_MULTIMEASURERESTPREFS, FCID_MULTISTAFFINSTRUMENT,
  FCID_MULTISTAFFINSTRUMENTS, FCID_MUSICCHARACTERPREFS, FCID_MUSICSPACINGPREFS, FCID_NUMBER,
  FCID_NOTEHEADMOD, FCID_OTHERINCI, FCID_PERCUSSIONLAYOUTNOTE, FCID_PERCUSSIONSTAFF,
  FCID_PERFORMANCEMOD, FCID_PAGE, FCID_PAGEFORMATPREFS, FCID_PAGEGRAPHIC,
  FCID_PAGETEXT, FCID_PART, FCID_PARTEXTRACTPREFS, FCID_PARTSCOPEPREFS,
  FCID_PERCUSSIONNOTEMOD, FCID_PIANOBRACEPREFS, FCID_PLAYBACKPREFS, FCID_RAWTEXT,
  FCID_REPEATPREFS, FCID_SECONDARYBEAMBREAKMOD, FCID_SECTIONSYLLABLE, FCID_SEPARATEMEASURENUMBER,
  FCID_SEPARATEPLACEMENT, FCID_SHAPEDEF, FCID_SHAPEEXPRESSIONDEF, FCID_SLURCONTOURPREFS,
  FCID_SIZEPREFS, FCID_SMARTSHAPE, FCID_SMARTSHAPEENTRYMARK, FCID_SMARTSHAPEMEASUREMARK,
  FCID_SMARTSHAPEPREFS, FCID_STAFF, FCID_STAFFLIST, FCID_STAFFNAMEPOSITION,
  FCID_STAFFNAMEPOSITIONPREFS, FCID_STAFFSTYLEASSIGN, FCID_STAFFSTYLEDEF, FCID_STAFFSYSTEM,
  FCID_STEMCONNECTIONTABLE, FCID_STEMMOD, FCID_STRING, FCID_SYLLABLEENTRYMOD,
  FCID_SYSTEMSTAFF, FCID_TABLATURENOTEMOD, FCID_TEMPOELEMENT, FCID_TEXTBLOCK,
  FCID_TEXTEXPRESSIONDEF, FCID_TEXTREPEAT, FCID_TEXTREPEATDEF, FCID_TIEMOD,
  FCID_TIEPREFS, FCID_TIECONTOURPREFS, FCID_TIEPLACEMENTPREFS, FCID_TIMESIGNATURE,
  FCID_TUPLET, FCID_TUPLETPREFS, FCID_VERSESYLLABLE
}
 Constants for the GetClassID method. More...
 
enum  MEASUREMENTUNITS {
  MEASUREMENTUNIT_DEFAULT = UNIT_DEFAULT, MEASUREMENTUNIT_EVPUS = UNIT_EVPUS, MEASUREMENTUNIT_INCHES = UNIT_INCHES, MEASUREMENTUNIT_CENTIMETERS = UNIT_CENTS,
  MEASUREMENTUNIT_POINTS = UNIT_POINTS, MEASUREMENTUNIT_PICAS = UNIT_PICAS, MEASUREMENTUNIT_SPACES = UNIT_SPACES, MEASUREMENTUNIT_MILLIMETERS = 100
}
 Constants for Finale's standard measurement units. More...
 
- Static Public Member Functions inherited from __FCBase
static void DebugOutPtr (const char *pszPrefixText, void *ptr)
 Static method that outputs a line for debugging purposes. The prefix text appears with the extra ptr (in hexadeximal representation) appearing afterwards. More...
 
static void DebugOutDigit (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in decimal presentation) appearing afterwards. More...
 
static void DebugOutFloat (const char *pszPrefixText, float f)
 Static method that outputs a line for debugging purposes. The text appears with the extra float value appearing afterwards. More...
 
static void DebugOutTag (const char *pszPrefixText, EXTAG extag)
 Static method that outputs a line for debugging purposes. The text appears with the EXTAG (in text) appearing afterwards. More...
 
static void DebugOutHex (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in hexadecimal presentation) appearing afterwards. More...
 
static void DebugOutBin (const char *pszPrefixText, int i)
 Static method that outputs a line for debugging purposes. The text appears with the extra digit (in binary presentation) appearing afterwards. More...
 
static void DebugOutString (const char *pszPrefixText, const char *thestring)
 Static method that outputs a line for debugging purposes (C string version). The text appears with the extra string appearing afterwards. More...
 
static void DebugOutString (const char *pszPrefixText, FCString *pString)
 Static method that outputs a line for debugging purposes (FCString version). The text appears with the extra string appearing afterwards. More...
 
static void DebugOutBool (const char *pszPrefixText, bool state)
 Static method that outputs a line for debugging purposes. The boolean state appears afterwards as either "TRUE" or "FALSE". More...
 
static void DebugOutBlock (const void *pBuffer, int startoffset, int size)
 Static method that outputs a memory block for debugging purposes. Eight bytes per line will appear (as hex digits) until the whole memory block is dumped. More...
 
static void DebugOutByteArrayBlock (const void *pBuffer, int startoffset, int size)
 Static method that outputs a memory block for debugging purposes. Eight bytes per line will appear (as hex digits) as a C++ onebyte array, until the whole memory block is dumped. More...
 
static void DebugOut (const char *pszLine)
 Static method to output a line of text for debugging purposes. More...
 

Detailed Description

Encapsulates one note in a note entry (from the FCNoteEntry class).

This class requires PDK_FRAMEWORK_ENTRIES to be defined.

NOTE! Objects of this class should not be created directly, they are created by the methods in the FCNoteEntry class.

Member Function Documentation

bool FCNote::CalcAccidental ( ) const

Returns the displayed state of an accidental. This is the method that should be used to find out if an accidental is displayed.

On Finale versions lower than Finale 2014, the accidental state bit is returned. On Finale 2014 and higher, the displayed state (based on Finale's settings) is returned.

On Finale 2014, the entry metrics must be up to date when this method is called.

Lua-supported (this is used for the "Accidental" property as well).

int FCNote::CalcCrossStaffNumber ( )

Returns the staff ID that belongs to the cross staff note.

For a proper return value, both the entry and note must have the flags set for cross staff. The method loads the FCCrossStaff connected with the note object.

Lua-supported.

Returns
0 if cross staff couldn't be found.
twobyte FCNote::CalcMIDIKey ( )

Returns the MIDI key number for the note.

Lua-supported.

twobyte FCNote::CalcNoteheadWidth ( )

Returns the width of the notehead.

Lua-supported.

Returns
-1 on error.
twobyte FCNote::CalcOctave ( FCKeySignature pKey,
int  transposeinterval = 0 
)

Returns the sounding octave for the note.

For transposed instrument, the transpose interval needs to be supplied and the key needs to include the transposed key alteration.

This method requires the PDK_FRAMEWORK_PREFS define, since the octave number is dependent on the Program options.

Lua-supported.

Parameters
[in]pKeyThe key that the calculation should be based on.
[in]transposeintervalWhen using chromatic transposition, the interval needs to be 1 step less than the value found in the transposition dialog box (or returned by the FCStaff.GetTransposeInterval method). For traditionally transposed instruments, the usual transposition interval value should be used.
Returns
The octave number.
bool FCNote::CalcOnLedgerLine ( )

Returns true if the note appears on a ledger line.

Lua-supported.

Returns
False for rests.
char FCNote::CalcPitchChar ( )

Returns the sounding note name character for the note.

Lua-supported.

Returns
The uppercase name character for the note. 0 if the note name couldn't be determined.
twobyte FCNote::CalcPitchRaiseLower ( bool  writtenpitch)

Returns the number of sharps or flats the note actually has in the key signature.

Lua-supported.

Parameters
writtenpitchfalse = calculate for the sounding pitch, true = calculate for the written pitch
Returns
Return examples: -1 for a note with one flat. 1 for a note with 1 sharp. 2 for a note with a double-sharp. G major returns 1 sharp for the unmodified F#, etc.
bool FCNote::CalcRightsidePlacement ( )

Returns true if the notehead is on the right side of the stem.

This method looks at the actual layout of the noteheads. If the noteheads are manually moved with the Special Tools, the method will take that into account.

Lua-supported.

Returns
false on rests, errors or if the notehead is on the left side of stem. Otherwise true.
twobyte FCNote::CalcStaffPosition ( )

Calculates the displacement from the top staffline. It takes the current score position into account (including clefs, staff styles and so on).

For percussion notation, the actual percussion note position will be returned, if the positioning info is found in the percussion layout. The percussion note's position will be adjusted to the same vertical levels as non-percussion notes.

    Even when the score is displayed in concert pitch, the calculated value will be as if the score was transposing.

Lua-supported.

Returns
Any of these values:
  • 0 means on the top staff line (on a 5-line staff).
  • Negative values means below the top staff line.
  • Positive values means a vertical position above the top staff line.
twobyte FCNote::CalcWrittenOctave ( FCKeySignature pKey,
int  transposevalue,
bool  simplifytranspose,
bool  chromatictranspose 
)

Returns the written octave for the note, taking a specific transposition into account.

Parameters
[in]pKeyThe key for the note. This cannot be NULL.
[in]transposevalueFor key-based transpositions, this should be the transpose alteration. For chromatic transpositions, this should be transposition interval.
[in]simplifytransposeTrue if the key-based transposition uses "Simplify Key". Not used for chromatic transpositions.
[in]chromatictransposeTrue if the transposition is chromatic. False if the transposition is key-based.

Lua-supported.

Returns
The octave number.
char FCNote::CalcWrittenPitchChar ( )

Returns the written note name character for the note.

Even when the score is displayed in concert pitch, the calculated value will be as if the score music transposing.

Lua-supported.

Returns
The uppercase name character for the note. 0 if the note name couldn't be determined.
virtual const char* FCNote::ClassName ( )
inlinevirtual

Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class.

Lua-supported.

Reimplemented from __FCBase.

Reimplemented in FCNotePitch.

virtual void FCNote::DebugDump ( )
inlinevirtual

Outputs the class data/information for debugging purposes.

Accessible if PDK_FRAMEWORK_DEBUG is defined.

When child class inherit this method to output the contents of its own members, it should call the parent before providing its own output.

Reimplemented from __FCBase.

bool FCNote::GetAccidental ( ) const
inline

Gets the accidental state bit for the note. This method should normally NOT be used (use CalcAccidental instead).

On Finale 2014 and above, this method will not return the true accidental state.

Lua-supported (also as property). Please note that the "Accidental" property calls CalcAccidental.

Returns
True if the accidental should be displayed.
bool FCNote::GetAccidentalFreeze ( ) const
inline

Returns the freezed accidental state.

Lua-supported (also as property).

bool FCNote::GetAccidentalParentheses ( ) const
inline

Returns the parentheses accidental state.

Lua-supported (also as property).

bool FCNote::GetCrossStaff ( ) const
inline

Gets the cross staff state for the note.

Lua-supported (also as property).

Returns
true means that a note is in a cross staff.
twobyte FCNote::GetDisplacement ( ) const
inline

Returns the vertical note position on the staff.

Lua-supported (also as property).

Returns
0 is middle C. Positive values is above middle C, negative is below.
FCNoteEntry* FCNote::GetEntry ( ) const
inline

Returns the note entry object for the note.

Lua-supported (also as a read-only property).

bool FCNote::GetLegality ( ) const
inline

Gets the legality bit, that marks that the note is valid.

Every note must have this bit set for validity.

Lua-supported (also as property).

Returns
True if the note is marked as valid.
eNoteID FCNote::GetNoteID ( ) const
inline

Returns the unique note ID.

See SetNoteID for more info.

Lua-supported (also as property).

bool FCNote::GetPlayback ( ) const
inline

Gets the playback status for the note.

Lua-supported (also as property).

Returns
False means that the note will be muted. True means that it will play back (except when the note entry or layer settings mute).
twobyte FCNote::GetRaiseLower ( ) const
inline

Returns the raised/lowered state of the note.

Also please look the CalcPitchRaiseLower method.

Lua-supported (also as property).

Returns
0 is a normal note in the key. 1 is raised by one step. -1 is lowered by one step. 2 is double-raised, and so on.
bool FCNote::GetSpacing ( ) const
inline

Returns if the note should be used in the spacing algorithm or not.

Lua-supported (also as property).

Returns
True if note should be included in the music spacing algorithm.
void FCNote::GetString ( FCString pString,
FCKeySignature pKey,
bool  simplifydoublesharp = false,
bool  writtenpitch = false 
)

Creates a string representation of the note.

Syntax:

  • Note name in Upper case first (A-G)
  • Accidental sign, if available: #, b, ##, bb, ###, bbb, etc...
  • Octave number

This method requires the PDK_FRAMEWORK_PREFS define.

Lua-supported.

Parameters
pStringPointer to the string object that should contain the pitch string.
pKeyPointer to a key signature object, which will be used as input to produce the string. (The key signature could be obtained from the FCMeasure and FCCell classes.) This should NOT be the transposed key. If this is NULL, the key signature from the current entry's position will be used.
simplifydoublesharpIf true, simplifies "##" to "x". (Defaults to false.)
writtenpitchfalse = Get sounding pitch, true = Get written pitch. (Defaults to false.)
bool FCNote::GetTie ( ) const
inline

Gets the tie start state for the note.

Lua-supported (also as property).

Returns
true means that a tie starts on the note.
bool FCNote::GetTieBackwards ( ) const
inline

Gets the backwards tie state for the note.

Lua-supported (also as property).

Returns
true means that a tie ends on the note.
bool FCNote::IsHigherPitchThan ( FCNote pPitchCompareNote)

Returns true if the pitch is higher than the pitch in the parameter's note.

Lua-supported.

bool FCNote::IsIdenticalPitch ( FCNote pPitchNote)

Returns true if the pitch is identical to the supplied note.

Lua-supported.

bool FCNote::IsLowerPitchThan ( FCNote pPitchCompareNote)

Returns true if the pitch is lower than the pitch in the parameter's note.

Lua-supported.

void FCNote::MarkForErase ( )
inline

Marks the note for erase when the entry is saved.

Please note that this shouldn't normally be called directly, instead use methods such as FCNoteEntry.DeleteNote to immediatelly remove the note.

This mechanism makes it possible to, for example, continue to iterate through a note collection (=chord) until the entry have been saved.

Lua-supported.

void FCNote::SetAccidental ( bool  state)
inline

Sets the accidental state for the note.

Lua-supported (also as property).

Parameters
stateTrue to display the accidental.
void FCNote::SetAccidentalFreeze ( bool  state)
inline

Sets the freezed accidental state.

Lua-supported (also as property).

void FCNote::SetAccidentalParentheses ( bool  state)
inline

Sets the parentheses accidental state.

Lua-supported (also as property).

void FCNote::SetCrossStaff ( bool  state)
inline

Sets the cross staff state for the note.

(More than this is required to actually make it cross-staff...)

Todo:
Improve docs on how to make cross staff.

Lua-supported (also as property).

Parameters
statetrue means that a note is in a cross staff.
void FCNote::SetDisplacement ( twobyte  disp)
inline

Sets the note's vertical position on the staff. The displacement is relative to the key.

Lua-supported (also as property).

Parameters
disp0 is middle C in C major.
void FCNote::SetLegality ( bool  state)
inline

Sets the legality bit, marking that the note is valid.

Every note should have this bit set for validity.

Lua-supported (also as property).

Parameters
stateTrue to set the note as valid.
void FCNote::SetMIDIKey ( twobyte  midikey)

Sets the MIDI key number for the note.

If the note is on a regular notation staff, an enharmonic version of the note is set.

If the note is on a percussion staff, the percussion note is set.

This requires PDK_FRAMEWORK_PREFS to be defined.

void FCNote::SetNoteID ( eNoteID  noteid)
inline

Sets the unique note ID. Use with extreme care!

The note ID is a 1-based number for the note within the entry. It's referenced in the modification data records for the note (such as FCNoteheadMods, FCDotMods, and so on).

Lua-supported (also as property).

Parameters
noteidthe new note ID
void FCNote::SetPlayback ( bool  state)
inline

Sets if the note should play back or be muted.

This flag is ignored if HP is used during playback.

Lua-supported (also as property).

Parameters
stateTrue to play back. False to mute.
void FCNote::SetRaiseLower ( twobyte  amount)
inline

Raises or lowers the pitch of the note.

Lua-supported (also as property).

Parameters
amount0 is a normal diatonic note for the key. 1 is raised by one step. -1 is lowered by one step. 2 is double-raised, and so on.
void FCNote::SetSpacing ( bool  state)
inline

Sets if the note should be used in the spacing algorithm or not.

Lua-supported (also as property).

Parameters
stateTrue to include note in spacing.
bool FCNote::SetString ( FCString pString,
FCKeySignature pKey,
bool  writtenpitch 
)

Changes the note based on the string representation. See FCNote::GetString for syntax.

In addition to the syntax produced by FCNote::GetString, the lower-case 'x' can be used for double-sharp.

This method requires the PDK_FRAMEWORK_PREFS define.

Lua-supported.

Parameters
[in]pStringThe FCString object containing the pitch.
[in]pKeyPointer to the key signature object. If no key signature object was supplied, a temporary key signature object will be created, based on the entry's position. Percussion notation is handled separately.
[in]writtenpitchfalse = Set sounding pitch, true = Set written pitch
Returns
Returns true if the syntax was correct and the pitch was set.
void FCNote::SetTie ( bool  value)
inline

Sets the tie state for the note.

Lua-supported (also as property).

void FCNote::SetTieBackwards ( bool  value)
inline

Sets the "tie end" state for the note.

This method should normally not be used, since Finale handles this internally.

Lua-supported (also as property).