00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef __LIBECS_HPP
00032 #define __LIBECS_HPP
00033
00034 #include "Defs.hpp"
00035
00036
00037 namespace libecs
00038 {
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048 const int MAJOR_VERSION( ECELL_MAJOR_VERSION );
00049 const int MINOR_VERSION( ECELL_MINOR_VERSION );
00050 const int MICRO_VERSION( ECELL_MICRO_VERSION );
00051
00052 const char* const VERSION_STRING( ECELL_VERSION_STRING );
00053
00054
00055 inline const int getMajorVersion()
00056 {
00057 return MAJOR_VERSION;
00058 }
00059
00060 inline const int getMinorVersion()
00061 {
00062 return MINOR_VERSION;
00063 }
00064
00065 inline const int getMicroVersion()
00066 {
00067 return MICRO_VERSION;
00068 }
00069
00070 inline const std::string getVersion()
00071 {
00072 return VERSION_STRING;
00073 }
00074
00075
00076 void setDMSearchPath( const String& path );
00077 const String getDMSearchPath();
00078 const String getLoadedDMList();
00079
00080
00081
00082
00083
00084
00085
00086
00087
00088
00089
00090
00091
00092 DECLARE_LIST ( String, StringList );
00093 DECLARE_VECTOR( String, StringVector );
00094 DECLARE_MAP( const String, String, std::less<const String>, StringMap );
00095 DECLARE_SHAREDPTR( StringList );
00096 DECLARE_SHAREDPTR( StringVector );
00097
00098
00099
00100
00101 DECLARE_CLASS( System );
00102 DECLARE_CLASS( Entity );
00103 DECLARE_CLASS( EntityType );
00104 DECLARE_CLASS( SystemPath );
00105 DECLARE_CLASS( FullID );
00106 DECLARE_CLASS( FullPN );
00107 DECLARE_CLASS( VariableReference );
00108 DECLARE_CLASS( Process );
00109 DECLARE_CLASS( DiscreteEventProcess );
00110 DECLARE_CLASS( ProcessMaker );
00111 DECLARE_CLASS( Stepper );
00112 DECLARE_CLASS( SystemStepper );
00113 DECLARE_CLASS( Interpolant );
00114 DECLARE_CLASS( Model );
00115 DECLARE_CLASS( Scheduler );
00116 DECLARE_CLASS( StepperEvent );
00117 DECLARE_CLASS( StepperMaker );
00118 DECLARE_CLASS( Variable );
00119 DECLARE_CLASS( VariableMaker );
00120 DECLARE_CLASS( System );
00121 DECLARE_CLASS( SystemMaker );
00122 DECLARE_CLASS( PropertySlotBase );
00123
00124 DECLARE_CLASS( PropertiedClass );
00125 DECLARE_CLASS( PropertySlotProxy );
00126 DECLARE_CLASS( Polymorph );
00127 DECLARE_CLASS( LoggerBroker );
00128 DECLARE_CLASS( Logger );
00129 DECLARE_CLASS( LoggerAdapter );
00130 DECLARE_CLASS( DataPoint );
00131 DECLARE_CLASS( LongDataPoint );
00132 DECLARE_CLASS( DataPointAggregator );
00133 DECLARE_CLASS( DataPointVector );
00134
00135
00136
00137 DECLARE_VECTOR( Polymorph, PolymorphVector );
00138 DECLARE_VECTOR( VariablePtr, VariableVector );
00139 DECLARE_VECTOR( ProcessPtr, ProcessVector );
00140 DECLARE_VECTOR( SystemPtr, SystemVector );
00141 DECLARE_VECTOR( StepperPtr, StepperVector );
00142 DECLARE_VECTOR( LoggerPtr, LoggerVector );
00143
00144
00145
00146
00147 DECLARE_CLASS( Exception );
00148 DECLARE_CLASS( UnexpectedError );
00149 DECLARE_CLASS( NotFound );
00150 DECLARE_CLASS( CantOpen );
00151 DECLARE_CLASS( BadID );
00152 DECLARE_CLASS( CallbackFailed );
00153 DECLARE_CLASS( NoMethod );
00154 DECLARE_CLASS( NoSlot );
00155 DECLARE_CLASS( InvalidEntityType );
00156
00157 DECLARE_MAP ( const String, Polymorph, std::less<const String>,
00158 PolymorphMap);
00159
00160
00161
00162
00163 DECLARE_SHAREDPTR( PolymorphVector );
00164 DECLARE_SHAREDPTR( DataPointVector );
00165
00166
00167
00168 }
00169
00170 #endif // __LIBECS_HPP
00171
00172
00173
00174
00175
00176
00177
00178
00179