Difference between revisions of "Truxton media create"

From truxwiki.com
Jump to navigation Jump to search
(Created page with "This creates a media object. You can use this to add to the <code>Media</code> table in the database. =Syntax= <syntaxhighlight lang="C"> uint64_t truxton_media_create(uint64...")
 
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
This creates a media object.
 
This creates a media object.
You can use this to add to the <code>Media</code> table in the database.
+
You can use this to add to the <code><nowiki>[</nowiki>[[Media Table|Media]]<nowiki>]</nowiki></code> table in the database.
  
 
=Syntax=
 
=Syntax=
<syntaxhighlight lang="C">
+
<source lang="C">
uint64_t truxton_media_create(uint64_t truxton_handle);
+
uint64_t truxton_media_create( uint64_t truxton_handle );
</syntaxhighlight>
+
</source>
  
 
=Parameters=
 
=Parameters=
 
==<code>truxton_handle</code>==
 
==<code>truxton_handle</code>==
The Truxton instance this file type will belong.
+
The Truxton instance this media will belong.
 
This handle comes from calling <code>[[truxton_create]]()</code>.
 
This handle comes from calling <code>[[truxton_create]]()</code>.
  
Line 16: Line 16:
  
 
=Sample=
 
=Sample=
<syntaxhighlight lang="C" highlight="5">
+
<source lang="C" highlight="5">
void create_file_type(void)
+
void create_media( void )
 
{
 
{
 
   uint64_t truxton = truxton_create();
 
   uint64_t truxton = truxton_create();
  
   uint64_t media = truxton_media_create(truxton);
+
   uint64_t media = truxton_media_create( truxton );
  
   truxton_file_type_set_short_name( file_type, "My Type" );
+
   truxton_media_set_name( media, "Ducky Momo Server" );
   truxton_file_type_set_long_name( file_type, "A new custom type derived from XML" );
+
   truxton_media_set_description( media, "Original plans for I Hate People plate" );
   truxton_file_type_set_parent_id( file_type, Type_XML );
+
   truxton_media_set_case_number( media, "PNF-S02E30");
   truxton_file_type_set_extension( file_type, "xm2" );
+
   truxton_media_set_originator( media, "Povenmire and Marsh" );
   truxton_file_type_set_mime_type( file_type, "text/xml" );
+
   truxton_media_set_evidence_bag( media, "EVINC-20100709" );
   truxton_file_type_save();
+
   truxton_media_set_type( media, MEDIA_TYPE_HARD_DISK_IMAGE );
 +
  truxton_media_set_size( media, 100 * ONE_GIGABYTE );
 +
  truxton_media_set_latitude( media, -17.60978782 );
 +
  truxton_media_set_longitude( media, 177.0342855299 );
 +
  truxton_media_save( media );
 +
  truxton_media_tag( media, "Too Young", "Yes, yes I am", 1 );
  
   uint64_t new_id = truxton_file_get_id( file_type );
+
   char id[ 65 ];
  
   if ( new_id == 0 )
+
   truxton_media_get_id( media, id, sizeof( id ) );
  {
 
      printf( "Failed to create new file type\n" );
 
  }
 
  else
 
  {
 
      printf( "Created new file type as id %" PRIu64 "\n", new_id );
 
  }
 
  
   truxton_file_type_destroy(file_type);
+
   printf( "Media ID is %s\n", id );
   truxton_destroy(truxton);
+
 
 +
  truxton_media_destroy( media );
 +
   truxton_destroy( truxton );
 
}
 
}
</syntaxhighlight>
+
</source>
 +
 
 +
=Remarks=
 +
The default behavior of this API is to:
 +
* Generate an [[truxton_media_set_id|identifier]] for the media. The [[TGUID#Media_ID|media identifier]] is not random.
 +
* Set the [[truxton_media_set_created|created date]] to the current time
 +
* Set the [[truxton_media_set_last_updated|last updated date]] to the current time
 +
* Set the [[truxton_media_set_expires|expiration date]] set to 99 years from now
 +
* Set the [[truxton_media_set_percent_complete|percent complete]] to 100
 +
* Set the [[truxton_media_set_status|status]] set to [[Media Status | loaded]]

Latest revision as of 07:40, 3 February 2024

This creates a media object. You can use this to add to the [Media] table in the database.

Syntax

uint64_t truxton_media_create( uint64_t truxton_handle );

Parameters

truxton_handle

The Truxton instance this media will belong. This handle comes from calling truxton_create().

Return value

A handle to a media object.

Sample

void create_media( void )
{
   uint64_t truxton = truxton_create();

   uint64_t media = truxton_media_create( truxton );

   truxton_media_set_name( media, "Ducky Momo Server" );
   truxton_media_set_description( media, "Original plans for I Hate People plate" );
   truxton_media_set_case_number( media, "PNF-S02E30");
   truxton_media_set_originator( media, "Povenmire and Marsh" );
   truxton_media_set_evidence_bag( media, "EVINC-20100709" );
   truxton_media_set_type( media, MEDIA_TYPE_HARD_DISK_IMAGE );
   truxton_media_set_size( media, 100 * ONE_GIGABYTE );
   truxton_media_set_latitude( media, -17.60978782 );
   truxton_media_set_longitude( media, 177.0342855299 );
   truxton_media_save( media );
   truxton_media_tag( media, "Too Young", "Yes, yes I am", 1 );

   char id[ 65 ];

   truxton_media_get_id( media, id, sizeof( id ) );

   printf( "Media ID is %s\n", id );

   truxton_media_destroy( media );
   truxton_destroy( truxton );
}

Remarks

The default behavior of this API is to: