⛏️ index : haiku.git

author Samuel Rodríguez Pérez <samuelgaliza@gmail.com> 2025-11-14 15:58:39.0 +00:00:00
committer Adrien Destugues <pulkomandy@pulkomandy.tk> 2025-12-09 10:08:25.0 +00:00:00
commit
d519530a2b70ee70954039a3e39c175a20da6752 [patch]
tree
61b38b0811f5e8c7a5844a810ff78bf97522eaee
parent
b7a226b66e09ce75a6c837079b1dff5193fd3922
download
d519530a2b70ee70954039a3e39c175a20da6752.tar.gz

input mouse mm: Improve tracing with a function tracer

The function tracer from MouseInputDevice.cpp adapted for
movement_maker.cpp.

Change-Id: I7414d9c69e231de2f8833814a5a7ee358c8088dd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/9924
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>

Diff

 src/add-ons/input_server/devices/mouse/movement_maker.cpp | 23 +++++++++++++++++++----
 1 file changed, 19 insertions(+), 4 deletions(-)

diff --git a/src/add-ons/input_server/devices/mouse/movement_maker.cpp b/src/add-ons/input_server/devices/mouse/movement_maker.cpp
index 948285b..651b507 100644
--- a/src/add-ons/input_server/devices/mouse/movement_maker.cpp
+++ b/src/add-ons/input_server/devices/mouse/movement_maker.cpp
@@ -19,17 +19,32 @@

#include "movement_maker.h"

#include <stdio.h>
#include <stdlib.h>
#include <math.h>


//#define TRACE_MOVEMENT_MAKER

#ifdef TRACE_MOVEMENT_MAKER
	#define TRACE(x...) debug_printf(x)
	#define CALLED(x...) TRACE("CALLED %s", __PRETTY_FUNCTION__)
#	include <String.h>
#	include <headers/private/shared/FunctionTracer.h>

	static int32 sFunctionDepth = -1;
#	define CALLED(x...)	FunctionTracer _ft(debug_printf, this, __PRETTY_FUNCTION__, sFunctionDepth)
#	define TRACE(x...)	do { BString _to; \
							_to.Append(' ', (sFunctionDepth + 1) * 2); \
							char _extra[1024]; \
							sprintf(_extra, x); \
							debug_printf("%p -> %s%s", this, _to.String(), _extra); \
						} while (0)
#	define LOG_EVENT(text...) do {} while (0)
#	define LOG_ERROR(text...) TRACE(text)
#else
	#define TRACE(x...)
	#define CALLED(x...)
#	define TRACE(x...)
#	define CALLED(x...)
#	define LOG_ERROR(x...)  do { debug_printf(x); } while(0)
#	define LOG_EVENT(x...)
#endif