package Ġcom . chr yn an . ch ords . model Ċ Ċ import Ġkotlinx . serialization . Experimental Serialization Api Ċ import Ġkotlinx . serialization . Serial Name Ċ import Ġkotlinx . serialization . Serializable Ċ import Ġkotlinx . serialization . Transient Ċ import Ġkotlinx . serialization . json . Json Class Discriminator Ċ Ċ /** Ċ Ġ* ĠA Ġsealed Ġclass Ġcontaining Ġall Ġthe Ġdifferent Ġmarkers Ġthat Ġcan Ġbe Ġin Ġa Ġ[ Ch ord ]. ĠA Ġch ord Ġmarker Ġis Ċ Ġ* Ġa Ġvisual Ġindicator Ġof Ġwhat Ġnote ( s ) Ġshould Ġbe Ġplayed . ĠA Ġset Ġof Ġch ord Ġmarkers Ġmakes Ġup Ġa ĠCh ord . Ċ Ġ* Ċ Ġ* ĠNote Ġthat Ġa Ġ[ Ch ord Marker ] Ġdoes Ġnot Ġcontain Ġany Ġinformation Ġabout Ġthe Ġfrequency Ġof Ġa Ġnote Ġbut Ċ Ġ* Ġinstead Ġcontains Ġpositional Ġinformation Ġabout Ġa Ġnote , Ġor Ġnotes , Ġon Ġa Ġvisual Ġdiagram . Ċ Ġ* Ċ Ġ* Ġ@ author Ġch Ry NaN Ċ Ġ*/ Ċ @ Serializable Ċ @ Json Class Discriminator (" typeName ") Ċ @ Opt In ( Experimental Serialization Api :: class ) Ċ sealed Ġclass ĠCh ord Marker Ġ{ ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠThe Ġ[ Marker Type ] Ġof Ġthis Ġ[ Ch ord Marker ]. ĠThis Ġis Ġuseful Ġfor Ġparsing . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author Ġch Ry NaN ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" type ") ĊĠĠĠ Ġabstract Ġval Ġtype : ĠMarker Type ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠA Ġ[ Ch ord Marker ] Ġrepresenting Ġa Ġsingle Ġnote Ġthat Ġis Ġnot Ġan Ġopen Ġstring . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ f ret ] ĠThe Ġ[ F ret Number ] Ġof Ġthis Ġnote . ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ f inger ] ĠThe Ġ[ F inger ] Ġused Ġto Ġplay Ġthis Ġnote . ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ string ] ĠThe Ġ[ String Number ] Ġof Ġthis Ġnote . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author Ġch Ry NaN ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Serializable ĊĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" note ") ĊĠĠĠ Ġdata Ġclass ĠNote ( ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" f ret ") Ġoverride Ġval Ġf ret : ĠF ret Number , ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" f inger ") Ġoverride Ġval Ġfinger : ĠF inger Ġ= ĠF inger . UNKNOWN , ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" string ") Ġoverride Ġval Ġstring : ĠString Number ĊĠĠĠ Ġ) Ġ: ĠCh ord Marker (), ĊĠĠĠĠĠĠĠ ĠF ret Marker , ĊĠĠĠĠĠĠĠ ĠF inger Marker , ĊĠĠĠĠĠĠĠ ĠString Marker Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġtype Ġ= ĠMarker Type . NOTE ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠA Ġ[ Ch ord Marker ] Ġrepresenting Ġmultiple Ġnotes Ġsp anning Ġacross Ġmultiple Ġstrings Ġon Ġa Ġsingle ĊĠĠĠĠ Ġ* Ġf ret . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ f ret ] ĠThe Ġ[ F ret Number ] Ġof Ġthe Ġnotes Ġin Ġthis Ġbar . ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ f inger ] ĠThe Ġfinger Ġused Ġto Ġbar Ġthese Ġnotes . ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ start String ] ĠThe Ġ[ String Number ] Ġof Ġthe Ġfirst Ġstring Ġthis Ġbar Ġstarts . ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ end String ] ĠThe Ġ[ String Number ] Ġof Ġthe Ġlast Ġstring Ġthis Ġbar Ġends . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author Ġch Ry NaN ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Serializable ĊĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" bar ") ĊĠĠĠ Ġdata Ġclass ĠBar ( ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" f ret ") Ġoverride Ġval Ġf ret : ĠF ret Number , ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" f inger ") Ġoverride Ġval Ġfinger : ĠF inger Ġ= ĠF inger . UNKNOWN , ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" start _ string ") Ġoverride Ġval Ġstart String : ĠString Number , ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" end _ string ") Ġoverride Ġval Ġend String : ĠString Number ĊĠĠĠ Ġ) Ġ: ĠCh ord Marker (), ĊĠĠĠĠĠĠĠ ĠF ret Marker , ĊĠĠĠĠĠĠĠ ĠF inger Marker , ĊĠĠĠĠĠĠĠ ĠString Range Marker Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġtype Ġ= ĠMarker Type . BAR ĊĊĠĠĠĠĠĠĠ Ġ@ Transient ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġstring Ġ= Ġstart String ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠA Ġ[ Ch ord Marker ] Ġrepresenting Ġa Ġsingle Ġopen Ġnote . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ string ] ĠThe Ġ[ String Number ] Ġof Ġthis Ġopen Ġnote . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author Ġch Ry NaN ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Serializable ĊĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" open ") ĊĠĠĠ Ġdata Ġclass ĠOpen ( ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" string ") Ġoverride Ġval Ġstring : ĠString Number ĊĠĠĠ Ġ) Ġ: ĠCh ord Marker (), ĊĠĠĠĠĠĠĠ ĠF ret Marker , ĊĠĠĠĠĠĠĠ ĠString Marker Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġtype Ġ= ĠMarker Type . OPEN ĊĊĠĠĠĠĠĠĠ Ġ@ Transient ĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġf ret : ĠF ret Number Ġ= ĠF ret Number ( 0 ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ/** ĊĠĠĠĠ Ġ* ĠA Ġ[ String Marker ] Ġrepresenting Ġa Ġmut ed , Ġor Ġun - play ed , Ġstring . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ property Ġ[ string ] ĠThe Ġ[ String Number ] Ġof Ġthe Ġmut ed Ġstring . ĊĠĠĠĠ Ġ* ĊĠĠĠĠ Ġ* Ġ@ author Ġch Ry NaN ĊĠĠĠĠ Ġ*/ ĊĠĠĠ Ġ@ Serializable ĊĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" muted ") ĊĠĠĠ Ġdata Ġclass ĠM uted ( ĊĠĠĠĠĠĠĠ Ġ@ Serial Name ( value Ġ= Ġ" string ") Ġoverride Ġval Ġstring : ĠString Number ĊĠĠĠ Ġ) Ġ: ĠCh ord Marker (), ĊĠĠĠĠĠĠĠ ĠString Marker Ġ{ ĊĊĠĠĠĠĠĠĠ Ġoverride Ġval Ġtype Ġ= ĠMarker Type . MUT ED ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ċ } Ċ