1 /* 2 * $Id$ 3 * 4 * Global opaque types that had better be predefined 5 * Copyright (C) 2009, Rutger Hofman 6 * 7 * This program is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU General Public License 9 * as published by the Free Software Foundation; either version 2 10 * of the License, or (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, write to the Free Software 19 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 20 * 02111-1307, USA. 21 * 22 * Author: Rutger Hofman, VU Amsterdam 23 * 24 */ 25 26 #ifndef URJ_URJ_TYPES_H 27 #define URJ_URJ_TYPES_H 28 29 typedef struct URJ_BUS urj_bus_t; 30 typedef struct URJ_BUS_DRIVER urj_bus_driver_t; 31 typedef struct URJ_CHAIN urj_chain_t; 32 typedef struct URJ_CABLE urj_cable_t; 33 typedef struct URJ_USBCONN urj_usbconn_t; 34 typedef struct URJ_PARPORT urj_parport_t; 35 typedef struct URJ_PART urj_part_t; 36 typedef struct URJ_PARTS urj_parts_t; 37 typedef struct URJ_PART_SIGNAL urj_part_signal_t; 38 typedef struct URJ_PART_SALIAS urj_part_salias_t; 39 typedef struct URJ_PART_INSTRUCTION urj_part_instruction_t; 40 typedef struct URJ_PART_PARAMS urj_part_params_t; 41 typedef struct URJ_PART_INIT urj_part_init_t; 42 typedef struct URJ_DATA_REGISTER urj_data_register_t; 43 typedef struct URJ_BSBIT urj_bsbit_t; 44 typedef struct URJ_TAP_REGISTER urj_tap_register_t; 45 46 /** 47 * Log levels 48 */ 49 typedef enum URJ_LOG_LEVEL 50 { 51 URJ_LOG_LEVEL_ALL, /**< every single bit as it is transmitted */ 52 URJ_LOG_LEVEL_COMM, /**< low level communication details */ 53 URJ_LOG_LEVEL_DEBUG, /**< more details of interest for developers */ 54 URJ_LOG_LEVEL_DETAIL, /**< verbose output */ 55 URJ_LOG_LEVEL_NORMAL, /**< just noteworthy info */ 56 URJ_LOG_LEVEL_WARNING, /**< unmissable warnings */ 57 URJ_LOG_LEVEL_ERROR, /**< only fatal errors */ 58 URJ_LOG_LEVEL_SILENT, /**< suppress logging output */ 59 } 60 urj_log_level_t; 61 62 #define URJ_STATUS_OK 0 63 #define URJ_STATUS_FAIL 1 64 #define URJ_STATUS_MUST_QUIT (-2) 65 66 #endif /* URJ_URJ_TYPES_H */ 67