xref: /haiku/src/libs/icon/transformer/TransformerFactory.h (revision cbe0a0c436162d78cc3f92a305b64918c839d079)
1 /*
2  * Copyright 2006-2007, Haiku.
3  * Distributed under the terms of the MIT License.
4  *
5  * Authors:
6  *		Stephan Aßmus <superstippi@gmx.de>
7  */
8 #ifndef TRANSFORMER_FACTORY_H
9 #define TRANSFORMER_FACTORY_H
10 
11 
12 #include <String.h>
13 
14 #include "IconBuild.h"
15 
16 
17 class BMessage;
18 
19 
20 _BEGIN_ICON_NAMESPACE
21 
22 
23 class Transformer;
24 class VertexSource;
25 
26 class TransformerFactory {
27  public:
28 
29 	static	Transformer*		TransformerFor(uint32 type,
30 											   VertexSource& source);
31 
32 	static	Transformer*		TransformerFor(BMessage* archive,
33 											   VertexSource& source);
34 
35 #ifdef ICON_O_MATIC
36 	static	bool				NextType(int32* cookie,
37 										 uint32* type,
38 										 BString* name);
39 
40 #endif // ICON_O_MATIC
41 };
42 
43 
44 _END_ICON_NAMESPACE
45 
46 
47 #endif	// TRANSFORMER_FACTORY_H
48