FoscUpdateManager

Returns a FoscUpdateManager.


Description

Update manager.

Updates start offset, stop offsets and indicators everywhere in score.


Attributes Summary

Instance Methods

prGetMeasureStartOffsets
prMakeMetronomeMarkMap
prToMeasureNumber
prUpdateAllIndicators
prUpdateAllOffsets
prUpdateAllOffsetsInSeconds
prUpdateClocktimeOffsets
prUpdateComponentOffsets
prUpdateMeasureNumbers
prUpdateNow


Usage

  1. Example

    a = FoscStaff(FoscLeafMaker().(#[60,62,64,65], [1/4]));
    a.prUpdateNow(offsets: true);
    a.doComponents { |each| [each, each.startOffset.str, each.stopOffset.str].postln };
    FoscStaff([  ], 'Staff', false)


Instance Methods


prGetMeasureStartOffsets


prMakeMetronomeMarkMap


prToMeasureNumber

  1. Example

    a = FoscStaff(FoscLeafMaker().(#[60,62,64,65,67,69,71,72], [1/8]));
    set(a).autoBeaming = false;
    a[0].attach(FoscTimeSignature(#[2,8]));
    a[4].attach(FoscTimeSignature(#[3,8]));
    a[7].attach(FoscTimeSignature(#[1,8]));
    
    a.prUpdateMeasureNumbers;
    a.doLeaves { |leaf| [leaf.str, leaf.measureNumber].postln };
    FoscStaff([  ], 'Staff', false)


prUpdateAllIndicators

  1. Example

    a = FoscStaff(FoscLeafMaker().(#[60,62,64,65], [1/4]));
    a[0].attach(FoscDynamic('p'));
    a[0].prUpdateNow(indicators: true);
    a[0].prGetEffective(FoscDynamic);
    a[0].wrappers[0].indicator;
    FoscDynamic('p')


prUpdateAllOffsets

  1. Example

    a = FoscStaff(FoscLeafMaker().(#[60,62,64,65], [1/4]));
    FoscUpdateManager().prUpdateAllOffsets(a);
    a.doComponents { |each| [each, each.startOffset.str, each.stopOffset.str].postln };
    FoscStaff([  ], 'Staff', false)


prUpdateAllOffsetsInSeconds


prUpdateClocktimeOffsets

  1. Example

    a = FoscStaff(FoscLeafMaker().(60 ! 12, [1/4]));
    b = FoscScore([a]);
    b.leafAt(0).attach(FoscMetronomeMark([1,4], 60));
    b.leafAt(6).attach(FoscMetronomeMark([1,4], 120));
    FoscUpdateManager().prUpdateNow(b, offsetsInSeconds: true);
    b.prGetDurationInSeconds.asFloat;
    a.doLeaves  { |e| [e.startOffsetInSeconds.asFloat, e.prGetDurationInSeconds.asFloat].postln };
    FoscStaff([  ], 'Staff', false)


prUpdateComponentOffsets

  1. Example

    a = FoscStaff(FoscLeafMaker().(#[60,62,64,65], [1/4]));
    FoscUpdateManager().prUpdateAllOffsets(a);
    a.doComponents { |each| [each, each.startOffset.str, each.stopOffset.str].postln };
    FoscStaff([  ], 'Staff', false)


prUpdateMeasureNumbers

  1. Example

    a = FoscStaff(FoscLeafMaker().(#[60,62,64,65,67,69,71,72], [1/8]));
    a[0].attach(FoscTimeSignature(#[2,8]));
    a[4].attach(FoscTimeSignature(#[3,8]));
    a[7].attach(FoscTimeSignature(#[1,8]));
    a.show;

    a.prUpdateMeasureNumbers;
    a.doLeaves { |leaf| [leaf.str, leaf.measureNumber].postln };
    FoscStaff([  ], 'Staff', false)


prUpdateNow

  1. Example

    a = FoscStaff(FoscLeafMaker().(#[60,62,64,65], [1/4]));
    a[0].prUpdateNow(offsets: true, indicators: true);
    a.doComponents { |each| [each, each.startOffset.str, each.stopOffset.str].postln };
    FoscStaff([  ], 'Staff', false)
  2. Example

    a = FoscStaff(FoscLeafMaker().(#[60,62,64,65], [1/4]));
    a[0].attach(FoscDynamic('p'));
    a[0].prUpdateNow(offsets: true, indicators: true);
    a[0].prGetEffective(FoscDynamic);
    FoscDynamic('p')