cmWIXFilesSourceWriter.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. file Copyright.txt or https://cmake.org/licensing for details. */
  3. #ifndef cmWIXFilesSourceWriter_h
  4. #define cmWIXFilesSourceWriter_h
  5. #include "cmWIXSourceWriter.h"
  6. #include "cmWIXPatch.h"
  7. #include "cmWIXShortcut.h"
  8. #include "cmCPackGenerator.h"
  9. /** \class cmWIXFilesSourceWriter
  10. * \brief Helper class to generate files.wxs
  11. */
  12. class cmWIXFilesSourceWriter : public cmWIXSourceWriter
  13. {
  14. public:
  15. cmWIXFilesSourceWriter(cmCPackLog* logger, std::string const& filename,
  16. GuidType componentGuidType);
  17. void EmitShortcut(std::string const& id, cmWIXShortcut const& shortcut,
  18. std::string const& shortcutPrefix, size_t shortcutIndex);
  19. void EmitRemoveFolder(std::string const& id);
  20. void EmitInstallRegistryValue(std::string const& registryKey,
  21. std::string const& cpackComponentName,
  22. std::string const& suffix);
  23. void EmitUninstallShortcut(std::string const& packageName);
  24. std::string EmitComponentCreateFolder(std::string const& directoryId,
  25. std::string const& guid,
  26. cmInstalledFile const* installedFile);
  27. std::string EmitComponentFile(std::string const& directoryId,
  28. std::string const& id,
  29. std::string const& filePath, cmWIXPatch& patch,
  30. cmInstalledFile const* installedFile);
  31. };
  32. #endif