OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CHROME_SERVICE_CLOUD_PRINT_PRINT_SYSTEM_H_ | 5 #ifndef CHROME_SERVICE_CLOUD_PRINT_PRINT_SYSTEM_H_ |
6 #define CHROME_SERVICE_CLOUD_PRINT_PRINT_SYSTEM_H_ | 6 #define CHROME_SERVICE_CLOUD_PRINT_PRINT_SYSTEM_H_ |
7 #pragma once | 7 #pragma once |
8 | 8 |
9 #include <map> | 9 #include <map> |
10 #include <string> | 10 #include <string> |
11 #include <vector> | 11 #include <vector> |
12 | 12 |
13 #include "base/callback_old.h" | 13 #include "base/callback_old.h" |
14 #include "base/memory/ref_counted.h" | 14 #include "base/memory/ref_counted.h" |
15 | 15 |
16 #include "printing/backend/print_backend.h" | 16 #include "printing/backend/print_backend.h" |
17 | 17 |
18 class FilePath; | 18 class FilePath; |
19 | 19 |
20 namespace base { | 20 namespace base { |
21 class DictionaryValue; | 21 class DictionaryValue; |
22 } | 22 } |
23 | 23 |
24 namespace printing { | 24 namespace printing { |
25 class PrintBackend; | |
26 struct PrinterBasicInfo; | 25 struct PrinterBasicInfo; |
27 struct PrinterCapsAndDefaults; | 26 struct PrinterCapsAndDefaults; |
28 } | 27 } |
29 | 28 |
30 // This is the interface for platform-specific code for cloud print | 29 // This is the interface for platform-specific code for cloud print |
31 namespace cloud_print { | 30 namespace cloud_print { |
32 | 31 |
33 typedef int PlatformJobId; | 32 typedef int PlatformJobId; |
34 | 33 |
35 enum PrintJobStatus { | 34 enum PrintJobStatus { |
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
172 // Returns true if printer_name points to a valid printer. | 171 // Returns true if printer_name points to a valid printer. |
173 virtual bool IsValidPrinter(const std::string& printer_name) = 0; | 172 virtual bool IsValidPrinter(const std::string& printer_name) = 0; |
174 | 173 |
175 // Returns true if ticket is valid. | 174 // Returns true if ticket is valid. |
176 virtual bool ValidatePrintTicket(const std::string& printer_name, | 175 virtual bool ValidatePrintTicket(const std::string& printer_name, |
177 const std::string& print_ticket_data) = 0; | 176 const std::string& print_ticket_data) = 0; |
178 | 177 |
179 // Get details for already spooled job. | 178 // Get details for already spooled job. |
180 virtual bool GetJobDetails(const std::string& printer_name, | 179 virtual bool GetJobDetails(const std::string& printer_name, |
181 PlatformJobId job_id, | 180 PlatformJobId job_id, |
182 PrintJobDetails *job_details) = 0; | 181 PrintJobDetails* job_details) = 0; |
183 | 182 |
184 // Factory methods to create corresponding watcher. Callee is responsible | 183 // Factory methods to create corresponding watcher. Callee is responsible |
185 // for deleting objects. Return NULL if failed. | 184 // for deleting objects. Return NULL if failed. |
186 virtual PrintServerWatcher* CreatePrintServerWatcher() = 0; | 185 virtual PrintServerWatcher* CreatePrintServerWatcher() = 0; |
187 virtual PrinterWatcher* CreatePrinterWatcher( | 186 virtual PrinterWatcher* CreatePrinterWatcher( |
188 const std::string& printer_name) = 0; | 187 const std::string& printer_name) = 0; |
189 virtual JobSpooler* CreateJobSpooler() = 0; | 188 virtual JobSpooler* CreateJobSpooler() = 0; |
190 | 189 |
191 // Returns a comma separated list of mimetypes for print data that are | 190 // Returns a comma separated list of mimetypes for print data that are |
192 // supported by this print system. The format of this string is the same as | 191 // supported by this print system. The format of this string is the same as |
(...skipping 15 matching lines...) Expand all Loading... |
208 // Visual Studio where it gets confused between multiple Delegate | 207 // Visual Studio where it gets confused between multiple Delegate |
209 // classes and gives a C2500 error. (I saw this error on the try bots - | 208 // classes and gives a C2500 error. (I saw this error on the try bots - |
210 // the workaround was not needed for my machine). | 209 // the workaround was not needed for my machine). |
211 typedef PrintSystem::PrintServerWatcher::Delegate PrintServerWatcherDelegate; | 210 typedef PrintSystem::PrintServerWatcher::Delegate PrintServerWatcherDelegate; |
212 typedef PrintSystem::PrinterWatcher::Delegate PrinterWatcherDelegate; | 211 typedef PrintSystem::PrinterWatcher::Delegate PrinterWatcherDelegate; |
213 typedef PrintSystem::JobSpooler::Delegate JobSpoolerDelegate; | 212 typedef PrintSystem::JobSpooler::Delegate JobSpoolerDelegate; |
214 | 213 |
215 } // namespace cloud_print | 214 } // namespace cloud_print |
216 | 215 |
217 #endif // CHROME_SERVICE_CLOUD_PRINT_PRINT_SYSTEM_H_ | 216 #endif // CHROME_SERVICE_CLOUD_PRINT_PRINT_SYSTEM_H_ |
OLD | NEW |