Skip to content

Commit fa0420d

Browse files
committed
added guard
1 parent 1448b62 commit fa0420d

File tree

2 files changed

+79
-2
lines changed

2 files changed

+79
-2
lines changed

CMakeLists.txt

-2
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,3 @@ target_include_directories(cv-sdk INTERFACE include)
88
if (WIN32)
99
target_link_directories(cv-sdk INTERFACE lib)
1010
endif()
11-
12-
set(FOUND_CV_SDK 1 PARENT_SCOPE)
+79
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
//
2+
// Created by Orange on 11/7/2024.
3+
//
4+
#pragma once
5+
#include <CodeVirtualizer/VirtualizerSDK.h>
6+
#ifdef _MSC_VER
7+
# define CV_MACROS_FORCEINLINE __forceinline
8+
#else
9+
# define XORSTR_FORCEINLINE __attribute__((always_inline)) inline
10+
#endif
11+
12+
13+
#define CV_MAKE_MACROS_GUARD_DEF(name) \
14+
class MarcosGuard##name \
15+
{ \
16+
public: \
17+
CV_MACROS_FORCEINLINE MarcosGuard##name() \
18+
{\
19+
VIRTUALIZER_##name##_START\
20+
}\
21+
\
22+
CV_MACROS_FORCEINLINE ~MarcosGuard##name() \
23+
{\
24+
VIRTUALIZER_##name##_END\
25+
}\
26+
};
27+
28+
namespace CodeVirtualizer
29+
{
30+
CV_MAKE_MACROS_GUARD_DEF(TIGER_WHITE)
31+
CV_MAKE_MACROS_GUARD_DEF(TIGER_RED)
32+
CV_MAKE_MACROS_GUARD_DEF(TIGER_BLACK)
33+
34+
// Fish
35+
CV_MAKE_MACROS_GUARD_DEF(FISH_WHITE)
36+
CV_MAKE_MACROS_GUARD_DEF(FISH_RED)
37+
CV_MAKE_MACROS_GUARD_DEF(FISH_BLACK)
38+
39+
// Puma
40+
CV_MAKE_MACROS_GUARD_DEF(PUMA_WHITE)
41+
CV_MAKE_MACROS_GUARD_DEF(PUMA_RED)
42+
CV_MAKE_MACROS_GUARD_DEF(PUMA_BLACK)
43+
44+
// Shark
45+
CV_MAKE_MACROS_GUARD_DEF(SHARK_WHITE)
46+
CV_MAKE_MACROS_GUARD_DEF(SHARK_RED)
47+
CV_MAKE_MACROS_GUARD_DEF(SHARK_BLACK)
48+
49+
// Dolphin
50+
CV_MAKE_MACROS_GUARD_DEF(DOLPHIN_WHITE)
51+
CV_MAKE_MACROS_GUARD_DEF(DOLPHIN_RED)
52+
CV_MAKE_MACROS_GUARD_DEF(DOLPHIN_BLACK)
53+
54+
// Eagle
55+
CV_MAKE_MACROS_GUARD_DEF(EAGLE_WHITE)
56+
CV_MAKE_MACROS_GUARD_DEF(EAGLE_RED)
57+
CV_MAKE_MACROS_GUARD_DEF(EAGLE_BLACK)
58+
59+
// Lion
60+
CV_MAKE_MACROS_GUARD_DEF(LION_WHITE)
61+
CV_MAKE_MACROS_GUARD_DEF(LION_RED)
62+
CV_MAKE_MACROS_GUARD_DEF(LION_BLACK)
63+
64+
// Cobra
65+
CV_MAKE_MACROS_GUARD_DEF(COBRA_WHITE)
66+
CV_MAKE_MACROS_GUARD_DEF(COBRA_RED)
67+
CV_MAKE_MACROS_GUARD_DEF(COBRA_BLACK)
68+
69+
// Wolf
70+
CV_MAKE_MACROS_GUARD_DEF(WOLF_WHITE)
71+
CV_MAKE_MACROS_GUARD_DEF(WOLF_RED)
72+
CV_MAKE_MACROS_GUARD_DEF(WOLF_BLACK)
73+
74+
// Special types
75+
CV_MAKE_MACROS_GUARD_DEF(MUTATE_ONLY)
76+
CV_MAKE_MACROS_GUARD_DEF(FALCON_TINY)
77+
}
78+
79+
#define CV_PLACE_GUARD_MACROS(name) CodeVirtualizer::MarcosGuard##name cv_guard##__COUNTER__;

0 commit comments

Comments
 (0)