19 #ifndef NET_INSTAWEB_REWRITER_PUBLIC_CRITICAL_IMAGES_BEACON_FILTER_H_
20 #define NET_INSTAWEB_REWRITER_PUBLIC_CRITICAL_IMAGES_BEACON_FILTER_H_
24 #include "pagespeed/kernel/base/basictypes.h"
25 #include "pagespeed/kernel/base/string_util.h"
27 namespace net_instaweb {
40 static const char* kImageOnloadCode;
47 virtual void DetermineEnabled(GoogleString* disabled_reason);
49 static void InitStats(Statistics* statistics);
52 virtual void EndDocument();
53 virtual void StartElementImpl(HtmlElement* element) { }
54 virtual void EndElementImpl(HtmlElement* element);
55 virtual const char* Name()
const {
return "CriticalImagesBeacon"; }
60 static bool ShouldApply(RewriteDriver* rewrite_driver);
68 void MaybeAddBeaconJavascript(HtmlElement* element);
70 BeaconMetadata beacon_metadata_;
71 StringSet image_url_hashes_;
72 bool insert_beacon_js_;
74 Variable* critical_images_beacon_added_count_;
76 bool added_beacon_js_;
78 DISALLOW_COPY_AND_ASSIGN(CriticalImagesBeaconFilter);
Definition: common_filter.h:48
static bool ShouldApply(RewriteDriver *rewrite_driver)
Definition: critical_images_beacon_filter.h:38
static const char kCriticalImagesBeaconAddedCount[]
Counters.
Definition: critical_images_beacon_filter.h:42
Definition: rewrite_driver.h:98
virtual void StartDocumentImpl()
Definition: critical_images_beacon_filter.h:51