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; |
| 19 |
| 20 namespace base { |
18 class DictionaryValue; | 21 class DictionaryValue; |
19 class FilePath; | 22 } |
20 | 23 |
21 namespace printing { | 24 namespace printing { |
22 class PrintBackend; | 25 class PrintBackend; |
23 struct PrinterBasicInfo; | 26 struct PrinterBasicInfo; |
24 struct PrinterCapsAndDefaults; | 27 struct PrinterCapsAndDefaults; |
25 } | 28 } |
26 | 29 |
27 // This is the interface for platform-specific code for cloud print | 30 // This is the interface for platform-specific code for cloud print |
28 namespace cloud_print { | 31 namespace cloud_print { |
29 | 32 |
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
190 // that used for the HTTP Accept: header. | 193 // that used for the HTTP Accept: header. |
191 virtual std::string GetSupportedMimeTypes() = 0; | 194 virtual std::string GetSupportedMimeTypes() = 0; |
192 | 195 |
193 // Generate unique for proxy. | 196 // Generate unique for proxy. |
194 static std::string GenerateProxyId(); | 197 static std::string GenerateProxyId(); |
195 | 198 |
196 // Call this function to obtain printing system for specified print server. | 199 // Call this function to obtain printing system for specified print server. |
197 // If print settings are NULL, default settings will be used. | 200 // If print settings are NULL, default settings will be used. |
198 // Return NULL if no print system available. | 201 // Return NULL if no print system available. |
199 static scoped_refptr<PrintSystem> CreateInstance( | 202 static scoped_refptr<PrintSystem> CreateInstance( |
200 const DictionaryValue* print_system_settings); | 203 const base::DictionaryValue* print_system_settings); |
201 }; | 204 }; |
202 | 205 |
203 | 206 |
204 // This typedef is to workaround the issue with certain versions of | 207 // This typedef is to workaround the issue with certain versions of |
205 // Visual Studio where it gets confused between multiple Delegate | 208 // Visual Studio where it gets confused between multiple Delegate |
206 // classes and gives a C2500 error. (I saw this error on the try bots - | 209 // classes and gives a C2500 error. (I saw this error on the try bots - |
207 // the workaround was not needed for my machine). | 210 // the workaround was not needed for my machine). |
208 typedef PrintSystem::PrintServerWatcher::Delegate PrintServerWatcherDelegate; | 211 typedef PrintSystem::PrintServerWatcher::Delegate PrintServerWatcherDelegate; |
209 typedef PrintSystem::PrinterWatcher::Delegate PrinterWatcherDelegate; | 212 typedef PrintSystem::PrinterWatcher::Delegate PrinterWatcherDelegate; |
210 typedef PrintSystem::JobSpooler::Delegate JobSpoolerDelegate; | 213 typedef PrintSystem::JobSpooler::Delegate JobSpoolerDelegate; |
211 | 214 |
212 } // namespace cloud_print | 215 } // namespace cloud_print |
213 | 216 |
214 #endif // CHROME_SERVICE_CLOUD_PRINT_PRINT_SYSTEM_H_ | 217 #endif // CHROME_SERVICE_CLOUD_PRINT_PRINT_SYSTEM_H_ |
OLD | NEW |