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

Class to load a layer on the same staff. This class is for example suitable when working with music lines that moves over barlines. Please note that this class uses 0-based layer numbers. More...

#include <ff_noteframe.h>

Inheritance diagram for FCNoteEntryLayer:
__FCNoteEntryCollection __FCCollection __FCIteratorBase __FCBase

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...
 
 FCNoteEntryLayer (twobyte layer, twobyte staff, twobyte startmeas=1, twobyte endmeas=-1)
 The constructor. More...
 
virtual ~FCNoteEntryLayer ()
 The destructor.
 
void ClearFrames ()
 Clears the collection and frees all associated TGF frame data. More...
 
bool DeleteAllNullEntries ()
 Deletes all entries from the layer (and TGFs) that are 0 in length. More...
 
bool DeleteAllRestFrames ()
 Deletes all full frames (measures) that only contains of rests in the note entry layer. More...
 
void ClearAllEntries ()
 Removes all the entries from the layer, but keeps all the TGFs. So it's possible to (for example) save the cleared area. More...
 
twobyte GetLayerIndex () const
 Returns the 0-based layer number where the layer data is loaded/saved. More...
 
twobyte GetStaff () const
 Returns the 1-based staff number where the layer is loaded/saved. More...
 
twobyte GetStartMeasure () const
 Returns the 1-based start measure number. More...
 
twobyte GetEndMeasure () const
 Returns the 1-based end measure number. More...
 
bool GetLoadMirrors () const
 Returns if mirror frames should be loaded. The default is that they are loaded. More...
 
bool GetUseVisibleLayer () const
 Gets the value that controls to only load visible layers. More...
 
void SetUseVisibleLayer (bool value)
 Sets the value to only load visible layers. More...
 
void SetLayerIndex (twobyte layerno)
 Sets the layer number. USE WITH EXTREME CARE! More...
 
void SetLoadMirrors (bool state)
 Sets if mirror frames should be loaded. The default is that they are loaded. More...
 
bool Load ()
 Loads the note entries for the layer. Mirror frames are loaded based on the GetLoadMirrors setting. More...
 
bool Save ()
 Saves the note entries for the layer. Mirrors frames are never saved. More...
 
FCNoteEntryLayerCreateCloneEntries (twobyte layerindex_redir, twobyte staff_redir, twobyte startmeasure_redir)
 Creates a cloned copy that can be saved as a copy. The cloned copy is recreated from reloaded Finale data. No detail records are kept, since all entry numbers will be 0 until they are saved. More...
 
FCNoteEntriesCreateRegionEntries (FCMusicRegion *pRegion)
 Extracts just the entries that are within the region into a collection. More...
 
FCNoteEntryInsertEntriesBefore (FCNoteEntry *pPositionEntry, int count)
 Inserts empty entries to the TGF frame before the indicated point. More...
 
FCNoteEntryInsertEntriesAfter (FCNoteEntry *pPositionEntry, int count, bool nextmeasure=false)
 Inserts empty entries to the TGF frame at the indicated point. More...
 
bool CloneTuplets (FCNoteEntryLayer *pSource)
 Copies the tuplets from one layer to another identical layer after a layer has been cloned. Use with care! More...
 
bool IsInSuccession (FCNoteEntry *pEntry1, FCNoteEntry *pEntry2)
 Verifies that 2 entries really appears directly after one another in the layer. More...
 
TimeEdu32 CalcFrameDuration (int measurenumber)
 Calculates the duration of a frame (in one measure) based on the entries in the frame. More...
 
int CalcMeasureSpan ()
 Returns the total number of measures the layer spans. More...
 
int CalcRegionCount (FCMusicRegion *pRegion)
 Calculates the number of entries that are within the region. More...
 
FCNoteEntryGetRegionItemAt (int index, FCMusicRegion *pRegion)
 Returns the indexed item that appear in the region. More...
 
int ForEachInRegion (FCIteratorHandler *pIterator, FCMusicRegion *pRegion)
 Iterates through the layer's entries that fit in a region. More...
 
FCNoteEntryGetItemAt (int index)
 Overridden GetItemAt() method.
 
virtual void DebugDump ()
 Outputs the class data/information for debugging purposes. More...
 
- Public Member Functions inherited from __FCNoteEntryCollection
FCNoteEntryFindEntryNumber (ENTNUM entnum)
 Finds the entry item in the collection with the given note entry number. More...
 
FCNoteEntryGetItemAt (int index)
 Overridden version of GetItemAt().
 
- Public Member Functions inherited from __FCCollection
 __FCCollection ()
 The constructor.
 
virtual ~__FCCollection ()
 The virtual destructor, which deallocates the array and also all its elements. More...
 
int GetCount () const
 Returns the number of elements of the collection. More...
 
void Add (__FCBase *pNewItem)
 Adds an element to the end of the collection. More...
 
bool UniqueAdd (__FCBase *pNewItem)
 Adds an element to the end of the collection, but only if it doesn't exist in the collection before. More...
 
void InsertItemAt (__FCBase *pNewItem, int index)
 Inserts an item into the collection. More...
 
bool ElementExists (__FCBase *pQueryItem)
 Returns true if the element is found in the collection, otherwise false. More...
 
void ClearAll ()
 Destroys all the objects in the collection and empties the collection. More...
 
void DetachAll ()
 Removes all the objects from the collection, without freeing/destroying the objects. More...
 
__FCBaseGetItemAt (int index)
 Returns the object at the index position. Index is 0-based. More...
 
__FCBaseGetLastItem ()
 Returns the last item in the collection.
 
__FCBaseoperator[] (int index)
 Identical to the GetItemAt method.
 
int GetIndexOf (__FCBase *pObject)
 Returns the 0-based order index for the object within the collection. More...
 
__FCBaseDetachItemAt (int index)
 Removes the object at the index position. Index is 0-based. More...
 
bool ClearItemAt (int index)
 Deletes the object at the index position and disposes the object. Index is 0-based. More...
 
int ToEndFrom (int index, FCIteratorHandler *pIterator)
 Processes one element after another and iterates from one specific index to the end of the collection. More...
 
virtual int ForEach (FCIteratorHandler *pIterator)
 Processes all elements in the collection (starting with item 0), or until the iterator Iterate() returns false. More...
 
virtual int ForEachIndex (FCIteratorHandler *pIterator)
 Same as ForEach, but the IterateIndex callback of the iterator handler is used instead.
 
virtual __FCBaseFindFirst (FCIteratorHandler *pIterator)
 Process elements until a match is found. More...
 
__FCBaseFindUserData (void *data_to_find)
 Returns the first element in the collection that has the indicated userdata. More...
 
bool Sort (FCIteratorHandler *pIterator)
 Sorts the elements of. More...
 
bool Swap (int index1, int index2)
 Swaps to items in the collection. More...
 
bool IsEmpty ()
 Returns true if the collection contains no elements. More...
 
int MoveFrom (__FCCollection *pOtherCollection, bool unique=false)
 Moves elements from another collection into this collection. The other will be empty after the operation. More...
 
bool IsIdentical (__FCCollection *pCompareCollection)
 Returns true if two collections are considered to be identical. More...
 
- Public Member Functions inherited from __FCIteratorBase
 __FCIteratorBase ()
 The constructor. 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

Class to load a layer on the same staff. This class is for example suitable when working with music lines that moves over barlines. Please note that this class uses 0-based layer numbers.

This class requires PDK_FRAMEWORK_ENTRIES to be defined.

The default for this class is to load/save a layer only if it's visible. However, this can be overwritten by using the SetUseVisibleLayer (setting it to false) method, prior to calling Load.

Do NOT call ClearAll directly for this class! Instead use ClearFrames().

Constructor & Destructor Documentation

FCNoteEntryLayer::FCNoteEntryLayer ( twobyte  layer,
twobyte  staff,
twobyte  startmeas = 1,
twobyte  endmeas = -1 
)

The constructor.

Mirrors defaults to load.

Parameters
layerThe 0-based layer number
staffThe 1-based staff number
startmeasThe (optional) 1-based start measure to start the frame loading.
endmeasThe (optional) 1-based end measure to end the frame loading. -1 means until end of document.

Member Function Documentation

TimeEdu32 FCNoteEntryLayer::CalcFrameDuration ( int  measurenumber)

Calculates the duration of a frame (in one measure) based on the entries in the frame.

Lua-supported.

Parameters
measurenumberThe measure number for the frame. If the measure number is less than the start measure or greater than the end measure, 0 will be returned.

The duration of the frame, in EDUs.

int FCNoteEntryLayer::CalcMeasureSpan ( )
inline

Returns the total number of measures the layer spans.

Lua-supported.

Returns
the number of measures of the layer. Both start measure are included in the span. For example, if the start and end measure are identical, 1 is returned.
int FCNoteEntryLayer::CalcRegionCount ( FCMusicRegion pRegion)

Calculates the number of entries that are within the region.

This takes partial measure selections into account.

Lua-supported.

Parameters
pRegionThe region.
Returns
The number of entries that are within the region.
virtual const char* FCNoteEntryLayer::ClassName ( )
inlinevirtual

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

Lua-supported.

Reimplemented from __FCCollection.

void FCNoteEntryLayer::ClearAllEntries ( )
inline

Removes all the entries from the layer, but keeps all the TGFs. So it's possible to (for example) save the cleared area.

Lua-supported.

void FCNoteEntryLayer::ClearFrames ( )
inline

Clears the collection and frees all associated TGF frame data.

bool FCNoteEntryLayer::CloneTuplets ( FCNoteEntryLayer pSource)

Copies the tuplets from one layer to another identical layer after a layer has been cloned. Use with care!

This method should be called after CreateCloneEntries has been called and after the layer has been saved (so valid entry numbers exist).

Lua-supported.

Returns
false - method failed (most likely because the layers were different in length).
FCNoteEntryLayer * FCNoteEntryLayer::CreateCloneEntries ( twobyte  layerindex_redir,
twobyte  staff_redir,
twobyte  startmeasure_redir 
)

Creates a cloned copy that can be saved as a copy. The cloned copy is recreated from reloaded Finale data. No detail records are kept, since all entry numbers will be 0 until they are saved.

The tuplet information also needs to be recreated after the entry numbers are availabe. (Use CloneTuplets)

Lua-supported.

Parameters
layerindex_redirThe 0-based layer index to redirect the output to.
staff_redirThe 1-based staff number to redirect the output to.
startmeasure_redirThe start measure to redirect the output to.
FCNoteEntries * FCNoteEntryLayer::CreateRegionEntries ( FCMusicRegion pRegion)

Extracts just the entries that are within the region into a collection.

The entry objects themselves are their own objects, but they reference the entry data in the FCNoteEntryLayer object. Which means: if the FCNoteEntryLayer object is deleted the collection becomes invalid.

The caller is responsible for deleting the returned object after use.

virtual void FCNoteEntryLayer::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 __FCCollection.

bool FCNoteEntryLayer::DeleteAllNullEntries ( )

Deletes all entries from the layer (and TGFs) that are 0 in length.

This requires that the layer contents has been saved before.

All old collection pointers will be invalid after thisoperation, so all outside references to entries in the collection must be refreshed.

Another limitation of this method is that the tuplet data in the TGF will be empty afterwards, so reload the layer if tuplet references (such as FCNoteEntry::IsPartOfTuplet) are necessary.

Lua-supported.

Returns
True if successful. False if entries without entry numbers are found.
bool FCNoteEntryLayer::DeleteAllRestFrames ( )

Deletes all full frames (measures) that only contains of rests in the note entry layer.

This requires that the layer contents has been saved before.

All old collection pointers will be invalid after thisoperation, so all outside references to entries in the collection must be refreshed.

Another limitation of this method is that the tuplet data in the TGF will be empty afterwards, so reload the layer if tuplet references (such as FCNoteEntry::IsPartOfTuplet) are necessary.

Lua-supported.

\return True if full frames are deleted. False if entries without entry numbers

are found or if nothing was deleted.

int FCNoteEntryLayer::ForEachInRegion ( FCIteratorHandler pIterator,
FCMusicRegion pRegion 
)

Iterates through the layer's entries that fit in a region.

Parameters
pIteratorThe iterator handler to use.
pRegionThe region where the entries should fit.
Returns
The number of entries processed.
twobyte FCNoteEntryLayer::GetEndMeasure ( ) const
inline

Returns the 1-based end measure number.

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

twobyte FCNoteEntryLayer::GetLayerIndex ( ) const
inline

Returns the 0-based layer number where the layer data is loaded/saved.

Lua-supported (also as property).

bool FCNoteEntryLayer::GetLoadMirrors ( ) const
inline

Returns if mirror frames should be loaded. The default is that they are loaded.

Lua-supported (also as property).

FCNoteEntry * FCNoteEntryLayer::GetRegionItemAt ( int  index,
FCMusicRegion pRegion 
)

Returns the indexed item that appear in the region.

This method should be used instead of GetItemAt when partial measures are supported.

Lua-supported.

Parameters
indexThe 0-based index for the item.
pRegionThe region
Returns
NULL if no element was found, otherwise the pointer to the entry.
twobyte FCNoteEntryLayer::GetStaff ( ) const
inline

Returns the 1-based staff number where the layer is loaded/saved.

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

twobyte FCNoteEntryLayer::GetStartMeasure ( ) const
inline

Returns the 1-based start measure number.

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

bool FCNoteEntryLayer::GetUseVisibleLayer ( ) const
inline

Gets the value that controls to only load visible layers.

Lua-supported (also as property).

Returns
true - Only load a layer if it's visible. false - Load a layer even if it's invisible.
FCNoteEntry * FCNoteEntryLayer::InsertEntriesAfter ( FCNoteEntry pPositionEntry,
int  count,
bool  nextmeasure = false 
)

Inserts empty entries to the TGF frame at the indicated point.

The legality of the new entries must be set before they can be saved.

Lua-supported.

Parameters
pPositionEntryEntry in the layer after where the new entries should be inserted. If this is NULL and the layer is empty, entries will be added to the first measure of the layer.
countNumber of entries to add.
nextmeasureOptional parameter. Set to false by default. Set to true if the entry should be added to the next measure, which will only work if the is pPositionEntry parameter is the last in the measure.
Returns
Pointer to the first created entry.
FCNoteEntry * FCNoteEntryLayer::InsertEntriesBefore ( FCNoteEntry pPositionEntry,
int  count 
)

Inserts empty entries to the TGF frame before the indicated point.

The legality of the new entries must be set before they can be saved.

Lua-supported.

Parameters
pPositionEntryEntry in the layer before where the new entries should be inserted.
countNumber of entries to insert.
Returns
Pointer to the first created entry.
bool FCNoteEntryLayer::IsInSuccession ( FCNoteEntry pEntry1,
FCNoteEntry pEntry2 
)
inline

Verifies that 2 entries really appears directly after one another in the layer.

This method checks beyond barlines, but if the entries appear on each side of completely empty measure(s) they are judged to not be in succession.

Lua-supported.

Parameters
pEntry1Pointer to the left-side entry.
pEntry2Pointer to the right-side entry.
Returns
true - pEntry1 appears directly before pEntry2. false - pEntry2 is not the immediate succesive entry to pEntry1.
bool FCNoteEntryLayer::Load ( )

Loads the note entries for the layer. Mirror frames are loaded based on the GetLoadMirrors setting.

Lua-supported.

Returns
True on success.
bool FCNoteEntryLayer::Save ( )

Saves the note entries for the layer. Mirrors frames are never saved.

Lua-supported.

Returns
True on success.
void FCNoteEntryLayer::SetLayerIndex ( twobyte  layerno)

Sets the layer number. USE WITH EXTREME CARE!

This method changes the layer number internally. Make ABSOLUTELY sure that the original TGF source is removed, otherwise data corruption will appear.

Lua-supported (also as property).

void FCNoteEntryLayer::SetLoadMirrors ( bool  state)
inline

Sets if mirror frames should be loaded. The default is that they are loaded.

Lua-supported (also as property).

void FCNoteEntryLayer::SetUseVisibleLayer ( bool  value)
inline

Sets the value to only load visible layers.

Lua-supported (also as property).

Parameters
valuetrue - Only load a layer if it's visible. false - Load a layer even if it's invisible.