/* =========================================================================== Copyright (C) 2000 - 2013, Raven Software, Inc. Copyright (C) 2001 - 2013, Activision, Inc. Copyright (C) 2013 - 2015, OpenJK contributors This file is part of the OpenJK source code. OpenJK is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, see . =========================================================================== */ #include "../qcommon/q_shared.h" #if !defined(RATL_COMMON_INC) #include "ratl_common.h" #endif #if 0 #include "array_vs.h" #include "bits_vs.h" #include "heap_vs.h" #include "pool_vs.h" #include "list_vs.h" #include "queue_vs.h" #include "stack_vs.h" #include "string_vs.h" #include "vector_vs.h" #include "handle_pool_vs.h" #include "hash_pool_vs.h" #include "map_vs.h" #include "scheduler_vs.h" #endif #if !defined(CTYPE_H_INC) #include #define CTYPE_H_INC #endif #if !defined(STDARG_H_INC) #include #define STDARG_H_INC #endif #if !defined(STDIO_H_INC) #include #define STDIO_H_INC #endif #if !defined(RUFL_HFILE_INC) #include "../Rufl/hfile.h" #endif void (*ratl::ratl_base::OutputPrint)(const char*) = 0; namespace ratl { #ifdef _DEBUG int HandleSaltValue=1027; //this is used in debug for global uniqueness of handles int FoolTheOptimizer=5; //this is used to make sure certain things aren't optimized out #endif void ratl_base::save(hfile& file) { } void ratl_base::load(hfile& file) { } //////////////////////////////////////////////////////////////////////////////////////// // A Profile Print Function //////////////////////////////////////////////////////////////////////////////////////// #if !defined(FINAL_BUILD) void ratl_base::ProfilePrint(const char * format, ...) { static char string[2][1024]; // in case this is called by nested functions static int index = 0; static char nFormat[300]; char* buf; // Tack On The Standard Format Around The Given Format //----------------------------------------------------- sprintf(nFormat, "[PROFILE] %s\n", format); // Resolve Remaining Elipsis Parameters Into Newly Formated String //----------------------------------------------------------------- buf = string[index & 1]; index++; va_list argptr; va_start (argptr, format); vsprintf (buf, nFormat, argptr); va_end (argptr); // Print It To Debug Output Console //---------------------------------- if (OutputPrint!=0) { void (*OutputPrintFcn)(const char* text) = (void (*)(const char*))OutputPrint; OutputPrintFcn(buf); } } #else void ratl_base::ProfilePrint(const char * format, ...) { } #endif }