Pepper_31_C++_interfaces
printing_dev.h
Go to the documentation of this file.
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef PPAPI_CPP_DEV_PRINTING_DEV_H_
6 #define PPAPI_CPP_DEV_PRINTING_DEV_H_
7 
8 #include "ppapi/c/dev/ppp_printing_dev.h"
9 #include "ppapi/cpp/completion_callback.h"
10 #include "ppapi/cpp/instance_handle.h"
11 #include "ppapi/cpp/resource.h"
12 
13 namespace pp {
14 
15 class Instance;
16 
17 // You would typically use this either via inheritance on your instance or
18 // by composition: see find_dev.h for an example.
19 class Printing_Dev : public Resource {
20  public:
21  // The instance parameter must outlive this class.
22  explicit Printing_Dev(Instance* instance);
23  virtual ~Printing_Dev();
24 
25  // PPP_Printing_Dev functions exposed as virtual functions for you to
26  // override.
27  virtual uint32_t QuerySupportedPrintOutputFormats() = 0;
28  virtual int32_t PrintBegin(const PP_PrintSettings_Dev& print_settings) = 0;
29  virtual Resource PrintPages(const PP_PrintPageNumberRange_Dev* page_ranges,
30  uint32_t page_range_count) = 0;
31  virtual void PrintEnd() = 0;
32  virtual bool IsPrintScalingDisabled() = 0;
33 
34  // PPB_Printing_Dev functions.
35  // Returns true if the browser supports the required PPB_Printing_Dev
36  // interface.
37  static bool IsAvailable();
38 
39  // Get the default print settings and store them in the output of |callback|.
42 
43  private:
44  InstanceHandle associated_instance_;
45 };
46 
47 } // namespace pp
48 
49 #endif // PPAPI_CPP_DEV_PRINTING_DEV_H_
virtual Resource PrintPages(const PP_PrintPageNumberRange_Dev *page_ranges, uint32_t page_range_count)=0
static bool IsAvailable()
int32_t GetDefaultPrintSettings(const CompletionCallbackWithOutput< PP_PrintSettings_Dev > &callback) const
virtual int32_t PrintBegin(const PP_PrintSettings_Dev &print_settings)=0
Printing_Dev(Instance *instance)
virtual ~Printing_Dev()
virtual bool IsPrintScalingDisabled()=0
A reference counted module resource.
Definition: resource.h:18
virtual void PrintEnd()=0
virtual uint32_t QuerySupportedPrintOutputFormats()=0