Finale PDK Framework 0.74
Public Member Functions | List of all members
FCBeamMod Class Reference

Class for custom beam adjustments (in Finale's Special Tools). More...

#include <ff_entrydetails.h>

Inheritance diagram for FCBeamMod:
__FCEntryDetail __FCBaseData __FCBase

Public Member Functions

const char * ClassName () const override
 Returns the name of the class, for diagnostic purposes. This method MUST be overwritten in each child class. More...
 
const PDKFRAMEWORK_CLASSID GetClassID () const override
 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...
 
 FCBeamMod (bool secondarybeam)
 The constructor. More...
 
bool Load (ENTNUM entnum, twobyte inci) override
 Loads the data at the given entry number and inci. More...
 
bool Save () override
 Overridden Save() method for FCBeamMod. More...
 
bool SaveNew () override
 Overridden SaveNew() method for FCBeamMod. More...
 
void UseUpStemData (bool useupstem)
 Sets if upstem or downstem data should be loaded/saved. Finale stores upstem and downstem data in separate pools with different locator keys. It then applies one of them based on the current stem direction in the current view (for example, the part or the score). More...
 
void SetNoteEntry (FCNoteEntry *pEntry) override
 Overridden method to assign a note entry with the data. More...
 
void SetMode (twobyte mode)
 Sets the Beaming Style mode where the beam data will be "active". This mode is controlled by Document Options/Beams (the FCMiscDocPrefs::GetBeamSlopeStyle method). More...
 
void SetLeftHorizontalOffset (twobyte offset)
 Sets the horizontal left-side offset. More...
 
void SetRightHorizontalOffset (twobyte offset)
 Sets the horizontal right-side offset. More...
 
void SetLeftVerticalOffset (twobyte offset)
 Sets the vertical left-side offset. More...
 
void SetRightVerticalOffset (twobyte offset)
 Sets the vertical right-side offset. More...
 
void SetThickness (twobyte thickness)
 Sets the beam thickness. This can ONLY be set for primary beam data. More...
 
void SetDefaultBeamThickness ()
 Sets the default (100%) beam thickness. This can ONLY be set for primary beam data. More...
 
void SetDefaultMode ()
 Sets the beaming mode of the beam to document's default. More...
 
void SetBeamNumber (twobyte beamnumber)
 Sets the 1-based beam that the data is connected to. Don't change this for loaded data. More...
 
twobyte GetLeftHorizontalOffset () const
 Returns the horizontal left-side offset. More...
 
twobyte GetRightHorizontalOffset () const
 Returns the horizontal right-side offset. More...
 
twobyte GetLeftVerticalOffset () const
 Returns the vertical left-side offset. More...
 
twobyte GetRightVerticalOffset () const
 Gets the vertical right-side offset. More...
 
twobyte GetMode () const
 Returns the Beaming Style mode where the beam data will be "active". This mode is controlled by Document Options/Beams. More...
 
twobyte GetBeamDuration () const
 Gets the duration (in EDUs) of the beam. More...
 
twobyte GetBeamNumber ()
 Returns the 1-based number of the beam. 1 is the 8th-note beam. More...
 
twobyte GetThickness () const
 Returns the beam thickness. This can ONLY be set for primary beam data. More...
 
twobyte CalcLeftVerticalPos (twobyte default_separation)
 Calculates the secondary beam's vertical left position compared to the primary beam's vertical left pos. More...
 
twobyte CalcRightVerticalPos (twobyte default_separation)
 Calculates the secondary beam's vertical right position compared to the primary beam's vertical right pos. More...
 
bool IsSecondaryBeam ()
 Returns true if the data is connected to a secondary beam, otherwise it's primary beam data. More...
 
bool IsUpStem ()
 Returns true if the data is connected to up-stem data, otherwise it's connected to down-stem data. More...
 
bool LoadForBeamNumber (int beamnumber)
 Loads the data for the specified 1-based beam number. More...
 
void DebugDump () override
 Outputs the class data/information for debugging purposes. More...
 
- Public Member Functions inherited from __FCEntryDetail
 __FCEntryDetail ()
 The constructor.
 
void SetEntnumAndInci (ENTNUM entnum, twobyte inci)
 Sets the entry number reference and inci for the object.
 
bool Reload () override
 Overridden Reload() method, that supports complex (mixed) data. More...
 
bool SaveAs (ENTNUM entnum, twobyte inci)
 Saves the data at the given entry number and inci. More...
 
bool LoadFirst () override
 Overloaded version of LoadFirst that will load the first inci for the entry. SetNoteEntry must be called first. More...
 
bool LoadNext () override
 Overloaded version of LoadNext. More...
 
FCNoteEntryGetNoteEntry ()
 Returns a pointer to the mapped note entry. More...
 
twobyte GetItemInci () const
 Returns the inci number for the stored object. More...
 
ENTNUM GetItemEntryNumber () const
 Returns the note entry number for the stored object. More...
 
- Public Member Functions inherited from __FCBaseData
EDOCID GetConnectedDocID () const
 Returns the document ID that was connected to the last load/save of the data. More...
 
bool VerifyConnectedDocID ()
 Checks that the stored document ID for the data object matches the current document's ID. More...
 
virtual EXTAG Tag () const =0
 The Enigma tag for the derived class. More...
 
virtual EVERSION EnigmaVersion () const
 The Enigma version for save/load/create/delete operations. More...
 
virtual int DataSizeLoad () const =0
 Returns the data size for the data structure that should be loaded. More...
 
virtual int DataSizeSave () const
 Returns the data size for the data structure that should be saved or created. More...
 
void _CloneFrom (__FCBaseData *pSource)
 For internal use only. Copies object data (except data block) from another object. More...
 
virtual void CloneMemoryFrom (__FCBaseData *pSource)
 
const EDataID * _GetDataID ()
 Intended ONLY for the _CloneFrom implementation. More...
 
int _GetLoadedSize () const
 Intended ONLY for the _CloneFrom implementation. More...
 
const void * GetDataBlock ()
 Intended ONLY for the _CloneFrom implementation. More...
 
EXTAG GetCustomTag () const
 Returns the custom Enigma tag, if any. More...
 
void SetCustomTag (EXTAG tag)
 Sets the custom Enigma tag, for classes that support multiple Enigma tags. More...
 
 __FCBaseData ()
 The constructor.
 
virtual ~__FCBaseData ()
 Virtual destructor.
 
virtual bool DeleteData ()
 Deletes the associated data from Finale's database. Be careful when deleting multiple objects. More...
 
virtual bool DeepDeleteData ()
 Deletes data and all data that's connected to the object. More...
 
virtual bool LoadLast ()
 Loads the very last element in the database, if any. More...
 
virtual bool LoadPrevious ()
 Loads the previous element in the database, if any. More...
 
bool RelinkToCurrentView ()
 Relinks the contents in the current view so that the score and part(s) match. More...
 
bool RelinkToScore ()
 Relinks all parts to the contents of the score. More...
 
__FCBaseDataCreateClone ()
 Creates an identical copy of an object. More...
 
void DebugDataDump () override
 Outputs a memory dump of the data block in the object for debugging purposes. More...
 
void DebugDataByteArrayDump () override
 Outputs a memory dump of the data block in the object for debugging purposes, as a C++ byte array. More...
 
void DebugDataOffsetDump (int offset, int size)
 For debug mode only. Dumps a data memory block at a specific offset and with a specific size.
 
FCNumbersCreateRawDataDump ()
 Creates a byte collection with the raw loaded data block for the object (if the object type supports single data blocks). This method is only intended for debug purposes. More...
 
- Public Member Functions inherited from __FCBase
virtual ~__FCBase ()
 Virtual destructor, so all inherited classes get the virtual destructor.
 
void DebugMsgInt (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...
 
void Set16BitFlag (FLAG_16 *flag, FLAG_16 flagbits, bool state)
 Sets a 16 bit flag. More...
 
void Set32BitFlag (FLAG_32 *flag, FLAG_32 flagbits, bool state)
 Sets/resets a 32 bit flag, by using a bit mask. 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...
 
int GetBitCount (FLAG_32 flag)
 Returns the total number of set bits in a 32-bit unsigned int.
 
void SetSpecific32Bit (FLAG_32 *flag, int bitnumber, bool state)
 Sets/resets a single bit in a 32 bit flag, by specifying one specific bit. 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 (const __FCBase *pCompareObject) const
 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_ACTIVELYRIC , FCID_ALLOTMENT ,
  FCID_ARTICULATION , FCID_ARTICULATIONDEF , FCID_BACKWARDREPEAT , FCID_BASELINE ,
  FCID_BEAMMOD , FCID_BEATCHARTELEMENT , FCID_BOOKMARK , 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_ENIGMATEXTSTYLE , 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_KEYMODEDEF , FCID_KEYSIGNATURE , FCID_LAYERPREFS , FCID_LYRICSBASELINE ,
  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_PARTSTAFFVOICING , FCID_PERCUSSIONNOTEMOD , FCID_PIANOBRACEPREFS ,
  FCID_PLAYBACKPREFS , FCID_RAWTEXT , FCID_REPEATPREFS , FCID_SECONDARYBEAMBREAKMOD ,
  FCID_BEAMEXTENSIONMOD , 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 DebugOutInt (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, double 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...
 
- Protected Member Functions inherited from __FCBaseData
virtual void * Allocate ()=0
 
virtual void Deallocate ()
 
virtual bool IsDynamicSize ()
 
bool LoadDataBlock ()
 Loads the data. If the object is of dynamic size, the old memory block is freed and a new is allocated.
 
void ClearData ()
 
virtual twobyte CalcLastInci ()
 For internal use only! More...
 
virtual __FCBaseDataCreateObject ()=0
 Creates a new instance of the object. More...
 
bool DataIsLoaded () const
 Returns true is any data has been loaded into the object.
 
void _TagDocumentID ()
 For internal use only. More...
 
- Protected Member Functions inherited from __FCBase
 __FCBase ()
 The constructor.
 
- Protected Attributes inherited from __FCBaseData
EDOCID _connecteddocID
 The "connected" document ID., which is the document the where the document was loaded (or last saved). This is for a mechanism to prevent resaving of certain data in other documents.
 
void * _datablock
 Pointer to the object's data block, the meaning is implementation-specific for each derived subclass.
 
bool _heapdatablock
 Variable that tells if _datablock is dynamically created on the heap (and should be deleted at object destruction).
 
int _loadedsize
 Loaded size of the data block for a loaded object, in bytes. Since the datablock is implementation-specific, the _loadedsize should be updated by child classes that create new data. More...
 
EDataID _dataid
 The EdataID for the last loaded/saved object.
 

Detailed Description

Class for custom beam adjustments (in Finale's Special Tools).

This class must be set to the correct beaming mode (controlled by the user in the Beaming Style in Document Options), using the SetMode method for the beam data to "be active".

For secondary beams, this class controls only the left and right vertical position offsets, not the beam width.

This class uses many different Enigma tags, but this is handled automatically by the constructor and SetNoteEntry. You can manually override the stem direction for the data with UseUpStemData, but it must be done before loading the data.

New data for secondary beams must be connected with the SetBeamNumber method.

Constructor & Destructor Documentation

◆ FCBeamMod()

FCBeamMod::FCBeamMod ( bool  secondarybeam)
inline

The constructor.

Lua-supported.

This requires PDK_FRAMEWORK_PREFS to be defined for a proper initialization.

Parameters
secondarybeamIf true, handle secondary beam data. If false, handle primary beam data.

Member Function Documentation

◆ CalcLeftVerticalPos()

twobyte FCBeamMod::CalcLeftVerticalPos ( twobyte  default_separation)
inline

Calculates the secondary beam's vertical left position compared to the primary beam's vertical left pos.

Lua-supported.

Parameters
default_separationThe document's default beam separation value, as found in FCDistancePrefs.
Returns
For primary beams, this method will always return 0. For secondary beams, the position relative to the primary beam will be returned. Positive values are above the primary beam.

◆ CalcRightVerticalPos()

twobyte FCBeamMod::CalcRightVerticalPos ( twobyte  default_separation)
inline

Calculates the secondary beam's vertical right position compared to the primary beam's vertical right pos.

Lua-supported.

Parameters
default_separationThe document's default beam separation value, as found in FCDistancePrefs.
Returns
For primary beams, this method will always return 0. For secondary beams, the position relative to the primary beam will be returned. Positive values are above the primary beam.

◆ ClassName()

const char * FCBeamMod::ClassName ( ) const
inlineoverridevirtual

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

Lua-supported.

Reimplemented from __FCEntryDetail.

◆ DebugDump()

void FCBeamMod::DebugDump ( )
inlineoverridevirtual

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 __FCEntryDetail.

◆ GetBeamDuration()

twobyte FCBeamMod::GetBeamDuration ( ) const
inline

Gets the duration (in EDUs) of the beam.

Lua-supported (also as property) (0.55).

Returns
Returns 0 on error.

◆ GetBeamNumber()

twobyte FCBeamMod::GetBeamNumber ( )
inline

Returns the 1-based number of the beam. 1 is the 8th-note beam.

Lua-supported.

Returns
Returns 0 on error, otherwise the 1-based beam.

◆ GetClassID()

const PDKFRAMEWORK_CLASSID FCBeamMod::GetClassID ( ) const
inlineoverridevirtual

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.

This method must be overwritten by all child classes.

Lua-supported (also read-only property) (0.55).

Implements __FCBaseData.

◆ GetLeftHorizontalOffset()

twobyte FCBeamMod::GetLeftHorizontalOffset ( ) const
inline

Returns the horizontal left-side offset.

Lua-supported (also as property).

◆ GetLeftVerticalOffset()

twobyte FCBeamMod::GetLeftVerticalOffset ( ) const
inline

Returns the vertical left-side offset.

Lua-supported (also as property).

◆ GetMode()

twobyte FCBeamMod::GetMode ( ) const
inline

Returns the Beaming Style mode where the beam data will be "active". This mode is controlled by Document Options/Beams.

Lua-supported (also as property) (0.55).

Returns
One of the BEAMSTYLE_ constants.
  • Mode 0 (BEAMSTYLE_ENDNOTESONLY) is "Base Slope on End Notes Only"
  • Mode 1 (BEAMSTYLE_FLATTENALL) is "Flatten All Beams"
  • Mode 2 (BEAMSTYLE_FLATTENSTANDARD) is "Flatten Beams Based on Standard Note"
  • Mode 3 (BEAMSTYLE_FLATTENEXTREME) is "Flatten Beams Based on Extreme Note"

◆ GetRightHorizontalOffset()

twobyte FCBeamMod::GetRightHorizontalOffset ( ) const
inline

Returns the horizontal right-side offset.

Lua-supported (also as property).

◆ GetRightVerticalOffset()

twobyte FCBeamMod::GetRightVerticalOffset ( ) const
inline

Gets the vertical right-side offset.

Lua-supported (also as property).

◆ GetThickness()

twobyte FCBeamMod::GetThickness ( ) const
inline

Returns the beam thickness. This can ONLY be set for primary beam data.

Lua-supported (also as property).

Returns
The beam thickness (for primary beam data) in EFIX (1/64 EVPU). For secondary beam data or for default thickness, this method returns -1.

◆ IsSecondaryBeam()

bool FCBeamMod::IsSecondaryBeam ( )
inline

Returns true if the data is connected to a secondary beam, otherwise it's primary beam data.

Lua-supported.

◆ IsUpStem()

bool FCBeamMod::IsUpStem ( )
inline

Returns true if the data is connected to up-stem data, otherwise it's connected to down-stem data.

Lua-supported.

◆ Load()

bool FCBeamMod::Load ( ENTNUM  entnum,
twobyte  inci 
)
inlineoverridevirtual

Loads the data at the given entry number and inci.

Returns
True on success.

Reimplemented from __FCEntryDetail.

◆ LoadForBeamNumber()

bool FCBeamMod::LoadForBeamNumber ( int  beamnumber)
inline

Loads the data for the specified 1-based beam number.

This method is primarily useful for secondary beams, but it works for a primary beam as well, if the input value is 1. The FCBeamMod instance must have been constructed correctly as a primary beam (for an input value of 1) or secondary beam (for an input value greater than 1).

Lua-supported (0.63).

Parameters
beamnumberA 1-based number, such as 2 for 16th beams, 3 for 32nd beams, etc.

◆ Save()

bool FCBeamMod::Save ( )
inlineoverridevirtual

Overridden Save() method for FCBeamMod.

Reimplemented from __FCBaseData.

◆ SaveNew()

bool FCBeamMod::SaveNew ( )
inlineoverridevirtual

Overridden SaveNew() method for FCBeamMod.

Reimplemented from __FCEntryDetail.

◆ SetBeamNumber()

void FCBeamMod::SetBeamNumber ( twobyte  beamnumber)
inline

Sets the 1-based beam that the data is connected to. Don't change this for loaded data.

This method only works for secondary beams.

Lua-supported.

Parameters
beamnumberA 1-based number, such as 2 for 16th beams, 3 for 32nd beams, etc.

◆ SetDefaultBeamThickness()

void FCBeamMod::SetDefaultBeamThickness ( )
inline

Sets the default (100%) beam thickness. This can ONLY be set for primary beam data.

Lua-supported.

◆ SetDefaultMode()

void FCBeamMod::SetDefaultMode ( )

Sets the beaming mode of the beam to document's default.

Lua-supported.

◆ SetLeftHorizontalOffset()

void FCBeamMod::SetLeftHorizontalOffset ( twobyte  offset)
inline

Sets the horizontal left-side offset.

Remarks
This field cannot be edited in the Finale UI and therefore is almost always zero. However, you can change it to a non-zero value to get finer control over the angle of the beam. The beam itself still begins or ends at the 0 horizontal location, but the angle behaves as though the horizontal location were offset by this amount.
For primary beams, the UI does not show this value, even though it is there. For secondary beams, the UI does show this value, though it cannot be modified from the UI.

Lua-supported (also as property).

◆ SetLeftVerticalOffset()

void FCBeamMod::SetLeftVerticalOffset ( twobyte  offset)
inline

Sets the vertical left-side offset.

Lua-supported (also as property).

◆ SetMode()

void FCBeamMod::SetMode ( twobyte  mode)
inline

Sets the Beaming Style mode where the beam data will be "active". This mode is controlled by Document Options/Beams (the FCMiscDocPrefs::GetBeamSlopeStyle method).

Since the beam data will not be active (i.e., visible) unless its mode matches the saved mode in FCMiscDocPrefs::GetBeamSlopeStyle, you should generally prefer SetDefaultMode to this method. However, in a case where you already know the mode you need and wish to change a collection of FCBeamMod in one batch, you can use this method instead for a slight gain in efficiency. You can also, of course, make the FCBeamMod intentionally inactive by changing the mode to a different value here.

  • Mode 0 (BEAMSTYLE_ENDNOTESONLY) is "Base Slope on End Notes Only"
  • Mode 1 (BEAMSTYLE_FLATTENALL) is "Flatten All Beams"
  • Mode 2 (BEAMSTYLE_FLATTENSTANDARD) is "Flatten Beams Based on Standard Note"
  • Mode 3 (BEAMSTYLE_FLATTENEXTREME) is "Flatten Beams Based on Extreme Note"

Lua-supported (also as property) (0.61).

Parameters
modeValid values are 0-3.

◆ SetNoteEntry()

void FCBeamMod::SetNoteEntry ( FCNoteEntry pEntry)
inlineoverridevirtual

Overridden method to assign a note entry with the data.

Reimplemented from __FCEntryDetail.

◆ SetRightHorizontalOffset()

void FCBeamMod::SetRightHorizontalOffset ( twobyte  offset)
inline

Sets the horizontal right-side offset.

Remarks
See remarks at SetLeftHorizontalOffset.

Lua-supported (also as property).

◆ SetRightVerticalOffset()

void FCBeamMod::SetRightVerticalOffset ( twobyte  offset)
inline

Sets the vertical right-side offset.

Lua-supported (also as property).

Parameters
offsetThe offset value. Positive is upwards.

◆ SetThickness()

void FCBeamMod::SetThickness ( twobyte  thickness)
inline

Sets the beam thickness. This can ONLY be set for primary beam data.

Lua-supported (also as property).

Parameters
thicknessBeam thickness in EFIX (1/64 EVPU), or -1 for the default.

◆ UseUpStemData()

void FCBeamMod::UseUpStemData ( bool  useupstem)
inline

Sets if upstem or downstem data should be loaded/saved. Finale stores upstem and downstem data in separate pools with different locator keys. It then applies one of them based on the current stem direction in the current view (for example, the part or the score).

Remarks
Normally this value is set automatically by SetNoteEntry using FCNoteEntry::CalcStemUp. However in certain circumstances, when you will be flipping or reversing stem directions, you may need to override the automatic setting. If you need to do so, call UseUpStemData immediately after calling SetNoteEntry and before calling any Load, Save, or Delete function.
Note that an entry can store data for both upstem and downstem. Entries can be displayed in contexts where they are upstem and other contexts where they are downstem, for example when displaying concert pitch versus transposed pitch or when displaying the entry in a part versus the score. The direction of the stem in context determines which version of FCBeamMod Finale displays.
Generally speaking, neither staff crossing nor stem reversal change the stem context for which FCBeamMod data Finale uses. This can lead to confusing situations. The first note of a beam with stems up can be crossed to a higher staff, and with stem reversal it appears to be down-stem. However, for the purposes of FCBeamMod it is still up-stem.

Lua-supported (0.74)

Parameters
useupstemTrue - use the data for stem up. False - use the data for stem down.