Pārlūkot izejas kodu

pythontemporal: make doxygen more happy

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@51185 15284696-431f-4ddb-bdfa-cd5b030d7da7
Martin Landa 13 gadi atpakaļ
vecāks
revīzija
d36fc9d137

+ 26 - 26
lib/python/temporal/abstract_dataset.py

@@ -27,28 +27,28 @@ from spatial_extent import *
 from metadata import *
 from metadata import *
 
 
 class abstract_dataset(object):
 class abstract_dataset(object):
-    """This is the base class for all datasets (raster, vector, raster3d, strds, stvds, str3ds)"""
+    """!This is the base class for all datasets (raster, vector, raster3d, strds, stvds, str3ds)"""
 
 
     def reset(self, ident):
     def reset(self, ident):
-	"""Reset the internal structure and set the identifier
+	"""!Reset the internal structure and set the identifier
 
 
            @param ident: The identifier of the dataset
            @param ident: The identifier of the dataset
         """
         """
 	raise IOError("This method must be implemented in the subclasses")
 	raise IOError("This method must be implemented in the subclasses")
 
 
     def get_type(self):
     def get_type(self):
-        """Return the type of this class"""
+        """!Return the type of this class"""
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
     
     
     def get_new_instance(self, ident):
     def get_new_instance(self, ident):
-        """Return a new instance with the type of this class
+        """!Return a new instance with the type of this class
 
 
            @param ident: The identifier of the dataset
            @param ident: The identifier of the dataset
         """
         """
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
 
 
     def spatial_overlapping(self, dataset):
     def spatial_overlapping(self, dataset):
-        """Return True if the spatial extents are overlapping"""
+        """!Return True if the spatial extents are overlapping"""
 
 
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
 
 
@@ -58,15 +58,15 @@ class abstract_dataset(object):
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
     
     
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
 	raise IOError("This method must be implemented in the subclasses")
 	raise IOError("This method must be implemented in the subclasses")
         
         
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
 	raise IOError("This method must be implemented in the subclasses")
 	raise IOError("This method must be implemented in the subclasses")
  
  
     def print_self(self):
     def print_self(self):
-	"""Print the content of the internal structure to stdout"""
+	"""!Print the content of the internal structure to stdout"""
 	self.base.print_self()
 	self.base.print_self()
 	if self.is_time_absolute():
 	if self.is_time_absolute():
 	    self.absolute_time.print_self()
 	    self.absolute_time.print_self()
@@ -76,19 +76,19 @@ class abstract_dataset(object):
 	self.metadata.print_self()
 	self.metadata.print_self()
 
 
     def get_id(self):
     def get_id(self):
-	"""Return the unique identifier of the dataset"""
+	"""!Return the unique identifier of the dataset"""
         return self.base.get_id()
         return self.base.get_id()
 
 
     def get_name(self):
     def get_name(self):
-	"""Return the name"""
+	"""!Return the name"""
         return self.base.get_name()
         return self.base.get_name()
 
 
     def get_mapset(self):
     def get_mapset(self):
-	"""Return the mapset"""
+	"""!Return the mapset"""
         return self.base.get_mapset()
         return self.base.get_mapset()
 
 
     def build_id(name, mapset, layer=None):
     def build_id(name, mapset, layer=None):
-	"""Build and return the id (primary key) based on name, mapset and layer of a dataset.
+	"""!Build and return the id (primary key) based on name, mapset and layer of a dataset.
 	
 	
 	   @param name: The name of the map
 	   @param name: The name of the map
 	   @param mapset: The name of the mapset
 	   @param mapset: The name of the mapset
@@ -112,7 +112,7 @@ class abstract_dataset(object):
 	
 	
 
 
     def get_valid_time(self):
     def get_valid_time(self):
-        """Returns a tuple of the start, the end valid time, this can be either datetime or double values
+        """!Returns a tuple of the start, the end valid time, this can be either datetime or double values
            @return A tuple of (start_time, end_time)
            @return A tuple of (start_time, end_time)
         """
         """
 
 
@@ -129,7 +129,7 @@ class abstract_dataset(object):
         return (start, end)
         return (start, end)
  
  
     def get_absolute_time(self):
     def get_absolute_time(self):
-        """Returns a tuple of the start, the end valid time and the timezone of the map
+        """!Returns a tuple of the start, the end valid time and the timezone of the map
            @return A tuple of (start_time, end_time, timezone)
            @return A tuple of (start_time, end_time, timezone)
         """
         """
                
                
@@ -140,7 +140,7 @@ class abstract_dataset(object):
         return (start, end, tz)
         return (start, end, tz)
     
     
     def get_relative_time(self):
     def get_relative_time(self):
-        """Returns the relative time interval (start_time, end_time, unit) or None if not present"""
+        """!Returns the relative time interval (start_time, end_time, unit) or None if not present"""
 
 
         start = self.relative_time.get_start_time()
         start = self.relative_time.get_start_time()
         end = self.relative_time.get_end_time()
         end = self.relative_time.get_end_time()
@@ -149,14 +149,14 @@ class abstract_dataset(object):
         return (start, end, unit)
         return (start, end, unit)
  
  
     def get_relative_time_unit(self):
     def get_relative_time_unit(self):
-        """Returns the relative time unit or None if not present"""
+        """!Returns the relative time unit or None if not present"""
 
 
         unit = self.relative_time.get_unit()
         unit = self.relative_time.get_unit()
 
 
         return unit
         return unit
 
 
     def check_relative_time_unit(self, unit):
     def check_relative_time_unit(self, unit):
-        """Check if unit is of type  years, months, days, hours, minutes or seconds
+        """!Check if unit is of type  years, months, days, hours, minutes or seconds
         
         
            Return True if success or False otherwise 
            Return True if success or False otherwise 
         """
         """
@@ -167,11 +167,11 @@ class abstract_dataset(object):
         return True
         return True
  
  
     def get_temporal_type(self):
     def get_temporal_type(self):
-        """Return the temporal type of this dataset"""
+        """!Return the temporal type of this dataset"""
         return self.base.get_ttype()
         return self.base.get_ttype()
     
     
     def get_spatial_extent(self):
     def get_spatial_extent(self):
-        """Return a tuple of spatial extent (north, south, east, west, top, bottom) """
+        """!Return a tuple of spatial extent (north, south, east, west, top, bottom) """
         
         
         north = self.spatial_extent.get_north()
         north = self.spatial_extent.get_north()
         south = self.spatial_extent.get_south()
         south = self.spatial_extent.get_south()
@@ -183,7 +183,7 @@ class abstract_dataset(object):
         return (north, south, east, west, top, bottom)
         return (north, south, east, west, top, bottom)
 
 
     def select(self, dbif=None):
     def select(self, dbif=None):
-	"""Select temporal dataset entry from database and fill up the internal structure"""
+	"""!Select temporal dataset entry from database and fill up the internal structure"""
 
 
         connect = False
         connect = False
 
 
@@ -208,15 +208,15 @@ class abstract_dataset(object):
             dbif.close()
             dbif.close()
         
         
     def is_in_db(self, dbif=None):
     def is_in_db(self, dbif=None):
-	"""Check if the temporal dataset entry is in the database"""
+	"""!Check if the temporal dataset entry is in the database"""
 	return self.base.is_in_db(dbif)
 	return self.base.is_in_db(dbif)
 
 
     def delete(self):
     def delete(self):
-	"""Delete temporal dataset entry from database if it exists"""
+	"""!Delete temporal dataset entry from database if it exists"""
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
 
 
     def insert(self, dbif=None):
     def insert(self, dbif=None):
-	"""Insert temporal dataset entry into database from the internal structure"""
+	"""!Insert temporal dataset entry into database from the internal structure"""
 
 
         connect = False
         connect = False
 
 
@@ -242,7 +242,7 @@ class abstract_dataset(object):
             dbif.close()
             dbif.close()
  
  
     def update(self, dbif=None):
     def update(self, dbif=None):
-	"""Update temporal dataset entry of database from the internal structure
+	"""!Update temporal dataset entry of database from the internal structure
 	   excluding None variables
 	   excluding None variables
 	"""
 	"""
 
 
@@ -270,7 +270,7 @@ class abstract_dataset(object):
             dbif.close()
             dbif.close()
  
  
     def update_all(self, dbif=None):
     def update_all(self, dbif=None):
-	"""Update temporal dataset entry of database from the internal structure
+	"""!Update temporal dataset entry of database from the internal structure
 	   and include None varuables.
 	   and include None varuables.
 
 
            @param dbif: The database interface to be used
            @param dbif: The database interface to be used
@@ -318,7 +318,7 @@ class abstract_dataset(object):
 	    return None
 	    return None
 
 
     def temporal_relation(self, map):
     def temporal_relation(self, map):
-	"""Return the temporal relation of this and the provided temporal map"""
+	"""!Return the temporal relation of this and the provided temporal map"""
 	if self.is_time_absolute() and map.is_time_absolute():
 	if self.is_time_absolute() and map.is_time_absolute():
 	    return self.absolute_time.temporal_relation(map.absolute_time)
 	    return self.absolute_time.temporal_relation(map.absolute_time)
         if self.is_time_relative() and map.is_time_relative():
         if self.is_time_relative() and map.is_time_relative():

+ 23 - 23
lib/python/temporal/abstract_map_dataset.py

@@ -26,23 +26,23 @@ from datetime_math import *
 ###############################################################################
 ###############################################################################
 
 
 class abstract_map_dataset(abstract_dataset):
 class abstract_map_dataset(abstract_dataset):
-    """This is the base class for all maps (raster, vector, raster3d) 
+    """!This is the base class for all maps (raster, vector, raster3d) 
        providing additional function to set the valid time and the spatial extent.
        providing additional function to set the valid time and the spatial extent.
     """
     """
       
       
     def get_new_stds_instance(self, ident):
     def get_new_stds_instance(self, ident):
-        """Return a new space time dataset instance in which maps are stored with the type of this class
+        """!Return a new space time dataset instance in which maps are stored with the type of this class
 
 
            @param ident: The identifier of the dataset
            @param ident: The identifier of the dataset
         """
         """
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
     
     
     def get_stds_register(self):
     def get_stds_register(self):
-        """Return the space time dataset register table name in which stds are listed in which this map is registered"""
+        """!Return the space time dataset register table name in which stds are listed in which this map is registered"""
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
 
 
     def set_stds_register(self, name):
     def set_stds_register(self, name):
-        """Set the space time dataset register table name.
+        """!Set the space time dataset register table name.
         
         
            This table stores all space time datasets in which this map is registered.
            This table stores all space time datasets in which this map is registered.
 
 
@@ -51,15 +51,15 @@ class abstract_map_dataset(abstract_dataset):
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
       
       
     def get_timestamp_module_name(self):
     def get_timestamp_module_name(self):
-        """Return the name of the C-module to set the time stamp in the file system"""
+        """!Return the name of the C-module to set the time stamp in the file system"""
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
    
    
     def load(self):
     def load(self):
-        """Load the content of this object from map files"""
+        """!Load the content of this object from map files"""
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
  
  
     def check_resolution_with_current_region(self):
     def check_resolution_with_current_region(self):
-        """Check if the raster or voxel resolution is finer than the current resolution
+        """!Check if the raster or voxel resolution is finer than the current resolution
            Return "finer" in case the raster/voxel resolution is finer than the current region
            Return "finer" in case the raster/voxel resolution is finer than the current region
            Return "coarser" in case the raster/voxel resolution is coarser than the current region
            Return "coarser" in case the raster/voxel resolution is coarser than the current region
 
 
@@ -68,7 +68,7 @@ class abstract_map_dataset(abstract_dataset):
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
 
 
     def get_map_id(self):
     def get_map_id(self):
-	"""Return the map id. The map id is the unique map identifier in grass and must not be equal to the 
+	"""!Return the map id. The map id is the unique map identifier in grass and must not be equal to the 
 	   primary key identifier (id) of the map in the database. Since vector maps may have layer information,
 	   primary key identifier (id) of the map in the database. Since vector maps may have layer information,
 	   the unique id is a combination of name, layer and mapset.
 	   the unique id is a combination of name, layer and mapset.
 	   
 	   
@@ -79,7 +79,7 @@ class abstract_map_dataset(abstract_dataset):
         return self.base.get_map_id()
         return self.base.get_map_id()
 
 
     def build_id(self, name, mapset, layer=None):
     def build_id(self, name, mapset, layer=None):
-	"""Convenient method to build the unique identifier
+	"""!Convenient method to build the unique identifier
 	
 	
 	    Existing layer and mapset definitions in the name string will be reused
 	    Existing layer and mapset definitions in the name string will be reused
 
 
@@ -100,11 +100,11 @@ class abstract_map_dataset(abstract_dataset):
 	    return "%s@%s"%(name, mapset)
 	    return "%s@%s"%(name, mapset)
 	    
 	    
     def get_layer(self):
     def get_layer(self):
-	"""Return the layer of the map or None in case no layer is defined"""
+	"""!Return the layer of the map or None in case no layer is defined"""
 	return self.base.get_layer()
 	return self.base.get_layer()
         
         
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         
         
         if self.get_type() == "raster":
         if self.get_type() == "raster":
             #                1         2         3         4         5         6         7
             #                1         2         3         4         5         6         7
@@ -145,7 +145,7 @@ class abstract_map_dataset(abstract_dataset):
         print " +----------------------------------------------------------------------------+"
         print " +----------------------------------------------------------------------------+"
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
 	self.base.print_shell_info()
 	self.base.print_shell_info()
 	if self.is_time_absolute():
 	if self.is_time_absolute():
 	    self.absolute_time.print_shell_info()
 	    self.absolute_time.print_shell_info()
@@ -165,7 +165,7 @@ class abstract_map_dataset(abstract_dataset):
         print "registered_datasets=" + string
         print "registered_datasets=" + string
 
 
     def set_absolute_time(self, start_time, end_time=None, timezone=None):
     def set_absolute_time(self, start_time, end_time=None, timezone=None):
-        """Set the absolute time interval with start time and end time
+        """!Set the absolute time interval with start time and end time
         
         
            @param start_time: a datetime object specifying the start time of the map
            @param start_time: a datetime object specifying the start time of the map
            @param end_time: a datetime object specifying the end time of the map
            @param end_time: a datetime object specifying the end time of the map
@@ -202,7 +202,7 @@ class abstract_map_dataset(abstract_dataset):
         self.absolute_time.set_timezone(timezone)
         self.absolute_time.set_timezone(timezone)
 
 
     def update_absolute_time(self, start_time, end_time=None, timezone=None, dbif = None):
     def update_absolute_time(self, start_time, end_time=None, timezone=None, dbif = None):
-        """Update the absolute time
+        """!Update the absolute time
 
 
            This method should always be used to set the absolute time. Do not use insert() or update()
            This method should always be used to set the absolute time. Do not use insert() or update()
            to the the time. This update functions assures that the *.timestamp commands are invoked.
            to the the time. This update functions assures that the *.timestamp commands are invoked.
@@ -228,7 +228,7 @@ class abstract_map_dataset(abstract_dataset):
         self.write_absolute_time_to_file()
         self.write_absolute_time_to_file()
 
 
     def write_absolute_time_to_file(self):
     def write_absolute_time_to_file(self):
-        """Start the grass timestamp module to set the time in the file system"""
+        """!Start the grass timestamp module to set the time in the file system"""
 
 
         start_time, end_time, unit = self.get_absolute_time()
         start_time, end_time, unit = self.get_absolute_time()
         start = datetime_to_grass_datetime_string(start_time)
         start = datetime_to_grass_datetime_string(start_time)
@@ -239,7 +239,7 @@ class abstract_map_dataset(abstract_dataset):
         core.run_command(self.get_timestamp_module_name(), map=self.get_map_id(), date=start)
         core.run_command(self.get_timestamp_module_name(), map=self.get_map_id(), date=start)
 
 
     def set_relative_time(self, start_time, end_time, unit):
     def set_relative_time(self, start_time, end_time, unit):
-        """Set the relative time interval 
+        """!Set the relative time interval 
         
         
            @param start_time: A double value 
            @param start_time: A double value 
            @param end_time: A double value 
            @param end_time: A double value 
@@ -281,7 +281,7 @@ class abstract_map_dataset(abstract_dataset):
         return True
         return True
 
 
     def update_relative_time(self, start_time, end_time, unit, dbif = None):
     def update_relative_time(self, start_time, end_time, unit, dbif = None):
-        """Update the relative time interval
+        """!Update the relative time interval
 
 
            This method should always be used to set the absolute time. Do not use insert() or update()
            This method should always be used to set the absolute time. Do not use insert() or update()
            to the the time. This update functions assures that the *.timestamp commands are invoked.
            to the the time. This update functions assures that the *.timestamp commands are invoked.
@@ -308,7 +308,7 @@ class abstract_map_dataset(abstract_dataset):
         self.write_relative_time_to_file()
         self.write_relative_time_to_file()
 
 
     def write_relative_time_to_file(self):
     def write_relative_time_to_file(self):
-        """Start the grass timestamp module to set the time in the file system"""
+        """!Start the grass timestamp module to set the time in the file system"""
 
 
         start_time, end_time, unit = self.get_relative_time()
         start_time, end_time, unit = self.get_relative_time()
         start = "%i %s"%(int(start_time), unit)
         start = "%i %s"%(int(start_time), unit)
@@ -318,7 +318,7 @@ class abstract_map_dataset(abstract_dataset):
         core.run_command(self.get_timestamp_module_name(), map=self.get_map_id(), date=start)
         core.run_command(self.get_timestamp_module_name(), map=self.get_map_id(), date=start)
 
 
     def set_spatial_extent(self, north, south, east, west, top=0, bottom=0):
     def set_spatial_extent(self, north, south, east, west, top=0, bottom=0):
-        """Set the spatial extent of the map
+        """!Set the spatial extent of the map
 
 
            @param north: The northern edge
            @param north: The northern edge
            @param south: The southern edge
            @param south: The southern edge
@@ -330,7 +330,7 @@ class abstract_map_dataset(abstract_dataset):
         self.spatial_extent.set_spatial_extent(north, south, east, west, top, bottom)
         self.spatial_extent.set_spatial_extent(north, south, east, west, top, bottom)
         
         
     def check_valid_time(self):
     def check_valid_time(self):
-        """Check for correct valid time"""
+        """!Check for correct valid time"""
         if self.is_time_absolute():
         if self.is_time_absolute():
             start, end, tz = self.get_absolute_time()
             start, end, tz = self.get_absolute_time()
         else:
         else:
@@ -351,7 +351,7 @@ class abstract_map_dataset(abstract_dataset):
         return True
         return True
 
 
     def delete(self, dbif=None, update=True):
     def delete(self, dbif=None, update=True):
-	"""Delete a map entry from database if it exists
+	"""!Delete a map entry from database if it exists
         
         
             Remove dependent entries:
             Remove dependent entries:
             * Remove the map entry in each space time dataset in which this map is registered
             * Remove the map entry in each space time dataset in which this map is registered
@@ -407,7 +407,7 @@ class abstract_map_dataset(abstract_dataset):
             dbif.close()
             dbif.close()
 
 
     def unregister(self, dbif=None, update=True):
     def unregister(self, dbif=None, update=True):
-	""" Remove the map entry in each space time dataset in which this map is registered
+	"""! Remove the map entry in each space time dataset in which this map is registered
 
 
            @param dbif: The database interface to be used
            @param dbif: The database interface to be used
            @param update: Call for each unregister statement the update from registered maps 
            @param update: Call for each unregister statement the update from registered maps 
@@ -454,7 +454,7 @@ class abstract_map_dataset(abstract_dataset):
             dbif.close()
             dbif.close()
             
             
     def get_registered_datasets(self, dbif=None):
     def get_registered_datasets(self, dbif=None):
-        """Return all space time dataset ids in which this map is registered as
+        """!Return all space time dataset ids in which this map is registered as
            dictionary like rows with column "id" or None if this map is not registered in any
            dictionary like rows with column "id" or None if this map is not registered in any
            space time dataset.
            space time dataset.
 
 

+ 29 - 29
lib/python/temporal/abstract_space_time_dataset.py

@@ -27,7 +27,7 @@ from temporal_relationships import *
 ###############################################################################
 ###############################################################################
 
 
 class abstract_space_time_dataset(abstract_dataset):
 class abstract_space_time_dataset(abstract_dataset):
-    """Abstract space time dataset class
+    """!Abstract space time dataset class
 
 
        This class represents a space time dataset. Convenient functions
        This class represents a space time dataset. Convenient functions
        to select, update, insert or delete objects of this type in the SQL
        to select, update, insert or delete objects of this type in the SQL
@@ -43,18 +43,18 @@ class abstract_space_time_dataset(abstract_dataset):
         self.map_counter = 0
         self.map_counter = 0
 
 
     def get_new_map_instance(self, ident=None):
     def get_new_map_instance(self, ident=None):
-        """Return a new instance of a map dataset which is associated with the type of this class
+        """!Return a new instance of a map dataset which is associated with the type of this class
 
 
            @param ident: The unique identifier of the new object
            @param ident: The unique identifier of the new object
         """
         """
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
 
 
     def get_map_register(self):
     def get_map_register(self):
-        """Return the name of the map register table"""
+        """!Return the name of the map register table"""
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
 
 
     def set_map_register(self, name):
     def set_map_register(self, name):
-        """Set the name of the map register table
+        """!Set the name of the map register table
 
 
         This table stores all map names which are registered in this space time dataset.
         This table stores all map names which are registered in this space time dataset.
 
 
@@ -63,7 +63,7 @@ class abstract_space_time_dataset(abstract_dataset):
         raise IOError("This method must be implemented in the subclasses")
         raise IOError("This method must be implemented in the subclasses")
  
  
     def print_self(self):
     def print_self(self):
-	"""Print the content of the internal structure to stdout"""
+	"""!Print the content of the internal structure to stdout"""
 	self.base.print_self()
 	self.base.print_self()
 	if self.is_time_absolute():
 	if self.is_time_absolute():
 	    self.absolute_time.print_self()
 	    self.absolute_time.print_self()
@@ -73,7 +73,7 @@ class abstract_space_time_dataset(abstract_dataset):
 	self.metadata.print_self()
 	self.metadata.print_self()
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         
         
         if self.get_type() == "strds":
         if self.get_type() == "strds":
             #                1         2         3         4         5         6         7
             #                1         2         3         4         5         6         7
@@ -101,7 +101,7 @@ class abstract_space_time_dataset(abstract_dataset):
         print " +----------------------------------------------------------------------------+"
         print " +----------------------------------------------------------------------------+"
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
 	self.base.print_shell_info()
 	self.base.print_shell_info()
 	if self.is_time_absolute():
 	if self.is_time_absolute():
 	    self.absolute_time.print_shell_info()
 	    self.absolute_time.print_shell_info()
@@ -112,7 +112,7 @@ class abstract_space_time_dataset(abstract_dataset):
 
 
     def set_initial_values(self, temporal_type, semantic_type, \
     def set_initial_values(self, temporal_type, semantic_type, \
                            title=None, description=None):
                            title=None, description=None):
-        """Set the initial values of the space time dataset
+        """!Set the initial values of the space time dataset
 
 
            @param temporal_type: The temporal type of this space time dataset (absolute or relative)
            @param temporal_type: The temporal type of this space time dataset (absolute or relative)
            @param semantic_type: The semantic type of this dataset
            @param semantic_type: The semantic type of this dataset
@@ -132,11 +132,11 @@ class abstract_space_time_dataset(abstract_dataset):
         self.metadata.set_description(description)
         self.metadata.set_description(description)
 
 
     def get_semantic_type(self):
     def get_semantic_type(self):
-        """Return the semantic type of this dataset"""
+        """!Return the semantic type of this dataset"""
         return self.base.get_semantic_type()
         return self.base.get_semantic_type()
 
 
     def get_initial_values(self):
     def get_initial_values(self):
-        """Return the initial values: temporal_type, semantic_type, title, description"""
+        """!Return the initial values: temporal_type, semantic_type, title, description"""
         
         
         temporal_type = self.get_temporal_type()
         temporal_type = self.get_temporal_type()
         semantic_type = self.base.get_semantic_type()
         semantic_type = self.base.get_semantic_type()
@@ -146,7 +146,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return temporal_type, semantic_type, title, description
         return temporal_type, semantic_type, title, description
 
 
     def get_granularity(self):
     def get_granularity(self):
-        """Return the granularity"""
+        """!Return the granularity"""
         
         
         temporal_type = self.get_temporal_type()
         temporal_type = self.get_temporal_type()
 
 
@@ -171,7 +171,7 @@ class abstract_space_time_dataset(abstract_dataset):
             core.fatal(_("Unknown temporal type \"%s\"") % (temporal_type))
             core.fatal(_("Unknown temporal type \"%s\"") % (temporal_type))
 
 
     def set_relative_time_unit(self, unit):
     def set_relative_time_unit(self, unit):
-        """Set the relative time unit which may be of type: years, months, days, hours, minutes or seconds
+        """!Set the relative time unit which may be of type: years, months, days, hours, minutes or seconds
         
         
            All maps registered in a (relative time) space time dataset must have the same unit
            All maps registered in a (relative time) space time dataset must have the same unit
         """
         """
@@ -184,7 +184,7 @@ class abstract_space_time_dataset(abstract_dataset):
             self.relative_time.set_unit(unit)
             self.relative_time.set_unit(unit)
 
 
     def get_map_time(self):
     def get_map_time(self):
-        """Return the type of the map time, interval, point, mixed or invalid"""
+        """!Return the type of the map time, interval, point, mixed or invalid"""
         
         
         temporal_type = self.get_temporal_type()
         temporal_type = self.get_temporal_type()
 
 
@@ -196,7 +196,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return map_time
         return map_time
 
 
     def count_temporal_types(self, maps=None, dbif=None):
     def count_temporal_types(self, maps=None, dbif=None):
-        """Return the temporal type of the registered maps as dictionary
+        """!Return the temporal type of the registered maps as dictionary
 
 
            The map list must be ordered by start time
            The map list must be ordered by start time
 
 
@@ -238,7 +238,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return tcount
         return tcount
 
 
     def count_gaps(self, maps=None, dbif=None):
     def count_gaps(self, maps=None, dbif=None):
-        """Count the number of gaps between temporal neighbors
+        """!Count the number of gaps between temporal neighbors
         
         
            @param maps: A sorted (start_time) list of abstract_dataset objects
            @param maps: A sorted (start_time) list of abstract_dataset objects
            @param dbif: The database interface to be used
            @param dbif: The database interface to be used
@@ -260,7 +260,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return gaps
         return gaps
         
         
     def print_temporal_relation_matrix(self, maps=None, dbif=None):
     def print_temporal_relation_matrix(self, maps=None, dbif=None):
-        """Print the temporal relation matrix of all registered maps to stdout
+        """!Print the temporal relation matrix of all registered maps to stdout
 
 
            The temporal relation matrix includes the temporal relations between
            The temporal relation matrix includes the temporal relations between
            all registered maps. The relations are strings stored in a list of lists.
            all registered maps. The relations are strings stored in a list of lists.
@@ -275,7 +275,7 @@ class abstract_space_time_dataset(abstract_dataset):
 	print_temporal_relations(maps, maps)
 	print_temporal_relations(maps, maps)
 
 
     def get_temporal_relation_matrix(self, maps=None, dbif=None):
     def get_temporal_relation_matrix(self, maps=None, dbif=None):
-        """Return the temporal relation matrix of all registered maps as list of lists
+        """!Return the temporal relation matrix of all registered maps as list of lists
 
 
            The map list must be ordered by start time
            The map list must be ordered by start time
 
 
@@ -291,7 +291,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return get_temporal_relation_matrix(maps, maps)
         return get_temporal_relation_matrix(maps, maps)
 
 
     def count_temporal_relations(self, maps=None, dbif=None):
     def count_temporal_relations(self, maps=None, dbif=None):
-        """Count the temporal relations between the registered maps.
+        """!Count the temporal relations between the registered maps.
 
 
            The map list must be ordered by start time. Temporal relations are counted 
            The map list must be ordered by start time. Temporal relations are counted 
            by analysing the sparse upper right side temporal relationships matrix.
            by analysing the sparse upper right side temporal relationships matrix.
@@ -307,7 +307,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return count_temporal_relations(maps, maps)
         return count_temporal_relations(maps, maps)
 
 
     def check_temporal_topology(self, maps=None, dbif=None):
     def check_temporal_topology(self, maps=None, dbif=None):
-        """Check the temporal topology
+        """!Check the temporal topology
 
 
            Correct topology means, that time intervals are not overlap or
            Correct topology means, that time intervals are not overlap or
            that intervals does not contain other intervals. Equal time intervals or
            that intervals does not contain other intervals. Equal time intervals or
@@ -369,7 +369,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return True
         return True
 
 
     def sample_by_dataset(self, stds, method=None, spatial=False, dbif=None):
     def sample_by_dataset(self, stds, method=None, spatial=False, dbif=None):
-        """Sample this space time dataset with the temporal topology of a second space time dataset
+        """!Sample this space time dataset with the temporal topology of a second space time dataset
 
 
            The sample dataset must have "interval" as temporal map type, so all sample maps have valid interval time.
            The sample dataset must have "interval" as temporal map type, so all sample maps have valid interval time.
 
 
@@ -539,7 +539,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return obj_list
         return obj_list
 
 
     def get_registered_maps_as_objects_by_granularity(self, gran=None, dbif=None):
     def get_registered_maps_as_objects_by_granularity(self, gran=None, dbif=None):
-        """Return all registered maps as ordered (by start_time) object list with 
+        """!Return all registered maps as ordered (by start_time) object list with 
            "gap" map objects (id==None) for temporal topological operations using the
            "gap" map objects (id==None) for temporal topological operations using the
            granularity of the space time dataset as increment. Each list entry is a list of map objects
            granularity of the space time dataset as increment. Each list entry is a list of map objects
            which are potentially located in the actual granule.
            which are potentially located in the actual granule.
@@ -609,7 +609,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return obj_list
         return obj_list
 
 
     def get_registered_maps_as_objects_with_gaps(self, where=None, dbif=None):
     def get_registered_maps_as_objects_with_gaps(self, where=None, dbif=None):
-        """Return all registered maps as ordered (by start_time) object list with 
+        """!Return all registered maps as ordered (by start_time) object list with 
            "gap" map objects (id==None) for temporal topological operations
            "gap" map objects (id==None) for temporal topological operations
 
 
            Gaps between maps are identified as maps with id==None
            Gaps between maps are identified as maps with id==None
@@ -663,7 +663,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return obj_list
         return obj_list
 
 
     def get_registered_maps_as_objects(self, where=None, order="start_time", dbif=None):
     def get_registered_maps_as_objects(self, where=None, order="start_time", dbif=None):
-        """Return all registered maps as ordered object list for temporal topological operations
+        """!Return all registered maps as ordered object list for temporal topological operations
 
 
            The objects are initialized with the id and the temporal extent (temporal type, start time, end time).
            The objects are initialized with the id and the temporal extent (temporal type, start time, end time).
            In case more map information are needed, use the select() method for each listed object.
            In case more map information are needed, use the select() method for each listed object.
@@ -706,7 +706,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return obj_list
         return obj_list
 
 
     def get_registered_maps(self, columns=None, where = None, order = None, dbif=None):
     def get_registered_maps(self, columns=None, where = None, order = None, dbif=None):
-        """Return sqlite rows of all registered maps.
+        """!Return sqlite rows of all registered maps.
         
         
            In case columns are not specified, each row includes all columns specified in the datatype specific view
            In case columns are not specified, each row includes all columns specified in the datatype specific view
 
 
@@ -759,7 +759,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return rows
         return rows
 
 
     def delete(self, dbif=None):
     def delete(self, dbif=None):
-        """Delete a space time dataset from the temporal database
+        """!Delete a space time dataset from the temporal database
 
 
            This method removes the space time dataset from the temporal database and drops its map register table
            This method removes the space time dataset from the temporal database and drops its map register table
 
 
@@ -813,7 +813,7 @@ class abstract_space_time_dataset(abstract_dataset):
             dbif.close()
             dbif.close()
             
             
     def register_map(self, map, dbif=None):
     def register_map(self, map, dbif=None):
-        """ Register a map in the space time dataset.
+        """!Register a map in the space time dataset.
 
 
             This method takes care of the registration of a map
             This method takes care of the registration of a map
             in a space time dataset.
             in a space time dataset.
@@ -1032,7 +1032,7 @@ class abstract_space_time_dataset(abstract_dataset):
         return True
         return True
 
 
     def unregister_map(self, map, dbif = None):
     def unregister_map(self, map, dbif = None):
-        """Unregister a map from the space time dataset.
+        """!Unregister a map from the space time dataset.
 
 
            This method takes care of the un-registration of a map
            This method takes care of the un-registration of a map
            from a space time dataset.
            from a space time dataset.
@@ -1107,7 +1107,7 @@ class abstract_space_time_dataset(abstract_dataset):
         self.map_counter -= 1
         self.map_counter -= 1
             
             
     def update_from_registered_maps(self, dbif = None):
     def update_from_registered_maps(self, dbif = None):
-        """This methods updates the spatial and temporal extent as well as
+        """!This methods updates the spatial and temporal extent as well as
            type specific metadata. It should always been called after maps are registered
            type specific metadata. It should always been called after maps are registered
            or unregistered/deleted from the space time dataset.
            or unregistered/deleted from the space time dataset.
 
 
@@ -1302,7 +1302,7 @@ class abstract_space_time_dataset(abstract_dataset):
 
 
 def create_temporal_relation_sql_where_statement(start, end, use_start=True, use_during=False, 
 def create_temporal_relation_sql_where_statement(start, end, use_start=True, use_during=False, 
                                         use_overlap=False, use_contain=False, use_equal=False):
                                         use_overlap=False, use_contain=False, use_equal=False):
-    """ Create a SQL WHERE statement for temporal relation selection of maps in space time datasets
+    """!Create a SQL WHERE statement for temporal relation selection of maps in space time datasets
 
 
         @param start: The start time
         @param start: The start time
         @param end: The end time
         @param end: The end time

+ 2 - 2
lib/python/temporal/aggregation.py

@@ -27,7 +27,7 @@ from space_time_datasets import *
 ###############################################################################
 ###############################################################################
 
 
 def collect_map_names(sp, dbif, start, end, sampling):
 def collect_map_names(sp, dbif, start, end, sampling):
-    """Gather all maps from dataset using a specific sample method
+    """!Gather all maps from dataset using a specific sample method
 
 
        @param sp: The space time raster dataset to select aps from
        @param sp: The space time raster dataset to select aps from
        @param dbif: The temporal database interface to use
        @param dbif: The temporal database interface to use
@@ -81,7 +81,7 @@ def collect_map_names(sp, dbif, start, end, sampling):
 ###############################################################################
 ###############################################################################
 
 
 def aggregate_raster_maps(orig_ds, dataset, mapset, inputs, base, start, end, count, method, register_null, dbif):
 def aggregate_raster_maps(orig_ds, dataset, mapset, inputs, base, start, end, count, method, register_null, dbif):
-    """Aggregate a list of raster input maps with r.series
+    """!Aggregate a list of raster input maps with r.series
        
        
        @param orig_ds: Original space time raster dataset from which the maps are selected
        @param orig_ds: Original space time raster dataset from which the maps are selected
        @param dataset: The new space time raster dataset to insert the aggregated map
        @param dataset: The new space time raster dataset to insert the aggregated map

+ 40 - 40
lib/python/temporal/base.py

@@ -34,7 +34,7 @@ class dict_sql_serializer(object):
     def __init__(self):
     def __init__(self):
         self.D = {}
         self.D = {}
     def serialize(self, type, table, where=None):
     def serialize(self, type, table, where=None):
-	"""Convert the internal dictionary into a string of semicolon separated SQL statements
+	"""!Convert the internal dictionary into a string of semicolon separated SQL statements
 	   The keys are the column names and the values are the row entries
 	   The keys are the column names and the values are the row entries
 
 
 	   @type must be SELECT. INSERT, UPDATE
 	   @type must be SELECT. INSERT, UPDATE
@@ -140,7 +140,7 @@ class dict_sql_serializer(object):
     	return sql, tuple(args)
     	return sql, tuple(args)
 
 
     def deserialize(self, row):
     def deserialize(self, row):
-	"""Convert the content of the dbmi dictionary like row into the internal dictionary
+	"""!Convert the content of the dbmi dictionary like row into the internal dictionary
 
 
            @param row: The dictionary like row to store in the internal dict
            @param row: The dictionary like row to store in the internal dict
         """
         """
@@ -149,7 +149,7 @@ class dict_sql_serializer(object):
 	    self.D[key] = row[key]
 	    self.D[key] = row[key]
 
 
     def clear(self):
     def clear(self):
-	"""Initialize the internal storage"""
+	"""!Initialize the internal storage"""
 	self.D = {}
 	self.D = {}
 
 
     def print_self(self):
     def print_self(self):
@@ -174,7 +174,7 @@ class dict_sql_serializer(object):
 ###############################################################################
 ###############################################################################
 
 
 class sql_database_interface(dict_sql_serializer):
 class sql_database_interface(dict_sql_serializer):
-    """This class represents the SQL database interface
+    """!This class represents the SQL database interface
 
 
        Functions to insert, select and update the internal structure of this class
        Functions to insert, select and update the internal structure of this class
        in the temporal database are implemented. The following DBMS are supported:
        in the temporal database are implemented. The following DBMS are supported:
@@ -189,7 +189,7 @@ class sql_database_interface(dict_sql_serializer):
        * Metadata
        * Metadata
     """
     """
     def __init__(self, table=None, ident=None):
     def __init__(self, table=None, ident=None):
-        """Constructor of this class
+        """!Constructor of this class
 
 
            @param table: The name of the table
            @param table: The name of the table
            @param ident: The identifier (primary key) of this object in the database table
            @param ident: The identifier (primary key) of this object in the database table
@@ -200,11 +200,11 @@ class sql_database_interface(dict_sql_serializer):
         self.ident = ident
         self.ident = ident
 
 
     def get_table_name(self):
     def get_table_name(self):
-        """Return the name of the table in which the internal data are inserted, updated or selected"""
+        """!Return the name of the table in which the internal data are inserted, updated or selected"""
         return self.table
         return self.table
 
 
     def connect(self):
     def connect(self):
-        """Connect to the DBMI to execute SQL statements
+        """!Connect to the DBMI to execute SQL statements
 
 
            Supported backends are sqlite3 and postgresql
            Supported backends are sqlite3 and postgresql
         """
         """
@@ -223,7 +223,7 @@ class sql_database_interface(dict_sql_serializer):
 	    self.cursor = self.connection.cursor(cursor_factory=dbmi.extras.DictCursor)
 	    self.cursor = self.connection.cursor(cursor_factory=dbmi.extras.DictCursor)
 
 
     def close(self):
     def close(self):
-        """Close the DBMI connection"""
+        """!Close the DBMI connection"""
         #print "Close connection to",  self.database
         #print "Close connection to",  self.database
 	self.connection.commit()
 	self.connection.commit()
         self.cursor.close()
         self.cursor.close()
@@ -232,7 +232,7 @@ class sql_database_interface(dict_sql_serializer):
 	return "DELETE FROM " + self.get_table_name() + " WHERE id = \'" + str(self.ident) + "\'"
 	return "DELETE FROM " + self.get_table_name() + " WHERE id = \'" + str(self.ident) + "\'"
 
 
     def delete(self, dbif=None):
     def delete(self, dbif=None):
-        """Delete the entry of this object from the temporal database"""
+        """!Delete the entry of this object from the temporal database"""
 	sql = self.get_delete_statement()
 	sql = self.get_delete_statement()
         #print sql
         #print sql
         
         
@@ -247,7 +247,7 @@ class sql_database_interface(dict_sql_serializer):
 	return "SELECT id FROM " + self.get_table_name() + " WHERE id = \'" + str(self.ident) + "\'"
 	return "SELECT id FROM " + self.get_table_name() + " WHERE id = \'" + str(self.ident) + "\'"
 
 
     def is_in_db(self, dbif=None):
     def is_in_db(self, dbif=None):
-        """Check if this object is present in the temporal database
+        """!Check if this object is present in the temporal database
 
 
            @param dbif: The database interface to be used
            @param dbif: The database interface to be used
         """
         """
@@ -274,7 +274,7 @@ class sql_database_interface(dict_sql_serializer):
 	return self.serialize("SELECT", self.get_table_name(), "WHERE id = \'" + str(self.ident) + "\'")
 	return self.serialize("SELECT", self.get_table_name(), "WHERE id = \'" + str(self.ident) + "\'")
 
 
     def select(self, dbif=None):
     def select(self, dbif=None):
-        """Select the content from the temporal database and store it
+        """!Select the content from the temporal database and store it
            in the internal dictionary structure
            in the internal dictionary structure
 
 
            @param dbif: The database interface to be used
            @param dbif: The database interface to be used
@@ -313,7 +313,7 @@ class sql_database_interface(dict_sql_serializer):
 	return self.serialize("INSERT", self.get_table_name())
 	return self.serialize("INSERT", self.get_table_name())
 
 
     def insert(self, dbif=None):
     def insert(self, dbif=None):
-        """Serialize the content of this object and store it in the temporal
+        """!Serialize the content of this object and store it in the temporal
            database using the internal identifier
            database using the internal identifier
 
 
            @param dbif: The database interface to be used
            @param dbif: The database interface to be used
@@ -333,7 +333,7 @@ class sql_database_interface(dict_sql_serializer):
 	return self.serialize("UPDATE", self.get_table_name(), "WHERE id = \'" + str(self.ident) + "\'")
 	return self.serialize("UPDATE", self.get_table_name(), "WHERE id = \'" + str(self.ident) + "\'")
 
 
     def update(self, dbif=None):
     def update(self, dbif=None):
-        """Serialize the content of this object and update it in the temporal
+        """!Serialize the content of this object and update it in the temporal
            database using the internal identifier
            database using the internal identifier
 
 
            Only object entries which are exists (not None) are updated
            Only object entries which are exists (not None) are updated
@@ -358,7 +358,7 @@ class sql_database_interface(dict_sql_serializer):
 	return self.serialize("UPDATE ALL", self.get_table_name(), "WHERE id = \'" + str(self.ident) + "\'")
 	return self.serialize("UPDATE ALL", self.get_table_name(), "WHERE id = \'" + str(self.ident) + "\'")
 
 
     def update_all(self, dbif=None):
     def update_all(self, dbif=None):
-        """Serialize the content of this object, including None objects, and update it in the temporal
+        """!Serialize the content of this object, including None objects, and update it in the temporal
            database using the internal identifier
            database using the internal identifier
 
 
            @param dbif: The database interface to be used
            @param dbif: The database interface to be used
@@ -380,7 +380,7 @@ class sql_database_interface(dict_sql_serializer):
 ###############################################################################
 ###############################################################################
 
 
 class dataset_base(sql_database_interface):
 class dataset_base(sql_database_interface):
-    """This is the base class for all maps and spacetime datasets storing basic identification information"""
+    """!This is the base class for all maps and spacetime datasets storing basic identification information"""
     def __init__(self, table=None, ident=None, name=None, mapset=None, creator=None, ctime=None,\
     def __init__(self, table=None, ident=None, name=None, mapset=None, creator=None, ctime=None,\
 		    mtime=None, ttype=None, revision=1):
 		    mtime=None, ttype=None, revision=1):
 
 
@@ -401,7 +401,7 @@ class dataset_base(sql_database_interface):
 	#self.set_revision(revision)
 	#self.set_revision(revision)
 
 
     def set_id(self, ident):
     def set_id(self, ident):
-	"""Convenient method to set the unique identifier (primary key)
+	"""!Convenient method to set the unique identifier (primary key)
 
 
            @param ident: The unique identifier should be a combination of the dataset name, layer name and the mapset name@mapset
            @param ident: The unique identifier should be a combination of the dataset name, layer name and the mapset name@mapset
         """
         """
@@ -409,21 +409,21 @@ class dataset_base(sql_database_interface):
 	self.D["id"] = ident
 	self.D["id"] = ident
 
 
     def set_name(self, name):
     def set_name(self, name):
-	"""Set the name of the dataset
+	"""!Set the name of the dataset
 
 
            @param name: The name of the dataset
            @param name: The name of the dataset
         """
         """
 	self.D["name"] = name
 	self.D["name"] = name
 
 
     def set_mapset(self, mapset):
     def set_mapset(self, mapset):
-	"""Set the mapset of the dataset
+	"""!Set the mapset of the dataset
 
 
            @param mapsets: The name of the mapset in which this dataset is stored
            @param mapsets: The name of the mapset in which this dataset is stored
         """
         """
 	self.D["mapset"] = mapset
 	self.D["mapset"] = mapset
 
 
     def set_layer(self, layer):
     def set_layer(self, layer):
-	"""Convenient method to set the layer of the map (part of primary key)
+	"""!Convenient method to set the layer of the map (part of primary key)
 	
 	
 	   Layer are currently supported for vector maps
 	   Layer are currently supported for vector maps
 
 
@@ -432,14 +432,14 @@ class dataset_base(sql_database_interface):
 	self.D["layer"] = layer
 	self.D["layer"] = layer
 
 
     def set_creator(self, creator):
     def set_creator(self, creator):
-	"""Set the creator of the dataset
+	"""!Set the creator of the dataset
 
 
            @param creator: The name of the creator
            @param creator: The name of the creator
         """
         """
 	self.D["creator"] = creator
 	self.D["creator"] = creator
 
 
     def set_ctime(self, ctime=None):
     def set_ctime(self, ctime=None):
-	"""Set the creation time of the dataset, if nothing set the current time is used
+	"""!Set the creation time of the dataset, if nothing set the current time is used
 
 
            @param ctime: The current time of type datetime
            @param ctime: The current time of type datetime
         """
         """
@@ -449,7 +449,7 @@ class dataset_base(sql_database_interface):
             self.D["creation_time"] = ctime
             self.D["creation_time"] = ctime
 
 
     def set_ttype(self, ttype):
     def set_ttype(self, ttype):
-	"""Set the temporal type of the dataset: absolute or relative, if nothing set absolute time will assumed
+	"""!Set the temporal type of the dataset: absolute or relative, if nothing set absolute time will assumed
 
 
            @param ttype: The temporal type of the dataset "absolute or relative"
            @param ttype: The temporal type of the dataset "absolute or relative"
         """
         """
@@ -459,18 +459,18 @@ class dataset_base(sql_database_interface):
 	    self.D["temporal_type"] = ttype
 	    self.D["temporal_type"] = ttype
 
 
 #    def set_mtime(self, mtime=None):
 #    def set_mtime(self, mtime=None):
-#	"""Set the modification time of the map, if nothing set the current time is used"""
+#	"""!Set the modification time of the map, if nothing set the current time is used"""
 #	if mtime == None:
 #	if mtime == None:
 #            self.D["modification_time"] = datetime.now()
 #            self.D["modification_time"] = datetime.now()
 #	else:
 #	else:
 #            self.D["modification_time"] = mtime
 #            self.D["modification_time"] = mtime
 
 
 #    def set_revision(self, revision=1):
 #    def set_revision(self, revision=1):
-#	"""Set the revision of the map: if nothing set revision 1 will assumed"""
+#	"""!Set the revision of the map: if nothing set revision 1 will assumed"""
 #	self.D["revision"] = revision
 #	self.D["revision"] = revision
 
 
     def get_id(self):
     def get_id(self):
-	"""Convenient method to get the unique identifier (primary key)
+	"""!Convenient method to get the unique identifier (primary key)
         
         
 	   @return None if not found
 	   @return None if not found
 	"""
 	"""
@@ -480,7 +480,7 @@ class dataset_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_map_id(self):
     def get_map_id(self):
-	"""Convenient method to get the unique map identifier without layer information
+	"""!Convenient method to get the unique map identifier without layer information
 
 
            @param return the name of the vector map as name@mapset
            @param return the name of the vector map as name@mapset
         """
         """
@@ -492,7 +492,7 @@ class dataset_base(sql_database_interface):
 	    return id
 	    return id
 	    
 	    
     def get_layer(self):
     def get_layer(self):
-	"""Convenient method to get the layer of the map (part of primary key)
+	"""!Convenient method to get the layer of the map (part of primary key)
 	
 	
 	   Layer are currently supported for vector maps
 	   Layer are currently supported for vector maps
         
         
@@ -504,7 +504,7 @@ class dataset_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_name(self):
     def get_name(self):
-	"""Get the name of the dataset
+	"""!Get the name of the dataset
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("name"):
 	if self.D.has_key("name"):
 	    return self.D["name"]
 	    return self.D["name"]
@@ -512,7 +512,7 @@ class dataset_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_mapset(self):
     def get_mapset(self):
-	"""Get the name of mapset of this dataset
+	"""!Get the name of mapset of this dataset
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("mapset"):
 	if self.D.has_key("mapset"):
 	    return self.D["mapset"]
 	    return self.D["mapset"]
@@ -520,7 +520,7 @@ class dataset_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_creator(self):
     def get_creator(self):
-	"""Get the creator of the dataset
+	"""!Get the creator of the dataset
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("creator"):
 	if self.D.has_key("creator"):
 	    return self.D["creator"]
 	    return self.D["creator"]
@@ -528,7 +528,7 @@ class dataset_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_ctime(self):
     def get_ctime(self):
-	"""Get the creation time of the dataset, datatype is datetime
+	"""!Get the creation time of the dataset, datatype is datetime
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("creation_time"):
 	if self.D.has_key("creation_time"):
 	    return self.D["creation_time"]
 	    return self.D["creation_time"]
@@ -536,7 +536,7 @@ class dataset_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_ttype(self):
     def get_ttype(self):
-	"""Get the temporal type of the map
+	"""!Get the temporal type of the map
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("temporal_type"):
 	if self.D.has_key("temporal_type"):
 	    return self.D["temporal_type"]
 	    return self.D["temporal_type"]
@@ -544,7 +544,7 @@ class dataset_base(sql_database_interface):
 	    return None
 	    return None
 
 
 #    def get_mtime(self):
 #    def get_mtime(self):
-#	"""Get the modification time of the map, datatype is datetime
+#	"""!Get the modification time of the map, datatype is datetime
 #	   @return None if not found"""
 #	   @return None if not found"""
 #	if self.D.has_key("modification_time"):
 #	if self.D.has_key("modification_time"):
 #	    return self.D["modification_time"]
 #	    return self.D["modification_time"]
@@ -552,7 +552,7 @@ class dataset_base(sql_database_interface):
 #	    return None
 #	    return None
 
 
 #    def get_revision(self):
 #    def get_revision(self):
-#	"""Get the revision of the map
+#	"""!Get the revision of the map
 #	   @return None if not found"""
 #	   @return None if not found"""
 #	if self.D.has_key("revision"):
 #	if self.D.has_key("revision"):
 #	    return self.D["revision"]
 #	    return self.D["revision"]
@@ -560,7 +560,7 @@ class dataset_base(sql_database_interface):
 #	    return None
 #	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " +-------------------- Basic information -------------------------------------+"
         print " +-------------------- Basic information -------------------------------------+"
         print " | Id: ........................ " + str(self.get_id())
         print " | Id: ........................ " + str(self.get_id())
@@ -575,7 +575,7 @@ class dataset_base(sql_database_interface):
 #        print " | Revision in database: ...... " + str(self.get_revision())
 #        print " | Revision in database: ...... " + str(self.get_revision())
         
         
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         print "id=" + str(self.get_id())
         print "id=" + str(self.get_id())
         print "name=" + str(self.get_name())
         print "name=" + str(self.get_name())
         print "mapset=" + str(self.get_mapset())
         print "mapset=" + str(self.get_mapset())
@@ -630,11 +630,11 @@ class stds_base(dataset_base):
 	self.set_semantic_type(semantic_type)
 	self.set_semantic_type(semantic_type)
 
 
     def set_semantic_type(self, semantic_type):
     def set_semantic_type(self, semantic_type):
-	"""Set the semantic type of the space time dataset"""
+	"""!Set the semantic type of the space time dataset"""
 	self.D["semantic_type"] = semantic_type
 	self.D["semantic_type"] = semantic_type
 
 
     def get_semantic_type(self):
     def get_semantic_type(self):
-	"""Get the semantic type of the space time dataset
+	"""!Get the semantic type of the space time dataset
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("semantic_type"):
 	if self.D.has_key("semantic_type"):
 	    return self.D["semantic_type"]
 	    return self.D["semantic_type"]
@@ -642,13 +642,13 @@ class stds_base(dataset_base):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         dataset_base.print_info(self)
         dataset_base.print_info(self)
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " | Semantic type:.............. " + str(self.get_semantic_type())
         print " | Semantic type:.............. " + str(self.get_semantic_type())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         dataset_base.print_shell_info(self)
         dataset_base.print_shell_info(self)
         print "semantic_type=" + str(self.get_semantic_type())
         print "semantic_type=" + str(self.get_semantic_type())
 
 

+ 1 - 1
lib/python/temporal/core.py

@@ -76,7 +76,7 @@ def get_sql_template_path():
 ###############################################################################
 ###############################################################################
 
 
 def create_temporal_database():
 def create_temporal_database():
-    """This function creates the grass location database structure for raster, vector and raster3d maps
+    """!This function creates the grass location database structure for raster, vector and raster3d maps
        as well as for the space-time datasets strds, str3ds and stvds
        as well as for the space-time datasets strds, str3ds and stvds
 
 
        This functions must be called before any spatio-temporal processing is started
        This functions must be called before any spatio-temporal processing is started

+ 8 - 8
lib/python/temporal/datetime_math.py

@@ -28,7 +28,7 @@ from dateutil import parser
 ###############################################################################
 ###############################################################################
 
 
 def relative_time_to_time_delta(value):
 def relative_time_to_time_delta(value):
-    """Convert the double value representing days
+    """!Convert the double value representing days
        into a timedelta object.
        into a timedelta object.
     """
     """
 
 
@@ -41,7 +41,7 @@ def relative_time_to_time_delta(value):
 ###############################################################################
 ###############################################################################
 
 
 def time_delta_to_relative_time(delta):
 def time_delta_to_relative_time(delta):
-    """Convert the time delta into a
+    """!Convert the time delta into a
        double value, representing days.
        double value, representing days.
     """
     """
 
 
@@ -50,7 +50,7 @@ def time_delta_to_relative_time(delta):
 ###############################################################################
 ###############################################################################
 
 
 def increment_datetime_by_string(mydate, increment, mult = 1):
 def increment_datetime_by_string(mydate, increment, mult = 1):
-    """Return a new datetime object incremented with the provided relative dates specified as string.
+    """!Return a new datetime object incremented with the provided relative dates specified as string.
        Additional a multiplier can be specified to multiply the increment before adding to the provided datetime object.
        Additional a multiplier can be specified to multiply the increment before adding to the provided datetime object.
 
 
        @param mydate A datetime object to incremented
        @param mydate A datetime object to incremented
@@ -103,7 +103,7 @@ def increment_datetime_by_string(mydate, increment, mult = 1):
 ###############################################################################
 ###############################################################################
 
 
 def increment_datetime(mydate, years=0, months=0, weeks=0, days=0, hours=0, minutes=0, seconds=0):
 def increment_datetime(mydate, years=0, months=0, weeks=0, days=0, hours=0, minutes=0, seconds=0):
-    """Return a new datetime object incremented with the provided relative dates and times"""
+    """!Return a new datetime object incremented with the provided relative dates and times"""
 
 
     tdelta_seconds = timedelta(seconds=seconds)
     tdelta_seconds = timedelta(seconds=seconds)
     tdelta_minutes = timedelta(minutes=minutes)
     tdelta_minutes = timedelta(minutes=minutes)
@@ -146,7 +146,7 @@ def increment_datetime(mydate, years=0, months=0, weeks=0, days=0, hours=0, minu
 ###############################################################################
 ###############################################################################
 
 
 def adjust_datetime_to_granularity(mydate, granularity):
 def adjust_datetime_to_granularity(mydate, granularity):
-    """Mofiy the datetime object to fit the given granularity    """
+    """!Mofiy the datetime object to fit the given granularity    """
 
 
     if granularity:
     if granularity:
 
 
@@ -231,7 +231,7 @@ def adjust_datetime_to_granularity(mydate, granularity):
 ###############################################################################
 ###############################################################################
 
 
 def compute_datetime_delta(start, end):
 def compute_datetime_delta(start, end):
-    """Return a dictionary with the accumulated delta in year, month, day, hour, minute and second
+    """!Return a dictionary with the accumulated delta in year, month, day, hour, minute and second
     
     
        @return A dictionary with year, month, day, hour, minute and second as keys()
        @return A dictionary with year, month, day, hour, minute and second as keys()
     """
     """
@@ -319,7 +319,7 @@ def compute_datetime_delta(start, end):
 ###############################################################################
 ###############################################################################
 
 
 def string_to_datetime(time_string):
 def string_to_datetime(time_string):
-    """Convert a string into a datetime object using the dateutil parser. Return None in case of failure"""
+    """!Convert a string into a datetime object using the dateutil parser. Return None in case of failure"""
 
 
     # BC is not supported
     # BC is not supported
     if time_string.find("bc") > 0:
     if time_string.find("bc") > 0:
@@ -335,7 +335,7 @@ def string_to_datetime(time_string):
 ###############################################################################
 ###############################################################################
 
 
 def datetime_to_grass_datetime_string(dt):
 def datetime_to_grass_datetime_string(dt):
-    """Convert a python datetime object into a GRASS datetime string"""
+    """!Convert a python datetime object into a GRASS datetime string"""
 
 
     # GRASS datetime month names
     # GRASS datetime month names
     month_names  = ["", "jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"]
     month_names  = ["", "jan","feb","mar","apr","may","jun","jul","aug","sep","oct","nov","dec"]

+ 80 - 80
lib/python/temporal/metadata.py

@@ -25,7 +25,7 @@ from base import *
 ###############################################################################
 ###############################################################################
 
 
 class raster_metadata_base(sql_database_interface):
 class raster_metadata_base(sql_database_interface):
-    """This is the raster metadata base class for raster and raster3d maps"""
+    """!This is the raster metadata base class for raster and raster3d maps"""
     def __init__(self, table=None, ident=None, datatype=None, cols=None, rows=None, number_of_cells=None, nsres=None, ewres=None, min=None, max=None):
     def __init__(self, table=None, ident=None, datatype=None, cols=None, rows=None, number_of_cells=None, nsres=None, ewres=None, min=None, max=None):
 
 
 	sql_database_interface.__init__(self, table, ident)
 	sql_database_interface.__init__(self, table, ident)
@@ -41,44 +41,44 @@ class raster_metadata_base(sql_database_interface):
 	self.set_max(max)
 	self.set_max(max)
 
 
     def set_id(self, ident):
     def set_id(self, ident):
-	"""Convenient method to set the unique identifier (primary key)"""
+	"""!Convenient method to set the unique identifier (primary key)"""
 	self.ident = ident
 	self.ident = ident
 	self.D["id"] = ident
 	self.D["id"] = ident
 
 
     def set_datatype(self, datatype):
     def set_datatype(self, datatype):
-	"""Set the datatype"""
+	"""!Set the datatype"""
 	self.D["datatype"] = datatype
 	self.D["datatype"] = datatype
 
 
     def set_cols(self, cols):
     def set_cols(self, cols):
-	"""Set the number of cols"""
+	"""!Set the number of cols"""
 	self.D["cols"] = cols
 	self.D["cols"] = cols
 
 
     def set_rows(self, rows):
     def set_rows(self, rows):
-	"""Set the number of rows"""
+	"""!Set the number of rows"""
 	self.D["rows"] = rows
 	self.D["rows"] = rows
 
 
     def set_number_of_cells(self, number_of_cells):
     def set_number_of_cells(self, number_of_cells):
-	"""Set the number of cells"""
+	"""!Set the number of cells"""
 	self.D["number_of_cells"] = number_of_cells
 	self.D["number_of_cells"] = number_of_cells
 
 
     def set_nsres(self, nsres):
     def set_nsres(self, nsres):
-	"""Set the north-south resolution"""
+	"""!Set the north-south resolution"""
 	self.D["nsres"] = nsres
 	self.D["nsres"] = nsres
 
 
     def set_ewres(self, ewres):
     def set_ewres(self, ewres):
-	"""Set the east-west resolution"""
+	"""!Set the east-west resolution"""
 	self.D["ewres"] = ewres
 	self.D["ewres"] = ewres
 
 
     def set_min(self, min):
     def set_min(self, min):
-	"""Set the minimum raster value"""
+	"""!Set the minimum raster value"""
 	self.D["min"] = min
 	self.D["min"] = min
 
 
     def set_max(self, max):
     def set_max(self, max):
-	"""Set the maximum raster value"""
+	"""!Set the maximum raster value"""
 	self.D["max"] = max
 	self.D["max"] = max
 
 
     def get_id(self):
     def get_id(self):
-	"""Convenient method to get the unique identifier (primary key)
+	"""!Convenient method to get the unique identifier (primary key)
 	   @return None if not found
 	   @return None if not found
 	"""
 	"""
 	if self.D.has_key("id"):
 	if self.D.has_key("id"):
@@ -87,7 +87,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_datatype(self):
     def get_datatype(self):
-	"""Get the map type 
+	"""!Get the map type 
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("datatype"):
 	if self.D.has_key("datatype"):
 	    return self.D["datatype"]
 	    return self.D["datatype"]
@@ -95,7 +95,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_cols(self):
     def get_cols(self):
-	"""Get number of cols 
+	"""!Get number of cols 
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("cols"):
 	if self.D.has_key("cols"):
 	    return self.D["cols"]
 	    return self.D["cols"]
@@ -103,7 +103,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_rows(self):
     def get_rows(self):
-	"""Get number of rows
+	"""!Get number of rows
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("rows"):
 	if self.D.has_key("rows"):
 	    return self.D["rows"]
 	    return self.D["rows"]
@@ -111,7 +111,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_number_of_cells(self):
     def get_number_of_cells(self):
-	"""Get number of cells 
+	"""!Get number of cells 
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("number_of_cells"):
 	if self.D.has_key("number_of_cells"):
 	    return self.D["number_of_cells"]
 	    return self.D["number_of_cells"]
@@ -119,7 +119,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_nsres(self):
     def get_nsres(self):
-	"""Get the north-south resolution
+	"""!Get the north-south resolution
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("nsres"):
 	if self.D.has_key("nsres"):
 	    return self.D["nsres"]
 	    return self.D["nsres"]
@@ -127,7 +127,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_ewres(self):
     def get_ewres(self):
-	"""Get east-west resolution
+	"""!Get east-west resolution
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("ewres"):
 	if self.D.has_key("ewres"):
 	    return self.D["ewres"]
 	    return self.D["ewres"]
@@ -135,7 +135,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_min(self):
     def get_min(self):
-	"""Get the minimum cell value 
+	"""!Get the minimum cell value 
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("min"):
 	if self.D.has_key("min"):
 	    return self.D["min"]
 	    return self.D["min"]
@@ -143,7 +143,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_max(self):
     def get_max(self):
-	"""Get the maximum cell value 
+	"""!Get the maximum cell value 
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("max"):
 	if self.D.has_key("max"):
 	    return self.D["max"]
 	    return self.D["max"]
@@ -151,7 +151,7 @@ class raster_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " | Datatype:................... " + str(self.get_datatype())
         print " | Datatype:................... " + str(self.get_datatype())
         print " | Number of columns:.......... " + str(self.get_cols())
         print " | Number of columns:.......... " + str(self.get_cols())
@@ -163,7 +163,7 @@ class raster_metadata_base(sql_database_interface):
         print " | Maximum value:.............. " + str(self.get_max())
         print " | Maximum value:.............. " + str(self.get_max())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         print "datatype=" + str(self.get_datatype())
         print "datatype=" + str(self.get_datatype())
         print "cols=" + str(self.get_cols())
         print "cols=" + str(self.get_cols())
         print "rows=" + str(self.get_rows())
         print "rows=" + str(self.get_rows())
@@ -176,7 +176,7 @@ class raster_metadata_base(sql_database_interface):
 ###############################################################################
 ###############################################################################
 
 
 class raster_metadata(raster_metadata_base):
 class raster_metadata(raster_metadata_base):
-    """This is the raster metadata class"""
+    """!This is the raster metadata class"""
     def __init__(self, ident=None, strds_register=None, datatype=None, cols=None, rows=None, number_of_cells=None, nsres=None, ewres=None, min=None, max=None):
     def __init__(self, ident=None, strds_register=None, datatype=None, cols=None, rows=None, number_of_cells=None, nsres=None, ewres=None, min=None, max=None):
 
 
 	raster_metadata_base.__init__(self, "raster_metadata", ident, datatype, cols, rows, number_of_cells, nsres, ewres, min, max)
 	raster_metadata_base.__init__(self, "raster_metadata", ident, datatype, cols, rows, number_of_cells, nsres, ewres, min, max)
@@ -184,11 +184,11 @@ class raster_metadata(raster_metadata_base):
 	self.set_strds_register(strds_register)
 	self.set_strds_register(strds_register)
 
 
     def set_strds_register(self, strds_register):
     def set_strds_register(self, strds_register):
-	"""Set the space time raster dataset register table name"""
+	"""!Set the space time raster dataset register table name"""
 	self.D["strds_register"] = strds_register
 	self.D["strds_register"] = strds_register
 
 
     def get_strds_register(self):
     def get_strds_register(self):
-	"""Get the space time raster dataset register table name
+	"""!Get the space time raster dataset register table name
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("strds_register"):
 	if self.D.has_key("strds_register"):
 	    return self.D["strds_register"]
 	    return self.D["strds_register"]
@@ -196,21 +196,21 @@ class raster_metadata(raster_metadata_base):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         print " +-------------------- Metadata information ----------------------------------+"
         print " +-------------------- Metadata information ----------------------------------+"
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         raster_metadata_base.print_info(self)
         raster_metadata_base.print_info(self)
         print " | STRDS register table ....... " + str(self.get_strds_register())
         print " | STRDS register table ....... " + str(self.get_strds_register())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         raster_metadata_base.print_shell_info(self)
         raster_metadata_base.print_shell_info(self)
         print "strds_register=" + str(self.get_strds_register())
         print "strds_register=" + str(self.get_strds_register())
 
 
 ###############################################################################
 ###############################################################################
 
 
 class raster3d_metadata(raster_metadata_base):
 class raster3d_metadata(raster_metadata_base):
-    """This is the raster3d metadata class"""
+    """!This is the raster3d metadata class"""
     def __init__(self, ident=None, str3ds_register=None, datatype=None, cols=None, rows=None, depths=None, number_of_cells=None, nsres=None, ewres=None, tbres=None, min=None, max=None):
     def __init__(self, ident=None, str3ds_register=None, datatype=None, cols=None, rows=None, depths=None, number_of_cells=None, nsres=None, ewres=None, tbres=None, min=None, max=None):
 
 
 	raster_metadata_base.__init__(self, "raster3d_metadata", ident, datatype, cols, rows, number_of_cells, nsres, ewres, min, max)
 	raster_metadata_base.__init__(self, "raster3d_metadata", ident, datatype, cols, rows, number_of_cells, nsres, ewres, min, max)
@@ -220,19 +220,19 @@ class raster3d_metadata(raster_metadata_base):
 	self.set_depths(depths)
 	self.set_depths(depths)
 
 
     def set_str3ds_register(self, str3ds_register):
     def set_str3ds_register(self, str3ds_register):
-	"""Set the space time raster3d dataset register table name"""
+	"""!Set the space time raster3d dataset register table name"""
 	self.D["str3ds_register"] = str3ds_register
 	self.D["str3ds_register"] = str3ds_register
 
 
     def set_depths(self, depths):
     def set_depths(self, depths):
-	"""Set the number of depths"""
+	"""!Set the number of depths"""
 	self.D["depths"] = depths
 	self.D["depths"] = depths
 
 
     def set_tbres(self, tbres):
     def set_tbres(self, tbres):
-	"""Set the top-bottom resolution"""
+	"""!Set the top-bottom resolution"""
 	self.D["tbres"] = tbres
 	self.D["tbres"] = tbres
 
 
     def get_str3ds_register(self):
     def get_str3ds_register(self):
-	"""Get the space time raster3d dataset register table name
+	"""!Get the space time raster3d dataset register table name
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("str3ds_register"):
 	if self.D.has_key("str3ds_register"):
 	    return self.D["str3ds_register"]
 	    return self.D["str3ds_register"]
@@ -240,7 +240,7 @@ class raster3d_metadata(raster_metadata_base):
 	    return None
 	    return None
 
 
     def get_depths(self):
     def get_depths(self):
-	"""Get number of depths
+	"""!Get number of depths
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("depths"):
 	if self.D.has_key("depths"):
 	    return self.D["depths"]
 	    return self.D["depths"]
@@ -248,7 +248,7 @@ class raster3d_metadata(raster_metadata_base):
 	    return None
 	    return None
 
 
     def get_tbres(self):
     def get_tbres(self):
-	"""Get top-bottom resolution
+	"""!Get top-bottom resolution
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("tbres"):
 	if self.D.has_key("tbres"):
 	    return self.D["tbres"]
 	    return self.D["tbres"]
@@ -256,7 +256,7 @@ class raster3d_metadata(raster_metadata_base):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         print " +-------------------- Metadata information ----------------------------------+"
         print " +-------------------- Metadata information ----------------------------------+"
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         raster_metadata_base.print_info(self)
         raster_metadata_base.print_info(self)
@@ -266,7 +266,7 @@ class raster3d_metadata(raster_metadata_base):
         print " | STR3DS register table ...... " + str(self.get_str3ds_register())
         print " | STR3DS register table ...... " + str(self.get_str3ds_register())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         print "str3ds_register=" + str(self.get_str3ds_register())
         print "str3ds_register=" + str(self.get_str3ds_register())
         print "depths=" + str(self.get_depths())
         print "depths=" + str(self.get_depths())
         print "tbres=" + str(self.get_tbres())
         print "tbres=" + str(self.get_tbres())
@@ -275,7 +275,7 @@ class raster3d_metadata(raster_metadata_base):
 ###############################################################################
 ###############################################################################
 
 
 class vector_metadata(sql_database_interface):
 class vector_metadata(sql_database_interface):
-    """This is the vector metadata class"""
+    """!This is the vector metadata class"""
     def __init__(self, ident=None, stvds_register=None):
     def __init__(self, ident=None, stvds_register=None):
 
 
 	sql_database_interface.__init__(self, "vector_metadata", ident)
 	sql_database_interface.__init__(self, "vector_metadata", ident)
@@ -284,16 +284,16 @@ class vector_metadata(sql_database_interface):
 	self.set_stvds_register(stvds_register)
 	self.set_stvds_register(stvds_register)
 
 
     def set_id(self, ident):
     def set_id(self, ident):
-	"""Convenient method to set the unique identifier (primary key)"""
+	"""!Convenient method to set the unique identifier (primary key)"""
 	self.ident = ident
 	self.ident = ident
 	self.D["id"] = ident
 	self.D["id"] = ident
 
 
     def set_stvds_register(self, stvds_register):
     def set_stvds_register(self, stvds_register):
-	"""Set the space time vector dataset register table name"""
+	"""!Set the space time vector dataset register table name"""
 	self.D["stvds_register"] = stvds_register
 	self.D["stvds_register"] = stvds_register
 
 
     def get_id(self):
     def get_id(self):
-	"""Convenient method to get the unique identifier (primary key)
+	"""!Convenient method to get the unique identifier (primary key)
 	   @return None if not found
 	   @return None if not found
 	"""
 	"""
 	if self.D.has_key("id"):
 	if self.D.has_key("id"):
@@ -302,7 +302,7 @@ class vector_metadata(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_stvds_register(self):
     def get_stvds_register(self):
-	"""Get the space time vector dataset register table name
+	"""!Get the space time vector dataset register table name
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("stvds_register"):
 	if self.D.has_key("stvds_register"):
 	    return self.D["stvds_register"]
 	    return self.D["stvds_register"]
@@ -311,19 +311,19 @@ class vector_metadata(sql_database_interface):
 
 
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " +-------------------- Metadata information ----------------------------------+"
         print " +-------------------- Metadata information ----------------------------------+"
         print " | STVDS register table ....... " + str(self.get_stvds_register())
         print " | STVDS register table ....... " + str(self.get_stvds_register())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         print "stvds_register=" + str(self.get_stvds_register())
         print "stvds_register=" + str(self.get_stvds_register())
 
 
 ###############################################################################
 ###############################################################################
 
 
 class stds_metadata_base(sql_database_interface):
 class stds_metadata_base(sql_database_interface):
-    """This is the space time dataset metadata base class for strds, stvds and str3ds datasets
+    """!This is the space time dataset metadata base class for strds, stvds and str3ds datasets
        setting/getting the id, the title and the description
        setting/getting the id, the title and the description
     """
     """
     def __init__(self, table=None, ident=None, title=None, description=None):
     def __init__(self, table=None, ident=None, title=None, description=None):
@@ -337,20 +337,20 @@ class stds_metadata_base(sql_database_interface):
         self.D["number_of_maps"] = None
         self.D["number_of_maps"] = None
 
 
     def set_id(self, ident):
     def set_id(self, ident):
-	"""Convenient method to set the unique identifier (primary key)"""
+	"""!Convenient method to set the unique identifier (primary key)"""
 	self.ident = ident
 	self.ident = ident
 	self.D["id"] = ident
 	self.D["id"] = ident
 
 
     def set_title(self, title):
     def set_title(self, title):
-	"""Set the title"""
+	"""!Set the title"""
 	self.D["title"] = title
 	self.D["title"] = title
 
 
     def set_description(self, description):
     def set_description(self, description):
-	"""Set the number of cols"""
+	"""!Set the number of cols"""
 	self.D["description"] = description
 	self.D["description"] = description
 
 
     def get_id(self):
     def get_id(self):
-	"""Convenient method to get the unique identifier (primary key)
+	"""!Convenient method to get the unique identifier (primary key)
 	   @return None if not found
 	   @return None if not found
 	"""
 	"""
 	if self.D.has_key("id"):
 	if self.D.has_key("id"):
@@ -359,7 +359,7 @@ class stds_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_title(self):
     def get_title(self):
-	"""Get the title 
+	"""!Get the title 
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("title"):
 	if self.D.has_key("title"):
 	    return self.D["title"]
 	    return self.D["title"]
@@ -367,7 +367,7 @@ class stds_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_description(self):
     def get_description(self):
-	"""Get description 
+	"""!Get description 
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("description"):
 	if self.D.has_key("description"):
 	    return self.D["description"]
 	    return self.D["description"]
@@ -375,7 +375,7 @@ class stds_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_number_of_maps(self):
     def get_number_of_maps(self):
-	"""Get the number of registered maps, this value is set in the database
+	"""!Get the number of registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("number_of_maps"):
 	if self.D.has_key("number_of_maps"):
@@ -384,7 +384,7 @@ class stds_metadata_base(sql_database_interface):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " | Number of registered maps:.. " + str(self.get_number_of_maps())
         print " | Number of registered maps:.. " + str(self.get_number_of_maps())
         print " | Title:"
         print " | Title:"
@@ -393,13 +393,13 @@ class stds_metadata_base(sql_database_interface):
         print " | " + str(self.get_description())
         print " | " + str(self.get_description())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         print "number_of_maps=" + str(self.get_number_of_maps())
         print "number_of_maps=" + str(self.get_number_of_maps())
 
 
 ###############################################################################
 ###############################################################################
     
     
 class stds_raster_metadata_base(stds_metadata_base):
 class stds_raster_metadata_base(stds_metadata_base):
-    """This is the space time dataset metadata base class for strds and str3ds datasets
+    """!This is the space time dataset metadata base class for strds and str3ds datasets
        
        
        Most of the metadata values are set by triggers in the database when 
        Most of the metadata values are set by triggers in the database when 
        new raster of voxel maps are added. Therefor only some set- an many get-functions 
        new raster of voxel maps are added. Therefor only some set- an many get-functions 
@@ -420,7 +420,7 @@ class stds_raster_metadata_base(stds_metadata_base):
         self.D["ewres_max"] = None
         self.D["ewres_max"] = None
 
 
     def get_max_min(self):
     def get_max_min(self):
-	"""Get the minimal maximum of all registered maps, this value is set in the database
+	"""!Get the minimal maximum of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("max_min"):
 	if self.D.has_key("max_min"):
@@ -429,7 +429,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 	    return None
 	    return None
 
 
     def get_min_min(self):
     def get_min_min(self):
-	"""Get the minimal minimum of all registered maps, this value is set in the database
+	"""!Get the minimal minimum of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("min_min"):
 	if self.D.has_key("min_min"):
@@ -438,7 +438,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 	    return None
 	    return None
 
 
     def get_max_max(self):
     def get_max_max(self):
-	"""Get the maximal maximum of all registered maps, this value is set in the database
+	"""!Get the maximal maximum of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("max_max"):
 	if self.D.has_key("max_max"):
@@ -447,7 +447,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 	    return None
 	    return None
 
 
     def get_min_max(self):
     def get_min_max(self):
-	"""Get the maximal minimum of all registered maps, this value is set in the database
+	"""!Get the maximal minimum of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("min_max"):
 	if self.D.has_key("min_max"):
@@ -456,7 +456,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 	    return None
 	    return None
 
 
     def get_nsres_min(self):
     def get_nsres_min(self):
-	"""Get the minimal north-south resolution of all registered maps, this value is set in the database
+	"""!Get the minimal north-south resolution of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("nsres_min"):
 	if self.D.has_key("nsres_min"):
@@ -465,7 +465,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 	    return None
 	    return None
 
 
     def get_nsres_max(self):
     def get_nsres_max(self):
-	"""Get the maximal north-south resolution of all registered maps, this value is set in the database
+	"""!Get the maximal north-south resolution of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("nsres_max"):
 	if self.D.has_key("nsres_max"):
@@ -474,7 +474,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 	    return None
 	    return None
 
 
     def get_ewres_min(self):
     def get_ewres_min(self):
-	"""Get the minimal east-west resolution of all registered maps, this value is set in the database
+	"""!Get the minimal east-west resolution of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("ewres_min"):
 	if self.D.has_key("ewres_min"):
@@ -483,7 +483,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 	    return None
 	    return None
 
 
     def get_ewres_max(self):
     def get_ewres_max(self):
-	"""Get the maximal east-west resolution of all registered maps, this value is set in the database
+	"""!Get the maximal east-west resolution of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("ewres_max"):
 	if self.D.has_key("ewres_max"):
@@ -492,7 +492,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         stds_metadata_base.print_info(self)
         stds_metadata_base.print_info(self)
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " | North-South resolution min:. " + str(self.get_nsres_min())
         print " | North-South resolution min:. " + str(self.get_nsres_min())
@@ -505,7 +505,7 @@ class stds_raster_metadata_base(stds_metadata_base):
         print " | Maximum value max:.......... " + str(self.get_max_max())
         print " | Maximum value max:.......... " + str(self.get_max_max())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         stds_metadata_base.print_shell_info(self)
         stds_metadata_base.print_shell_info(self)
         print "nsres_min=" + str(self.get_nsres_min())
         print "nsres_min=" + str(self.get_nsres_min())
         print "nsres_max=" + str(self.get_nsres_max())
         print "nsres_max=" + str(self.get_nsres_max())
@@ -520,7 +520,7 @@ class stds_raster_metadata_base(stds_metadata_base):
 ###############################################################################
 ###############################################################################
 
 
 class strds_metadata(stds_raster_metadata_base):
 class strds_metadata(stds_raster_metadata_base):
-    """This is the raster metadata class"""
+    """!This is the raster metadata class"""
     def __init__(self, ident=None, raster_register=None,  title=None, description=None):
     def __init__(self, ident=None, raster_register=None,  title=None, description=None):
 
 
 	stds_raster_metadata_base.__init__(self, "strds_metadata", ident, title, description)
 	stds_raster_metadata_base.__init__(self, "strds_metadata", ident, title, description)
@@ -528,11 +528,11 @@ class strds_metadata(stds_raster_metadata_base):
 	self.set_raster_register(raster_register)
 	self.set_raster_register(raster_register)
 
 
     def set_raster_register(self, raster_register):
     def set_raster_register(self, raster_register):
-	"""Set the raster map register table name"""
+	"""!Set the raster map register table name"""
 	self.D["raster_register"] = raster_register
 	self.D["raster_register"] = raster_register
 
 
     def get_raster_register(self):
     def get_raster_register(self):
-	"""Get the raster map register table name
+	"""!Get the raster map register table name
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("raster_register"):
 	if self.D.has_key("raster_register"):
 	    return self.D["raster_register"]
 	    return self.D["raster_register"]
@@ -540,21 +540,21 @@ class strds_metadata(stds_raster_metadata_base):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         print " +-------------------- Metadata information ----------------------------------+"
         print " +-------------------- Metadata information ----------------------------------+"
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         stds_raster_metadata_base.print_info(self)
         stds_raster_metadata_base.print_info(self)
         print " | Raster register table:...... " + str(self.get_raster_register())
         print " | Raster register table:...... " + str(self.get_raster_register())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         stds_raster_metadata_base.print_shell_info(self)
         stds_raster_metadata_base.print_shell_info(self)
         print "raster_register=" + str(self.get_raster_register())
         print "raster_register=" + str(self.get_raster_register())
 
 
 ###############################################################################
 ###############################################################################
 
 
 class str3ds_metadata(stds_raster_metadata_base):
 class str3ds_metadata(stds_raster_metadata_base):
-    """This is the space time raster3d metadata class"""
+    """!This is the space time raster3d metadata class"""
     def __init__(self, ident=None, raster3d_register=None,  title=None, description=None):
     def __init__(self, ident=None, raster3d_register=None,  title=None, description=None):
 
 
 	stds_raster_metadata_base.__init__(self, "str3ds_metadata", ident, title, description)
 	stds_raster_metadata_base.__init__(self, "str3ds_metadata", ident, title, description)
@@ -564,11 +564,11 @@ class str3ds_metadata(stds_raster_metadata_base):
         self.D["tbres_max"] = None
         self.D["tbres_max"] = None
 
 
     def set_raster3d_register(self, raster3d_register):
     def set_raster3d_register(self, raster3d_register):
-	"""Set the raster map register table name"""
+	"""!Set the raster map register table name"""
 	self.D["raster3d_register"] = raster3d_register
 	self.D["raster3d_register"] = raster3d_register
 
 
     def get_raster3d_register(self):
     def get_raster3d_register(self):
-	"""Get the raster3d map register table name
+	"""!Get the raster3d map register table name
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("raster3d_register"):
 	if self.D.has_key("raster3d_register"):
 	    return self.D["raster3d_register"]
 	    return self.D["raster3d_register"]
@@ -576,7 +576,7 @@ class str3ds_metadata(stds_raster_metadata_base):
 	    return None
 	    return None
 
 
     def get_tbres_min(self):
     def get_tbres_min(self):
-	"""Get the minimal top-bottom resolution of all registered maps, this value is set in the database
+	"""!Get the minimal top-bottom resolution of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("tbres_min"):
 	if self.D.has_key("tbres_min"):
@@ -585,7 +585,7 @@ class str3ds_metadata(stds_raster_metadata_base):
 	    return None
 	    return None
 
 
     def get_tbres_max(self):
     def get_tbres_max(self):
-	"""Get the maximal top-bottom resolution of all registered maps, this value is set in the database
+	"""!Get the maximal top-bottom resolution of all registered maps, this value is set in the database
            automatically via SQL trigger, so no setter exists
            automatically via SQL trigger, so no setter exists
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("tbres_max"):
 	if self.D.has_key("tbres_max"):
@@ -594,7 +594,7 @@ class str3ds_metadata(stds_raster_metadata_base):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         print " +-------------------- Metadata information ----------------------------------+"
         print " +-------------------- Metadata information ----------------------------------+"
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         stds_raster_metadata_base.print_info(self)
         stds_raster_metadata_base.print_info(self)
@@ -604,7 +604,7 @@ class str3ds_metadata(stds_raster_metadata_base):
         print " | Raster3d register table:.... " + str(self.get_raster3d_register())
         print " | Raster3d register table:.... " + str(self.get_raster3d_register())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         stds_raster_metadata_base.print_shell_info(self)
         stds_raster_metadata_base.print_shell_info(self)
         print "tbres_min=" + str(self.get_tbres_min())
         print "tbres_min=" + str(self.get_tbres_min())
         print "tbres_max=" + str(self.get_tbres_max())
         print "tbres_max=" + str(self.get_tbres_max())
@@ -613,7 +613,7 @@ class str3ds_metadata(stds_raster_metadata_base):
 ###############################################################################
 ###############################################################################
 
 
 class stvds_metadata(stds_metadata_base):
 class stvds_metadata(stds_metadata_base):
-    """This is the raster metadata class"""
+    """!This is the raster metadata class"""
     def __init__(self, ident=None, vector_register=None,  title=None, description=None):
     def __init__(self, ident=None, vector_register=None,  title=None, description=None):
 
 
 	stds_metadata_base.__init__(self, "stvds_metadata", ident, title, description)
 	stds_metadata_base.__init__(self, "stvds_metadata", ident, title, description)
@@ -621,11 +621,11 @@ class stvds_metadata(stds_metadata_base):
 	self.set_vector_register(vector_register)
 	self.set_vector_register(vector_register)
 
 
     def set_vector_register(self, vector_register):
     def set_vector_register(self, vector_register):
-	"""Set the vector map register table name"""
+	"""!Set the vector map register table name"""
 	self.D["vector_register"] = vector_register
 	self.D["vector_register"] = vector_register
 
 
     def get_vector_register(self):
     def get_vector_register(self):
-	"""Get the vector map register table name
+	"""!Get the vector map register table name
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("vector_register"):
 	if self.D.has_key("vector_register"):
 	    return self.D["vector_register"]
 	    return self.D["vector_register"]
@@ -633,14 +633,14 @@ class stvds_metadata(stds_metadata_base):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         print " +-------------------- Metadata information ----------------------------------+"
         print " +-------------------- Metadata information ----------------------------------+"
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         stds_metadata_base.print_info(self)
         stds_metadata_base.print_info(self)
         print " | Vector register table:...... " + str(self.get_vector_register())
         print " | Vector register table:...... " + str(self.get_vector_register())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         stds_metadata_base.print_shell_info(self)
         stds_metadata_base.print_shell_info(self)
         print "vector_register=" + str(self.get_vector_register())
         print "vector_register=" + str(self.get_vector_register())
 
 

+ 49 - 49
lib/python/temporal/space_time_datasets.py

@@ -33,7 +33,7 @@ from abstract_space_time_dataset import *
 ###############################################################################
 ###############################################################################
 
 
 class raster_dataset(abstract_map_dataset):
 class raster_dataset(abstract_map_dataset):
-    """Raster dataset class
+    """!Raster dataset class
 
 
        This class provides functions to select, update, insert or delete raster
        This class provides functions to select, update, insert or delete raster
        map information and valid time stamps into the SQL temporal database.
        map information and valid time stamps into the SQL temporal database.
@@ -45,27 +45,27 @@ class raster_dataset(abstract_map_dataset):
         return "raster"
         return "raster"
 
 
     def get_new_instance(self, ident):
     def get_new_instance(self, ident):
-        """Return a new instance with the type of this class"""
+        """!Return a new instance with the type of this class"""
         return raster_dataset(ident)
         return raster_dataset(ident)
 
 
     def get_new_stds_instance(self, ident):
     def get_new_stds_instance(self, ident):
-        """Return a new space time dataset instance in which maps are stored with the type of this class"""
+        """!Return a new space time dataset instance in which maps are stored with the type of this class"""
         return space_time_raster_dataset(ident)
         return space_time_raster_dataset(ident)
 
 
     def get_stds_register(self):
     def get_stds_register(self):
-        """Return the space time dataset register table name in which stds are listed in which this map is registered"""
+        """!Return the space time dataset register table name in which stds are listed in which this map is registered"""
         return self.metadata.get_strds_register()
         return self.metadata.get_strds_register()
 
 
     def set_stds_register(self, name):
     def set_stds_register(self, name):
-        """Set the space time dataset register table name in which stds are listed in which this map is registered"""
+        """!Set the space time dataset register table name in which stds are listed in which this map is registered"""
         self.metadata.set_strds_register(name)
         self.metadata.set_strds_register(name)
  
  
     def get_timestamp_module_name(self):
     def get_timestamp_module_name(self):
-        """Return the name of the C-module to set the time stamp in the file system"""
+        """!Return the name of the C-module to set the time stamp in the file system"""
         return "r.timestamp"
         return "r.timestamp"
 
 
     def spatial_overlapping(self, dataset):
     def spatial_overlapping(self, dataset):
-        """Return True if the spatial extents 2d overlap"""
+        """!Return True if the spatial extents 2d overlap"""
         
         
         return self.spatial_extent.overlapping_2d(dataset.spatial_extent)
         return self.spatial_extent.overlapping_2d(dataset.spatial_extent)
 
 
@@ -75,7 +75,7 @@ class raster_dataset(abstract_map_dataset):
         return self.spatial_extent.spatial_relation_2d(dataset.spatial_extent)
         return self.spatial_extent.spatial_relation_2d(dataset.spatial_extent)
 	
 	
     def reset(self, ident):
     def reset(self, ident):
-	"""Reset the internal structure and set the identifier"""
+	"""!Reset the internal structure and set the identifier"""
 	self.ident = ident
 	self.ident = ident
 
 
 	self.base = raster_base(ident=ident)
 	self.base = raster_base(ident=ident)
@@ -85,7 +85,7 @@ class raster_dataset(abstract_map_dataset):
 	self.metadata = raster_metadata(ident=ident)
 	self.metadata = raster_metadata(ident=ident)
 
 
     def load(self):
     def load(self):
-        """Load all info from an existing raster map into the internal structure"""
+        """!Load all info from an existing raster map into the internal structure"""
 
 
         # Get the data from an existing raster map
         # Get the data from an existing raster map
         kvp = raster.raster_info(self.get_map_id())
         kvp = raster.raster_info(self.get_map_id())
@@ -121,7 +121,7 @@ class raster_dataset(abstract_map_dataset):
 ###############################################################################
 ###############################################################################
 
 
 class raster3d_dataset(abstract_map_dataset):
 class raster3d_dataset(abstract_map_dataset):
-    """Raster3d dataset class
+    """!Raster3d dataset class
 
 
        This class provides functions to select, update, insert or delete raster3d
        This class provides functions to select, update, insert or delete raster3d
        map information and valid time stamps into the SQL temporal database.
        map information and valid time stamps into the SQL temporal database.
@@ -133,27 +133,27 @@ class raster3d_dataset(abstract_map_dataset):
         return "raster3d"
         return "raster3d"
 
 
     def get_new_instance(self, ident):
     def get_new_instance(self, ident):
-        """Return a new instance with the type of this class"""
+        """!Return a new instance with the type of this class"""
         return raster3d_dataset(ident)
         return raster3d_dataset(ident)
 
 
     def get_new_stds_instance(self, ident):
     def get_new_stds_instance(self, ident):
-        """Return a new space time dataset instance in which maps are stored with the type of this class"""
+        """!Return a new space time dataset instance in which maps are stored with the type of this class"""
         return space_time_raster3d_dataset(ident)
         return space_time_raster3d_dataset(ident)
 
 
     def get_stds_register(self):
     def get_stds_register(self):
-        """Return the space time dataset register table name in which stds are listed in which this map is registered"""
+        """!Return the space time dataset register table name in which stds are listed in which this map is registered"""
         return self.metadata.get_str3ds_register()
         return self.metadata.get_str3ds_register()
 
 
     def set_stds_register(self, name):
     def set_stds_register(self, name):
-        """Set the space time dataset register table name in which stds are listed in which this map is registered"""
+        """!Set the space time dataset register table name in which stds are listed in which this map is registered"""
         self.metadata.set_str3ds_register(name)
         self.metadata.set_str3ds_register(name)
  
  
     def get_timestamp_module_name(self):
     def get_timestamp_module_name(self):
-        """Return the name of the C-module to set the time stamp in the file system"""
+        """!Return the name of the C-module to set the time stamp in the file system"""
         return "r3.timestamp"
         return "r3.timestamp"
 
 
     def spatial_overlapping(self, dataset):
     def spatial_overlapping(self, dataset):
-        """Return True if the spatial extents overlap"""
+        """!Return True if the spatial extents overlap"""
         
         
         if self.get_type() == dataset.get_type() or dataset.get_type() == "str3ds":
         if self.get_type() == dataset.get_type() or dataset.get_type() == "str3ds":
             return self.spatial_extent.overlapping(dataset.spatial_extent)
             return self.spatial_extent.overlapping(dataset.spatial_extent)
@@ -169,7 +169,7 @@ class raster3d_dataset(abstract_map_dataset):
             return self.spatial_extent.spatial_relation_2d(dataset.spatial_extent)
             return self.spatial_extent.spatial_relation_2d(dataset.spatial_extent)
         
         
     def reset(self, ident):
     def reset(self, ident):
-	"""Reset the internal structure and set the identifier"""
+	"""!Reset the internal structure and set the identifier"""
 	self.ident = ident
 	self.ident = ident
 
 
 	self.base = raster3d_base(ident=ident)
 	self.base = raster3d_base(ident=ident)
@@ -179,7 +179,7 @@ class raster3d_dataset(abstract_map_dataset):
 	self.metadata = raster3d_metadata(ident=ident)
 	self.metadata = raster3d_metadata(ident=ident)
 
 
     def load(self):
     def load(self):
-        """Load all info from an existing raster3d map into the internal structure"""
+        """!Load all info from an existing raster3d map into the internal structure"""
 
 
         # Get the data from an existing raster map
         # Get the data from an existing raster map
         kvp = raster3d.raster3d_info(self.get_map_id())
         kvp = raster3d.raster3d_info(self.get_map_id())
@@ -219,7 +219,7 @@ class raster3d_dataset(abstract_map_dataset):
 ###############################################################################
 ###############################################################################
 
 
 class vector_dataset(abstract_map_dataset):
 class vector_dataset(abstract_map_dataset):
-    """Vector dataset class
+    """!Vector dataset class
 
 
        This class provides functions to select, update, insert or delete vector
        This class provides functions to select, update, insert or delete vector
        map information and valid time stamps into the SQL temporal database.
        map information and valid time stamps into the SQL temporal database.
@@ -231,31 +231,31 @@ class vector_dataset(abstract_map_dataset):
         return "vector"
         return "vector"
 
 
     def get_new_instance(self, ident):
     def get_new_instance(self, ident):
-        """Return a new instance with the type of this class"""
+        """!Return a new instance with the type of this class"""
         return vector_dataset(ident)
         return vector_dataset(ident)
 
 
     def get_new_stds_instance(self, ident):
     def get_new_stds_instance(self, ident):
-        """Return a new space time dataset instance in which maps are stored with the type of this class"""
+        """!Return a new space time dataset instance in which maps are stored with the type of this class"""
         return space_time_vector_dataset(ident)
         return space_time_vector_dataset(ident)
 
 
     def get_stds_register(self):
     def get_stds_register(self):
-        """Return the space time dataset register table name in which stds are listed in which this map is registered"""
+        """!Return the space time dataset register table name in which stds are listed in which this map is registered"""
         return self.metadata.get_stvds_register()
         return self.metadata.get_stvds_register()
 
 
     def set_stds_register(self, name):
     def set_stds_register(self, name):
-        """Set the space time dataset register table name in which stds are listed in which this map is registered"""
+        """!Set the space time dataset register table name in which stds are listed in which this map is registered"""
         self.metadata.set_stvds_register(name)
         self.metadata.set_stvds_register(name)
  
  
     def get_timestamp_module_name(self):
     def get_timestamp_module_name(self):
-        """Return the name of the C-module to set the time stamp in the file system"""
+        """!Return the name of the C-module to set the time stamp in the file system"""
         return "v.timestamp"
         return "v.timestamp"
 
 
     def get_layer(self):
     def get_layer(self):
-        """Return the layer"""
+        """!Return the layer"""
         return self.base.get_layer()
         return self.base.get_layer()
 
 
     def spatial_overlapping(self, dataset):
     def spatial_overlapping(self, dataset):
-        """Return True if the spatial extents 2d overlap"""
+        """!Return True if the spatial extents 2d overlap"""
         
         
         return self.spatial_extent.overlapping_2d(dataset.spatial_extent)
         return self.spatial_extent.overlapping_2d(dataset.spatial_extent)
 
 
@@ -266,7 +266,7 @@ class vector_dataset(abstract_map_dataset):
 	
 	
 
 
     def reset(self, ident):
     def reset(self, ident):
-	"""Reset the internal structure and set the identifier"""
+	"""!Reset the internal structure and set the identifier"""
 	self.ident = ident
 	self.ident = ident
 
 
 	self.base = vector_base(ident=ident)
 	self.base = vector_base(ident=ident)
@@ -276,7 +276,7 @@ class vector_dataset(abstract_map_dataset):
 	self.metadata = vector_metadata(ident=ident)
 	self.metadata = vector_metadata(ident=ident)
 
 
     def load(self):
     def load(self):
-        """Load all info from an existing vector map into the internal structure"""
+        """!Load all info from an existing vector map into the internal structure"""
 
 
         # Get the data from an existing raster map
         # Get the data from an existing raster map
         kvp = vector.vector_info(self.get_map_id())
         kvp = vector.vector_info(self.get_map_id())
@@ -301,7 +301,7 @@ class vector_dataset(abstract_map_dataset):
 ###############################################################################
 ###############################################################################
 
 
 class space_time_raster_dataset(abstract_space_time_dataset):
 class space_time_raster_dataset(abstract_space_time_dataset):
-    """Space time raster dataset class
+    """!Space time raster dataset class
     """
     """
     def __init__(self, ident):
     def __init__(self, ident):
         abstract_space_time_dataset.__init__(self, ident)
         abstract_space_time_dataset.__init__(self, ident)
@@ -310,23 +310,23 @@ class space_time_raster_dataset(abstract_space_time_dataset):
         return "strds"
         return "strds"
 
 
     def get_new_instance(self, ident):
     def get_new_instance(self, ident):
-        """Return a new instance with the type of this class"""
+        """!Return a new instance with the type of this class"""
         return space_time_raster_dataset(ident)
         return space_time_raster_dataset(ident)
 
 
     def get_new_map_instance(self, ident):
     def get_new_map_instance(self, ident):
-        """Return a new instance of a map dataset which is associated with the type of this class"""
+        """!Return a new instance of a map dataset which is associated with the type of this class"""
         return raster_dataset(ident)
         return raster_dataset(ident)
 
 
     def get_map_register(self):
     def get_map_register(self):
-        """Return the name of the map register table"""
+        """!Return the name of the map register table"""
         return self.metadata.get_raster_register()
         return self.metadata.get_raster_register()
 
 
     def set_map_register(self, name):
     def set_map_register(self, name):
-        """Set the name of the map register table"""
+        """!Set the name of the map register table"""
         self.metadata.set_raster_register(name)
         self.metadata.set_raster_register(name)
 
 
     def spatial_overlapping(self, dataset):
     def spatial_overlapping(self, dataset):
-        """Return True if the spatial extents 2d overlap"""
+        """!Return True if the spatial extents 2d overlap"""
         
         
         return self.spatial_extent.overlapping_2d(dataset.spatial_extent)
         return self.spatial_extent.overlapping_2d(dataset.spatial_extent)
 
 
@@ -337,7 +337,7 @@ class space_time_raster_dataset(abstract_space_time_dataset):
 	
 	
     def reset(self, ident):
     def reset(self, ident):
 
 
-	"""Reset the internal structure and set the identifier"""
+	"""!Reset the internal structure and set the identifier"""
 	self.ident = ident
 	self.ident = ident
 
 
 	self.base = strds_base(ident=ident)
 	self.base = strds_base(ident=ident)
@@ -354,7 +354,7 @@ class space_time_raster_dataset(abstract_space_time_dataset):
 ###############################################################################
 ###############################################################################
 
 
 class space_time_raster3d_dataset(abstract_space_time_dataset):
 class space_time_raster3d_dataset(abstract_space_time_dataset):
-    """Space time raster3d dataset class
+    """!Space time raster3d dataset class
     """
     """
 
 
     def __init__(self, ident):
     def __init__(self, ident):
@@ -364,23 +364,23 @@ class space_time_raster3d_dataset(abstract_space_time_dataset):
         return "str3ds"
         return "str3ds"
 
 
     def get_new_instance(self, ident):
     def get_new_instance(self, ident):
-        """Return a new instance with the type of this class"""
+        """!Return a new instance with the type of this class"""
         return space_time_raster3d_dataset(ident)
         return space_time_raster3d_dataset(ident)
 
 
     def get_new_map_instance(self, ident):
     def get_new_map_instance(self, ident):
-        """Return a new instance of a map dataset which is associated with the type of this class"""
+        """!Return a new instance of a map dataset which is associated with the type of this class"""
         return raster3d_dataset(ident)
         return raster3d_dataset(ident)
 
 
     def get_map_register(self):
     def get_map_register(self):
-        """Return the name of the map register table"""
+        """!Return the name of the map register table"""
         return self.metadata.get_raster3d_register()
         return self.metadata.get_raster3d_register()
 
 
     def set_map_register(self, name):
     def set_map_register(self, name):
-        """Set the name of the map register table"""
+        """!Set the name of the map register table"""
         self.metadata.set_raster3d_register(name)
         self.metadata.set_raster3d_register(name)
 
 
     def spatial_overlapping(self, dataset):
     def spatial_overlapping(self, dataset):
-        """Return True if the spatial extents overlap"""
+        """!Return True if the spatial extents overlap"""
         
         
         if self.get_type() == dataset.get_type() or dataset.get_type() == "str3ds":
         if self.get_type() == dataset.get_type() or dataset.get_type() == "str3ds":
             return self.spatial_extent.overlapping(dataset.spatial_extent)
             return self.spatial_extent.overlapping(dataset.spatial_extent)
@@ -397,7 +397,7 @@ class space_time_raster3d_dataset(abstract_space_time_dataset):
         
         
     def reset(self, ident):
     def reset(self, ident):
 
 
-	"""Reset the internal structure and set the identifier"""
+	"""!Reset the internal structure and set the identifier"""
 	self.ident = ident
 	self.ident = ident
 
 
 	self.base = str3ds_base(ident=ident)
 	self.base = str3ds_base(ident=ident)
@@ -414,7 +414,7 @@ class space_time_raster3d_dataset(abstract_space_time_dataset):
 ###############################################################################
 ###############################################################################
 
 
 class space_time_vector_dataset(abstract_space_time_dataset):
 class space_time_vector_dataset(abstract_space_time_dataset):
-    """Space time vector dataset class
+    """!Space time vector dataset class
     """
     """
 
 
     def __init__(self, ident):
     def __init__(self, ident):
@@ -424,23 +424,23 @@ class space_time_vector_dataset(abstract_space_time_dataset):
         return "stvds"
         return "stvds"
 
 
     def get_new_instance(self, ident):
     def get_new_instance(self, ident):
-        """Return a new instance with the type of this class"""
+        """!Return a new instance with the type of this class"""
         return space_time_vector_dataset(ident)
         return space_time_vector_dataset(ident)
 
 
     def get_new_map_instance(self, ident):
     def get_new_map_instance(self, ident):
-        """Return a new instance of a map dataset which is associated with the type of this class"""
+        """!Return a new instance of a map dataset which is associated with the type of this class"""
         return vector_dataset(ident)
         return vector_dataset(ident)
 
 
     def get_map_register(self):
     def get_map_register(self):
-        """Return the name of the map register table"""
+        """!Return the name of the map register table"""
         return self.metadata.get_vector_register()
         return self.metadata.get_vector_register()
 
 
     def set_map_register(self, name):
     def set_map_register(self, name):
-        """Set the name of the map register table"""
+        """!Set the name of the map register table"""
         self.metadata.set_vector_register(name)
         self.metadata.set_vector_register(name)
 
 
     def spatial_overlapping(self, dataset):
     def spatial_overlapping(self, dataset):
-        """Return True if the spatial extents 2d overlap"""
+        """!Return True if the spatial extents 2d overlap"""
         
         
         return self.spatial_extent.overlapping_2d(dataset.spatial_extent)
         return self.spatial_extent.overlapping_2d(dataset.spatial_extent)
 
 
@@ -451,7 +451,7 @@ class space_time_vector_dataset(abstract_space_time_dataset):
 
 
     def reset(self, ident):
     def reset(self, ident):
 
 
-	"""Reset the internal structure and set the identifier"""
+	"""!Reset the internal structure and set the identifier"""
 	self.ident = ident
 	self.ident = ident
 
 
 	self.base = stvds_base(ident=ident)
 	self.base = stvds_base(ident=ident)

+ 5 - 5
lib/python/temporal/space_time_datasets_tools.py

@@ -29,7 +29,7 @@ from space_time_datasets import *
 def register_maps_in_space_time_dataset(type, name, maps=None, file=None, start=None, \
 def register_maps_in_space_time_dataset(type, name, maps=None, file=None, start=None, \
                                         end=None, unit=None, increment=None, dbif = None, \
                                         end=None, unit=None, increment=None, dbif = None, \
                                         interval=False, fs="|"):
                                         interval=False, fs="|"):
-    """Use this method to register maps in space time datasets. This function is generic and
+    """!Use this method to register maps in space time datasets. This function is generic and
 
 
        Additionally a start time string and an increment string can be specified
        Additionally a start time string and an increment string can be specified
        to assign a time interval automatically to the maps.
        to assign a time interval automatically to the maps.
@@ -231,7 +231,7 @@ def register_maps_in_space_time_dataset(type, name, maps=None, file=None, start=
 ###############################################################################
 ###############################################################################
 
 
 def assign_valid_time_to_map(ttype, map, start, end, unit, increment=None, mult=1, dbif = None, interval=False):
 def assign_valid_time_to_map(ttype, map, start, end, unit, increment=None, mult=1, dbif = None, interval=False):
-    """Assign the valid time to a map dataset
+    """!Assign the valid time to a map dataset
 
 
        @param ttype: The temporal type which should be assigned and which the time format is of
        @param ttype: The temporal type which should be assigned and which the time format is of
        @param map: A map dataset object derived from abstract_map_dataset
        @param map: A map dataset object derived from abstract_map_dataset
@@ -300,7 +300,7 @@ def assign_valid_time_to_map(ttype, map, start, end, unit, increment=None, mult=
 ###############################################################################
 ###############################################################################
 
 
 def dataset_factory(type, id):
 def dataset_factory(type, id):
-    """A factory functions to create space time or map datasets
+    """!A factory functions to create space time or map datasets
     
     
        @param type: the dataset type: rast, rast3d, vect, strds, str3ds, stvds
        @param type: the dataset type: rast, rast3d, vect, strds, str3ds, stvds
        @param id: The id of the dataset ("name@mapset")
        @param id: The id of the dataset ("name@mapset")
@@ -326,7 +326,7 @@ def dataset_factory(type, id):
 ###############################################################################
 ###############################################################################
 
 
 def list_maps_of_stds(type, input, columns, order, where, separator, method, header):
 def list_maps_of_stds(type, input, columns, order, where, separator, method, header):
-    """ List the maps of a space time dataset using diffetent methods
+    """! List the maps of a space time dataset using diffetent methods
 
 
         @param type: The type of the maps raster, raster3d or vector
         @param type: The type of the maps raster, raster3d or vector
         @param input: Name of a space time raster dataset
         @param input: Name of a space time raster dataset
@@ -472,7 +472,7 @@ def list_maps_of_stds(type, input, columns, order, where, separator, method, hea
 ###############################################################################
 ###############################################################################
 
 
 def sample_stds_by_stds_topology(intype, sampletype, inputs, sampler, header, separator, method, spatial=False):
 def sample_stds_by_stds_topology(intype, sampletype, inputs, sampler, header, separator, method, spatial=False):
-    """ Sample the input space time datasets with a sample space time dataset and print the result to stdout
+    """! Sample the input space time datasets with a sample space time dataset and print the result to stdout
 
 
         In case multiple maps are located in the current granule, the map names are separated by comma.
         In case multiple maps are located in the current granule, the map names are separated by comma.
         
         

+ 5 - 5
lib/python/temporal/spatial_extent.py

@@ -23,7 +23,7 @@ for details.
 from base import *
 from base import *
 
 
 class spatial_extent(sql_database_interface):
 class spatial_extent(sql_database_interface):
-    """This is the spatial extent base class for all maps and spacetime datasets"""
+    """!This is the spatial extent base class for all maps and spacetime datasets"""
     def __init__(self, table=None, ident=None, north=None, south=None, east=None, west=None, top=None, bottom=None, proj="XY"):
     def __init__(self, table=None, ident=None, north=None, south=None, east=None, west=None, top=None, bottom=None, proj="XY"):
 
 
 	sql_database_interface.__init__(self, table, ident)
 	sql_database_interface.__init__(self, table, ident)
@@ -32,7 +32,7 @@ class spatial_extent(sql_database_interface):
 	self.set_projection(proj)
 	self.set_projection(proj)
         
         
     def overlapping_2d(self, extent):
     def overlapping_2d(self, extent):
-        """Return True if the two dimensional extents overlap. Code is lend from wind_overlap.c in lib/gis
+        """!Return True if the two dimensional extents overlap. Code is lend from wind_overlap.c in lib/gis
         
         
 	   Overlapping includes the spatial relations:
 	   Overlapping includes the spatial relations:
 	   * contain
 	   * contain
@@ -76,7 +76,7 @@ class spatial_extent(sql_database_interface):
         return True
         return True
 
 
     def overlapping(self, extent):
     def overlapping(self, extent):
-        """Return True if the three dimensional extents overlap
+        """!Return True if the three dimensional extents overlap
         
         
 	   Overlapping includes the spatial relations:
 	   Overlapping includes the spatial relations:
 	   * contain
 	   * contain
@@ -101,7 +101,7 @@ class spatial_extent(sql_database_interface):
         return True
         return True
 
 
     def intersect_2d(self, extent):
     def intersect_2d(self, extent):
-	"""Return the two dimensional intersection as spatial_extent object or None
+	"""!Return the two dimensional intersection as spatial_extent object or None
 	   in case no intersection was found.
 	   in case no intersection was found.
 	"""
 	"""
 	
 	
@@ -148,7 +148,7 @@ class spatial_extent(sql_database_interface):
 	return new
 	return new
 
 
     def intersect(self, extent):
     def intersect(self, extent):
-	"""Return the three dimensional intersection as spatial_extent object or None
+	"""!Return the three dimensional intersection as spatial_extent object or None
 	   in case no intersection was found.
 	   in case no intersection was found.
 	"""
 	"""
 	
 	

+ 47 - 47
lib/python/temporal/temporal_extent.py

@@ -25,7 +25,7 @@ from base import *
 ###############################################################################
 ###############################################################################
 
 
 class abstract_temporal_extent(sql_database_interface):
 class abstract_temporal_extent(sql_database_interface):
-    """This is the abstract time base class for relative and absolute time objects"""
+    """!This is the abstract time base class for relative and absolute time objects"""
     def __init__(self, table=None, ident=None, start_time=None, end_time=None):
     def __init__(self, table=None, ident=None, start_time=None, end_time=None):
 
 
 	sql_database_interface.__init__(self, table, ident)
 	sql_database_interface.__init__(self, table, ident)
@@ -35,7 +35,7 @@ class abstract_temporal_extent(sql_database_interface):
 	self.set_end_time(end_time)
 	self.set_end_time(end_time)
 
 
     def starts(self, extent):
     def starts(self, extent):
-	"""Return True if this time object starts at the start of the provided time object and finishes within it
+	"""!Return True if this time object starts at the start of the provided time object and finishes within it
 	   A  |-----|
 	   A  |-----|
 	   B  |---------|
 	   B  |---------|
 	"""
 	"""
@@ -48,7 +48,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def started(self, extent):
     def started(self, extent):
-	"""Return True if this time object is started at the start of the provided time object
+	"""!Return True if this time object is started at the start of the provided time object
 	   A  |---------|
 	   A  |---------|
 	   B  |-----|
 	   B  |-----|
 	"""
 	"""
@@ -61,7 +61,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def finishes(self, extent):
     def finishes(self, extent):
-	"""Return True if this time object finishes at the end and within of the provided time object
+	"""!Return True if this time object finishes at the end and within of the provided time object
 	   A      |-----|
 	   A      |-----|
 	   B  |---------|
 	   B  |---------|
 	"""
 	"""
@@ -74,7 +74,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def finished(self, extent):
     def finished(self, extent):
-	"""Return True if this time object finished at the end of the provided time object
+	"""!Return True if this time object finished at the end of the provided time object
 	   A  |---------|
 	   A  |---------|
 	   B      |-----|
 	   B      |-----|
 	"""
 	"""
@@ -87,7 +87,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def after(self, extent):
     def after(self, extent):
-	"""Return True if this time object is temporal located after the provided time object
+	"""!Return True if this time object is temporal located after the provided time object
 	   A             |---------|
 	   A             |---------|
 	   B  |---------|
 	   B  |---------|
 	"""
 	"""
@@ -103,7 +103,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def before(self, extent):
     def before(self, extent):
-	"""Return True if this time object is temporal located before the provided time object
+	"""!Return True if this time object is temporal located before the provided time object
 	   A  |---------|
 	   A  |---------|
 	   B             |---------|
 	   B             |---------|
 	"""
 	"""
@@ -119,7 +119,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def adjacent(self, extent):
     def adjacent(self, extent):
-	"""Return True if this time object is a meeting neighbour the provided time object
+	"""!Return True if this time object is a meeting neighbour the provided time object
 	   A            |---------|
 	   A            |---------|
 	   B  |---------|
 	   B  |---------|
 	   A  |---------|
 	   A  |---------|
@@ -134,7 +134,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def follows(self, extent):
     def follows(self, extent):
-	"""Return True if this time object is temporal follows the provided time object
+	"""!Return True if this time object is temporal follows the provided time object
 	   A            |---------|
 	   A            |---------|
 	   B  |---------|
 	   B  |---------|
 	"""
 	"""
@@ -147,7 +147,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def precedes(self, extent):
     def precedes(self, extent):
-	"""Return True if this time object is temporal precedes the provided time object
+	"""!Return True if this time object is temporal precedes the provided time object
 	   A  |---------|
 	   A  |---------|
 	   B            |---------|
 	   B            |---------|
 	"""
 	"""
@@ -160,7 +160,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def during(self, extent):
     def during(self, extent):
-	"""Return True if this time object is temporal located during the provided time object
+	"""!Return True if this time object is temporal located during the provided time object
 	   A   |-------|
 	   A   |-------|
 	   B  |---------|
 	   B  |---------|
 	"""
 	"""
@@ -181,7 +181,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def contains(self, extent):
     def contains(self, extent):
-	"""Return True if this time object contains the provided time object
+	"""!Return True if this time object contains the provided time object
 	   A  |---------|
 	   A  |---------|
 	   B   |-------|
 	   B   |-------|
 	"""
 	"""
@@ -202,7 +202,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def equivalent(self, extent):
     def equivalent(self, extent):
-	"""Return True if this time object is temporal located equivalent the provided time object
+	"""!Return True if this time object is temporal located equivalent the provided time object
 	   A  |---------|
 	   A  |---------|
 	   B  |---------|
 	   B  |---------|
 	"""
 	"""
@@ -221,7 +221,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def overlaps(self, extent):
     def overlaps(self, extent):
-	"""Return True if this time object is temporal overlaps the provided time object
+	"""!Return True if this time object is temporal overlaps the provided time object
            A  |---------|
            A  |---------|
 	   B    |---------|
 	   B    |---------|
 	"""
 	"""
@@ -235,7 +235,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def overlapped(self, extent):
     def overlapped(self, extent):
-	"""Return True if this time object is temporal overlapped by the provided time object
+	"""!Return True if this time object is temporal overlapped by the provided time object
 	   A    |---------|
 	   A    |---------|
            B  |---------|
            B  |---------|
 	"""
 	"""
@@ -249,7 +249,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return False
 	    return False
 
 
     def temporal_relation(self, extent):
     def temporal_relation(self, extent):
-	"""Returns the temporal relation between temporal objects
+	"""!Returns the temporal relation between temporal objects
 	   Temporal relationships are implemented after [Allen and Ferguson 1994 Actions and Events in Interval Temporal Logic]
 	   Temporal relationships are implemented after [Allen and Ferguson 1994 Actions and Events in Interval Temporal Logic]
 	"""
 	"""
         
         
@@ -295,20 +295,20 @@ class abstract_temporal_extent(sql_database_interface):
         return None
         return None
 
 
     def set_id(self, ident):
     def set_id(self, ident):
-	"""Convenient method to set the unique identifier (primary key)"""
+	"""!Convenient method to set the unique identifier (primary key)"""
 	self.ident = ident
 	self.ident = ident
 	self.D["id"] = ident
 	self.D["id"] = ident
 
 
     def set_start_time(self, start_time):
     def set_start_time(self, start_time):
-	"""Set the valid start time of the extent"""
+	"""!Set the valid start time of the extent"""
 	self.D["start_time"] = start_time
 	self.D["start_time"] = start_time
 
 
     def set_end_time(self, end_time):
     def set_end_time(self, end_time):
-	"""Set the valid end time of the extent"""
+	"""!Set the valid end time of the extent"""
 	self.D["end_time"] = end_time
 	self.D["end_time"] = end_time
 
 
     def get_id(self):
     def get_id(self):
-	"""Convenient method to get the unique identifier (primary key)
+	"""!Convenient method to get the unique identifier (primary key)
 	   @return None if not found
 	   @return None if not found
 	"""
 	"""
 	if self.D.has_key("id"):
 	if self.D.has_key("id"):
@@ -317,7 +317,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_start_time(self):
     def get_start_time(self):
-	"""Get the valid start time of the extent
+	"""!Get the valid start time of the extent
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("start_time"):
 	if self.D.has_key("start_time"):
 	    return self.D["start_time"]
 	    return self.D["start_time"]
@@ -325,7 +325,7 @@ class abstract_temporal_extent(sql_database_interface):
 	    return None
 	    return None
 
 
     def get_end_time(self):
     def get_end_time(self):
-	"""Get the valid end time of the extent
+	"""!Get the valid end time of the extent
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("end_time"):
 	if self.D.has_key("end_time"):
 	    return self.D["end_time"]
 	    return self.D["end_time"]
@@ -333,20 +333,20 @@ class abstract_temporal_extent(sql_database_interface):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " | Start time:................. " + str(self.get_start_time())
         print " | Start time:................. " + str(self.get_start_time())
         print " | End time:................... " + str(self.get_end_time())
         print " | End time:................... " + str(self.get_end_time())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         print "start_time=" + str(self.get_start_time())
         print "start_time=" + str(self.get_start_time())
         print "end_time=" + str(self.get_end_time())
         print "end_time=" + str(self.get_end_time())
 
 
 ###############################################################################
 ###############################################################################
 
 
 class absolute_temporal_extent(abstract_temporal_extent):
 class absolute_temporal_extent(abstract_temporal_extent):
-    """This is the absolute time class for all maps and spacetime datasets
+    """!This is the absolute time class for all maps and spacetime datasets
 
 
        start_time and end_time must be of type datetime
        start_time and end_time must be of type datetime
     """
     """
@@ -357,13 +357,13 @@ class absolute_temporal_extent(abstract_temporal_extent):
 	self.set_timezone(timezone)
 	self.set_timezone(timezone)
 
 
     def set_timezone(self, timezone):
     def set_timezone(self, timezone):
-	"""Set the timezone of the map, the timezone is of type string.
+	"""!Set the timezone of the map, the timezone is of type string.
            Timezones are not supported yet, instead the timezone is set in the datetime string as offset in minutes.
            Timezones are not supported yet, instead the timezone is set in the datetime string as offset in minutes.
         """
         """
 	self.D["timezone"] = timezone
 	self.D["timezone"] = timezone
 
 
     def get_timezone(self):
     def get_timezone(self):
-	"""Get the timezone of the map
+	"""!Get the timezone of the map
            Timezones are not supported yet, instead the timezone is set in the datetime string as offset in minutes.
            Timezones are not supported yet, instead the timezone is set in the datetime string as offset in minutes.
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("timezone"):
 	if self.D.has_key("timezone"):
@@ -372,14 +372,14 @@ class absolute_temporal_extent(abstract_temporal_extent):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " +-------------------- Absolute time -----------------------------------------+"
         print " +-------------------- Absolute time -----------------------------------------+"
         abstract_temporal_extent.print_info(self)
         abstract_temporal_extent.print_info(self)
         #print " | Timezone:................... " + str(self.get_timezone())
         #print " | Timezone:................... " + str(self.get_timezone())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         abstract_temporal_extent.print_shell_info(self)
         abstract_temporal_extent.print_shell_info(self)
         #print "timezone=" + str(self.get_timezone())
         #print "timezone=" + str(self.get_timezone())
 
 
@@ -407,11 +407,11 @@ class stds_absolute_time(absolute_temporal_extent):
         self.set_map_time(map_time)
         self.set_map_time(map_time)
 
 
     def set_granularity(self, granularity):
     def set_granularity(self, granularity):
-	"""Set the granularity of the space time dataset"""
+	"""!Set the granularity of the space time dataset"""
 	self.D["granularity"] = granularity
 	self.D["granularity"] = granularity
 
 
     def set_map_time(self, map_time):
     def set_map_time(self, map_time):
-	"""Set the type of the map time
+	"""!Set the type of the map time
 
 
            Registered maps may have different types of time:
            Registered maps may have different types of time:
            Single point of time "point"
            Single point of time "point"
@@ -423,7 +423,7 @@ class stds_absolute_time(absolute_temporal_extent):
 	self.D["map_time"] = map_time
 	self.D["map_time"] = map_time
 
 
     def get_granularity(self):
     def get_granularity(self):
-	"""Get the granularity of the space time dataset
+	"""!Get the granularity of the space time dataset
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("granularity"):
 	if self.D.has_key("granularity"):
 	    return self.D["granularity"]
 	    return self.D["granularity"]
@@ -431,7 +431,7 @@ class stds_absolute_time(absolute_temporal_extent):
 	    return None
 	    return None
 
 
     def get_map_time(self):
     def get_map_time(self):
-	"""Get the type of the map time
+	"""!Get the type of the map time
 
 
            Registered maps may have different types of time:
            Registered maps may have different types of time:
            Single point of time "point"
            Single point of time "point"
@@ -446,14 +446,14 @@ class stds_absolute_time(absolute_temporal_extent):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         absolute_temporal_extent.print_info(self)
         absolute_temporal_extent.print_info(self)
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " | Granularity:................ " + str(self.get_granularity())
         print " | Granularity:................ " + str(self.get_granularity())
         print " | Temporal type of maps:...... " + str(self.get_map_time())
         print " | Temporal type of maps:...... " + str(self.get_map_time())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         absolute_temporal_extent.print_shell_info(self)
         absolute_temporal_extent.print_shell_info(self)
         print "granularity=" + str(self.get_granularity())
         print "granularity=" + str(self.get_granularity())
         print "map_time=" + str(self.get_map_time())
         print "map_time=" + str(self.get_map_time())
@@ -475,7 +475,7 @@ class stvds_absolute_time(stds_absolute_time):
 ###############################################################################
 ###############################################################################
 
 
 class relative_temporal_extent(abstract_temporal_extent):
 class relative_temporal_extent(abstract_temporal_extent):
-    """This is the relative time class for all maps and spacetime datasets
+    """!This is the relative time class for all maps and spacetime datasets
 
 
        start_time and end_time must be of type integer
        start_time and end_time must be of type integer
     """
     """
@@ -485,7 +485,7 @@ class relative_temporal_extent(abstract_temporal_extent):
 	self.D["unit"] = unit
 	self.D["unit"] = unit
 
 
     def set_unit(self, unit):
     def set_unit(self, unit):
-        """Set the unit of the relative time. Valid units are:
+        """!Set the unit of the relative time. Valid units are:
            * years
            * years
            * months
            * months
            * days
            * days
@@ -496,7 +496,7 @@ class relative_temporal_extent(abstract_temporal_extent):
 	self.D["unit"] = unit
 	self.D["unit"] = unit
 
 
     def get_unit(self):
     def get_unit(self):
-	"""Get the unit of the relative time
+	"""!Get the unit of the relative time
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("unit"):
 	if self.D.has_key("unit"):
 	    return self.D["unit"]
 	    return self.D["unit"]
@@ -504,7 +504,7 @@ class relative_temporal_extent(abstract_temporal_extent):
 	    return None
 	    return None
 
 
     def temporal_relation(self, map):
     def temporal_relation(self, map):
-	"""Returns the temporal relation between temporal objects
+	"""!Returns the temporal relation between temporal objects
 	   Temporal relationships are implemented after [Allen and Ferguson 1994 Actions and Events in Interval Temporal Logic]
 	   Temporal relationships are implemented after [Allen and Ferguson 1994 Actions and Events in Interval Temporal Logic]
 	"""
 	"""
         
         
@@ -521,14 +521,14 @@ class relative_temporal_extent(abstract_temporal_extent):
 	return abstract_temporal_extent.temporal_relation(self, map)
 	return abstract_temporal_extent.temporal_relation(self, map)
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " +-------------------- Relative time -----------------------------------------+"
         print " +-------------------- Relative time -----------------------------------------+"
         abstract_temporal_extent.print_info(self)
         abstract_temporal_extent.print_info(self)
         print " | Relative time unit:......... " + str(self.get_unit())
         print " | Relative time unit:......... " + str(self.get_unit())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         abstract_temporal_extent.print_shell_info(self)
         abstract_temporal_extent.print_shell_info(self)
         print "unit=" + str(self.get_unit())
         print "unit=" + str(self.get_unit())
 
 
@@ -556,11 +556,11 @@ class stds_relative_time(relative_temporal_extent):
         self.set_map_time(map_time)
         self.set_map_time(map_time)
 
 
     def set_granularity(self, granularity):
     def set_granularity(self, granularity):
-	"""Set the granularity of the space time dataset"""
+	"""!Set the granularity of the space time dataset"""
 	self.D["granularity"] = granularity
 	self.D["granularity"] = granularity
 
 
     def set_map_time(self, map_time):
     def set_map_time(self, map_time):
-	"""Set the type of the map time
+	"""!Set the type of the map time
 
 
            Registered maps may have different types of time:
            Registered maps may have different types of time:
            Single point of time "point"
            Single point of time "point"
@@ -572,7 +572,7 @@ class stds_relative_time(relative_temporal_extent):
 	self.D["map_time"] = map_time
 	self.D["map_time"] = map_time
 
 
     def get_granularity(self):
     def get_granularity(self):
-	"""Get the granularity of the space time dataset
+	"""!Get the granularity of the space time dataset
 	   @return None if not found"""
 	   @return None if not found"""
 	if self.D.has_key("granularity"):
 	if self.D.has_key("granularity"):
 	    return self.D["granularity"]
 	    return self.D["granularity"]
@@ -580,7 +580,7 @@ class stds_relative_time(relative_temporal_extent):
 	    return None
 	    return None
 
 
     def get_map_time(self):
     def get_map_time(self):
-	"""Get the type of the map time
+	"""!Get the type of the map time
 
 
            Registered maps may have different types of time:
            Registered maps may have different types of time:
            Single point of time "point"
            Single point of time "point"
@@ -595,14 +595,14 @@ class stds_relative_time(relative_temporal_extent):
 	    return None
 	    return None
 
 
     def print_info(self):
     def print_info(self):
-        """Print information about this class in human readable style"""
+        """!Print information about this class in human readable style"""
         relative_temporal_extent.print_info(self)
         relative_temporal_extent.print_info(self)
         #      0123456789012345678901234567890
         #      0123456789012345678901234567890
         print " | Granularity:................ " + str(self.get_granularity())
         print " | Granularity:................ " + str(self.get_granularity())
         print " | Temporal type of maps:...... " + str(self.get_map_time())
         print " | Temporal type of maps:...... " + str(self.get_map_time())
 
 
     def print_shell_info(self):
     def print_shell_info(self):
-        """Print information about this class in shell style"""
+        """!Print information about this class in shell style"""
         relative_temporal_extent.print_shell_info(self)
         relative_temporal_extent.print_shell_info(self)
         print "granularity=" + str(self.get_granularity())
         print "granularity=" + str(self.get_granularity())
         print "map_time=" + str(self.get_map_time())
         print "map_time=" + str(self.get_map_time())

+ 4 - 4
lib/python/temporal/temporal_granularity.py

@@ -26,7 +26,7 @@ from datetime_math import *
 ###############################################################################
 ###############################################################################
 
 
 def compute_relative_time_granularity(maps):            
 def compute_relative_time_granularity(maps):            
-    """ Compute the relative time granularity
+    """!Compute the relative time granularity
         
         
         Attention: The computation of the granularity is only correct in case of not
         Attention: The computation of the granularity is only correct in case of not
         overlapping intervals. Hence a correct temporal topology is required for
         overlapping intervals. Hence a correct temporal topology is required for
@@ -77,7 +77,7 @@ def compute_relative_time_granularity(maps):
 ###############################################################################
 ###############################################################################
 
 
 def compute_absolute_time_granularity(maps):                  
 def compute_absolute_time_granularity(maps):                  
-    """ Compute the absolute time granularity
+    """!Compute the absolute time granularity
         
         
         Attention: The computation of the granularity is only correct in case of not
         Attention: The computation of the granularity is only correct in case of not
         overlapping intervals. Hence a correct temporal topology is required for
         overlapping intervals. Hence a correct temporal topology is required for
@@ -230,7 +230,7 @@ def compute_absolute_time_granularity(maps):
 # Error Codes:
 # Error Codes:
 #   None
 #   None
 def gcd(a,b):
 def gcd(a,b):
-	""" The Euclidean Algorithm """
+	"""!The Euclidean Algorithm """
 	a = abs(a)
 	a = abs(a)
 	b = abs(b)
 	b = abs(b)
         while a:
         while a:
@@ -240,7 +240,7 @@ def gcd(a,b):
 ###############################################################################
 ###############################################################################
 
 
 def gcd_list(list):
 def gcd_list(list):
-	""" Finds the GCD of numbers in a list.
+	"""!Finds the GCD of numbers in a list.
 	Input: List of numbers you want to find the GCD of
 	Input: List of numbers you want to find the GCD of
 		E.g. [8, 24, 12]
 		E.g. [8, 24, 12]
 	Returns: GCD of all numbers
 	Returns: GCD of all numbers

+ 3 - 3
lib/python/temporal/temporal_relationships.py

@@ -25,7 +25,7 @@ from datetime_math import *
 
 
 
 
 def print_temporal_relations(maps1, maps2):
 def print_temporal_relations(maps1, maps2):
-    """Print the temporal relation matrix of the temporal ordered map lists maps1 and maps2
+    """!Print the temporal relation matrix of the temporal ordered map lists maps1 and maps2
        to stdout.
        to stdout.
 	
 	
 	@param maps1: a ordered by start_time list of map objects
 	@param maps1: a ordered by start_time list of map objects
@@ -64,7 +64,7 @@ def print_temporal_relations(maps1, maps2):
 		break
 		break
 
 
 def get_temporal_relation_matrix(maps1, maps2):
 def get_temporal_relation_matrix(maps1, maps2):
-    """Return the temporal relation matrix of all registered maps as list of lists
+    """!Return the temporal relation matrix of all registered maps as list of lists
 
 
 	The map list must be ordered by start time
 	The map list must be ordered by start time
 
 
@@ -110,7 +110,7 @@ def get_temporal_relation_matrix(maps1, maps2):
     return matrix
     return matrix
 
 
 def count_temporal_relations(maps1, maps2):
 def count_temporal_relations(maps1, maps2):
-    """Count the temporal relations between the registered maps.
+    """!Count the temporal relations between the registered maps.
 
 
 	The map lists must be ordered by start time. Temporal relations are counted 
 	The map lists must be ordered by start time. Temporal relations are counted 
 	by analyzing the sparse (upper right side in case maps1 == maps2) temporal relationships matrix.
 	by analyzing the sparse (upper right side in case maps1 == maps2) temporal relationships matrix.