source: dev/trunk/jenga/include/smoothie/ObjectModule.h@ 190

Last change on this file since 190 was 190, checked in by dai_9181, 17 years ago
File size: 944 bytes
Line 
1#pragma once
2
3#include "TypeDef.h"
4#include "Namespace.h"
5#include "Procedure.h"
6#include "Class.h"
7
8// プロジェクト中に存在するメタ情報
9class Meta
10{
11 ProcPointers *pProcPointers;
12public:
13
14 Meta( ProcPointers *pNewProcPointers )
15 : pProcPointers( pNewProcPointers )
16 {
17 }
18 Meta()
19 {
20 }
21 ~Meta()
22 {
23 delete pProcPointers;
24 }
25
26 // 名前空間
27 NamespaceScopesCollection namespaceScopesCollection;
28
29 // クラス
30 virtual Classes &GetClasses() = 0;
31 virtual void SetClasses( Classes *pClasses ) = 0;
32 virtual bool AutoWrite( const std::string &filePath ) = 0;
33
34 // TypeDef
35 TypeDefCollection typeDefs;
36
37 // 関数ポインタ
38 ProcPointers &GetProcPointers()
39 {
40 return *pProcPointers;
41 }
42
43 // blittable型
44 BlittableTypes blittableTypes;
45
46 // XMLシリアライズ用
47private:
48 friend class boost::serialization::access;
49 template<class Archive> void serialize(Archive& ar, const unsigned int version)
50 {
51 }
52};
Note: See TracBrowser for help on using the repository browser.