Linux multi-monitor fullscreen support
[ryzomcore.git] / nel / tools / 3d / build_smallbank / build_smallbank.cpp
blob8ab2d1c006948921ebbcf9e186dddb30dd4b9925
1 // NeL - MMORPG Framework <http://dev.ryzom.com/projects/nel/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Affero General Public License as
6 // published by the Free Software Foundation, either version 3 of the
7 // License, or (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Affero General Public License for more details.
14 // You should have received a copy of the GNU Affero General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
17 // NeL include
18 #include "nel/misc/file.h"
19 #include "nel/3d/tile_bank.h"
21 using namespace NL3D;
22 using namespace NLMISC;
24 int main(int argc, char* argv[])
26 // Arg ?
27 if (argc<3)
29 // Doc
30 printf ("build_smallbank [input.bank] [output.smallbank] [new_absolute_path]\n");
32 else
34 try
36 // Load the bank
37 CTileBank bank;
39 // Input file
40 CIFile input;
41 if (input.open (argv[1]))
43 // Serial the bank
44 bank.serial (input);
46 // Make a small bank
47 bank.cleanUnusedData ();
49 // Absolute path ?
50 if (argc>3)
51 bank.setAbsPath (argv[3]);
53 // Output file
54 COFile output;
55 if (output.open (argv[2]))
57 // Serial the bank
58 bank.serial (output);
60 else
62 // Error
63 nlwarning ("ERROR can't open the file %s for writing", argv[2]);
66 else
68 // Error
69 nlwarning ("ERROR can't open the file %s for reading", argv[1]);
73 catch (const Exception& e)
75 // Error
76 nlwarning ("ERROR fatal error: %s", e.what());
79 return 0;