How to distinguish System vs. Measure barlines?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

How to distinguish System vs. Measure barlines?

sideways
I haven't run this particular code in a few months, so I don't know when
this happened.  My current MuseScore code base is from a week or two ago.

I have code this code that *used to* distinguish between system barlines
(start-of-system) and end of measure barlines (end-of-measure):

Element*      _e;
Element::Type _et;

...
     switch(_et) {
     case EType::BAR_LINE :
         // BarLine sub-types
         if (_e->parent()->type() == EType::SYSTEM) {
             // System BarLines - the system start-of-bar line
             eName = _e->name(EType::SYSTEM);
         }

Now it seems that all barlines are children of a segment.  And I cannot
use the BarLineType enumeration to distinguish them because that's for
barline style + graphics, not musical context.  How can I distinguish
the system barline that's part of the same measure as the measure
barline, and even has the same tick value in the timeline?

Thanks,
Sideways


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
Mscore-developer mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mscore-developer
Reply | Threaded
Open this post in threaded view
|

Re: How to distinguish System vs. Measure barlines?

sideways
Never mind.  I figured out that there is a new segment type BeginBarLine, which solves my problem.  Unless anyone has a better recommendation.
__
Sideways

On 9/12/2016 1:41 PM, Sideways Skullfinger wrote:
I haven't run this particular code in a few months, so I don't know when this happened.  My current MuseScore code base is from a week or two ago.

I have code this code that *used to* distinguish between system barlines (start-of-system) and end of measure barlines (end-of-measure):

Element*      _e;
Element::Type _et;

...
    switch(_et) {
    case EType::BAR_LINE :
        // BarLine sub-types
        if (_e->parent()->type() == EType::SYSTEM) {
            // System BarLines - the system start-of-bar line
            eName = _e->name(EType::SYSTEM);
        }

Now it seems that all barlines are children of a segment.  And I cannot use the BarLineType enumeration to distinguish them because that's for barline style + graphics, not musical context.  How can I distinguish the system barline that's part of the same measure as the measure barline, and even has the same tick value in the timeline?

Thanks,
Sideways



------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are
consuming the most bandwidth. Provides multi-vendor support for NetFlow,
J-Flow, sFlow and other flows. Make informed decisions using capacity
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
Mscore-developer mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/mscore-developer