43 lines
1.2 KiB
C
43 lines
1.2 KiB
C
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
||
|
// Licensed under the MIT License.
|
||
|
|
||
|
#ifndef CONNECTION_EXERCISER_H
|
||
|
#define CONNECTION_EXERCISER_H
|
||
|
|
||
|
#include <k4a/k4atypes.h>
|
||
|
|
||
|
// The connection exerciser has 4 active ports plus a everything disconnected "port".
|
||
|
// Port 0 is the disconnected port. Ports 1-4 are the active ports.
|
||
|
#define CONN_EX_MAX_NUM_PORTS 5
|
||
|
|
||
|
typedef struct connection_exerciser_internal_t *pconnection_exerciser_internal_t;
|
||
|
|
||
|
class connection_exerciser
|
||
|
{
|
||
|
public:
|
||
|
connection_exerciser();
|
||
|
~connection_exerciser();
|
||
|
|
||
|
k4a_result_t find_connection_exerciser();
|
||
|
|
||
|
k4a_result_t set_usb_port(int port);
|
||
|
|
||
|
// Returns -1 on failure.
|
||
|
int get_usb_port();
|
||
|
|
||
|
// Returns -1 on failure.
|
||
|
float get_voltage_reading();
|
||
|
|
||
|
// Returns -1 on failure.
|
||
|
float get_current_reading();
|
||
|
|
||
|
private:
|
||
|
k4a_result_t send_command(const char *command, const char *parameter);
|
||
|
k4a_result_t send_command(const char *command, const char *parameter, char *response, size_t size);
|
||
|
template<size_t size> k4a_result_t send_command(const char *command, const char *parameter, char (&response)[size]);
|
||
|
|
||
|
pconnection_exerciser_internal_t state;
|
||
|
};
|
||
|
|
||
|
#endif /* CONNECTION_EXERCISER_H */
|