Difference between revisions of "Truxton C API"

From truxwiki.com
Jump to navigation Jump to search
Line 356: Line 356:
  
 
==USB Device==
 
==USB Device==
uint64_t truxton_usb_create(uint64_t truxton_handle);
+
* [[truxton_usb_create]]
void    truxton_usb_destroy(uint64_t usb_handle);
+
* [[truxton_usb_destroy]]
int      truxton_usb_save(uint64_t usb_handle);
+
* [[truxton_usb_save]]
 
+
* [[truxton_usb_get_id]]
void    truxton_usb_get_id(uint64_t usb_handle, char* buffer, size_t buffer_size);
+
* [[truxton_usb_get_file_id]]
void    truxton_usb_get_file_id(uint64_t usb_handle, char* buffer, size_t buffer_size);
+
* [[truxton_usb_set_file_id]]
void    truxton_usb_set_file_id(uint64_t usb_handle, char const* guid);
+
* [[truxton_usb_get_media_id]]
void    truxton_usb_get_media_id(uint64_t usb_handle, char* buffer, size_t buffer_size);
+
* [[truxton_usb_set_media_id]]
void    truxton_usb_set_media_id(uint64_t usb_handle, char const* guid);
+
* [[truxton_usb_get_device_id]]
void    truxton_usb_get_device_id(uint64_t usb_handle, char* buffer, size_t buffer_size);
+
* [[truxton_usb_set_device_id]]
void    truxton_usb_set_device_id(uint64_t usb_handle, char const* guid);
+
* [[truxton_usb_get_device_type]]
uint64_t truxton_usb_get_device_type(uint64_t usb_handle);
+
* [[truxton_usb_set_device_type]]
void    truxton_usb_set_device_type(uint64_t usb_handle, uint64_t value);
+
* [[truxton_usb_get_file_offset]]
uint64_t truxton_usb_get_file_offset(uint64_t usb_handle);
+
* [[truxton_usb_set_file_offset]]
void    truxton_usb_set_file_offset(uint64_t usb_handle, uint64_t value);
+
* [[truxton_usb_get_product_id]]
uint64_t truxton_usb_get_product_id(uint64_t usb_handle);
+
* [[truxton_usb_set_product_id]]
void    truxton_usb_set_product_id(uint64_t usb_handle, uint64_t value);
+
* [[truxton_usb_get_revision]]
uint64_t truxton_usb_get_revision(uint64_t usb_handle);
+
* [[truxton_usb_set_revision]]
void    truxton_usb_set_revision(uint64_t usb_handle, uint64_t value);
+
* [[truxton_usb_get_when]]
uint64_t truxton_usb_get_when(uint64_t usb_handle);
+
* [[truxton_usb_set_when]]
void    truxton_usb_set_when(uint64_t usb_handle, uint64_t value);
+
* [[truxton_usb_get_vendor_id]]
uint64_t truxton_usb_get_vendor_id(uint64_t usb_handle);
+
* [[truxton_usb_set_vendor_id]]
void    truxton_usb_set_vendor_id(uint64_t usb_handle, uint64_t value);
 
  
 
==Relation==
 
==Relation==
uint64_t truxton_relation_create(uint64_t truxton_handle);
+
* [[truxton_relation_create]]
void    truxton_relation_destroy(uint64_t relation_handle);
+
* [[truxton_relation_destroy]]
int      truxton_relation_save(uint64_t relation_handle);
+
* [[truxton_relation_save]]
void    truxton_relation_get_a_id(uint64_t relation_handle, char* buffer, size_t buffer_size);
+
* [[truxton_relation_get_a_id]]
void    truxton_relation_set_a_id(uint64_t relation_handle, char const* guid);
+
* [[truxton_relation_set_a_id]]
void    truxton_relation_get_b_id(uint64_t relation_handle, char* buffer, size_t buffer_size);
+
* [[truxton_relation_get_b_id]]
void    truxton_relation_set_b_id(uint64_t relation_handle, char const* guid);
+
* [[truxton_relation_set_b_id]]
void    truxton_relation_get_source_id(uint64_t relation_handle, char* buffer, size_t buffer_size);
+
* [[truxton_relation_get_source_id]]
void    truxton_relation_set_source_id(uint64_t relation_handle, char const* guid);
+
* [[truxton_relation_set_source_id]]
uint64_t truxton_relation_get_a_type(uint64_t relation_handle);
+
* [[truxton_relation_get_a_type]]
void    truxton_relation_set_a_type(uint64_t relation_handle, uint64_t value);
+
* [[truxton_relation_set_a_type]]
uint64_t truxton_relation_get_b_type(uint64_t relation_handle);
+
* [[truxton_relation_get_b_type]]
void    truxton_relation_set_b_type(uint64_t relation_handle, uint64_t value);
+
* [[truxton_relation_set_b_type]]
uint64_t truxton_relation_get_source_type(uint64_t relation_handle);
+
* [[truxton_relation_get_source_type]]
void    truxton_relation_set_source_type(uint64_t relation_handle, uint64_t value);
+
* [[truxton_relation_set_source_type]]
uint64_t truxton_relation_get_relation(uint64_t relation_handle);
+
* [[truxton_relation_get_relation]]
void    truxton_relation_set_relation(uint64_t relation_handle, uint64_t value);
+
* [[truxton_relation_set_relation]]

Revision as of 14:21, 20 May 2020

Truxton functionality is exposed to the C programming world as a DLL named TruxtonCAPI.dll in the C:\Program Files\Truxton\SDK folder. This DLL can be called from any programming language that has the ability to make operating system calls.

Philosophy

The API is considered to be "flat" in that only sixty-four bit integers and ASCII character strings are used in the interface. This was chosen to make it easy for other languages to interface to. The coding convention is all lower case names with underscores separating words. Truxton is a member of the east const posse.

API Groups

The API is broken down into the different areas of Truxton.

Initialization

ETL Functions

Child Files

A child file is one that you have created and need to save in Truxton.

File IO

  • [[truxton_file_open_id( uint64_t truxton_handle, const char * guid );
  • [[truxton_file_open_md5( uint64_t truxton_handle, const char * guid );
  • [[truxton_file_close( uint64_t file_handle );
  • [[truxton_file_free( uint64_t file_handle );
  • [[truxton_file_tell( uint64_t file_handle );
  • [[truxton_file_length( uint64_t file_handle );
  • [[truxton_file_is_closed( uint64_t file_handle );
  • [[truxton_file_seek( uint64_t file_handle, int64_t distance, int origin );
  • [[truxton_file_readline( uint64_t file_handle, uint8_t * buffer, size_t buffer_size, int64_t limit );
  • [[truxton_file_read( uint64_t file_handle, uint8_t * buffer, size_t buffer_size );

File Record Fields

Meta Data from File

ETL Creation

Debugging

Message

String Map

File Export

Artifacts

Event

EXIF (Camera Information)

Geographic Location


Website Visit

USB Device

Relation