19 #ifndef NET_INSTAWEB_REWRITER_PUBLIC_IMAGE_COMBINE_FILTER_H_
20 #define NET_INSTAWEB_REWRITER_PUBLIC_IMAGE_COMBINE_FILTER_H_
28 #include "net/instaweb/util/public/url_multipart_encoder.h"
37 namespace net_instaweb {
45 class UrlSegmentEncoder;
63 static void InitStats(Statistics* statistics);
80 Css::Declarations* decls,
82 MessageHandler* handler);
89 const StringPiece& css_text);
96 virtual const UrlSegmentEncoder*
encoder()
const {
return &encoder_; }
97 virtual const char* Name()
const {
return "ImageCombine"; }
99 virtual void StartElementImpl(HtmlElement* element) {}
100 virtual void EndElementImpl(HtmlElement* element) {}
103 virtual const char*
id()
const {
return RewriteOptions::kImageCombineId; }
110 Context* MakeNestedContext(
RewriteContext* parent,
const GoogleUrl& css_url,
111 const StringPiece& css_text);
112 bool GetDeclarationDimensions(Css::Declarations* declarations,
113 int* width,
int* height);
114 void AddFilesReducedStat(
int reduced);
116 Variable* image_file_count_reduction_;
118 UrlMultipartEncoder encoder_;
void Reset(RewriteContext *context, const GoogleUrl &css_url, const StringPiece &css_text)
Creates a new context for doing spriting, but does not register it.
Context used by CssFilter under async flow.
Definition: css_filter.h:257
virtual const char * id() const
Image rewriting was originally, but is no longer, a single CSS.
Definition: image_combine_filter.h:103
virtual void StartDocumentImpl()
Definition: image_combine_filter.h:98
void RegisterOrReleaseContext()
bool AddCssBackgroundContext(const GoogleUrl &original_url, const GoogleUrl &base_url, Css::Values *values, int value_index, CssFilter::Context *parent, Css::Declarations *decls, bool *is_authorized, MessageHandler *handler)
virtual const UrlSegmentEncoder * encoder() const
Definition: image_combine_filter.h:96
Definition: rewrite_filter.h:37
Definition: rewrite_driver.h:98
OutputResourcePtr MakeOutput()
Create the combination with the current combiner.
Definition: rewrite_context.h:144
Definition: image_combine_filter.h:58
const GoogleUrl & base_url() const
Getters.