1*5e7646d2SAndroid Build Coastguard Worker /* 2*5e7646d2SAndroid Build Coastguard Worker * CUPS cupsGetDests API test program for CUPS. 3*5e7646d2SAndroid Build Coastguard Worker * 4*5e7646d2SAndroid Build Coastguard Worker * Copyright 2017 by Apple Inc. 5*5e7646d2SAndroid Build Coastguard Worker * 6*5e7646d2SAndroid Build Coastguard Worker * Licensed under Apache License v2.0. See the file "LICENSE" for more information. 7*5e7646d2SAndroid Build Coastguard Worker */ 8*5e7646d2SAndroid Build Coastguard Worker 9*5e7646d2SAndroid Build Coastguard Worker /* 10*5e7646d2SAndroid Build Coastguard Worker * Include necessary headers... 11*5e7646d2SAndroid Build Coastguard Worker */ 12*5e7646d2SAndroid Build Coastguard Worker 13*5e7646d2SAndroid Build Coastguard Worker #include <stdio.h> 14*5e7646d2SAndroid Build Coastguard Worker #include "cups.h" 15*5e7646d2SAndroid Build Coastguard Worker #include <sys/time.h> 16*5e7646d2SAndroid Build Coastguard Worker 17*5e7646d2SAndroid Build Coastguard Worker 18*5e7646d2SAndroid Build Coastguard Worker /* 19*5e7646d2SAndroid Build Coastguard Worker * 'main()' - Loop calling cupsGetDests. 20*5e7646d2SAndroid Build Coastguard Worker */ 21*5e7646d2SAndroid Build Coastguard Worker 22*5e7646d2SAndroid Build Coastguard Worker int /* O - Exit status */ main(void)23*5e7646d2SAndroid Build Coastguard Workermain(void) 24*5e7646d2SAndroid Build Coastguard Worker { 25*5e7646d2SAndroid Build Coastguard Worker int num_dests; /* Number of destinations */ 26*5e7646d2SAndroid Build Coastguard Worker cups_dest_t *dests; /* Destinations */ 27*5e7646d2SAndroid Build Coastguard Worker struct timeval start, end; /* Start and stop time */ 28*5e7646d2SAndroid Build Coastguard Worker double secs; /* Total seconds to run cupsGetDests */ 29*5e7646d2SAndroid Build Coastguard Worker 30*5e7646d2SAndroid Build Coastguard Worker 31*5e7646d2SAndroid Build Coastguard Worker for (;;) 32*5e7646d2SAndroid Build Coastguard Worker { 33*5e7646d2SAndroid Build Coastguard Worker gettimeofday(&start, NULL); 34*5e7646d2SAndroid Build Coastguard Worker num_dests = cupsGetDests(&dests); 35*5e7646d2SAndroid Build Coastguard Worker gettimeofday(&end, NULL); 36*5e7646d2SAndroid Build Coastguard Worker secs = end.tv_sec - start.tv_sec + 0.000001 * (end.tv_usec - start.tv_usec); 37*5e7646d2SAndroid Build Coastguard Worker 38*5e7646d2SAndroid Build Coastguard Worker printf("Found %d printers in %.3f seconds...\n", num_dests, secs); 39*5e7646d2SAndroid Build Coastguard Worker 40*5e7646d2SAndroid Build Coastguard Worker cupsFreeDests(num_dests, dests); 41*5e7646d2SAndroid Build Coastguard Worker sleep(1); 42*5e7646d2SAndroid Build Coastguard Worker } 43*5e7646d2SAndroid Build Coastguard Worker 44*5e7646d2SAndroid Build Coastguard Worker return (0); 45*5e7646d2SAndroid Build Coastguard Worker } 46