PerformanceTimingTypes.ipdlh (1494B)
1 /* This Source Code Form is subject to the terms of the Mozilla Public 2 * License, v. 2.0. If a copy of the MPL was not distributed with this 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 4 5 using class mozilla::TimeStamp from "mozilla/TimeStamp.h"; 6 using DOMHighResTimeStamp from "nsDOMNavigationTiming.h"; 7 using nsITimedChannel::BodyInfoAccess from "mozilla/dom/PerformanceTimingIPCUtils.h"; 8 9 namespace mozilla { 10 namespace dom { 11 12 struct IPCServerTiming { 13 nsCString name; 14 double duration; 15 nsCString description; 16 }; 17 18 struct IPCPerformanceTimingData { 19 IPCServerTiming[] serverTiming; 20 nsString nextHopProtocol; 21 TimeStamp asyncOpen; 22 TimeStamp redirectStart; 23 TimeStamp redirectEnd; 24 TimeStamp domainLookupStart; 25 TimeStamp domainLookupEnd; 26 TimeStamp connectStart; 27 TimeStamp secureConnectionStart; 28 TimeStamp connectEnd; 29 TimeStamp requestStart; 30 TimeStamp responseStart; 31 TimeStamp cacheReadStart; 32 TimeStamp responseEnd; 33 TimeStamp cacheReadEnd; 34 TimeStamp workerStart; 35 TimeStamp workerRequestStart; 36 TimeStamp workerResponseEnd; 37 DOMHighResTimeStamp zeroTime; 38 DOMHighResTimeStamp fetchStart; 39 uint64_t encodedBodySize; 40 uint64_t transferSize; 41 uint64_t decodedBodySize; 42 uint16_t responseStatus; 43 uint8_t redirectCount; 44 bool renderBlocking; 45 nsString contentType; 46 bool allRedirectsSameOrigin; 47 bool allRedirectsPassTAO; 48 bool secureConnection; 49 BodyInfoAccess bodyInfoAccessAllowed; 50 bool timingAllowed; 51 bool initialized; 52 }; 53 54 } 55 }