cbp2make
Makefile generation tool for Code::Blocks IDE
cbbuildmgr.h
Go to the documentation of this file.
1 /*
2  cbp2make : Makefile generation tool for the Code::Blocks IDE
3  Copyright (C) 2010-2013 Mirai Computing (mirai.computing@gmail.com)
4 
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 
19 //------------------------------------------------------------------------------
20 #ifndef CBBUILDMGR_H
21 #define CBBUILDMGR_H
22 //------------------------------------------------------------------------------
23 #include "stlstrings.h"
24 #include "cbproject.h"
25 #include "cbworkspace.h"
26 //#include "toolchains.h"
27 #include "cbbuildcfg.h"
28 //------------------------------------------------------------------------------
29 
30 class TiXmlElement;
31 
33 {
34  private:
40  protected:
41  public:
42  CPlatformSet& Platforms(void) { return m_Config.Platforms(); }
43  CToolChainSet& ToolChains(void) { return m_Config.ToolChains(); }
45  void Clear(void);
46  bool LoadProjectOrWorkspace(const CString& FileName);
47  void Show(void);
48  void GenerateMakefile(const CString& FileName);
49  public:
52 };
53 
54 #endif
55 //------------------------------------------------------------------------------
CPlatformSet & Platforms(void)
Returns reference to the set of platforms in build configuration.
Definition: cbbuildcfg.h:54
void Show(void)
Prints project or workspace contents to standard output.
Definition: cbbuildmgr.cpp:69
CCodeBlocksWorkspace m_Workspace
Code::Blocks workspace object.
Definition: cbbuildmgr.h:35
CPlatformSet & Platforms(void)
Returns reference to the set of platforms in build configuration.
Definition: cbbuildmgr.h:42
CCodeBlocksBuildConfig m_Config
Build configuration.
Definition: cbbuildmgr.h:37
Build manager for Code::Blocks projects.
Definition: cbbuildmgr.h:32
bool m_WorkspaceLoaded
Indicates that a Code::Blocks workspace was loaded.
Definition: cbbuildmgr.h:39
bool LoadProjectOrWorkspace(const CString &FileName)
Loads a workspace or a project file whichever specified by FileName.
Definition: cbbuildmgr.cpp:45
Workspace description.
Definition: cbworkspace.h:52
~CCodeBlocksBuildManager(void)
Destroys build manager.
Definition: cbbuildmgr.cpp:32
Manages a set of platforms.
Definition: platforms.h:128
CCodeBlocksBuildManager(void)
Creates build manager.
Definition: cbbuildmgr.cpp:27
Workspace unit and workspace descriptions.
bool m_ProjectLoaded
Indicated that a Code::Blocks project was loaded.
Definition: cbbuildmgr.h:38
CToolChainSet & ToolChains(void)
Returns reference to the set of toolchains in build configuration.
Definition: cbbuildmgr.h:43
CCodeBlocksProject m_Project
Code::Blocks project object.
Definition: cbbuildmgr.h:36
Definition: stlstrings.h:32
Build configuration.
Definition: cbbuildcfg.h:32
Manages a set of toolchains.
Definition: toolchains.h:146
Project description.
Definition: cbproject.h:39
Project description.
void Clear(void)
Resets build manager to the initial state.
Definition: cbbuildmgr.cpp:37
CToolChainSet & ToolChains(void)
Returns reference to the set of toolchains in build configuration.
Definition: cbbuildcfg.h:55
void GenerateMakefile(const CString &FileName)
Generates makefile text and writes it to the file specified by FileName.
Definition: cbbuildmgr.cpp:87
Build configuration.
CCodeBlocksBuildConfig & Config(void)
Returns reference to the build configuration.
Definition: cbbuildmgr.h:44