PebbleOS
Loading...
Searching...
No Matches
Typedefs | Functions
dls_list.h File Reference
#include "dls_private.h"
#include <applib/data_logging.h>
#include <stdint.h>
#include <time.h>

Typedefs

typedef bool(* DlsListCallback) (DataLoggingSession *, void *)
 Callback for dls_list_for_each_session().
 

Functions

DataLoggingSession * dls_list_find_by_session_id (uint8_t session_id)
 Find a session by ID.
 
DataLoggingSession * dls_list_find_active_session (uint32_t tag, const Uuid *app_uuid)
 Find the active session with a given tag and owner.
 
void dls_list_remove_session (DataLoggingSession *logging_session)
 Remove a session from the list and free it.
 
void dls_list_remove_all (void)
 Free all sessions in memory without touching flash.
 
uint8_t dls_list_add_new_session (DataLoggingSession *logging_session)
 Assign a new random unique ID to a session and add it to the list.
 
void dls_list_insert_session (DataLoggingSession *logging_session)
 Add a session that already has an ID.
 
DataLoggingSession * dls_list_create_session (uint32_t tag, DataLoggingItemType type, uint16_t size, const Uuid *app_uuid, time_t timestamp, DataLoggingStatus status)
 Allocate a session.
 
DataLoggingSession * dls_list_get_next (DataLoggingSession *cur)
 Iterate over the session list.
 
bool dls_list_for_each_session (DlsListCallback cb, void *data)
 Call a callback for each session, with the list mutex held.
 
void dls_list_init (void)
 Initialize the session list.
 
bool dls_list_is_session_valid (DataLoggingSession *logging_session)
 Check whether a pointer refers to a session in the list.
 
bool dls_lock_session (DataLoggingSession *session)
 Lock an active session.
 
void dls_unlock_session (DataLoggingSession *session, bool inactivate)
 Unlock a session locked with dls_lock_session().
 
DataLoggingStatus dls_get_session_status (DataLoggingSession *session)
 Get the status of a session.
 
void dls_assert_own_list_mutex (void)
 Assert that the current task owns the list mutex.
 
void dls_list_lock (void)
 Lock the list mutex (recursive).
 
void dls_list_unlock (void)
 Unlock the list mutex (recursive).