blob: ef4d33ca51c66cbdd91e9fabf83db3f845ad4e7d (
plain) (
tree)
|
|
// AnvilStats.cpp
// Implements the main app entrypoint
#include "Globals.h"
#include "Processor.h"
#include "Statistics.h"
#include "BiomeMap.h"
#include "HeightMap.h"
#include "ChunkExtract.h"
int main(int argc, char * argv[])
{
if (argc < 2)
{
LOG("Usage: %s <method number> [<world folder>]", argv[0]);
LOG("Available methods:");
LOG(" 0 - statistics");
LOG(" 1 - biome map");
LOG(" 2 - height map");
LOG(" 3 - extract chunks");
LOG("\nNo method number present, aborting.");
return -1;
}
AString WorldFolder;
if (argc > 2)
{
WorldFolder = argv[2];
}
else
{
WorldFolder = "." + cFile::PathSeparator;
}
cCallbackFactory * Factory = NULL;
switch (atol(argv[1]))
{
case 0: Factory = new cStatisticsFactory; break;
case 1: Factory = new cBiomeMapFactory; break;
case 2: Factory = new cHeightMapFactory; break;
case 3: Factory = new cChunkExtractFactory(WorldFolder); break;
default:
{
LOG("Unknown method \"%s\", aborting.", argv[1]);
return -2;
}
}
cProcessor Processor;
Processor.ProcessWorld(WorldFolder, *Factory);
LOG("Processing finished");
delete Factory;
LOG("Done");
}
|