xref: /haiku/src/libs/icon/transformer/TransformerFactory.h (revision 3386b8b7858f5659c205b8f088eb568692699591)
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 enum {
27 	AFFINE_TRANSFORMER,
28 	PERSPECTIVE_TRANSFORMER,
29 	CONTOUR_TRANSFORMER,
30 	STROKE_TRANSFORMER,
31 };
32 
33 
34 class TransformerFactory {
35  public:
36 
37 	static	Transformer*		TransformerFor(uint32 type,
38 											   VertexSource& source);
39 
40 	static	Transformer*		TransformerFor(BMessage* archive,
41 											   VertexSource& source);
42 };
43 
44 
45 _END_ICON_NAMESPACE
46 
47 
48 #endif	// TRANSFORMER_FACTORY_H
49