1 /* Copyright (c) 2014 The Chromium OS Authors. All rights reserved. 2 * Use of this source code is governed by a BSD-style license that can be 3 * found in the LICENSE file. 4 */ 5 6 #ifndef TEST_IODEV_H_ 7 #define TEST_IODEV_H_ 8 9 #include "cras_types.h" 10 11 struct cras_iodev; 12 13 /* Initializes an test iodev. The Test iodev is used to simulate hardware 14 * iodevs when they aren't available. 15 * Args: 16 * direciton - input or output. 17 * type - The test type. 18 * Returns: 19 * A pointer to the newly created iodev if successful, NULL otherwise. 20 */ 21 struct cras_iodev *test_iodev_create(enum CRAS_STREAM_DIRECTION direction, 22 enum TEST_IODEV_TYPE type); 23 24 /* Destroys an test_iodev created with test_iodev_create. */ 25 void test_iodev_destroy(struct cras_iodev *iodev); 26 27 /* Handle a test commdn to the given iodev. */ 28 void test_iodev_command(struct cras_iodev *iodev, 29 enum CRAS_TEST_IODEV_CMD command, 30 unsigned int data_len, 31 const uint8_t *data); 32 33 #endif /* TEST_IODEV_H_ */ 34