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 #ifndef __TERRALIB_INTERNAL_DATATYPE_H
00027 #define __TERRALIB_INTERNAL_DATATYPE_H
00028
00029
00030 #if defined(_MSC_VER)
00031 #pragma warning(disable: 4786)
00032 #endif
00033
00034 #include <vector>
00035 #include <string>
00036 #include <map>
00037
00038 using namespace std;
00039
00040
00041 enum TeSpringModels
00042 { TeSPRCadastral=0, TeSPRNetwork=1, TeSPRThematic=2, TeSPRMNT=3 };
00043
00044
00045
00046 enum TeAttrDataType
00047 {TeSTRING, TeREAL, TeINT, TeDATETIME, TeBLOB, TeOBJECT, TeCHARACTER, TeUNKNOWN, TeUNSIGNEDINT,
00048 TePOINTTYPE, TeLINE2DTYPE, TePOLYGONTYPE, TeCELLTYPE, TeTEXTTYPE, TeNODETYPE,
00049 TePOINTSETTYPE, TeLINESETTYPE, TePOLYGONSETTYPE, TeCELLSETTYPE, TeTEXTSETTYPE, TeNODESETTYPE,
00050 TeRASTERTYPE, TeBOOLEAN};
00051
00052
00053
00054
00055
00056
00057 enum TeGeomRep
00058 { TePOLYGONS = 1, TeLINES = 2, TePOINTS = 4, TeSAMPLES = 8, TeCONTOURS = 16,
00059 TeARCS = 32, TeNODES = 64 , TeTEXT = 128, TeCELLS = 256 , TeRASTER = 512,
00060 TeRASTERFILE = 1024, TeGEOMETRYNONE = 2048, TeSHAPEFILE = 4096, TeCOVERAGE = 8192};
00061
00062
00063 enum TeChartType
00064 { TeBarChart, TePieChart };
00065
00066
00067 enum TeSelectedObjects
00068 { TeAll, TeSelectedByPointing, TeNotSelectedByPointing, TeSelectedByQuery, TeNotSelectedByQuery,
00069 TeSelectedByPointingAndQuery, TeSelectedByPointingOrQuery, TeGrouped, TeNotGrouped };
00070
00071
00072 enum TeObjectSelectionMode
00073 { TeDefaultSelection, TePointingSelection, TeQuerySelection, TePointingAndQuerySelection };
00074
00075
00076 enum TeGroupingMode
00077 { TeEqualSteps = 0, TeQuantil = 1, TeStdDeviation = 2, TeUniqueValue = 3,
00078 TeRasterSlicing = 4, TeCustomGroup = 5, TeNoGrouping = 100 };
00079
00080
00081 enum TeColorDirection
00082 { TeColorAscSatEnd, TeColorDescSatEnd, TeColorAscSatBegin, TeColorDescSatBegin };
00083
00084
00085 enum TeAttrTableType
00086 { TeAllAttrTypes, TeAttrStatic, TeAttrMedia, TeAttrExternal, TeAttrEvent, TeFixedGeomDynAttr,
00087 TeDynGeomDynAttr, TeGeomAttrLinkTime, TeGeocodingData };
00088
00089
00090 enum TeDBRelationType
00091 { TeNoRelation, TeRINoCascadeDeletion, TeRICascadeDeletion };
00092
00093
00094 enum TeDataType
00095 { TeBIT, TeUNSIGNEDCHAR, TeCHAR, TeUNSIGNEDSHORT, TeSHORT, TeINTEGER, TeUNSIGNEDLONG, TeLONG, TeFLOAT, TeDOUBLE };
00096
00097
00098
00099
00100
00101
00102
00103
00104
00105
00106
00107
00108
00109
00110
00111
00112
00113
00114
00115
00116 enum TeStatisticType
00117 { TeNOSTATISTIC, TeSUM, TeMAXVALUE, TeMINVALUE, TeCOUNT, TeVALIDCOUNT, TeSTANDARDDEVIATION, TeKERNEL,
00118 TeMEAN, TeVARIANCE, TeSKEWNESS, TeKURTOSIS, TeAMPLITUDE, TeMEDIAN, TeVARCOEFF, TeMODE};
00119
00120
00121 typedef map<TeStatisticType, double> TeStatisticValMap;
00122
00123
00124 typedef map<TeStatisticType, string> TeStatisticStringValMap;
00125
00126
00127 typedef map<string, TeStatisticValMap> TeObjStatisticsMap;
00128
00129
00130 typedef map<TeStatisticType, string> TeStatisticsMap;
00131
00132
00133 enum TeIntersectorAlgorithm { TeBentleyOttman, TeRedBlue, TeTrivial };
00134
00135
00136 enum TeSpatialRelation
00137 { TeDISJOINT = 1, TeTOUCHES = 2, TeCROSSES = 4, TeWITHIN = 8,
00138 TeOVERLAPS = 16, TeCONTAINS = 32, TeINTERSECTS = 64, TeEQUALS = 128, TeCOVERS = 256,
00139 TeCOVEREDBY = 512, TeUNDEFINEDREL = 1024};
00140
00141
00142 enum TeTemporalRelation { TeTIMEUNDEFINED, TeTIMEEQUAL, TeTIMEBEFORE, TeTIMEAFTER, TeTIMEMEETS, TeTIMEDURING, TeTIMEOVERLAPS, TeTIMEENDS, TeTIMESTARTS };
00143
00144
00145 enum TeLogicalOperator { TeAND = 1, TeOR = 2 };
00146
00147
00148 enum TeChronon { TeNOCHRONON, TeSECOND, TeMINUTE, TeHOUR, TeDAY, TeMONTH, TeYEAR,
00149 TeDAYOFWEEK, TeDAYOFMONTH, TeDAYOFYEAR, TeMONTHOFYEAR, TeSEASON, TeWEEKOFYEAR,
00150 TeHOUROFDAY, TeMINUTEOFHOUR, TeSECONDOFMINUTE };
00151
00152
00153 enum TePolyBasicType { TePolyTypeTransparent=0, TePolyTypeFill=1, TePolyTypeHorizontal=2,
00154 TePolyTypeVertical=3, TePolyTypeFDiagonal=4, TePolyTypeBDiagonal=5,
00155 TePolyTypeCross=6, TePolyTypeDiagonalCross=7, TePolyTypeCustom=8 };
00156
00157 enum TeLnBasicType { TeLnTypeContinuous=0, TeLnTypeDashed=1, TeLnTypeDotted=2,
00158 TeLnTypeDashDot=3, TeLnTypeDashDotDot=4, TeLnTypeNone=5,
00159 TeLnTypeCustom=6, TeLnTypeArrow=7, TeLnTypeMiddleArrow=8 };
00160
00161
00162 enum TeLnCapStyle { TeLnFlatCap=0, TeLnSquareCap=1, TeLnRoundCap=2 };
00163
00164
00165 enum TeLnJoinStyle { TeLnMiterJoin=0, TeLnBevelJoin=1, TeLnRoundJoin=2 };
00166
00167
00168 enum TePtBasicType { TePtTypePlus=0, TePtTypeStar=1, TePtTypeCircle=2, TePtTypeX=3,
00169 TePtTypeBox=4, TePtTypeDiamond=5, TePtTypeHollowCircle=6,
00170 TePtTypeHollowBox=7, TePtTypeHollowDiamond=8, TePtTypeCustom=9 };
00171
00172
00173 enum TeSegmentIntersectionType { TeProperIntersection, TeImproperIntersection };
00174
00175
00176 enum TeGPMImplementation { TeGraphBreymann };
00177
00178
00179 enum TeGPMConstructionStrategy { TeAdjacencyStrategy, TeDistanceStrategy, TeNearestNeighboursStrategy,
00180 TeClosedNetworkStrategy, TeOpenNetworkStrategy, TeOpenNetworkStrategy2 };
00181
00182
00183 enum TeGPMSlicingStrategy { TeNoSlicingStrategy, TeZonesSlicingStrategy };
00184
00185
00186 enum TeGPMWeightsStrategy { TeNoWeightsStrategy, TeInverseDistanceStrategy,
00187 TeSquaredInverseDistStrategy, TeConnectionStrenghtStrategy};
00188
00189
00190 enum TeUnits { TeUndefinedUnit, TeMillimeters, TeCentimeters, TeMeters, TeKilometers, TeMiles, TeInches, TeFeet, TeDecimalDegress };
00191
00192
00193 #endif