diff options
author | Bartosz Taudul <wolf.pld@gmail.com> | 2017-09-22 20:32:49 +0300 |
---|---|---|
committer | Bartosz Taudul <wolf.pld@gmail.com> | 2017-09-22 20:32:49 +0300 |
commit | f47b7a1cdf6605a47596e04212a8861a64c7c0c7 (patch) | |
tree | cde9b14bc5bd36e68bdf571d2bdebdbfbd5773d1 /test | |
parent | 340bf804357c83c2c02f1cdbe532f0fc7b69a379 (diff) |
Add simple test application.
Diffstat (limited to 'test')
-rw-r--r-- | test/Makefile | 39 | ||||
-rw-r--r-- | test/test.cpp | 52 |
2 files changed, 91 insertions, 0 deletions
diff --git a/test/Makefile b/test/Makefile new file mode 100644 index 00000000..455ea66d --- /dev/null +++ b/test/Makefile @@ -0,0 +1,39 @@ +CFLAGS := -g3 -Wall -fmerge-constants +CXXFLAGS := $(CFLAGS) -std=gnu++14 +DEFINES += +INCLUDES := +LIBS := -lpthread +IMAGE := tracy_test + +SRC := \ + test.cpp \ + ../client/TracyProfiler.cpp \ + ../common/tracy_lz4.cpp \ + ../common/TracySocket.cpp \ + ../common/TracySystem.cpp + +OBJ := $(SRC:%.cpp=%.o) + +all: $(IMAGE) + +%.o: %.cpp + $(CXX) -c $(INCLUDES) $(CXXFLAGS) $(DEFINES) $< -o $@ + +%.d : %.cpp + @echo Resolving dependencies of $< + @mkdir -p $(@D) + @$(CXX) -MM $(INCLUDES) $(CXXFLAGS) $(DEFINES) $< > $@.$$$$; \ + sed 's,.*\.o[ :]*,$(<:.cpp=.o) $@ : ,g' < $@.$$$$ > $@; \ + rm -f $@.$$$$ + +$(IMAGE): $(OBJ) + $(CXX) $(CXXFLAGS) $(DEFINES) $(OBJ) $(LIBS) -o $@ + +ifneq "$(MAKECMDGOALS)" "clean" +-include $(SRC:.cpp=.d) +endif + +clean: + rm -f $(OBJ) $(SRC:.cpp=.d) $(IMAGE) + +.PHONY: clean all diff --git a/test/test.cpp b/test/test.cpp new file mode 100644 index 00000000..125c11b5 --- /dev/null +++ b/test/test.cpp @@ -0,0 +1,52 @@ +#include <chrono> +#include <thread> +#include "../client/Tracy.hpp" +#include "../common/TracySystem.hpp" + +void TestFunction() +{ + for(;;) + { + std::this_thread::sleep_for( std::chrono::milliseconds( 1 ) ); + ZoneScoped; + std::this_thread::sleep_for( std::chrono::milliseconds( 1 ) ); + } +} + +void ResolutionCheck() +{ + for(;;) + { + { + ZoneScoped; + std::this_thread::sleep_for( std::chrono::milliseconds( 1 ) ); + } + { + ZoneScoped; + std::this_thread::sleep_for( std::chrono::milliseconds( 1 ) ); + } + } + +} + + +int main() +{ + auto t1 = std::thread( TestFunction ); + auto t2 = std::thread( TestFunction ); + auto t3 = std::thread( ResolutionCheck ); + + tracy::SetThreadName( t1, "First thread" ); + tracy::SetThreadName( t2, "Second thread" ); + tracy::SetThreadName( t3, "Resolution check" ); + + for(;;) + { + std::this_thread::sleep_for( std::chrono::milliseconds( 2 ) ); + { + ZoneScoped; + std::this_thread::sleep_for( std::chrono::milliseconds( 2 ) ); + } + FrameMark; + } +} |