Merge pull request #1 from asuessenbach/RenameToVulkanHpp

Renamed from VkCpp to VulkanHpp
This commit is contained in:
Markus Tavenrath 2016-06-21 13:35:24 +02:00 committed by GitHub
commit 8e66e869df
4 changed files with 17105 additions and 17105 deletions

View File

@ -26,21 +26,21 @@
cmake_minimum_required(VERSION 3.2) cmake_minimum_required(VERSION 3.2)
project(VkCppGenerator) project(VulkanHppGenerator)
file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/Vulkan-Docs/src/spec/vk.xml vk_spec) file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/Vulkan-Docs/src/spec/vk.xml vk_spec)
string(REPLACE "\\" "\\\\" vk_spec ${vk_spec}) string(REPLACE "\\" "\\\\" vk_spec ${vk_spec})
add_definitions(-DVK_SPEC="${vk_spec}") add_definitions(-DVK_SPEC="${vk_spec}")
file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/vulkan/vk_cpp.hpp vk_cpp) file(TO_NATIVE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/vulkan/vulkan.hpp vulkan_hpp)
string(REPLACE "\\" "\\\\" vk_cpp ${vk_cpp}) string(REPLACE "\\" "\\\\" vulkan_hpp ${vulkan_hpp})
add_definitions(-DVK_CPP="${vk_cpp}") add_definitions(-DVULKAN_HPP="${vulkan_hpp}")
set(HEADERS set(HEADERS
) )
set(SOURCES set(SOURCES
VkCppGenerator.cpp VulkanHppGenerator.cpp
) )
set(TINYXML2_SOURCES set(TINYXML2_SOURCES
@ -57,13 +57,13 @@ source_group(sources FILES ${SOURCES})
source_group(TinyXML2\\headers FILES ${TINYXML2_HEADERS}) source_group(TinyXML2\\headers FILES ${TINYXML2_HEADERS})
source_group(TinyXML2\\sources FILES ${TINYXML2_SOURCES}) source_group(TinyXML2\\sources FILES ${TINYXML2_SOURCES})
add_executable(VkCppGenerator add_executable(VulkanHppGenerator
${HEADERS} ${HEADERS}
${SOURCES} ${SOURCES}
${TINYXML2_SOURCES} ${TINYXML2_SOURCES}
${TINYXML2_HEADERS} ${TINYXML2_HEADERS}
) )
set_property(TARGET VkCppGenerator PROPERTY CXX_STANDARD 11) set_property(TARGET VulkanHppGenerator PROPERTY CXX_STANDARD 11)
target_include_directories(VkCppGenerator PRIVATE "${CMAKE_SOURCE_DIR}/tinyxml2") target_include_directories(VulkanHppGenerator PRIVATE "${CMAKE_SOURCE_DIR}/tinyxml2")

View File

@ -135,7 +135,7 @@ device.createImage(&ci, allocator, &image);
# Enhancements beyond native Vulkan # Enhancements beyond native Vulkan
To provide a more object oriented feeling we're providing classes for each handle which include all Vulkan functions where the first To provide a more object oriented feeling we're providing classes for each handle which include all Vulkan functions where the first
parameter matches the handle. In addition to this we made a few changes to the signatures of the member functions parameter matches the handle. In addition to this we made a few changes to the signatures of the member functions
* To disable the enhanced mode put ```#define VKCPP_DISABLE_ENHANCED_MODE``` before including ```vk_cpp.h``` * To disable the enhanced mode put ```#define VULKAN_HPP_DISABLE_ENHANCED_MODE``` before including ```vulkan.hpp```
* ```(count, T*)``` has been replaced by ```vk::ArrayProxy<T>```, which can be created out of a single T, a (count, T*) pair, a std::array<T,N>, a vector<T>, or an initializer_list<T>. * ```(count, T*)``` has been replaced by ```vk::ArrayProxy<T>```, which can be created out of a single T, a (count, T*) pair, a std::array<T,N>, a vector<T>, or an initializer_list<T>.
* ```const char *``` has been replaced by ```const std::string &``` * ```const char *``` has been replaced by ```const std::string &```
* ```const T *``` has been replaced by ```const T &``` to allow temporary objects. This is useful to pass small structures like ```vk::ClearColorValue``` or ```vk::Extent*``` * ```const T *``` has been replaced by ```const T &``` to allow temporary objects. This is useful to pass small structures like ```vk::ClearColorValue``` or ```vk::Extent*```
@ -147,7 +147,7 @@ Here are a few code examples:
try { try {
VkInstance nativeInstance = nullptr; // Fetch the instance from a favorite toolkit VkInstance nativeInstance = nullptr; // Fetch the instance from a favorite toolkit
// create a vkcpp handle from a native handle // create a vk::Instance handle from a native handle
vk::Instance i(nativeInstance); vk::Instance i(nativeInstance);
// operator=(VkInstance const &) is also supported // operator=(VkInstance const &) is also supported
@ -177,7 +177,7 @@ Here are a few code examples:
``` ```
# Exceptions and return types # Exceptions and return types
The wrapper functions will throw a ```std::system_error``` if the result of the wrapped function is not a success code. The wrapper functions will throw a ```std::system_error``` if the result of the wrapped function is not a success code.
By defining ```VK_CPP_NO_EXCEPTIONS``` before include vk_cpp.hpp, this can be disabled. By defining ```VULKAN_HPP_NO_EXCEPTIONS``` before include vulkan.hpp, this can be disabled.
Depending on exceptions being enabled or disabled, the return type of some functions change. Depending on exceptions being enabled or disabled, the return type of some functions change.
With exceptions enabled (the default) there are four different cases on the return types: With exceptions enabled (the default) there are four different cases on the return types:
@ -196,27 +196,27 @@ Note: With exceptions disabled, it is the user's responsibility to check for err
# Usage # Usage
To start with the C++ version of the Vulkan API download header from GIT, put it in a vulkan subdirectory and add To start with the C++ version of the Vulkan API download header from GIT, put it in a vulkan subdirectory and add
```#include <vulkan/vk_cpp.h>``` to your source code. ```#include <vulkan/vulkan.hpp>``` to your source code.
To build the header for a given vk.xml specification continue with the following steps: To build the header for a given vk.xml specification continue with the following steps:
* Build VkCppGenerator * Build VulkanHppGenerator
* Grab your favourite version vk.xml from Khronos * Grab your favourite version vk.xml from Khronos
* Excute ```VkCppGenerator <vk.xml>``` to generate ```vk_cpp.h``` in the current working directory. * Excute ```VulkanHppGenerator <vk.xml>``` to generate ```vulkan.hpp``` in the current working directory.
# Build instructions for VkCppGenerator # Build instructions for VulkanHppGenerator
* Clone the repository: ```git clone https://github.com/nvpro-pipeline/vkcpp.git``` * Clone the repository: ```git clone https://github.com/KhronosGroup/vkcpp```
* Update submodules: ```git submodule update --init --recursive``` * Update submodules: ```git submodule update --init --recursive```
* Use CMake to generate a solution or makefile for your favourite build environment * Use CMake to generate a solution or makefile for your favourite build environment
* Launch the build * Launch the build
# Samples # Samples
Brad Davis started to port Sascha Willems Samples to vkcpp. You can find his work in his [repository](https://github.com/jherico/Vulkan). Brad Davis started to port Sascha Willems Samples to vulkan.hpp. You can find his work in his [repository](https://github.com/jherico/Vulkan).
# Providing Pull Requests # Providing Pull Requests
NVIDIA is happy to review and consider pull requests for merging into the main tree of vkcpp for bug fixes and features. Before providing a pull request to NVIDIA, please note the following: NVIDIA is happy to review and consider pull requests for merging into the main tree of vulkan.hpp for bug fixes and features. Before providing a pull request to NVIDIA, please note the following:
* A pull request provided to this repo by a developer constitutes permission from the developer for NVIDIA to merge the provided * A pull request provided to this repo by a developer constitutes permission from the developer for NVIDIA to merge the provided
changes or any NVIDIA modified version of these changes to the repo. NVIDIA may remove or change the code at any time and in any changes or any NVIDIA modified version of these changes to the repo. NVIDIA may remove or change the code at any time and in any

View File

@ -300,19 +300,19 @@ std::string const arrayProxyHeader = (
); );
std::string const versionCheckHeader = ( std::string const versionCheckHeader = (
"#if !defined(VK_CPP_HAS_UNRESTRICTED_UNIONS)\n" "#if !defined(VULKAN_HPP_HAS_UNRESTRICTED_UNIONS)\n"
"# if defined(__clang__)\n" "# if defined(__clang__)\n"
"# if __has_feature(cxx_unrestricted_unions)\n" "# if __has_feature(cxx_unrestricted_unions)\n"
"# define VK_CPP_HAS_UNRESTRICTED_UNIONS\n" "# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS\n"
"# endif\n" "# endif\n"
"# elif defined(__GNUC__)\n" "# elif defined(__GNUC__)\n"
"# define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)\n" "# define GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__)\n"
"# if 40600 <= GCC_VERSION\n" "# if 40600 <= GCC_VERSION\n"
"# define VK_CPP_HAS_UNRESTRICTED_UNIONS\n" "# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS\n"
"# endif\n" "# endif\n"
"# elif defined(_MSC_VER)\n" "# elif defined(_MSC_VER)\n"
"# if 1900 <= _MSC_VER\n" "# if 1900 <= _MSC_VER\n"
"# define VK_CPP_HAS_UNRESTRICTED_UNIONS\n" "# define VULKAN_HPP_HAS_UNRESTRICTED_UNIONS\n"
"# endif\n" "# endif\n"
"# endif\n" "# endif\n"
"#endif\n" "#endif\n"
@ -335,7 +335,7 @@ std::string const resultValueHeader = (
" template <typename T>\n" " template <typename T>\n"
" struct ResultValueType\n" " struct ResultValueType\n"
" {\n" " {\n"
"#ifdef VK_CPP_NO_EXCEPTIONS\n" "#ifdef VULKAN_HPP_NO_EXCEPTIONS\n"
" typedef ResultValue<T> type;\n" " typedef ResultValue<T> type;\n"
"#else\n" "#else\n"
" typedef T type;\n" " typedef T type;\n"
@ -345,7 +345,7 @@ std::string const resultValueHeader = (
" template <>" " template <>"
" struct ResultValueType<void>\n" " struct ResultValueType<void>\n"
" {\n" " {\n"
"#ifdef VK_CPP_NO_EXCEPTIONS\n" "#ifdef VULKAN_HPP_NO_EXCEPTIONS\n"
" typedef Result type;\n" " typedef Result type;\n"
"#else\n" "#else\n"
" typedef void type;\n" " typedef void type;\n"
@ -357,7 +357,7 @@ std::string const resultValueHeader = (
std::string const createResultValueHeader = ( std::string const createResultValueHeader = (
" inline ResultValueType<void>::type createResultValue( Result result, char const * message )\n" " inline ResultValueType<void>::type createResultValue( Result result, char const * message )\n"
" {\n" " {\n"
"#ifdef VK_CPP_NO_EXCEPTIONS\n" "#ifdef VULKAN_HPP_NO_EXCEPTIONS\n"
" assert( result == Result::eSuccess );\n" " assert( result == Result::eSuccess );\n"
" return result;\n" " return result;\n"
"#else\n" "#else\n"
@ -371,7 +371,7 @@ std::string const createResultValueHeader = (
" template <typename T>\n" " template <typename T>\n"
" inline typename ResultValueType<T>::type createResultValue( Result result, T & data, char const * message )\n" " inline typename ResultValueType<T>::type createResultValue( Result result, T & data, char const * message )\n"
" {\n" " {\n"
"#ifdef VK_CPP_NO_EXCEPTIONS\n" "#ifdef VULKAN_HPP_NO_EXCEPTIONS\n"
" assert( result == Result::eSuccess );\n" " assert( result == Result::eSuccess );\n"
" return ResultValue<T>( result, data );\n" " return ResultValue<T>( result, data );\n"
"#else\n" "#else\n"
@ -385,7 +385,7 @@ std::string const createResultValueHeader = (
"\n" "\n"
" inline Result createResultValue( Result result, char const * message, std::initializer_list<Result> successCodes )\n" " inline Result createResultValue( Result result, char const * message, std::initializer_list<Result> successCodes )\n"
" {\n" " {\n"
"#ifdef VK_CPP_NO_EXCEPTIONS\n" "#ifdef VULKAN_HPP_NO_EXCEPTIONS\n"
" assert( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() );\n" " assert( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() );\n"
"#else\n" "#else\n"
" if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() )\n" " if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() )\n"
@ -399,7 +399,7 @@ std::string const createResultValueHeader = (
" template <typename T>\n" " template <typename T>\n"
" inline ResultValue<T> createResultValue( Result result, T & data, char const * message, std::initializer_list<Result> successCodes )\n" " inline ResultValue<T> createResultValue( Result result, T & data, char const * message, std::initializer_list<Result> successCodes )\n"
" {\n" " {\n"
"#ifdef VK_CPP_NO_EXCEPTIONS\n" "#ifdef VULKAN_HPP_NO_EXCEPTIONS\n"
" assert( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() );\n" " assert( std::find( successCodes.begin(), successCodes.end(), result ) != successCodes.end() );\n"
"#else\n" "#else\n"
" if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() )\n" " if ( std::find( successCodes.begin(), successCodes.end(), result ) == successCodes.end() )\n"
@ -795,7 +795,7 @@ size_t findTemplateIndex(CommandData const& commandData, std::map<size_t, size_t
return ~0; return ~0;
} }
std::string getEnumName(std::string const& name) // get vkcpp enum name from vk enum name std::string getEnumName(std::string const& name) // get vulkan.hpp enum name from vk enum name
{ {
return strip(name, "Vk"); return strip(name, "Vk");
} }
@ -1924,14 +1924,14 @@ void writeFunctionBody(std::ofstream & ofs, std::string const& indentation, std:
{ {
if ((it1->first != returnIndex) && (it0->second == it1->second)) if ((it1->first != returnIndex) && (it0->second == it1->second))
{ {
ofs << "#ifdef VK_CPP_NO_EXCEPTIONS" << std::endl ofs << "#ifdef VULKAN_HPP_NO_EXCEPTIONS" << std::endl
<< indentation << " assert( " << reduceName(commandData.arguments[it0->first].name) << ".size() == " << reduceName(commandData.arguments[it1->first].name) << ".size() );" << std::endl << indentation << " assert( " << reduceName(commandData.arguments[it0->first].name) << ".size() == " << reduceName(commandData.arguments[it1->first].name) << ".size() );" << std::endl
<< "#else" << std::endl << "#else" << std::endl
<< indentation << " if ( " << reduceName(commandData.arguments[it0->first].name) << ".size() != " << reduceName(commandData.arguments[it1->first].name) << ".size() )" << std::endl << indentation << " if ( " << reduceName(commandData.arguments[it0->first].name) << ".size() != " << reduceName(commandData.arguments[it1->first].name) << ".size() )" << std::endl
<< indentation << " {" << std::endl << indentation << " {" << std::endl
<< indentation << " throw std::logic_error( \"vk::" << className << "::" << functionName << ": " << reduceName(commandData.arguments[it0->first].name) << ".size() != " << reduceName(commandData.arguments[it1->first].name) << ".size()\" );" << std::endl << indentation << " throw std::logic_error( \"vk::" << className << "::" << functionName << ": " << reduceName(commandData.arguments[it0->first].name) << ".size() != " << reduceName(commandData.arguments[it1->first].name) << ".size()\" );" << std::endl
<< indentation << " }" << std::endl << indentation << " }" << std::endl
<< "#endif // VK_CPP_NO_EXCEPTIONS" << std::endl; << "#endif // VULKAN_HPP_NO_EXCEPTIONS" << std::endl;
} }
} }
} }
@ -2397,9 +2397,9 @@ void writeTypeCommand(std::ofstream & ofs, VkData const& vkData, DependencyData
writeTypeCommandStandard(ofs, " ", dependencyData.name, dependencyData, commandData, vkData.vkTypes); writeTypeCommandStandard(ofs, " ", dependencyData.name, dependencyData, commandData, vkData.vkTypes);
ofs << std::endl ofs << std::endl
<< "#ifndef VKCPP_DISABLE_ENHANCED_MODE" << std::endl; << "#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE" << std::endl;
writeTypeCommandEnhanced(ofs, vkData, " ", "", dependencyData.name, dependencyData, commandData); writeTypeCommandEnhanced(ofs, vkData, " ", "", dependencyData.name, dependencyData, commandData);
ofs << "#endif /*VKCPP_DISABLE_ENHANCED_MODE*/" << std::endl ofs << "#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/" << std::endl
<< std::endl; << std::endl;
} }
} }
@ -2602,7 +2602,7 @@ void writeTypeHandle(std::ofstream & ofs, VkData const& vkData, DependencyData c
<< " : m_" << memberName << "(VK_NULL_HANDLE)" << std::endl << " : m_" << memberName << "(VK_NULL_HANDLE)" << std::endl
<< " {}" << std::endl << " {}" << std::endl
<< std::endl << std::endl
<< "#if defined(VK_CPP_TYPESAFE_CONVERSION)" << std::endl << "#if defined(VULKAN_HPP_TYPESAFE_CONVERSION)" << std::endl
// construct from native handle // construct from native handle
<< " " << dependencyData.name << "(Vk" << dependencyData.name << " " << memberName << ")" << std::endl << " " << dependencyData.name << "(Vk" << dependencyData.name << " " << memberName << ")" << std::endl
<< " : m_" << memberName << "(" << memberName << ")" << std::endl << " : m_" << memberName << "(" << memberName << ")" << std::endl
@ -2632,18 +2632,18 @@ void writeTypeHandle(std::ofstream & ofs, VkData const& vkData, DependencyData c
bool hasPointers = hasPointerArguments(cit->second); bool hasPointers = hasPointerArguments(cit->second);
if (!hasPointers) if (!hasPointers)
{ {
ofs << "#ifdef VKCPP_DISABLE_ENHANCED_MODE" << std::endl; ofs << "#ifdef VULKAN_HPP_DISABLE_ENHANCED_MODE" << std::endl;
} }
writeTypeCommandStandard(ofs, " ", functionName, *dep, cit->second, vkData.vkTypes); writeTypeCommandStandard(ofs, " ", functionName, *dep, cit->second, vkData.vkTypes);
if (!hasPointers) if (!hasPointers)
{ {
ofs << "#endif /*!VKCPP_DISABLE_ENHANCED_MODE*/" << std::endl; ofs << "#endif /*!VULKAN_HPP_DISABLE_ENHANCED_MODE*/" << std::endl;
} }
ofs << std::endl ofs << std::endl
<< "#ifndef VKCPP_DISABLE_ENHANCED_MODE" << std::endl; << "#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE" << std::endl;
writeTypeCommandEnhanced(ofs, vkData, " ", className, functionName, *dep, cit->second); writeTypeCommandEnhanced(ofs, vkData, " ", className, functionName, *dep, cit->second);
ofs << "#endif /*VKCPP_DISABLE_ENHANCED_MODE*/" << std::endl; ofs << "#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/" << std::endl;
if (i < handle.commands.size() - 1) if (i < handle.commands.size() - 1)
{ {
@ -2652,7 +2652,7 @@ void writeTypeHandle(std::ofstream & ofs, VkData const& vkData, DependencyData c
} }
ofs << std::endl; ofs << std::endl;
} }
ofs << "#if !defined(VK_CPP_TYPESAFE_CONVERSION)" << std::endl ofs << "#if !defined(VULKAN_HPP_TYPESAFE_CONVERSION)" << std::endl
<< " explicit" << std::endl << " explicit" << std::endl
<< "#endif" << std::endl << "#endif" << std::endl
<< " operator Vk" << dependencyData.name << "() const" << std::endl << " operator Vk" << dependencyData.name << "() const" << std::endl
@ -2819,7 +2819,7 @@ void writeTypeUnion( std::ofstream & ofs, VkData const& vkData, DependencyData c
} }
if (needsUnrestrictedUnions) if (needsUnrestrictedUnions)
{ {
ofs << "#ifdef VK_CPP_HAS_UNRESTRICTED_UNIONS" << std::endl; ofs << "#ifdef VULKAN_HPP_HAS_UNRESTRICTED_UNIONS" << std::endl;
for (size_t i = 0; i < unionData.members.size(); i++) for (size_t i = 0; i < unionData.members.size(); i++)
{ {
ofs << " " << unionData.members[i].type << " " << unionData.members[i].name; ofs << " " << unionData.members[i].type << " " << unionData.members[i].name;
@ -2847,7 +2847,7 @@ void writeTypeUnion( std::ofstream & ofs, VkData const& vkData, DependencyData c
} }
if (needsUnrestrictedUnions) if (needsUnrestrictedUnions)
{ {
ofs << "#endif // VK_CPP_HAS_UNRESTRICTED_UNIONS" << std::endl; ofs << "#endif // VULKAN_HPP_HAS_UNRESTRICTED_UNIONS" << std::endl;
} }
ofs << " };" << std::endl ofs << " };" << std::endl
<< std::endl; << std::endl;
@ -2904,9 +2904,9 @@ void writeVersionCheck(std::ofstream & ofs, std::string const& version)
void writeTypesafeCheck(std::ofstream & ofs, std::string const& typesafeCheck) void writeTypesafeCheck(std::ofstream & ofs, std::string const& typesafeCheck)
{ {
ofs << "// 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default." << std::endl ofs << "// 32-bit vulkan is not typesafe for handles, so don't allow copy constructors on this platform by default." << std::endl
<< "// To enable this feature on 32-bit platforms please define VK_CPP_TYPESAFE_CONVERSION" << std::endl << "// To enable this feature on 32-bit platforms please define VULKAN_HPP_TYPESAFE_CONVERSION" << std::endl
<< typesafeCheck << std::endl << typesafeCheck << std::endl
<< "#define VK_CPP_TYPESAFE_CONVERSION 1" << std::endl << "#define VULKAN_HPP_TYPESAFE_CONVERSION 1" << std::endl
<< "#endif" << std::endl << "#endif" << std::endl
<< std::endl; << std::endl;
} }
@ -2918,7 +2918,7 @@ int main( int argc, char **argv )
std::string filename = (argc == 1) ? VK_SPEC : argv[1]; std::string filename = (argc == 1) ? VK_SPEC : argv[1];
std::cout << "Loading vk.xml from " << filename << std::endl; std::cout << "Loading vk.xml from " << filename << std::endl;
std::cout << "Writing vk_cpp.hpp to " << VK_CPP << std::endl; std::cout << "Writing vulkan.hpp to " << VULKAN_HPP << std::endl;
tinyxml2::XMLError error = doc.LoadFile(filename.c_str()); tinyxml2::XMLError error = doc.LoadFile(filename.c_str());
if (error != tinyxml2::XML_SUCCESS) if (error != tinyxml2::XML_SUCCESS)
@ -2973,13 +2973,13 @@ int main( int argc, char **argv )
std::map<std::string, std::string> defaultValues; std::map<std::string, std::string> defaultValues;
createDefaults(vkData, defaultValues); createDefaults(vkData, defaultValues);
std::ofstream ofs(VK_CPP); std::ofstream ofs(VULKAN_HPP);
ofs << nvidiaLicenseHeader << std::endl ofs << nvidiaLicenseHeader << std::endl
<< vkData.vulkanLicenseHeader << std::endl << vkData.vulkanLicenseHeader << std::endl
<< std::endl << std::endl
<< std::endl << std::endl
<< "#ifndef VK_CPP_H_" << std::endl << "#ifndef VULKAN_HPP" << std::endl
<< "#define VK_CPP_H_" << std::endl << "#define VULKAN_HPP" << std::endl
<< std::endl << std::endl
<< "#include <array>" << std::endl << "#include <array>" << std::endl
<< "#include <cassert>" << std::endl << "#include <cassert>" << std::endl
@ -2988,9 +2988,9 @@ int main( int argc, char **argv )
<< "#include <string>" << std::endl << "#include <string>" << std::endl
<< "#include <system_error>" << std::endl << "#include <system_error>" << std::endl
<< "#include <vulkan/vulkan.h>" << std::endl << "#include <vulkan/vulkan.h>" << std::endl
<< "#ifndef VKCPP_DISABLE_ENHANCED_MODE" << std::endl << "#ifndef VULKAN_HPP_DISABLE_ENHANCED_MODE" << std::endl
<< "# include <vector>" << std::endl << "# include <vector>" << std::endl
<< "#endif /*VKCPP_DISABLE_ENHANCED_MODE*/" << std::endl << "#endif /*VULKAN_HPP_DISABLE_ENHANCED_MODE*/" << std::endl
<< std::endl; << std::endl;
writeVersionCheck(ofs, vkData.version); writeVersionCheck(ofs, vkData.version);

File diff suppressed because it is too large Load Diff