cmWIXFilesSourceWriter.h 1.5 KB

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