New upstream version 5.2.5188
This commit is contained in:
45
3rdparty/tinydir/samples/.gitignore
vendored
Normal file
45
3rdparty/tinydir/samples/.gitignore
vendored
Normal file
@@ -0,0 +1,45 @@
|
||||
# Object files
|
||||
*.o
|
||||
|
||||
# Libraries
|
||||
*.lib
|
||||
*.a
|
||||
|
||||
# Shared objects (inc. Windows DLLs)
|
||||
*.dll
|
||||
*.so
|
||||
*.so.*
|
||||
*.dylib
|
||||
|
||||
# Executables
|
||||
*.exe
|
||||
*.out
|
||||
*.app
|
||||
*_sample
|
||||
|
||||
# CMake
|
||||
CMakeFiles/
|
||||
CMakeCache.txt
|
||||
*.dir/
|
||||
cmake_install.cmake
|
||||
|
||||
# Visual Studio
|
||||
.vs/
|
||||
Debug/
|
||||
out/
|
||||
Win32/
|
||||
*.opensdf
|
||||
*.sdf
|
||||
*.suo
|
||||
*.vcxproj.user
|
||||
*.vcxproj
|
||||
*.vcxproj.filters
|
||||
*.VC.*
|
||||
*.sln
|
||||
|
||||
# Linux
|
||||
Makefile
|
||||
|
||||
# OS X
|
||||
CMakeScripts/
|
||||
*.xcodeproj
|
||||
26
3rdparty/tinydir/samples/CMakeLists.txt
vendored
Normal file
26
3rdparty/tinydir/samples/CMakeLists.txt
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
|
||||
cmake_policy(VERSION 2.6)
|
||||
|
||||
project(tinydir)
|
||||
|
||||
INCLUDE_DIRECTORIES(..)
|
||||
|
||||
################################
|
||||
# Add definitions
|
||||
|
||||
if(MSVC)
|
||||
add_definitions(-W4 -WX -wd"4996")
|
||||
else()
|
||||
add_definitions(-fsigned-char -Wall -W -Wshadow -Wpointer-arith -Wcast-qual -Winline -Werror)
|
||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wstrict-prototypes")
|
||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
|
||||
endif()
|
||||
|
||||
################################
|
||||
# Add targets
|
||||
add_executable(file_open_sample file_open_sample.c)
|
||||
add_executable(iterate_sample iterate_sample.c)
|
||||
add_executable(random_access_sample random_access_sample.c)
|
||||
add_executable(interactive_sample interactive_sample.c)
|
||||
add_executable(cpp_sample cpp_sample.cpp)
|
||||
add_executable(list_to_file list_to_file.c)
|
||||
46
3rdparty/tinydir/samples/cpp_sample.cpp
vendored
Normal file
46
3rdparty/tinydir/samples/cpp_sample.cpp
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
#include <iostream>
|
||||
#include <stdexcept>
|
||||
#include <string>
|
||||
|
||||
struct tinydir_dir;
|
||||
|
||||
class TinyDir {
|
||||
public:
|
||||
TinyDir(const std::string& path);
|
||||
~TinyDir();
|
||||
std::string BaseName() const;
|
||||
private:
|
||||
tinydir_dir* dir;
|
||||
};
|
||||
|
||||
#include <tinydir.h>
|
||||
|
||||
TinyDir::TinyDir(const std::string& path) : dir(new tinydir_dir) {
|
||||
if (tinydir_open(dir, path.c_str()) == -1) {
|
||||
throw std::invalid_argument{"path"};
|
||||
}
|
||||
}
|
||||
|
||||
TinyDir::~TinyDir() {
|
||||
delete dir;
|
||||
}
|
||||
|
||||
std::string TinyDir::BaseName() const {
|
||||
const std::string path{dir->path};
|
||||
auto lastSlash = path.find_last_of("/\\");
|
||||
if (lastSlash == std::string::npos) {
|
||||
return path;
|
||||
}
|
||||
return path.substr(lastSlash + 1);
|
||||
}
|
||||
|
||||
int main(int argc, char* argv[]) {
|
||||
if (argc != 2) {
|
||||
std::cerr << "Usage: cpp_sample filename\n";
|
||||
return 1;
|
||||
}
|
||||
TinyDir td{argv[1]};
|
||||
std::cout << "Basename is " << td.BaseName() << "\n";
|
||||
return 0;
|
||||
}
|
||||
|
||||
21
3rdparty/tinydir/samples/file_open_sample.c
vendored
Normal file
21
3rdparty/tinydir/samples/file_open_sample.c
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
#include <stdio.h>
|
||||
#include <tinydir.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
tinydir_file file;
|
||||
if (argc != 2)
|
||||
{
|
||||
fprintf(stderr, "Usage: test filename\n");
|
||||
return 1;
|
||||
}
|
||||
if (tinydir_file_open(&file, argv[1]) == -1)
|
||||
{
|
||||
perror("Error opening file");
|
||||
return 1;
|
||||
}
|
||||
printf("Path: %s\nName: %s\nExtension: %s\nIs dir? %s\nIs regular file? %s\n",
|
||||
file.path, file.name, file.extension,
|
||||
file.is_dir?"yes":"no", file.is_reg?"yes":"no");
|
||||
return 0;
|
||||
}
|
||||
60
3rdparty/tinydir/samples/interactive_sample.c
vendored
Normal file
60
3rdparty/tinydir/samples/interactive_sample.c
vendored
Normal file
@@ -0,0 +1,60 @@
|
||||
#include <stdio.h>
|
||||
#include <tinydir.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
tinydir_dir dir;
|
||||
if (tinydir_open_sorted(&dir, ".") == -1)
|
||||
{
|
||||
perror("Error opening file");
|
||||
goto bail;
|
||||
}
|
||||
|
||||
for (;;)
|
||||
{
|
||||
size_t i;
|
||||
char input[256];
|
||||
for (i = 0; i < dir.n_files; i++)
|
||||
{
|
||||
tinydir_file file;
|
||||
if (tinydir_readfile_n(&dir, &file, i) == -1)
|
||||
{
|
||||
perror("Error getting file");
|
||||
goto bail;
|
||||
}
|
||||
|
||||
if (file.is_dir)
|
||||
{
|
||||
printf("[%u] ", (unsigned int)i);
|
||||
}
|
||||
printf("%s", file.name);
|
||||
if (file.is_dir)
|
||||
{
|
||||
printf("/");
|
||||
}
|
||||
printf("\n");
|
||||
}
|
||||
printf("?");
|
||||
|
||||
if (fgets(input, 256, stdin) == NULL)
|
||||
{
|
||||
break;
|
||||
}
|
||||
else
|
||||
{
|
||||
int choice = atoi(input);
|
||||
if (choice >= 0 && (size_t)choice < dir.n_files)
|
||||
{
|
||||
if (tinydir_open_subdir_n(&dir, choice) == -1)
|
||||
{
|
||||
perror("Error opening subdirectory");
|
||||
goto bail;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bail:
|
||||
tinydir_close(&dir);
|
||||
return 0;
|
||||
}
|
||||
39
3rdparty/tinydir/samples/iterate_sample.c
vendored
Normal file
39
3rdparty/tinydir/samples/iterate_sample.c
vendored
Normal file
@@ -0,0 +1,39 @@
|
||||
#include <stdio.h>
|
||||
#include <tinydir.h>
|
||||
|
||||
int main(void)
|
||||
{
|
||||
tinydir_dir dir;
|
||||
if (tinydir_open(&dir, ".") == -1)
|
||||
{
|
||||
perror("Error opening file");
|
||||
goto bail;
|
||||
}
|
||||
|
||||
while (dir.has_next)
|
||||
{
|
||||
tinydir_file file;
|
||||
if (tinydir_readfile(&dir, &file) == -1)
|
||||
{
|
||||
perror("Error getting file");
|
||||
goto bail;
|
||||
}
|
||||
|
||||
printf("%s", file.name);
|
||||
if (file.is_dir)
|
||||
{
|
||||
printf("/");
|
||||
}
|
||||
printf("\n");
|
||||
|
||||
if (tinydir_next(&dir) == -1)
|
||||
{
|
||||
perror("Error getting next file");
|
||||
goto bail;
|
||||
}
|
||||
}
|
||||
|
||||
bail:
|
||||
tinydir_close(&dir);
|
||||
return 0;
|
||||
}
|
||||
47
3rdparty/tinydir/samples/list_to_file.c
vendored
Normal file
47
3rdparty/tinydir/samples/list_to_file.c
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
#include <stdio.h>
|
||||
|
||||
#define _UNICODE
|
||||
#define UNICODE
|
||||
#include "tinydir.h"
|
||||
|
||||
char bom[] = "\xFF\xFE";
|
||||
|
||||
int main(void) {
|
||||
|
||||
FILE *fp;
|
||||
tinydir_dir dir;
|
||||
tinydir_open(&dir, TINYDIR_STRING("/path/to/dir"));
|
||||
|
||||
fp =
|
||||
#if ((defined _WIN32) && (defined _UNICODE))
|
||||
_wfopen(
|
||||
#else
|
||||
fopen(
|
||||
#endif
|
||||
TINYDIR_STRING("/file/to/output"), TINYDIR_STRING("wb"));
|
||||
|
||||
#if ((defined _WIN32) && (defined _UNICODE))
|
||||
fwrite(bom, 1, 2, fp);
|
||||
#endif
|
||||
|
||||
while (dir.has_next)
|
||||
{
|
||||
tinydir_file file;
|
||||
tinydir_readfile(&dir, &file);
|
||||
|
||||
fwrite(file.name, sizeof(_tinydir_char_t), _tinydir_strlen(file.name), fp);
|
||||
if (file.is_dir)
|
||||
{
|
||||
fwrite(TINYDIR_STRING("/"), sizeof(_tinydir_char_t), _tinydir_strlen(TINYDIR_STRING("/")), fp);
|
||||
}
|
||||
fwrite(TINYDIR_STRING("\n"), sizeof(_tinydir_char_t), _tinydir_strlen(TINYDIR_STRING("/")), fp);
|
||||
|
||||
tinydir_next(&dir);
|
||||
}
|
||||
|
||||
tinydir_close(&dir);
|
||||
|
||||
fclose(fp);
|
||||
|
||||
return 0;
|
||||
}
|
||||
34
3rdparty/tinydir/samples/random_access_sample.c
vendored
Normal file
34
3rdparty/tinydir/samples/random_access_sample.c
vendored
Normal file
@@ -0,0 +1,34 @@
|
||||
#include <stdio.h>
|
||||
#include <tinydir.h>
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
tinydir_dir dir;
|
||||
size_t i;
|
||||
if (tinydir_open_sorted(&dir, argc >= 2 ? argv[1] : ".") == -1)
|
||||
{
|
||||
perror("Error opening file");
|
||||
goto bail;
|
||||
}
|
||||
|
||||
for (i = 0; i < dir.n_files; i++)
|
||||
{
|
||||
tinydir_file file;
|
||||
if (tinydir_readfile_n(&dir, &file, i) == -1)
|
||||
{
|
||||
perror("Error getting file");
|
||||
goto bail;
|
||||
}
|
||||
|
||||
printf("%s", file.name);
|
||||
if (file.is_dir)
|
||||
{
|
||||
printf("/");
|
||||
}
|
||||
printf("\n");
|
||||
}
|
||||
|
||||
bail:
|
||||
tinydir_close(&dir);
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user