X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=libctsim%2Ftrace.cpp;h=f37ee2e1da01117cc94f90a6d65731c074ba6ab0;hb=79b656146b04b1d57d1ac27f9f2e5474e17c4936;hp=3bb8ce8ca6a6b997fce31b002be2edd97902b92d;hpb=27a474e0622ebb7229fd5705552021f63d8f932d;p=ctsim.git diff --git a/libctsim/trace.cpp b/libctsim/trace.cpp index 3bb8ce8..f37ee2e 100644 --- a/libctsim/trace.cpp +++ b/libctsim/trace.cpp @@ -8,7 +8,7 @@ ** This is part of the CTSim program ** Copyright (C) 1983-2000 Kevin Rosenberg ** -** $Id: trace.cpp,v 1.1 2000/07/20 11:17:31 kevin Exp $ +** $Id$ ** ** This program is free software; you can redistribute it and/or modify ** it under the terms of the GNU General Public License (version 2) as @@ -26,33 +26,76 @@ #include "ct.h" -const char TraceLevel::TRACE_NONE_STR[]= "none"; -const char TraceLevel::TRACE_TEXT_STR[]= "text"; -const char TraceLevel::TRACE_PHM_STR[]= "phm"; -const char TraceLevel::TRACE_RAYS_STR[]= "rays"; -const char TraceLevel::TRACE_PLOT_STR[]= "plot"; -const char TraceLevel::TRACE_CLIPPING_STR[]= "clipping"; +const int Trace::TRACE_INVALID = -1; +const int Trace::TRACE_NONE = 0; +const int Trace::TRACE_CONSOLE = 1; +const int Trace::TRACE_PHANTOM = 2; +const int Trace::TRACE_PROJECTIONS = 3; +const int Trace::TRACE_PLOT = 4; +const int Trace::TRACE_CLIPPING = 5; +const int Trace::BIT_CONSOLE = 0x0001; +const int Trace::BIT_PHANTOM = 0x0002; +const int Trace::BIT_PROJECTIONS = 0x0004; +const int Trace::BIT_PLOT = 0x0008; +const int Trace::BIT_CLIPPING = 0x0010; -TraceID -TraceLevel::convertTraceNameToID (const char *traceString) +const char* Trace::s_aszTraceName[] = { - TraceID traceID = TRACE_INVALID; - - if (strcasecmp (traceString, TRACE_NONE_STR) == 0) - traceID = TRACE_NONE; - else if (strcasecmp (traceString, TRACE_TEXT_STR) == 0) - traceID = TRACE_TEXT; - else if (strcasecmp (traceString, TRACE_PHM_STR) == 0) - traceID = TRACE_PHM; - else if (strcasecmp (traceString, TRACE_PLOT_STR) == 0) - traceID = TRACE_PLOT; - else if (strcasecmp (traceString, TRACE_CLIPPING_STR) == 0) - traceID = TRACE_CLIPPING; - else if (strcasecmp (traceString, TRACE_RAYS_STR) == 0) - traceID = TRACE_RAYS; - - return (traceID); + "none", + "console", + "phantom", + "proj", + "plot", + "clipping", +}; + +const char* Trace::s_aszTraceTitle[] = +{ + "None", + "Console", + "Phantom", + "Projections", + "Plot", + "Clipping", +}; + +const int Trace::s_iTraceCount = sizeof(s_aszTraceName) / sizeof(const char*); + + +const char* +Trace::convertTraceIDToName (const int idTrace) +{ + const char *name = ""; + + if (idTrace >= 0 && idTrace < s_iTraceCount) + return (s_aszTraceName[idTrace]); + + return (name); } +const char* +Trace::convertTraceIDToTitle (const int idTrace) +{ + const char *title = ""; + + if (idTrace >= 0 && idTrace < s_iTraceCount) + return (s_aszTraceName[idTrace]); + + return (title); +} + +int +Trace::convertTraceNameToID (const char* const traceName) +{ + int id = Trace::TRACE_INVALID; + + for (int i = 0; i < s_iTraceCount; i++) + if (strcasecmp (traceName, s_aszTraceName[i]) == 0) { + id = i; + break; + } + + return (id); +}