-
Notifications
You must be signed in to change notification settings - Fork 51
rc_hash_initialize_iterator
Initializes an iterator object for use with the rc_hash_iterate function.
void rc_hash_initialize_iterator(
rc_hash_iterator_t* iterator,
const char* path,
uint8_t* buffer,
size_t buffer_size
);iterator
Pointer to the rc_hash_iterator object to be initialized.
path
The path to the file to be hashed. If providing a buffer, this must still be set so the filename extension can be used to help select the appropriate hashing algorithm for the data.
buffer
Pointer to the data to be hashed (usually an in-memory copy of the game file). If NULL, the file specified by the path parameter will be used.
buffer_size
The number of bytes pointed to by the buffer parameter. Ignored if buffer is NULL.
typedef struct rc_hash_iterator {
const uint8_t* buffer;
size_t buffer_size;
uint8_t consoles[12];
int index;
const char* path;
rc_hash_callbacks_t callbacks;
} rc_hash_iterator_t;The first five fields are used for iterating/generating hashes and should not be modified by the caller.
callbacks (Minimum version: 12.0.0)
A set of functions that can be provided for additional information about the hashing process. These should be set after initializing the iterator.
typedef struct rc_hash_callbacks {
rc_hash_message_callback verbose_message;
rc_hash_message_callback error_message;
rc_hash_filereader_t filereader;
rc_hash_cdreader_t cdreader;
} rc_hash_callbacks_t;verbose_message
Specifies a function to be called for detailed information about the hashing process.
error_message
Specifies a function to be called when an error occurs.
filereader
A set of functions for reading files (see rc_hash_init_custom_filereader).
cdreader
A set of functions for reading CD files (see rc_hash_init_custom_cdreader).
If buffer is provided, path may be a filename (without an actual path). As rcheevos does not natively support compressed files, this could be the name of the file extracted from the archive, where buffer is the data extracted from the archive.
Minimum version: 9.0.0
rc_client
- rc_client_abort_async
- rc_client_create
- rc_client_destroy
- rc_client_enable_logging
- rc_client_get_encore_mode_enabled
- rc_client_get_hardcore_enabled
- rc_client_get_spectator_mode_enabled
- rc_client_get_unofficial_enabled
- rc_client_get_user_agent_clause
- rc_client_get_userdata
- rc_client_set_allow_background_memory_reads
- rc_client_set_encore_mode_enabled
- rc_client_set_hardcore_enabled
- rc_client_set_hash_callbacks
- rc_client_set_host
- rc_client_set_spectator_mode_enabled
- rc_client_set_unofficial_enabled
- rc_client_set_userdata
- rc_client_begin_fetch_all_user_progress
- rc_client_begin_login_with_password
- rc_client_begin_login_with_token
- rc_client_destroy_all_user_progress
- rc_client_get_user_info
- rc_client_get_user_game_summary
- rc_client_get_user_subset_summary
- rc_client_logout
- rc_client_user_get_image_url
- rc_client_achievement_get_image_url
- rc_client_begin_change_media
- rc_client_begin_fetch_leaderboard_entries
- rc_client_begin_fetch_leaderboard_entries_around_user
- rc_client_begin_identify_and_change_media
- rc_client_begin_identify_and_load_game
- rc_client_begin_load_game
- rc_client_create_achievement_list
- rc_client_create_leaderboard_list
- rc_client_destroy_achievement_list
- rc_client_destroy_leaderboard_entry_list
- rc_client_destroy_leaderboard_list
- rc_client_game_get_image_url
- rc_client_get_achievement_info
- rc_client_get_game_info
- rc_client_get_leaderboard_info
- rc_client_get_load_game_state
- rc_client_get_rich_presence_message
- rc_client_get_subset_info
- rc_client_has_achievements
- rc_client_has_leaderboards
- rc_client_has_rich_presence
- rc_client_is_game_loaded
- rc_client_leaderboard_entry_get_user_image_url
- rc_client_unload_game
- rc_client_can_pause
- rc_client_deserialize_progress
- rc_client_do_frame
- rc_client_idle
- rc_client_is_processing_required
- rc_client_progress_size
- rc_client_reset
- rc_client_serialize_progress
- rc_client_set_event_handler
- rc_client_set_read_memory_function
- rc_client_begin_fetch_game_titles
- rc_client_begin_fetch_hash_library
- rc_client_destroy_game_title_list
- rc_client_destroy_hash_library
- rc_client_begin_load_raintegration
- rc_client_raintegration_activate_menu_item
- rc_client_raintegration_get_achievement_state
- rc_client_raintegration_get_menu
- rc_client_raintegration_has_modifications
- rc_client_raintegration_rebuild_submenu
- rc_client_raintegration_set_console_id
- rc_client_raintegration_set_event_handler
- rc_client_raintegration_set_get_game_name_function
- rc_client_raintegration_set_write_memory_function
- rc_client_raintegration_update_main_window_handle
- rc_client_raintegration_update_menu_item
- rc_client_unload_raintegration
rc_runtime
- rc_runtime_activate_achievement
- rc_runtime_activate_lboard
- rc_runtime_activate_richpresence
- rc_runtime_deactivate_achievement
- rc_runtime_deactivate_lboard
- rc_runtime_deserialize_progress
- rc_runtime_destroy
- rc_runtime_do_frame
- rc_runtime_format_achievement_measured
- rc_runtime_format_lboard_value
- rc_runtime_get_achievement
- rc_runtime_get_achievement_measured
- rc_runtime_get_lboard
- rc_runtime_get_richpresence
- rc_runtime_init
- rc_runtime_invalidate_address
- rc_runtime_progress_size
- rc_runtime_reset
- rc_runtime_serialize_progress
- rc_runtime_validate_addresses
rapi
- rc_api_destroy_fetch_all_user_progress_response
- rc_api_destroy_fetch_followed_users_response
- rc_api_destroy_fetch_user_unlocks_response
- rc_api_destroy_login_response
- rc_api_destroy_start_session_response
- rc_api_init_fetch_all_user_progress_request
- rc_api_init_fetch_followed_users_request
- rc_api_init_fetch_user_unlocks_request
- rc_api_init_login_request
- rc_api_init_start_session_request
- rc_api_process_fetch_all_user_progress_server_response
- rc_api_process_fetch_followed_users_server_response
- rc_api_process_fetch_user_unlocks_response
- rc_api_process_login_response
- rc_api_process_start_session_response
- rc_api_destroy_award_achievement_response
- rc_api_destroy_fetch_game_data_response
- rc_api_destroy_fetch_game_sets_response
- rc_api_destroy_ping_response
- rc_api_destroy_resolve_hash_response
- rc_api_destroy_submit_lboard_entry_response
- rc_api_init_award_achievement_request
- rc_api_init_fetch_game_data_request
- rc_api_init_fetch_game_sets_request
- rc_api_init_fetch_image_request
- rc_api_init_ping_request
- rc_api_init_resolve_hash_request
- rc_api_init_submit_lboard_entry_request
- rc_api_process_award_achievement_response
- rc_api_process_fetch_game_data_response
- rc_api_process_fetch_game_sets_server_response
- rc_api_process_ping_response
- rc_api_process_resolve_hash_response
- rc_api_process_submit_lboard_entry_response
- rc_api_destroy_fetch_achievement_info_response
- rc_api_destroy_fetch_game_titles_response
- rc_api_destroy_fetch_games_list_response
- rc_api_destroy_fetch_hash_library_response
- rc_api_destroy_fetch_leaderboard_info_response
- rc_api_init_fetch_achievement_info_request
- rc_api_init_fetch_game_titles_request
- rc_api_init_fetch_games_list_request
- rc_api_init_fetch_hash_library_request
- rc_api_init_fetch_leaderboard_info_request
- rc_api_process_fetch_achievement_info_response
- rc_api_process_fetch_game_titles_server_response
- rc_api_process_fetch_games_list_response
- rc_api_process_fetch_hash_library_response
- rc_api_process_fetch_leaderboard_info_response