TerraLib 4.1
E:/Projetos_Primeiro_Semestre_2012/TerraView/terralib/src/terralib/kernel/TeDataTypes.h
Go to the documentation of this file.
00001 /************************************************************************************
00002 TerraLib - a library for developing GIS applications.
00003 Copyright © 2001-2007 INPE and Tecgraf/PUC-Rio.
00004 
00005 This code is part of the TerraLib library.
00006 This library is free software; you can redistribute it and/or
00007 modify it under the terms of the GNU Lesser General Public
00008 License as published by the Free Software Foundation; either
00009 version 2.1 of the License, or (at your option) any later version.
00010 
00011 You should have received a copy of the GNU Lesser General Public
00012 License along with this library.
00013 
00014 The authors reassure the license terms regarding the warranties.
00015 They specifically disclaim any warranties, including, but not limited to,
00016 the implied warranties of merchantability and fitness for a particular purpose.
00017 The library provided hereunder is on an "as is" basis, and the authors have no
00018 obligation to provide maintenance, support, updates, enhancements, or modifications.
00019 In no event shall INPE and Tecgraf / PUC-Rio be held liable to any party for direct,
00020 indirect, special, incidental, or consequential damages arising out of the use
00021 of this library and its documentation.
00022 *************************************************************************************/
00026 #ifndef  __TERRALIB_INTERNAL_DATATYPE_H
00027 #define  __TERRALIB_INTERNAL_DATATYPE_H
00028 
00029 
00030 #if defined(_MSC_VER) /* MSVC Compiler */
00031 #pragma warning(disable: 4786)
00032 #endif
00033 
00034 #include <vector>
00035 #include <string>
00036 #include <map> 
00037 
00038 using namespace std;
00039 
00041 enum TeSpringModels
00042 {   TeSPRCadastral=0, TeSPRNetwork=1, TeSPRThematic=2, TeSPRMNT=3 };
00043 
00044 
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 
00054 
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 
00063 enum TeChartType
00064 {   TeBarChart, TePieChart };
00065 
00067 enum TeSelectedObjects
00068 {          TeAll, TeSelectedByPointing, TeNotSelectedByPointing, TeSelectedByQuery, TeNotSelectedByQuery,
00069            TeSelectedByPointingAndQuery, TeSelectedByPointingOrQuery, TeGrouped, TeNotGrouped };
00070 
00072 enum TeObjectSelectionMode
00073 {   TeDefaultSelection, TePointingSelection, TeQuerySelection, TePointingAndQuerySelection };
00074 
00076 enum TeGroupingMode
00077 { TeEqualSteps = 0, TeQuantil = 1, TeStdDeviation = 2, TeUniqueValue = 3,
00078   TeRasterSlicing = 4, TeCustomGroup = 5, TeNoGrouping = 100 };
00079 
00081 enum TeColorDirection
00082 {          TeColorAscSatEnd, TeColorDescSatEnd, TeColorAscSatBegin, TeColorDescSatBegin };
00083 
00085 enum TeAttrTableType
00086 {          TeAllAttrTypes, TeAttrStatic, TeAttrMedia, TeAttrExternal, TeAttrEvent, TeFixedGeomDynAttr, 
00087            TeDynGeomDynAttr, TeGeomAttrLinkTime, TeGeocodingData };
00088 
00090 enum TeDBRelationType
00091 {          TeNoRelation, TeRINoCascadeDeletion, TeRICascadeDeletion };
00092 
00094 enum TeDataType 
00095 {          TeBIT, TeUNSIGNEDCHAR, TeCHAR, TeUNSIGNEDSHORT, TeSHORT, TeINTEGER, TeUNSIGNEDLONG, TeLONG, TeFLOAT, TeDOUBLE };
00096 
00097 
00099 
00116 enum TeStatisticType
00117 {          TeNOSTATISTIC, TeSUM, TeMAXVALUE, TeMINVALUE, TeCOUNT, TeVALIDCOUNT, TeSTANDARDDEVIATION, TeKERNEL,  
00118            TeMEAN, TeVARIANCE, TeSKEWNESS, TeKURTOSIS, TeAMPLITUDE, TeMEDIAN, TeVARCOEFF, TeMODE};
00119 
00121 typedef map<TeStatisticType, double> TeStatisticValMap;
00122 
00124 typedef map<TeStatisticType, string> TeStatisticStringValMap;
00125 
00127 typedef map<string, TeStatisticValMap> TeObjStatisticsMap;
00128 
00130 typedef map<TeStatisticType, string> TeStatisticsMap;
00131 
00133 enum TeIntersectorAlgorithm { TeBentleyOttman, TeRedBlue, TeTrivial };
00134 
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 
00142 enum TeTemporalRelation { TeTIMEUNDEFINED, TeTIMEEQUAL, TeTIMEBEFORE, TeTIMEAFTER, TeTIMEMEETS, TeTIMEDURING, TeTIMEOVERLAPS, TeTIMEENDS, TeTIMESTARTS };
00143 
00145 enum TeLogicalOperator { TeAND = 1, TeOR = 2 };
00146 
00148 enum TeChronon {      TeNOCHRONON, TeSECOND, TeMINUTE, TeHOUR, TeDAY, TeMONTH, TeYEAR,
00149                                                        TeDAYOFWEEK, TeDAYOFMONTH, TeDAYOFYEAR, TeMONTHOFYEAR, TeSEASON, TeWEEKOFYEAR, 
00150                                                        TeHOUROFDAY, TeMINUTEOFHOUR, TeSECONDOFMINUTE };
00151 
00153 enum TePolyBasicType { TePolyTypeTransparent=0, TePolyTypeFill=1, TePolyTypeHorizontal=2,
00154                                                         TePolyTypeVertical=3, TePolyTypeFDiagonal=4, TePolyTypeBDiagonal=5,
00155                                                         TePolyTypeCross=6, TePolyTypeDiagonalCross=7,  TePolyTypeCustom=8 };
00157 enum TeLnBasicType { TeLnTypeContinuous=0, TeLnTypeDashed=1, TeLnTypeDotted=2,  
00158                                                         TeLnTypeDashDot=3, TeLnTypeDashDotDot=4, TeLnTypeNone=5,
00159                                                         TeLnTypeCustom=6, TeLnTypeArrow=7, TeLnTypeMiddleArrow=8 };
00160 
00162 enum TeLnCapStyle { TeLnFlatCap=0, TeLnSquareCap=1, TeLnRoundCap=2 };
00163 
00165 enum TeLnJoinStyle { TeLnMiterJoin=0, TeLnBevelJoin=1, TeLnRoundJoin=2 };
00166 
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 
00173 enum TeSegmentIntersectionType { TeProperIntersection, TeImproperIntersection };
00174 
00176 enum TeGPMImplementation { TeGraphBreymann };
00177 
00179 enum TeGPMConstructionStrategy { TeAdjacencyStrategy, TeDistanceStrategy, TeNearestNeighboursStrategy,
00180                                                                                          TeClosedNetworkStrategy, TeOpenNetworkStrategy, TeOpenNetworkStrategy2 };
00181 
00183 enum TeGPMSlicingStrategy { TeNoSlicingStrategy, TeZonesSlicingStrategy };
00184            
00186 enum TeGPMWeightsStrategy { TeNoWeightsStrategy, TeInverseDistanceStrategy, 
00187                                                                              TeSquaredInverseDistStrategy, TeConnectionStrenghtStrategy};
00188 
00190 enum TeUnits { TeUndefinedUnit, TeMillimeters, TeCentimeters, TeMeters, TeKilometers, TeMiles, TeInches, TeFeet, TeDecimalDegress };
00191 
00192 
00193 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines