1 /* 2 * Backend definitions for CUPS. 3 * 4 * Copyright 2007-2011 by Apple Inc. 5 * Copyright 1997-2005 by Easy Software Products. 6 * 7 * Licensed under Apache License v2.0. See the file "LICENSE" for more information. 8 */ 9 10 #ifndef _CUPS_BACKEND_H_ 11 # define _CUPS_BACKEND_H_ 12 13 14 /* 15 * Include necessary headers... 16 */ 17 18 # include "versioning.h" 19 20 21 /* 22 * C++ magic... 23 */ 24 25 # ifdef __cplusplus 26 extern "C" { 27 # endif /* __cplusplus */ 28 29 /* 30 * Constants... 31 */ 32 33 enum cups_backend_e /**** Backend exit codes ****/ 34 { 35 CUPS_BACKEND_OK = 0, /* Job completed successfully */ 36 CUPS_BACKEND_FAILED = 1, /* Job failed, use error-policy */ 37 CUPS_BACKEND_AUTH_REQUIRED = 2, /* Job failed, authentication required */ 38 CUPS_BACKEND_HOLD = 3, /* Job failed, hold job */ 39 CUPS_BACKEND_STOP = 4, /* Job failed, stop queue */ 40 CUPS_BACKEND_CANCEL = 5, /* Job failed, cancel job */ 41 CUPS_BACKEND_RETRY = 6, /* Job failed, retry this job later */ 42 CUPS_BACKEND_RETRY_CURRENT = 7 /* Job failed, retry this job immediately */ 43 }; 44 typedef enum cups_backend_e cups_backend_t; 45 /**** Backend exit codes ****/ 46 47 48 /* 49 * Prototypes... 50 */ 51 52 extern const char *cupsBackendDeviceURI(char **argv) _CUPS_API_1_2; 53 extern void cupsBackendReport(const char *device_scheme, 54 const char *device_uri, 55 const char *device_make_and_model, 56 const char *device_info, 57 const char *device_id, 58 const char *device_location) 59 _CUPS_API_1_4; 60 61 62 # ifdef __cplusplus 63 } 64 # endif /* __cplusplus */ 65 66 #endif /* !_CUPS_BACKEND_H_ */ 67