Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

31 lines
1.8 KiB

  1. The ddksynth sample in the DDK is created from the live sources in dmsynth.
  2. The sample is generated by removing text between the special BEGIN and END
  3. @@DDKSPLIT tags (such as this paragraph).
  4. This can get a bit cryptic when one line must be used in the real dmsynth code
  5. and a different line must appear in the sample ddksynth code. Example from umsynth.cpp:
  6. // @@BEGIN_DDKSPLIT -- This section will be removed in the DDK sample.
  7. pCaps->guidPort = CLSID_DirectMusicSynth;
  8. #if 0 // The following section will only take affect in the DDK sample.
  9. // @@END_DDKSPLIT
  10. pCaps->guidPort = CLSID_DDKSynth;
  11. // @@BEGIN_DDKSPLIT -- This section will be removed in the DDK sample.
  12. #endif
  13. // @@END_DDKSPLIT
  14. In this example, just the line with CLSID_DDKSynth will appear in the ddksynth
  15. sample. In the real dmsynth code, CLSID_DDKSynth is surrounded by an #if 0 conditional so it
  16. has no effect. Thus only CLSID_DirectMusicSynth takes effect in the real code.
  17. The point here is to ship real functioning code for a synthesizer in the DDK, but to replace
  18. its name and CLSID and also to strip out any Microsoft proprietary or licensed technology. For
  19. example, we can't ship our reverb capability in the DDK since it is licensed from another company.
  20. You can build the cab containing this sample by running "genddkcab dmusiccab.ini" from the
  21. \nt\private\ddk\cabs directory. See http://devkits/ddk for more information about the DDK.
  22. There are two files that are used only for the DDK sample:
  23. ddksynth.htm: A descriptive overview that will appear in the DDK sample.
  24. ddksources: The sources file that will be used in the DDK sample.
  25. (It would have been too difficult to generate it from the dmsynth sources.inc file.
  26. Please keep these two files in sync.)