linked-rolls 0.7.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/schema.json CHANGED
@@ -39,13 +39,20 @@
39
39
  "type": "object"
40
40
  },
41
41
  "AgentRole": {
42
- "description": "The role an agent plays in the context of the edition.",
43
- "enum": [
44
- "pianist",
45
- "editor",
46
- "publisher"
42
+ "anyOf": [
43
+ {
44
+ "$ref": "#/definitions/EditorialRole"
45
+ },
46
+ {
47
+ "const": "pianist",
48
+ "type": "string"
49
+ },
50
+ {
51
+ "const": "publisher",
52
+ "type": "string"
53
+ }
47
54
  ],
48
- "type": "string"
55
+ "description": "The role an agent plays in the context of the edition."
49
56
  },
50
57
  "AnyArgumentation": {
51
58
  "anyOf": [
@@ -187,15 +194,15 @@
187
194
  "type": "string"
188
195
  },
189
196
  "CollationTolerance": {
190
- "description": "Tolerance used in collation of roll copies. The start and end tolerances define the acceptable deviation (in mm) when aligning features across copies.",
197
+ "description": "Tolerance used in collation of roll copies: the acceptable deviation at either end when aligning features across copies.",
191
198
  "properties": {
192
199
  "toleranceEnd": {
193
- "description": "Tolerance at the end position of a feature (in mm).",
194
- "type": "number"
200
+ "$ref": "#/definitions/Millimeters",
201
+ "description": "Tolerance at the end position of a feature."
195
202
  },
196
203
  "toleranceStart": {
197
- "description": "Tolerance at the start position of a feature (in mm).",
198
- "type": "number"
204
+ "$ref": "#/definitions/Millimeters",
205
+ "description": "Tolerance at the start position of a feature."
199
206
  }
200
207
  },
201
208
  "required": [
@@ -406,6 +413,13 @@
406
413
  "$ref": "#/definitions/CollationTolerance",
407
414
  "description": "The tolerance parameters used when collating (aligning) the different roll copies for this edition. Not exported to RDF."
408
415
  },
416
+ "editors": {
417
+ "description": "The persons who prepared the edition, each with the part they took in the editorial work. An edition written before this field existed carries none. [ontology: crm:P14 carried out by]",
418
+ "items": {
419
+ "$ref": "#/definitions/Editor"
420
+ },
421
+ "type": "array"
422
+ },
409
423
  "publicationDate": {
410
424
  "description": "The date on which the edition was published. [ontology: dcterms:date]",
411
425
  "format": "date",
@@ -422,6 +436,51 @@
422
436
  ],
423
437
  "type": "object"
424
438
  },
439
+ "Editor": {
440
+ "description": "A person who took part in preparing the edition.",
441
+ "properties": {
442
+ "name": {
443
+ "description": "The name, e.g. \"Grünfeld, Alfred\", \"Wien\", \"M. Welte & Söhne\". [ontology: rdfs:label]",
444
+ "type": "string"
445
+ },
446
+ "role": {
447
+ "$ref": "#/definitions/EditorialRole",
448
+ "description": "The part this person took in the editorial work. [ontology: crm:P2 has type]"
449
+ },
450
+ "sameAs": {
451
+ "description": "Authority records for the same thing: GND, Wikidata, geonames or similar. [ontology: owl:sameAs]",
452
+ "examples": [
453
+ "https://d-nb.info/gnd/116888652"
454
+ ],
455
+ "items": {
456
+ "type": "string"
457
+ },
458
+ "type": "array"
459
+ },
460
+ "@id": {
461
+ "description": "A unique identifier for this object.",
462
+ "type": "string"
463
+ }
464
+ },
465
+ "required": [
466
+ "name",
467
+ "role",
468
+ "sameAs"
469
+ ],
470
+ "type": "object"
471
+ },
472
+ "EditorialRole": {
473
+ "description": "The part an editor took in the editorial work.",
474
+ "enum": [
475
+ "editor",
476
+ "transcription",
477
+ "collation",
478
+ "encoding",
479
+ "commentary",
480
+ "proofreading"
481
+ ],
482
+ "type": "string"
483
+ },
425
484
  "Expression": {
426
485
  "description": "An expression symbol, representing a perforation on the roll that governs dynamics, pedaling, or mechanical functions of the reproducing piano. Each expression has a scope (bass or treble) and a specific expression type. [ontology: reo:Expression]",
427
486
  "properties": {
@@ -589,12 +648,12 @@
589
648
  "description": "Describes the horizontal extent of a feature on the roll, measured in millimeters from the beginning of the roll. The `from` value is the start position and `to` is the end position. [ontology: crm:E54 Dimension]",
590
649
  "properties": {
591
650
  "from": {
592
- "description": "The start position of the feature in millimeters from the beginning of the roll. [ontology: reo:from]",
593
- "type": "number"
651
+ "$ref": "#/definitions/Millimeters",
652
+ "description": "The start position of the feature in millimeters from the beginning of the roll. [ontology: reo:from]"
594
653
  },
595
654
  "to": {
596
- "description": "The end position of the feature in millimeters from the beginning of the roll. [ontology: reo:to]",
597
- "type": "number"
655
+ "$ref": "#/definitions/Millimeters",
656
+ "description": "The end position of the feature in millimeters from the beginning of the roll. [ontology: reo:to]"
598
657
  },
599
658
  "unit": {
600
659
  "const": "mm",
@@ -640,6 +699,48 @@
640
699
  ],
641
700
  "type": "object"
642
701
  },
702
+ "Margins<\"mm\">": {
703
+ "description": "The margins on the treble and bass sides of the roll, in the unit the scan was measured in.",
704
+ "properties": {
705
+ "bass": {
706
+ "$ref": "#/definitions/Quantity%3C%22mm%22%3E"
707
+ },
708
+ "treble": {
709
+ "$ref": "#/definitions/Quantity%3C%22mm%22%3E"
710
+ },
711
+ "unit": {
712
+ "const": "mm",
713
+ "type": "string"
714
+ }
715
+ },
716
+ "required": [
717
+ "treble",
718
+ "bass",
719
+ "unit"
720
+ ],
721
+ "type": "object"
722
+ },
723
+ "Margins<\"px\">": {
724
+ "description": "The margins on the treble and bass sides of the roll, in the unit the scan was measured in.",
725
+ "properties": {
726
+ "bass": {
727
+ "$ref": "#/definitions/Quantity%3C%22px%22%3E"
728
+ },
729
+ "treble": {
730
+ "$ref": "#/definitions/Quantity%3C%22px%22%3E"
731
+ },
732
+ "unit": {
733
+ "const": "px",
734
+ "type": "string"
735
+ }
736
+ },
737
+ "required": [
738
+ "treble",
739
+ "bass",
740
+ "unit"
741
+ ],
742
+ "type": "object"
743
+ },
643
744
  "Mark": {
644
745
  "description": "A visible mark on the roll, such as a pencil mark, ink mark, or other non-textual annotation. [ontology: crm:E25 Human-Made Feature]",
645
746
  "properties": {
@@ -709,6 +810,48 @@
709
810
  ],
710
811
  "type": "object"
711
812
  },
813
+ "Measure<\"mm\">": {
814
+ "description": "A value together with the unit it was measured in, as a record states it. [ontology: crm:E54 Dimension]",
815
+ "properties": {
816
+ "unit": {
817
+ "const": "mm",
818
+ "description": "The unit of measurement. [ontology: crm:P91 has unit]",
819
+ "type": "string"
820
+ },
821
+ "value": {
822
+ "$ref": "#/definitions/Quantity%3C%22mm%22%3E",
823
+ "description": "The measured value. [ontology: crm:P90 has value]"
824
+ }
825
+ },
826
+ "required": [
827
+ "value",
828
+ "unit"
829
+ ],
830
+ "type": "object"
831
+ },
832
+ "Measure<\"px\">": {
833
+ "description": "A value together with the unit it was measured in, as a record states it. [ontology: crm:E54 Dimension]",
834
+ "properties": {
835
+ "unit": {
836
+ "const": "px",
837
+ "description": "The unit of measurement. [ontology: crm:P91 has unit]",
838
+ "type": "string"
839
+ },
840
+ "value": {
841
+ "$ref": "#/definitions/Quantity%3C%22px%22%3E",
842
+ "description": "The measured value. [ontology: crm:P90 has value]"
843
+ }
844
+ },
845
+ "required": [
846
+ "value",
847
+ "unit"
848
+ ],
849
+ "type": "object"
850
+ },
851
+ "Millimeters": {
852
+ "$ref": "#/definitions/Quantity%3C%22mm%22%3E",
853
+ "description": "A place along the roll, or any length on the paper."
854
+ },
712
855
  "Modification": {
713
856
  "anyOf": [
714
857
  {
@@ -1149,45 +1292,91 @@
1149
1292
  "type": "object"
1150
1293
  },
1151
1294
  "ObjectAssumption<RollTempo>": {
1152
- "description": "An object assumption wraps a complex object with an optional annotation. Used for structured values (e.g. persons, conditions) whose properties may be uncertain.",
1153
- "properties": {
1154
- "@annotation": {
1155
- "description": "An optional annotation expressing a belief about this assumption. Uses the JSON-LD-star `@annotation` mechanism to attach epistemic metadata (certainty and reasons) to any triple.",
1295
+ "anyOf": [
1296
+ {
1156
1297
  "properties": {
1157
- "belief": {
1158
- "$ref": "#/definitions/Belief",
1159
- "description": "The belief held about the annotated statement. [ontology: crminf:J4i is subject of]"
1298
+ "@annotation": {
1299
+ "description": "An optional annotation expressing a belief about this assumption. Uses the JSON-LD-star `@annotation` mechanism to attach epistemic metadata (certainty and reasons) to any triple.",
1300
+ "properties": {
1301
+ "belief": {
1302
+ "$ref": "#/definitions/Belief",
1303
+ "description": "The belief held about the annotated statement. [ontology: crminf:J4i is subject of]"
1304
+ },
1305
+ "@id": {
1306
+ "description": "A unique identifier for this object.",
1307
+ "type": "string"
1308
+ }
1309
+ },
1310
+ "required": [
1311
+ "belief",
1312
+ "@id"
1313
+ ],
1314
+ "type": "object"
1160
1315
  },
1161
- "@id": {
1162
- "description": "A unique identifier for this object.",
1316
+ "endsWith": {
1317
+ "$ref": "#/definitions/Quantity%3C%22ft%2Fmin%22%3E",
1318
+ "description": "The tempo at the end of the roll. [ontology: reo:to]"
1319
+ },
1320
+ "startsWith": {
1321
+ "$ref": "#/definitions/Quantity%3C%22ft%2Fmin%22%3E",
1322
+ "description": "The tempo at the beginning of the roll. [ontology: reo:from]"
1323
+ },
1324
+ "unit": {
1325
+ "const": "ft/min",
1326
+ "description": "The unit of the tempo measurement. [ontology: crm:P91 has unit]",
1163
1327
  "type": "string"
1164
1328
  }
1165
1329
  },
1166
1330
  "required": [
1167
- "belief",
1168
- "@id"
1331
+ "endsWith",
1332
+ "startsWith",
1333
+ "unit"
1169
1334
  ],
1170
1335
  "type": "object"
1171
1336
  },
1172
- "endsWith": {
1173
- "description": "The tempo at the end of the roll. [ontology: reo:to]",
1174
- "type": "number"
1175
- },
1176
- "startsWith": {
1177
- "description": "The tempo at the beginning of the roll. [ontology: reo:from]",
1178
- "type": "number"
1179
- },
1180
- "unit": {
1181
- "description": "The unit of the tempo measurement (e.g. 'ft/min', 'm/min'). [ontology: crm:P91 has unit]",
1182
- "type": "string"
1337
+ {
1338
+ "properties": {
1339
+ "@annotation": {
1340
+ "description": "An optional annotation expressing a belief about this assumption. Uses the JSON-LD-star `@annotation` mechanism to attach epistemic metadata (certainty and reasons) to any triple.",
1341
+ "properties": {
1342
+ "belief": {
1343
+ "$ref": "#/definitions/Belief",
1344
+ "description": "The belief held about the annotated statement. [ontology: crminf:J4i is subject of]"
1345
+ },
1346
+ "@id": {
1347
+ "description": "A unique identifier for this object.",
1348
+ "type": "string"
1349
+ }
1350
+ },
1351
+ "required": [
1352
+ "belief",
1353
+ "@id"
1354
+ ],
1355
+ "type": "object"
1356
+ },
1357
+ "endsWith": {
1358
+ "$ref": "#/definitions/Quantity%3C%22m%2Fmin%22%3E",
1359
+ "description": "The tempo at the end of the roll. [ontology: reo:to]"
1360
+ },
1361
+ "startsWith": {
1362
+ "$ref": "#/definitions/Quantity%3C%22m%2Fmin%22%3E",
1363
+ "description": "The tempo at the beginning of the roll. [ontology: reo:from]"
1364
+ },
1365
+ "unit": {
1366
+ "const": "m/min",
1367
+ "description": "The unit of the tempo measurement. [ontology: crm:P91 has unit]",
1368
+ "type": "string"
1369
+ }
1370
+ },
1371
+ "required": [
1372
+ "endsWith",
1373
+ "startsWith",
1374
+ "unit"
1375
+ ],
1376
+ "type": "object"
1183
1377
  }
1184
- },
1185
- "required": [
1186
- "endsWith",
1187
- "startsWith",
1188
- "unit"
1189
1378
  ],
1190
- "type": "object"
1379
+ "description": "An object assumption wraps a complex object with an optional annotation. Used for structured values (e.g. persons, conditions) whose properties may be uncertain."
1191
1380
  },
1192
1381
  "ObjectAssumption<Transcription>": {
1193
1382
  "description": "An object assumption wraps a complex object with an optional annotation. Used for structured values (e.g. persons, conditions) whose properties may be uncertain.",
@@ -1246,6 +1435,10 @@
1246
1435
  "$ref": "#/definitions/Agent",
1247
1436
  "description": "An agent that is a person."
1248
1437
  },
1438
+ "Pixels": {
1439
+ "$ref": "#/definitions/Quantity%3C%22px%22%3E",
1440
+ "description": "A place in a scan. Comparable within one scan only, since the resolution is the scan's."
1441
+ },
1249
1442
  "Place": {
1250
1443
  "description": "A place, e.g. a recording location, publishing location, etc. [ontology: crm:E53 Place]",
1251
1444
  "properties": {
@@ -1288,6 +1481,21 @@
1288
1481
  },
1289
1482
  "type": "object"
1290
1483
  },
1484
+ "Quantity<\"ft/min\">": {
1485
+ "type": "number"
1486
+ },
1487
+ "Quantity<\"m/min\">": {
1488
+ "type": "number"
1489
+ },
1490
+ "Quantity<\"mm\">": {
1491
+ "type": "number"
1492
+ },
1493
+ "Quantity<\"px\">": {
1494
+ "type": "number"
1495
+ },
1496
+ "Quantity<\"track\">": {
1497
+ "type": "number"
1498
+ },
1291
1499
  "RecordingEvent": {
1292
1500
  "description": "Describes the event of recording and documents the persons involved in the process (e.g. pianist), the place, and the date of the recording. [ontology: lrmoo:F28 Expression Creation]",
1293
1501
  "properties": {
@@ -1418,16 +1626,17 @@
1418
1626
  "description": "The physical dimensions of the roll. [ontology: reo:dimensions]",
1419
1627
  "properties": {
1420
1628
  "height": {
1421
- "description": "The total height (length) of the roll in the given unit. [ontology: reo:height]",
1422
- "type": "number"
1629
+ "$ref": "#/definitions/Millimeters",
1630
+ "description": "The total height (length) of the roll. [ontology: reo:height]"
1423
1631
  },
1424
1632
  "unit": {
1425
- "description": "The unit of measurement (e.g. 'mm'). [ontology: crm:P91 has unit]",
1633
+ "const": "mm",
1634
+ "description": "The unit of measurement. [ontology: crm:P91 has unit]",
1426
1635
  "type": "string"
1427
1636
  },
1428
1637
  "width": {
1429
- "description": "The width of the roll in the given unit. [ontology: reo:width]",
1430
- "type": "number"
1638
+ "$ref": "#/definitions/Millimeters",
1639
+ "description": "The width of the roll. [ontology: reo:width]"
1431
1640
  }
1432
1641
  },
1433
1642
  "required": [
@@ -1438,45 +1647,26 @@
1438
1647
  "type": "object"
1439
1648
  },
1440
1649
  "holeSeparation": {
1441
- "description": "The distance between adjacent tracker bar holes. [ontology: reo:holeSeparation]",
1442
- "properties": {
1443
- "unit": {
1444
- "description": "The unit of measurement (e.g. 'px', 'mm'). [ontology: crm:P91 has unit]",
1445
- "type": "string"
1650
+ "anyOf": [
1651
+ {
1652
+ "$ref": "#/definitions/Measure%3C%22px%22%3E"
1446
1653
  },
1447
- "value": {
1448
- "description": "The measured hole separation value. [ontology: crm:P90 has value]",
1449
- "type": "number"
1654
+ {
1655
+ "$ref": "#/definitions/Measure%3C%22mm%22%3E"
1450
1656
  }
1451
- },
1452
- "required": [
1453
- "value",
1454
- "unit"
1455
1657
  ],
1456
- "type": "object"
1658
+ "description": "The distance between adjacent tracker bar holes, in the unit the scan was measured in. [ontology: reo:holeSeparation]"
1457
1659
  },
1458
1660
  "margins": {
1459
- "description": "The margins on the treble and bass sides of the roll. Not exported to RDF.",
1460
- "properties": {
1461
- "bass": {
1462
- "description": "The margin on the bass side.",
1463
- "type": "number"
1661
+ "anyOf": [
1662
+ {
1663
+ "$ref": "#/definitions/Margins%3C%22px%22%3E"
1464
1664
  },
1465
- "treble": {
1466
- "description": "The margin on the treble side.",
1467
- "type": "number"
1468
- },
1469
- "unit": {
1470
- "description": "The unit of measurement (e.g. 'px', 'mm').",
1471
- "type": "string"
1665
+ {
1666
+ "$ref": "#/definitions/Margins%3C%22mm%22%3E"
1472
1667
  }
1473
- },
1474
- "required": [
1475
- "treble",
1476
- "bass",
1477
- "unit"
1478
1668
  ],
1479
- "type": "object"
1669
+ "description": "The margins on the treble and bass sides of the roll. Not exported to RDF."
1480
1670
  },
1481
1671
  "measuredBy": {
1482
1672
  "description": "Information about the software used to take the measurements. [ontology: crmdig:L23 used software or firmware]",
@@ -1503,22 +1693,8 @@
1503
1693
  "type": "object"
1504
1694
  },
1505
1695
  "punchDiameter": {
1506
- "description": "The average diameter of punched holes. [ontology: reo:punchDiameter]",
1507
- "properties": {
1508
- "unit": {
1509
- "description": "The unit of measurement (e.g. 'mm'). [ontology: crm:P91 has unit]",
1510
- "type": "string"
1511
- },
1512
- "value": {
1513
- "description": "The measured punch diameter value. [ontology: crm:P90 has value]",
1514
- "type": "number"
1515
- }
1516
- },
1517
- "required": [
1518
- "value",
1519
- "unit"
1520
- ],
1521
- "type": "object"
1696
+ "$ref": "#/definitions/Measure%3C%22mm%22%3E",
1697
+ "description": "The average diameter of punched holes. [ontology: reo:punchDiameter]"
1522
1698
  },
1523
1699
  "shift": {
1524
1700
  "$ref": "#/definitions/Shift",
@@ -1584,12 +1760,12 @@
1584
1760
  "description": "A shift correction applied to a roll copy to align it with other copies. The shift is defined as horizontal (along the roll length, in mm) and vertical (across tracks).",
1585
1761
  "properties": {
1586
1762
  "horizontal": {
1587
- "description": "Horizontal shift in millimeters (along the roll length).",
1588
- "type": "number"
1763
+ "$ref": "#/definitions/Millimeters",
1764
+ "description": "Along the roll."
1589
1765
  },
1590
1766
  "vertical": {
1591
- "description": "Vertical shift in track numbers (across the tracker bar).",
1592
- "type": "number"
1767
+ "$ref": "#/definitions/Track",
1768
+ "description": "Across the tracker bar."
1593
1769
  }
1594
1770
  },
1595
1771
  "required": [
@@ -1631,20 +1807,24 @@
1631
1807
  ],
1632
1808
  "type": "object"
1633
1809
  },
1810
+ "Track": {
1811
+ "$ref": "#/definitions/Quantity%3C%22track%22%3E",
1812
+ "description": "A position across the roll, numbered as the tracker bar does."
1813
+ },
1634
1814
  "TrackCalibration": {
1635
1815
  "description": "Relates a scan to the tracker bar it was read with.\n\nScanning software numbers the hole columns it finds by their position in the image, so its numbering is offset by however far the roll lay from the edge of the scanner bed. Calibrating means finding that offset, usually from a landmark such as the rewind perforation.\n\n column = offset + scannerTrack * separation trackerBar = scannerTrack + shift",
1636
1816
  "properties": {
1637
1817
  "offset": {
1638
- "description": "Image column of the scanning software's track 0.",
1639
- "type": "number"
1818
+ "$ref": "#/definitions/Pixels",
1819
+ "description": "Image column of the scanning software's track 0."
1640
1820
  },
1641
1821
  "separation": {
1642
- "description": "Distance between the centres of adjacent tracks.",
1643
- "type": "number"
1822
+ "$ref": "#/definitions/Pixels",
1823
+ "description": "Distance between the centres of adjacent tracks."
1644
1824
  },
1645
1825
  "shift": {
1646
- "description": "Added to the scanning software's numbering to reach the tracker bar.",
1647
- "type": "number"
1826
+ "$ref": "#/definitions/Track",
1827
+ "description": "Added to the scanning software's numbering to reach the tracker bar."
1648
1828
  },
1649
1829
  "unit": {
1650
1830
  "const": "px",
@@ -1721,12 +1901,12 @@
1721
1901
  "description": "Describes the vertical extent of a feature on the roll, measured in track numbers. Track numbers correspond to positions on the tracker bar. [ontology: crm:E54 Dimension]",
1722
1902
  "properties": {
1723
1903
  "from": {
1724
- "description": "The start track number of the feature. [ontology: reo:from]",
1725
- "type": "number"
1904
+ "$ref": "#/definitions/Track",
1905
+ "description": "The start track number of the feature. [ontology: reo:from]"
1726
1906
  },
1727
1907
  "to": {
1728
- "description": "The end track number, if the feature spans multiple tracks. If omitted, the feature occupies a single track. [ontology: reo:to]",
1729
- "type": "number"
1908
+ "$ref": "#/definitions/Track",
1909
+ "description": "The end track number, if the feature spans multiple tracks. If omitted, the feature occupies a single track. [ontology: reo:to]"
1730
1910
  },
1731
1911
  "unit": {
1732
1912
  "const": "track",
@@ -76,6 +76,7 @@
76
76
  "@type": "@id"
77
77
  },
78
78
  "creation": "lrmoo:R17i_was_created_by",
79
+ "editors": "crm:P14_carried_out_by",
79
80
  "publisher": "crm:P14_carried_out_by",
80
81
  "publicationDate": {
81
82
  "@id": "dcterms:date",
@@ -1,4 +1,5 @@
1
1
  import { describeTrackerBar } from "../../TrackerBar";
2
+ import { mm } from "../../Quantity";
2
3
  /**
3
4
  * The commands of the Welte-Mignon T-100, as its tracker bar reads them.
4
5
  */
@@ -28,7 +29,7 @@ export const welteT100ExpressionTypes = [
28
29
  export const welteT100 = describeTrackerBar({
29
30
  id: 'welte-t100',
30
31
  name: 'Welte-Mignon T100',
31
- width: 328,
32
+ width: mm(328),
32
33
  trackCount: 100,
33
34
  notes: { from: 11, to: 90, lowestPitch: 24 },
34
35
  expressions: new Map([
@@ -1,5 +1,6 @@
1
1
  import { Half, Instrument, Parameters, PedalMode, RollNumber, Spool } from "welte-t100-emulator";
2
2
  import { ReproducingSystem } from "../../ReproducingSystem";
3
+ import { Millimeters, Seconds, Track } from "../../Quantity";
3
4
  /**
4
5
  * MIDI velocity at the open rail of the Nuancierbalg, at the Mezzoforte pin,
5
6
  * and at the closed rail, joined linearly in between. Nothing in the
@@ -59,21 +60,21 @@ export type WelteT100Options = {
59
60
  * understands.
60
61
  */
61
62
  pedalMode: PedalMode;
62
- /** Diameter of the tracker-bar bore, in mm. */
63
- trackerBore: number;
64
- /** Punch diameter in mm, for an edition whose copies record none. */
65
- punchDiameter: number;
63
+ /** Diameter of the tracker-bar bore. */
64
+ trackerBore: Millimeters;
65
+ /** Punch diameter for an edition whose copies record none. */
66
+ punchDiameter: Millimeters;
66
67
  /**
67
68
  * The track at which the keyboard is divided, so that notes from
68
69
  * here upwards follow the treble expression and the ones below it
69
70
  * the bass. Which side an expression perforation itself belongs to
70
71
  * is not decided here but read off the tracker bar.
71
72
  */
72
- division: number;
73
+ division: Track;
73
74
  };
74
75
  export declare const defaultWelteT100Options: WelteT100Options;
75
- /** When the spool brings a place on the roll, in mm, to the tracker bar. */
76
- export declare const secondsAt: (spool: Spool, mm: number) => number;
76
+ /** When the spool brings a place on the roll to the tracker bar. */
77
+ export declare const secondsAt: (spool: Spool, place: Millimeters) => Seconds;
77
78
  /**
78
79
  * The red Welte, as welte-t100-emulator models it: the take-up spool sets
79
80
  * the time axis, the Nuancierbälge fill through their conduits and are