PebbleOS
Loading...
Searching...
No Matches
Data Structures | Enumerations | Functions
attributes_address.h File Reference
#include <pbl/services/timeline/item.h>
#include <stdint.h>
#include <stdbool.h>

Data Structures

struct  Address
 Contact address. More...
 
struct  AddressList
 List of addresses. More...
 

Enumerations

enum  AddressType { AddressTypeInvalid , AddressTypePhoneNumber , AddressTypeEmail }
 Address type. More...
 

Functions

bool attributes_address_parse_serial_data (uint8_t num_attributes, uint8_t num_addresses, const uint8_t *data, size_t data_size, size_t *string_alloc_size_out, uint8_t *attributes_per_address_out)
 Parse serialized attributes and addresses to size the deserialization buffer.
 
size_t attributes_address_get_buffer_size (uint8_t num_attributes, uint8_t num_addresses, const uint8_t *attributes_per_address, size_t required_size_for_strings)
 Get the buffer size needed to store attributes, addresses and their strings.
 
void attributes_address_init (AttributeList *attr_list, AddressList *addr_list, uint8_t **buffer, uint8_t num_attributes, uint8_t num_addresses, const uint8_t *attributes_per_address)
 Lay out an attribute list and an address list in a buffer.
 
bool attributes_address_deserialize (AttributeList *attr_list, AddressList *addr_list, uint8_t *buffer, uint8_t *buf_end, const uint8_t *payload, size_t payload_size)
 Fill an attribute list and an address list from serialized data.
 
size_t attributes_address_get_serialized_payload_size (AttributeList *list, AddressList *addr_list)
 Get the serialized size of an attribute list and an address list.
 
size_t attributes_address_serialize_payload (AttributeList *attr_list, AddressList *addr_list, uint8_t *buffer, size_t buffer_size)
 Serialize an attribute list and an address list.