VulkanRaytracingCycles 0.0.0
Cycles Render Engine With VulkanRaytracingShaderModules. ( Experiment , in progress)
pch_mm.h
Go to the documentation of this file.
1#pragma once
2#ifndef PRICON_MM_H
3#define PRICON_MM_H
4
5
6#include "pch_three.h"
7
8
9#include <conio.h>
10#include <condition_variable>
11#include <regex>
12#include <memory>
13#include <execution>
14#include <unordered_set>
15#include <array>
16#include <vector>
17
18#include <mutex>
19#include <queue>
20
21#include <any>
22#include <compare>
23
24
25using namespace std::string_view_literals;
26
27
28
29
30#include "Vk.h"
31#include "Catcher.h"
33#include "xrui.h"
35
36#include <ktx.h>
37#include <ktxvulkan.h>
38#include "libktx.h"
39
40
41
42#if __linux__ || __APPLE__ || __sun
43#include <unistd.h>
44#elif _WIN32
45
46#include "tbb/tbb_config.h"
47#include "ext/harness_defs.h"
48#include "tbb/machine/windows_api.h"
49#endif /* OS specific */
50#include <memory>
51#include <new>
52#include <cstdio>
53#include <stdexcept>
54#include <utility>
55#include __TBB_STD_SWAP_HEADER
56
58#include "tbb/tbb_allocator.h"
59#include "tbb/parallel_for.h"
60#include "tbb/concurrent_unordered_map.h"
61//#include "tbb/concurrent_hash_map.h"
62#include "tbb/concurrent_vector.h"
63
64#define USE_HIREDIS
65
66#ifndef USE_TBB
67#define USE_TBB
68#endif
69
70#ifdef USE_HIREDIS
71#include <hiredis/hiredis.h>
72#ifdef _MSC_VER
73#include <winsock2.h> /* For struct timeval */
74#endif
75static const char* reply_types[] = {
76"REPLY0",
77"STRING",
78 "ARRAY",
79"INTEGER",
80"NIL",
81"STATUS",
82"ERROR",
83"UNKNWON"
84};
85#define RD_ARRAY_PRINT(cmd,...){\
86 redisReply* _reply = (redisReply*)redisCommand(c, cmd,__VA_ARGS__);\
87 if( (_reply!=NULL) & (_reply->type == REDIS_REPLY_ARRAY)) {\
88 for (int j = 0; j < _reply->elements; j++) {\
89 printf("%u) %s\n", j, _reply->element[j]->str);\
90 }\
91 }; freeReplyObject(_reply); }
92#define RD_CHECK(X) if ( !X || X->type == REDIS_REPLY_ERROR ) { printf("Error\n"); exit(-1); }
93#define RD_REPLY_PRINT(reply)printf("res: %s, num: %zu, type: %s\n", reply->str, reply->elements,reply_types[ reply->type ]);
94
95
96#endif
97#endif