Difference between revisions of "Truxton location get id"

From truxwiki.com
Jump to navigation Jump to search
 
Line 19: Line 19:
 
=Sample=
 
=Sample=
 
<source lang="C" highlight="25">
 
<source lang="C" highlight="25">
void new_location(uint64_t truxton, uint64_t file, double latitude, double longitude, double altitude, uint64_t when)
+
void new_location( uint64_t truxton, uint64_t file, double latitude, double longitude, double altitude, uint64_t when )
 
{
 
{
 
   char guid_string[ 40 ];
 
   char guid_string[ 40 ];
  
   uint64_t location = truxton_location_create(truxton);
+
   uint64_t location = truxton_location_create( truxton );
  
 
   truxton_file_get_id( file, guid_string, sizeof( guid_string ) );
 
   truxton_file_get_id( file, guid_string, sizeof( guid_string ) );
Line 47: Line 47:
 
   }
 
   }
  
   truxton_location_destroy(location);
+
   truxton_location_destroy( location );
 
}
 
}
 
</source>
 
</source>

Latest revision as of 06:51, 10 February 2021

This retrieves the GUID of the location. This corresponds to the [ID] column of the [Location] table.

Syntax

void truxton_location_get_id( uint64_t location_handle, char * destination_string, size_t max_size );

Parameters

location_handle

This handle comes from calling truxton_location_create() or truxton_child_file_create_location()

destination_string

The string to be written to.

max_size

The maximum number of characters that can be written to destination_string.

Sample

void new_location( uint64_t truxton, uint64_t file, double latitude, double longitude, double altitude, uint64_t when )
{
   char guid_string[ 40 ];

   uint64_t location = truxton_location_create( truxton );

   truxton_file_get_id( file, guid_string, sizeof( guid_string ) );
   truxton_location_set_file_id( location, guid_string );

   truxton_file_get_media_id( file, guid_string, sizeof( guid_string ) );
   truxton_location_set_media_id( location, guid_string );

   truxton_location_set_latitude( location, latitude );
   truxton_location_set_longitude( location, longitude );
   truxton_location_set_altitude( location, altitude );
   truxton_location_set_when( location, when );
   truxton_location_set_type( location, LOCATION_TYPE_EXIF );

   if ( truxton_location_save() == 0 )
   {
      printf( "Failed to create new location\n" );
   }
   else
   {
      truxton_location_get_id( location, guid_string, sizeof( guid_string ) );
      printf( "Created new location as id %s\n", guid_string );
   }

   truxton_location_destroy( location );
}