NDEVR
API Documentation
APIDirectoryManager.h
1#pragma once
2#include <NDEVR/String.h>
3#include <NDEVR/File.h>
4namespace NDEVR
5{
13
16 {
17 public:
23 bool grabFromSource(const File& source_directory, bool grab_headers, LogPtr log);
29 bool grabFromOutput(const File& output_directory, bool include_libs, LogPtr log);
34 bool grabFromQT(const File& qt_directory, LogPtr log);
40 bool createAPIDirectory(const File& api_dir, bool override_existing, LogPtr log);
46 bool grabODA(const File& source_directory, bool output_to_api, LogPtr log);
52 bool grabVLC(const File& source_directory, bool output_to_api, LogPtr log);
58 bool grabRCC(const File& output_directory, bool output_to_api, LogPtr log);
59 String debug_exe_path = String("/VS/x64/Debug/");
60 String release_exe_path = String("/VS/x64/Release/");
73 static File FindFile(const StringView& resource, const File& directory, const StringView& extension);
91 static Buffer<String> GetQTResources(bool debug);
92 };
93}
Collects headers, libraries, DLLs, and resources from source and output directories and assembles the...
Buffer< APIResource > resources
Collected non-header resources.
bool createAPIDirectory(const File &api_dir, bool override_existing, LogPtr log)
Writes all collected resources to the target API directory.
static Buffer< StringView > GetSourceResources()
Returns the list of source resource names to include in the API.
static Buffer< StringView > GetAPIProjects(bool headers)
Returns the list of module project names that belong to the API.
Buffer< APIResource > qt_resources
Collected Qt runtime resources.
bool grabFromOutput(const File &output_directory, bool include_libs, LogPtr log)
Collects DLLs and optionally libraries from the build output directory.
bool grabVLC(const File &source_directory, bool output_to_api, LogPtr log)
Collects VLC dependencies.
bool grabODA(const File &source_directory, bool output_to_api, LogPtr log)
Collects ODA (Open Design Alliance) dependencies.
static Buffer< String > GetOutputDirResources(bool debug)
Returns the list of output directory resource file names.
bool grabFromQT(const File &qt_directory, LogPtr log)
Collects required Qt runtime files.
static File FindFile(const StringView &resource, const File &directory, const StringView &extension)
Locates a file by name within a directory, using the given extension filter.
bool grabFromSource(const File &source_directory, bool grab_headers, LogPtr log)
Collects headers and resources from the source directory.
Buffer< APIResource > debug_dlls
Collected debug .dll files.
Buffer< APIResource > release_dlls
Collected release .dll files.
String release_exe_path
Relative path to release executables.
bool grabRCC(const File &output_directory, bool output_to_api, LogPtr log)
Collects RCC (Qt Resource Compiler) outputs.
Buffer< APIResource > release_libs
Collected release .lib files.
Buffer< APIResource > headers
Collected header files.
static Buffer< StringView > GetQTResources()
Returns the list of Qt resource names (view version).
Buffer< APIResource > debug_libs
Collected debug .lib files.
static Buffer< String > GetQTResources(bool debug)
Returns the list of Qt resource file names for a given configuration.
String debug_exe_path
Relative path to debug executables.
The equivelent of std::vector but with a bit more control.
Definition Buffer.hpp:58
Logic for reading or writing to a file as well as navigating filesystems or other common file operati...
Definition File.h:53
A light-weight wrapper that will be a no-op if there is not a valid log reference,...
The core String View class for the NDEVR API.
Definition StringView.h:58
The core String class for the NDEVR API.
Definition String.h:95
The primary namespace for the NDEVR SDK.
Describes a single file resource to be included in the API directory, along with its relative path wi...
String relative_path
The relative path inside the API directory.
File file
The source file on disk.