UFO: Alien Invasion
ufo2map.cpp File Reference

Starting point for map compiler. More...

#include <sys/resource.h>
#include "lighting.h"
#include "bsp.h"
#include "check/check.h"
#include "check/checkentities.h"
#include "check/checklib.h"
#include "../../shared/shared.h"
#include "ufo2map.h"
#include <SDL_main.h>
Include dependency graph for ufo2map.cpp:

Go to the source code of this file.

Data Structures

struct  usagePair_t
 

Macros

#define VERSION   "1.2.6"
 
#define REVISION   "1"
 
#define LIGHTING_NONE   1
 
#define LIGHTING_DAY_ONLY   2
 
#define LIGHTING_NIGHT_ONLY   3
 

Functions

static void Usage (void)
 print usage information. More...
 
void Com_Printf (const char *format,...)
 
bool AbortPrint (const verbosityLevel_t msgVerbLevel)
 return nonzero if printing should be aborted based on the command line verbosity level and the importance of the message More...
 
void Verb_Printf (const verbosityLevel_t msgVerbLevel, const char *format,...)
 decides wether to proceed with output based on verbosity level More...
 
static void U2M_Parameter (int argc, char **argv)
 Check for bsping, lighting and checking/fixing command line parameters. More...
 
static void U2M_SetDefaultConfigValues (void)
 Set default values. More...
 
void PrintMapName (void)
 print name in concise form for lower verbosity levels. verbosity check done before calling this function. More...
 
int main (int argc, char **argv)
 

Variables

mapConfig_t config
 
static char mapFilename [MAX_OSPATH]
 
memPool_tcom_genericPool
 
memPool_tcom_fileSysPool
 
char baseFilename [MAX_OSPATH]
 
static const usagePair_t usageArray []
 

Detailed Description

Starting point for map compiler.

Definition in file ufo2map.cpp.

Macro Definition Documentation

◆ LIGHTING_DAY_ONLY

#define LIGHTING_DAY_ONLY   2

Definition at line 31 of file ufo2map.cpp.

◆ LIGHTING_NIGHT_ONLY

#define LIGHTING_NIGHT_ONLY   3

Definition at line 32 of file ufo2map.cpp.

◆ LIGHTING_NONE

#define LIGHTING_NONE   1

Definition at line 30 of file ufo2map.cpp.

◆ REVISION

#define REVISION   "1"

Definition at line 27 of file ufo2map.cpp.

◆ VERSION

#define VERSION   "1.2.6"

Definition at line 26 of file ufo2map.cpp.

Function Documentation

◆ AbortPrint()

bool AbortPrint ( const verbosityLevel_t  msgVerbLevel)

return nonzero if printing should be aborted based on the command line verbosity level and the importance of the message

Parameters
msgVerbLevelinsignificance of the message. Larger numbers mean the message is less important. The message will first be printed if the msgVerbLevel is equal to the config.verbosity.
See also
verbosityLevel_t

Definition at line 189 of file ufo2map.cpp.

References config, and mapConfig_t::verbosity.

Referenced by Check_Printf(), and Verb_Printf().

◆ Com_Printf()

void Com_Printf ( const char *  format,
  ... 
)

Definition at line 170 of file ufo2map.cpp.

References format(), and Q_vsnprintf().

Referenced by PrintMapName(), and Usage().

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 547 of file ufo2map.cpp.

References baseFilename, BuildVertexNormals(), CalcTextureReflectivity(), Check_BrushIntersection(), Check_ContainedBrushes(), Check_Free(), Check_Stats(), CheckBrushes(), CheckEntities(), CheckFillLevelFlags(), CheckFlagsBasedOnTextures(), CheckLevelFlags(), CheckMapMicro(), CheckMixedFaceContents(), CheckNodraws(), CheckTexturesBasedOnFlags(), CheckZFighting(), mapConfig_t::chkAll, mapConfig_t::chkBrushes, mapConfig_t::chkContained, mapConfig_t::chkEntities, mapConfig_t::chkFillLevelFlags, mapConfig_t::chkIntersection, mapConfig_t::chkLevelFlags, mapConfig_t::chkMixedFaceContents, mapConfig_t::chkMMicro, mapConfig_t::chkNodraws, mapConfig_t::chkTextures, mapConfig_t::chkZFight, Com_DefaultExtension(), com_fileSysPool, com_genericPool, Com_StripExtension(), mapConfig_t::compile_for_day, config, mapConfig_t::exportLightmaps, ExportLightmaps(), mapConfig_t::fixMap, FS_AddGameDirectory(), FS_InitFilesystem(), FS_NormPath(), mapConfig_t::gamedir, mapConfig_t::generateMaterialFile, mapConfig_t::info, LIGHTING_DAY_ONLY, LIGHTING_NIGHT_ONLY, LIGHTING_NONE, LightWorld(), LoadBSPFile(), LoadMapFile(), mapFilename, MAX_OSPATH, Mem_CreatePool, Mem_Init(), Mem_Shutdown(), mapConfig_t::nolighting, num_entities, OBJZERO, mapConfig_t::onlyents, mapConfig_t::performMapCheck, PrintBSPFileSizes(), PrintMapName(), ProcessModels(), Q_strncpyz(), Q_strreplace(), Q_strstart(), SetModelNumbers(), mapConfig_t::stats, Swap_Init(), Sys_Error(), threadstate, U2M_Parameter(), U2M_SetDefaultConfigValues(), UnparseEntities(), Usage(), VERB_LESS, VERB_MAPNAME, VERB_NORMAL, Verb_Printf(), mapConfig_t::verbosity, VERSION, WriteBSPFile(), and WriteMapFile().

◆ PrintMapName()

void PrintMapName ( void  )

print name in concise form for lower verbosity levels. verbosity check done before calling this function.

Definition at line 532 of file ufo2map.cpp.

References Com_Printf(), config, mapConfig_t::fixMap, mapFilename, and mapConfig_t::performMapCheck.

Referenced by Check_Printf(), and main().

◆ U2M_Parameter()

static void U2M_Parameter ( int  argc,
char **  argv 
)
static

Check for bsping, lighting and checking/fixing command line parameters.

Definition at line 216 of file ufo2map.cpp.

References mapConfig_t::block_xh, mapConfig_t::block_xl, mapConfig_t::block_yh, mapConfig_t::block_yl, mapConfig_t::brightness, mapConfig_t::chkAll, mapConfig_t::chkBrushes, mapConfig_t::chkContained, mapConfig_t::chkEntities, mapConfig_t::chkFillLevelFlags, mapConfig_t::chkIntersection, mapConfig_t::chkLevelFlags, mapConfig_t::chkMixedFaceContents, mapConfig_t::chkMMicro, mapConfig_t::chkNodraws, mapConfig_t::chkTextures, mapConfig_t::chkZFight, config, mapConfig_t::contrast, mapConfig_t::entity_scale, mapConfig_t::exportLightmaps, mapConfig_t::extrasamples, mapConfig_t::fixMap, FS_NormPath(), mapConfig_t::fulldetail, mapConfig_t::gamedir, mapConfig_t::generateDebugTrace, mapConfig_t::generateFootstepFile, mapConfig_t::generateMaterialFile, mapConfig_t::generateTraceFile, i, mapConfig_t::info, LIGHTING_DAY_ONLY, LIGHTING_NIGHT_ONLY, LIGHTING_NONE, mapConfig_t::lightquant, mapConfig_t::mapMicrovol, mapConfig_t::microvolume, mapConfig_t::nice, mapConfig_t::nobackclip, mapConfig_t::nocsg, mapConfig_t::nodetail, mapConfig_t::nolighting, mapConfig_t::nomerge, mapConfig_t::noprune, mapConfig_t::noshare, mapConfig_t::nosubdiv, mapConfig_t::notjunc, mapConfig_t::nowater, mapConfig_t::noweld, threadstate_t::numthreads, mapConfig_t::onlyents, mapConfig_t::performMapCheck, Q_streq, Q_strncpyz(), REVISION, mapConfig_t::saturation, mapConfig_t::soft, mapConfig_t::stats, mapConfig_t::subdivideSize, mapConfig_t::surface_scale, Sys_Error(), threadstate, Usage(), VERB_LESS, VERB_NORMAL, Verb_Printf(), mapConfig_t::verboseentities, mapConfig_t::verbosity, and VERSION.

Referenced by main().

◆ U2M_SetDefaultConfigValues()

◆ Usage()

static void Usage ( void  )
static

print usage information.

Definition at line 147 of file ufo2map.cpp.

References Com_Printf(), len, usageArray, and v.

Referenced by main(), and U2M_Parameter().

◆ Verb_Printf()

void Verb_Printf ( const verbosityLevel_t  msgVerbLevel,
const char *  format,
  ... 
)

decides wether to proceed with output based on verbosity level

See also
Com_Printf, Check_Printf, AbortPrint

Definition at line 198 of file ufo2map.cpp.

References AbortPrint(), format(), and Q_vsnprintf().

Referenced by main(), and U2M_Parameter().

Variable Documentation

◆ baseFilename

char baseFilename[MAX_OSPATH]

This is used for extra file output functions

Definition at line 55 of file ufo2map.cpp.

Referenced by DoRouting(), main(), and RT_WriteCSVFiles().

◆ com_fileSysPool

memPool_t* com_fileSysPool

Definition at line 53 of file ufo2map.cpp.

Referenced by main().

◆ com_genericPool

memPool_t* com_genericPool

Definition at line 52 of file ufo2map.cpp.

Referenced by main().

◆ config

mapConfig_t config

Definition at line 49 of file ufo2map.cpp.

Referenced by AbortPrint(), main(), PrintMapName(), U2M_Parameter(), and U2M_SetDefaultConfigValues().

◆ mapFilename

char mapFilename[MAX_OSPATH]
static

Definition at line 50 of file ufo2map.cpp.

Referenced by GetUMPName(), main(), and PrintMapName().

◆ usageArray

const usagePair_t usageArray[]
static

Definition at line 62 of file ufo2map.cpp.

Referenced by Usage().