Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
Kitware
GitHub Repository: Kitware/CMake
Path: blob/master/Source/CPack/WiX/cmWIXFilesSourceWriter.h
5021 views
1
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
2
file LICENSE.rst or https://cmake.org/licensing for details. */
3
#pragma once
4
5
#include "cmCPackGenerator.h"
6
#include "cmWIXPatch.h"
7
#include "cmWIXShortcut.h"
8
#include "cmWIXSourceWriter.h"
9
10
/** \class cmWIXFilesSourceWriter
11
* \brief Helper class to generate files.wxs
12
*/
13
class cmWIXFilesSourceWriter : public cmWIXSourceWriter
14
{
15
public:
16
cmWIXFilesSourceWriter(unsigned long wixVersion, cmCPackLog* logger,
17
std::string const& filename,
18
GuidType componentGuidType);
19
20
void EmitShortcut(std::string const& id, cmWIXShortcut const& shortcut,
21
std::string const& shortcutPrefix, size_t shortcutIndex);
22
23
void EmitRemoveFolder(std::string const& id);
24
25
void EmitInstallRegistryValue(std::string const& registryKey,
26
std::string const& cpackComponentName,
27
std::string const& suffix);
28
29
void EmitUninstallShortcut(std::string const& packageName);
30
31
std::string EmitComponentCreateFolder(std::string const& directoryId,
32
std::string const& guid,
33
cmInstalledFile const* installedFile);
34
35
std::string EmitComponentFile(std::string const& directoryId,
36
std::string const& id,
37
std::string const& filePath, cmWIXPatch& patch,
38
cmInstalledFile const* installedFile,
39
int diskId);
40
};
41
42