cmake/Source/CPack/WiX/cmWIXPatch.h

35 lines
861 B
C
Raw Normal View History

2016-10-30 18:24:19 +01:00
/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
file Copyright.txt or https://cmake.org/licensing for details. */
2021-09-14 00:13:48 +02:00
#pragma once
2015-04-27 22:25:09 +02:00
2020-02-01 23:06:01 +01:00
#include <string>
2015-04-27 22:25:09 +02:00
#include "cmWIXPatchParser.h"
2016-07-09 11:21:54 +02:00
#include "cmWIXSourceWriter.h"
2015-04-27 22:25:09 +02:00
/** \class cmWIXPatch
* \brief Class that maintains and applies patch fragments
*/
class cmWIXPatch
{
public:
cmWIXPatch(cmCPackLog* logger);
2016-03-13 13:35:51 +01:00
bool LoadFragments(std::string const& patchFilePath);
2015-04-27 22:25:09 +02:00
void ApplyFragment(std::string const& id, cmWIXSourceWriter& writer);
bool CheckForUnappliedFragments();
private:
2016-03-13 13:35:51 +01:00
void ApplyElementChildren(const cmWIXPatchElement& element,
2016-07-09 11:21:54 +02:00
cmWIXSourceWriter& writer);
2016-03-13 13:35:51 +01:00
2015-04-27 22:25:09 +02:00
void ApplyElement(const cmWIXPatchElement& element,
2016-07-09 11:21:54 +02:00
cmWIXSourceWriter& writer);
2015-04-27 22:25:09 +02:00
cmCPackLog* Logger;
cmWIXPatchParser::fragment_map_t Fragments;
};