Cafu Engine
Load_MatReplMan.hpp
1 /*
2 Cafu Engine, http://www.cafu.de/
3 Copyright (c) Carsten Fuchs and other contributors.
4 This project is licensed under the terms of the MIT license.
5 */
6 
7 #ifndef CAFU_LOAD_MATERIAL_REPL_MAN_HPP_INCLUDED
8 #define CAFU_LOAD_MATERIAL_REPL_MAN_HPP_INCLUDED
9 
10 #include "wx/string.h"
11 #include "Templates/Array.hpp"
12 
13 
14 class EditorMaterialI;
15 
16 
17 /// This class manages the replacement of materials in imported maps with native Cafu materials.
18 /// Materials in the imported map file are replaced by Cafu materials listed in MaterialsReplacePool,
19 /// except those that contain a string that is mentioned in the ExceptionList.
21 {
22  public:
23 
24  MatReplaceManT(const wxString& OtherGameName_, const ArrayT<EditorMaterialI*>& Materials_);
25 
26  wxString GetReplacement(const wxString& D3MaterialName);
27 
28 
29  private:
30 
31  const wxString OtherGameName;
32  wxString MaterialPrefix;
33  ArrayT<wxString> SubstitutePool;
34  ArrayT<wxString> ExceptionList;
35  unsigned long SubstitutePool_NextNr;
36  ArrayT<wxString> AlreadyReplaced_OldName;
37  ArrayT<wxString> AlreadyReplaced_NewName;
38 };
39 
40 #endif
Definition: EditorMaterial.hpp:21
This class manages the replacement of materials in imported maps with native Cafu materials...
Definition: Load_MatReplMan.hpp:20