|
|
//========= Copyright Valve Corporation, All rights reserved. ============//
//
// Purpose: Util.h and Util.cpp provide lots of helper stuff for TFStats to work
//
// $Workfile: $
// $Date: $
//
//------------------------------------------------------------------------------------------------------
// $Log: $
//
// $NoKeywords: $
//=============================================================================//
#ifndef UTIL_H
#define UTIL_H
#ifdef WIN32
#pragma once
#endif
#pragma warning (disable:4786)
#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <map>
using std::string; using std::map;
#ifdef WIN32
#include <direct.h>
#include <time.h>
#else
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#define PERMIT (S_IRWXU|S_IRWXG|S_IRWXO)
#endif
//leave these global
enum Consts { TEAM_BLUE=0, TEAM_RED, TEAM_GREEN, TEAM_YELLOW, TEAM_NONE=4, MAX_TEAMS=4, ALL_TEAMS=4, };
//Player Class support
enum player_class { PC_UNDEFINED=0, PC_SCOUT, PC_SNIPER, PC_SOLDIER, PC_DEMOMAN, PC_MEDIC, PC_HWGUY, PC_PYRO, PC_SPY, PC_ENGINEER, PC_CIVILIAN, PC_RANDOM, PC_OBSERVER, };
//english names, indexed by above enumeration
extern char* plrClassNames[]; //linear search, ack.
player_class playerClassNameToClassID(const char* plrClass);
//time support functions
#include <time.h>
class Util { public: //get hours from time_t number
static int time_t2hours(time_t tmr); //get minutes from time_t number
static int time_t2mins(time_t tmr); //get seconds from time_t number
static int time_t2secs(time_t tmr);
//friendly english stuff
static char* Months[]; static char* numberSuffixes[]; static char* daysofWeek[]; static char* ampm[];
static void debug_dir_printf(PRINTF_FORMAT_STRING char* fmt,...);
static void str2lowercase(char* out, const char* in);
//friendly weapon names so users don't have to look at names like "gl_grenade"
static const string& getFriendlyWeaponName(const string& s); static void initFriendlyWeaponNameTable(); //map of team colors, indexed by team ID
static const char* teamcolormap[]; static map<string,string> frWeapNmTbl; static int string2svrID(string s); static const char* makeDurationString(time_t start, time_t end,char* out,char* tostr=" - "); };
#endif // UTIL_H
|