libcm is a C development framework with an emphasis on audio signal processing applications.
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

cmXScore.h 1.2KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. #ifndef cmXScore_h
  2. #define cmXScore_h
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. enum
  7. {
  8. kOkXsRC = cmOkRC,
  9. kXmlFailXsRC,
  10. kLHeapFailXsRC,
  11. kSyntaxErrorXsRC,
  12. kCsvFailXsRC
  13. };
  14. typedef cmRC_t cmXsRC_t;
  15. typedef cmHandle_t cmXsH_t;
  16. extern cmXsH_t cmXsNullHandle;
  17. // Prepare the MusicXML file:
  18. //
  19. // 1) Convert XML to UTF-8:
  20. // a. Change: encoding='UTF-16' to encoding='UTF-8'
  21. // b. Emacs C-x <RET> f utf-8 <RET>
  22. //
  23. // 2) Replace "DoletSibelius Unknown Symbol Index" with "DoletSibelius unknownSymIdx"
  24. //
  25. // 3) How to assigned dynamic markings.
  26. // 4) Tempo syntax is inconsistent.
  27. // 5) Heel is not being recognized
  28. // 6) Sostenuto pedal events are not being parsed.
  29. // 7) What is a 'pedal-change' event vs. a 'pedal-stop' event.
  30. // 8) Verify the colors.
  31. // 9) Remove blank bars at end.
  32. cmXsRC_t cmXScoreInitialize( cmCtx_t* ctx, cmXsH_t* hp, const cmChar_t* xmlFn );
  33. cmXsRC_t cmXScoreFinalize( cmXsH_t* hp );
  34. bool cmXScoreIsValid( cmXsH_t h );
  35. cmXsRC_t cmXScoreWriteCsv( cmXsH_t h, const cmChar_t* csvFn );
  36. void cmXScoreReport( cmXsH_t h, cmRpt_t* rpt, bool sortFl );
  37. cmXsRC_t cmXScoreTest( cmCtx_t* ctx, const cmChar_t* fn );
  38. #ifdef __cplusplus
  39. }
  40. #endif
  41. #endif