adtf_file_library  0.13.1
Referenced Files

Description

Example application which shows the usage of adtf_file::StandardReader and how to access adtf_file::ReferencedFilesExtension.

Usage

referencedfiles <adtfdat>

Source

#include <iostream> //std::cout, std::endl
#include <cstring> //std::string
//prototype to print referenced file paths
void print_referenced_files(std::vector<a_util::filesystem::Path> referencedfiles)
{
for (auto file : referencedfiles)
{
std::cout << " " << file.toString() << std::endl;
}
}
//main function
int main(int argc, char* argv[])
{
if (2 != argc)
{
std::cout << "usage: referencedfiles <adtfdat>\n" << std::endl;
return -1;
}
a_util::filesystem::Path filename = argv[1];
std::vector<a_util::filesystem::Path> referenced_files_list;
{
try
{
adtf_file::StandardReader reader(filename.toString());
adtf_file::ReferencedFilesExtension referenced_files_ext(reader);
std::cout << "The original referenced files: " << std::endl;
referenced_files_list = referenced_files_ext.getFiles();
print_referenced_files(referenced_files_list);
}
catch (const std::exception& ex)
{
std::cout << ex.what() << std::endl;
}
}
a_util::filesystem::Path copy_extension_filename = filename.getParent().toString() + "copy";
{
adtf_file::ReferencedFilesExtension referenced_files_ext(referenced_files_list);
adtf_file::ADTFDatFileWriter writer(copy_extension_filename.toString(),
std::chrono::seconds(0),
referenced_files_ext.write(writer);
}
try
{
adtf_file::StandardReader reader(copy_extension_filename.toString());
adtf_file::ReferencedFilesExtension referenced_files_ext(reader);
std::cout << "The copy referenced files: " << std::endl;
referenced_files_list = referenced_files_ext.getFiles();
print_referenced_files(referenced_files_list);
}
catch (const std::exception& ex)
{
std::cout << ex.what() << std::endl;
}
return 0;
}
Default ADTF DAT File Writer to write an ADTF DAT File (IFHD file with ADTF type and sample content).
Definition: adtf_file_writer.h:272
Referenced File Extension Interpreter to hold a collection of file paths. This class is ables to read...
Definition: file_extensions.h:31
Standard Reader class to use the ADTFDatFileReader in default way.
Definition: standard_adtf_file_reader.h:30
Default container with all ADTF 3 StreamTypeSerializer provided by the ADTF File Library.
Definition: standard_factories.h:96

Copyright © CARIAD SE.
Generated on Fri Apr 19 2024 by doxygen 1.9.1
GIT Commit Hash: 82d535f82776c20b12fc60740bdae991b62444a7