OpenWalnut  1.4.0
WProperties_Fwd.h
1 //---------------------------------------------------------------------------
2 //
3 // Project: OpenWalnut ( http://www.openwalnut.org )
4 //
5 // Copyright 2009 OpenWalnut Community, BSV@Uni-Leipzig and CNCF@MPI-CBS
6 // For more information see http://www.openwalnut.org/copying
7 //
8 // This file is part of OpenWalnut.
9 //
10 // OpenWalnut is free software: you can redistribute it and/or modify
11 // it under the terms of the GNU Lesser General Public License as published by
12 // the Free Software Foundation, either version 3 of the License, or
13 // (at your option) any later version.
14 //
15 // OpenWalnut is distributed in the hope that it will be useful,
16 // but WITHOUT ANY WARRANTY; without even the implied warranty of
17 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 // GNU Lesser General Public License for more details.
19 //
20 // You should have received a copy of the GNU Lesser General Public License
21 // along with OpenWalnut. If not, see <http://www.gnu.org/licenses/>.
22 //
23 //---------------------------------------------------------------------------
24 
25 #ifndef WPROPERTIES_FWD_H
26 #define WPROPERTIES_FWD_H
27 
28 #include <boost/shared_ptr.hpp>
29 
30 // This class contains forward declarations for every thing which is needed to use WPropertyGroup in all their variations. Simply include this file
31 // in your headers if your somehow need properties or related classes.
32 
33 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
34 // Property base classes and types
35 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
36 
37 // WPropertyTypes.h does not include any other property header. So we can include it directly here.
38 // Provides:
39 // * class WPropertyVariable< T >
40 // * class WPropertyGroup
41 // * enum PROPERTY_TYPE
42 // * enum PROPERTY_PURPOSE
43 // * typedefs WPVPropXYZ
44 // * typedefs WPropXYZ
45 // * namespace WPVBaseTypes
46 // * namespace PROPERTY_TYPE_HELPER
47 #include "WPropertyTypes.h"
48 
49 // From WPropertyBase.h
50 class WPropertyBase;
51 
52 // From WPropertyGroupBase.h
53 class WPropertyGroupBase;
54 
55 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
56 // Utilities
57 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
58 
59 // From WPropertyObserver
60 class WPropertyObserver;
61 
62 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
63 // Constraints
64 ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
65 
66 // Provides: enum PROPERTYCONSTRAINT_TYPE
67 #include "constraints/WPropertyConstraintTypes.h"
68 
69 // From constraints/*.h
70 template < typename T >
72 template < typename T >
74 template< typename T >
76 template< typename T >
78 template< typename T >
80 template< typename T >
82 template < typename T >
84 
85 #endif // WPROPERTIES_FWD_H
86 
This class allows constraining properties using a maximum value and the corresponding <= operator...
This class allows constraining selection properties to not allow selection of multiple items...
This class allows constraining properties to be existing filenames.
This is the base class and interface for property groups.
Abstract base class for all properties.
Definition: WPropertyBase.h:44
This class allows constraining properties using a minimum value and the corresponding >= operator...
This class can observe properties inside a property group.
This class allows constraining properties to be existing filenames.
This class allows constraining properties to be not empty.
This class allows constraining properties to only be set if a isValid method returns true...