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

Base class for "other" data with incis of the __FCInciOther class (where it's common to collect all incis from the same CMPER.) More...

#include <ff_basecollection.h>

Inheritance diagram for __FCCollectionInciOther:
__FCCollectionData __FCCollection __FCIteratorBase __FCBase FCBeatChartElements FCCellClefChanges FCChordSuffixElements FCCompositeTimeSigBottom FCCompositeTimeSigTop FCExpressions FCFretboardGroupDefs FCOtherIncis FCPageGraphics FCPageTexts FCPercussionLayoutNotes FCSeparatePlacements FCSmartShapeMeasureMarks FCStaffStyleAssigns FCStaffStyleDefs FCSystemStaves FCTempoElements FCTextRepeats

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...
 
virtual bool DeleteDataForItem (CMPER cmper)
 Deletes all subrecords (incis) from the Finale database for a specific item (cmper). More...
 
bool SaveDataAs (CMPER cmperfrom, CMPER cmperto)
 Resaves all subrecords (incis) from the Finale database for a specific item (cmper) to another item (cmper). The incis at the source location are not removed. More...
 
virtual int LoadAllForItem (CMPER cmper)
 Loads all subrecords (incis) for a specific item (cmper) and adds them as items to the collection. More...
 
virtual bool SaveAllForItem (CMPER cmper)
 Saves the whole collection to a specific item (cmper). More...
 
__FCInciOtherFindItemNo (CMPER cmper, twobyte inci)
 Returns the (first) item that has the indicated item number (CMPER) and inci. More...
 
- Public Member Functions inherited from __FCCollectionData
 __FCCollectionData ()
 The constructor. More...
 
virtual int LoadAll ()
 Loads all available data into the collection. More...
 
virtual bool SaveAll ()
 Saves all data in the collection. More...
 
void SetCustomTag (EXTAG tag)
 Sets a custom Enigma tag for the elements of the collection. More...
 
- 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...
 
virtual void DebugDump ()
 Outputs the class data/information for debugging purposes. 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

Base class for "other" data with incis of the __FCInciOther class (where it's common to collect all incis from the same CMPER.)

Member Function Documentation

virtual const char* __FCCollectionInciOther::ClassName ( )
inlinevirtual
bool __FCCollectionInciOther::DeleteDataForItem ( CMPER  cmper)
virtual

Deletes all subrecords (incis) from the Finale database for a specific item (cmper).

This method doesn't delete or affect anything in the collection.

Parameters
cmperThe 1-based item number.
Returns
True if succesful.
__FCInciOther * __FCCollectionInciOther::FindItemNo ( CMPER  cmper,
twobyte  inci 
)

Returns the (first) item that has the indicated item number (CMPER) and inci.

Lua-supported.

int __FCCollectionInciOther::LoadAllForItem ( CMPER  cmper)
virtual

Loads all subrecords (incis) for a specific item (cmper) and adds them as items to the collection.

Lua-supported.

Parameters
cmperThe 1-based item number.
Returns
The number of loaded items.

Reimplemented in FCPercussionLayoutNotes.

bool __FCCollectionInciOther::SaveAllForItem ( CMPER  cmper)
virtual

Saves the whole collection to a specific item (cmper).

All incis in the current cmper is cleared. The saved inci positions are based on the position in the collection.

Lua-supported.

Parameters
cmperThe 1-based item number.
Returns
True if the save was successful.

Reimplemented in FCCompositeTimeSigBottom, and FCCompositeTimeSigTop.

bool __FCCollectionInciOther::SaveDataAs ( CMPER  cmperfrom,
CMPER  cmperto 
)

Resaves all subrecords (incis) from the Finale database for a specific item (cmper) to another item (cmper). The incis at the source location are not removed.

If the destination contained data, that data will be replaced. This method doesn't affect anything from the collection.

Lua-supported.

Parameters
cmperfromThe original (source) 1-based item number.
cmpertoThe destination 1-based item number.
Returns
True if succesful. If cmperfrom is empty, false is returned.