Osmium  0.1
include/osmium/osm/types.hpp
Go to the documentation of this file.
00001 #ifndef OSMIUM_OSM_TYPES_HPP
00002 #define OSMIUM_OSM_TYPES_HPP
00003 
00004 /*
00005 
00006 Copyright 2011 Jochen Topf <jochen@topf.org> and others (see README).
00007 
00008 This file is part of Osmium (https://github.com/joto/osmium).
00009 
00010 Osmium is free software: you can redistribute it and/or modify it under the
00011 terms of the GNU Lesser General Public License or (at your option) the GNU
00012 General Public License as published by the Free Software Foundation, either
00013 version 3 of the Licenses, or (at your option) any later version.
00014 
00015 Osmium is distributed in the hope that it will be useful, but WITHOUT ANY
00016 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
00017 PARTICULAR PURPOSE. See the GNU Lesser General Public License and the GNU
00018 General Public License for more details.
00019 
00020 You should have received a copy of the Licenses along with Osmium. If not, see
00021 <http://www.gnu.org/licenses/>.
00022 
00023 */
00024 
00025 #include <stdint.h>
00026 
00027 enum osm_object_type_t {
00028     UNKNOWN            = -1,
00029     NODE               = 0,
00030     WAY                = 1,
00031     RELATION           = 2,
00032     AREA_FROM_WAY      = 3,
00033     AREA_FROM_RELATION = 4
00034 };
00035 
00036 /*
00037 * The following typedefs are chosen so that they can represent all needed
00038 * numbers and still be reasonably space efficient. As the %OSM database is
00039 * growing rapidly, 64 bit IDs will be needed at some point!
00040 */
00041 typedef int32_t  osm_object_id_t;    
00042 typedef uint32_t osm_version_t;      
00043 typedef int32_t  osm_changeset_id_t; 
00044 typedef int32_t  osm_user_id_t;      
00045 typedef uint32_t osm_sequence_id_t;  
00046 
00047 #endif // OSMIUM_OSM_TYPES_HPP
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines