MIP SDK  0.0.1
MicroStrain Communications Library for embedded systems
Classes | Namespaces | Typedefs | Functions
mip_interface.h File Reference
#include <stdint.h>
#include <stddef.h>
#include "mip_parser.h"
#include "mip_cmdqueue.h"
#include "mip_dispatch.h"
Include dependency graph for mip_interface.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  mip::C::mip_interface
 State of the interface for communicating with a MIP device. More...
 

Namespaces

 mip
 A collection of C++ classes and functions covering the full mip api.
 
 mip::C
 

Typedefs

typedef bool(* mip::C::mip_update_callback) (struct mip_interface *device, bool blocking)
 Callback function typedef for custom update behavior. More...
 
typedef struct mip::C::mip_interface mip::C::mip_interface
 State of the interface for communicating with a MIP device. More...
 

Functions

void mip::C::mip_interface_init (mip_interface *device, uint8_t *parse_buffer, size_t parse_buffer_size, timeout_type parse_timeout, timeout_type base_reply_timeout)
 
remaining_count mip::C::mip_interface_receive_bytes (mip_interface *device, const uint8_t *data, size_t length, timestamp_type timestamp)
 
void mip::C::mip_interface_process_unparsed_packets (mip_interface *device)
 
bool mip::C::mip_interface_update (mip_interface *device, bool blocking)
 
bool mip::C::mip_interface_default_update (mip_interface *device, bool blocking)
 
bool mip::C::mip_interface_send_to_device (mip_interface *device, const uint8_t *data, size_t length)
 
bool mip::C::mip_interface_parse_callback (void *device, const mip_packet *packet, timestamp_type timestamp)
 
void mip::C::mip_interface_receive_packet (mip_interface *device, const mip_packet *packet, timestamp_type timestamp)
 
enum mip_cmd_result mip::C::mip_interface_wait_for_reply (mip_interface *device, const mip_pending_cmd *cmd)
 
enum mip_cmd_result mip::C::mip_interface_run_command (mip_interface *device, uint8_t descriptor_set, uint8_t field_descriptor, const uint8_t *payload, uint8_t payload_length)
 
enum mip_cmd_result mip::C::mip_interface_run_command_with_response (mip_interface *device, uint8_t descriptor_set, uint8_t field_descriptor, const uint8_t *payload, uint8_t payload_length, uint8_t response_descriptor, uint8_t *response_data, uint8_t *response_length_inout)
 
enum mip_cmd_result mip::C::mip_interface_run_command_packet (mip_interface *device, const mip_packet *packet, mip_pending_cmd *cmd)
 
bool mip::C::mip_interface_start_command_packet (mip_interface *device, const mip_packet *packet, mip_pending_cmd *cmd)
 
void mip::C::mip_interface_register_packet_callback (mip_interface *device, mip_dispatch_handler *handler, uint8_t descriptor_set, bool after_fields, mip_dispatch_packet_callback callback, void *user_data)
 
void mip::C::mip_interface_register_field_callback (mip_interface *device, mip_dispatch_handler *handler, uint8_t descriptor_set, uint8_t field_descriptor, mip_dispatch_field_callback callback, void *user_data)
 
void mip::C::mip_interface_register_extractor (mip_interface *device, mip_dispatch_handler *handler, uint8_t descriptor_set, uint8_t field_descriptor, mip_dispatch_extractor callback, void *field_ptr)
 
void mip::C::mip_interface_set_update_function (mip_interface *device, mip_update_callback function)
 
void mip::C::mip_interface_set_user_pointer (mip_interface *device, void *pointer)
 
void mip::C::mip_interface_set_max_packets_per_update (mip_interface *device, unsigned int max_packets)
 
unsigned int mip::C::mip_interface_max_packets_per_update (const mip_interface *device)
 
mip_update_callback mip::C::mip_interface_update_function (mip_interface *device)
 
void * mip::C::mip_interface_user_pointer (const mip_interface *device)
 
mip_parser * mip::C::mip_interface_parser (mip_interface *device)
 
mip_cmd_queue * mip::C::mip_interface_cmd_queue (mip_interface *device)
 
bool mip::C::mip_interface_user_recv_from_device (mip_interface *device, uint8_t *buffer, size_t max_length, size_t *out_length, timestamp_type *timestamp_out)
 Receives new data from the device. Called repeatedly by mip_interface_update() while waiting for command responses. More...
 
bool mip::C::mip_interface_user_send_to_device (mip_interface *device, const uint8_t *data, size_t length)