OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 { | 84 { |
85 // WebVTT space characters are U+0020 SPACE, U+0009 CHARACTER TABULATION
(tab), U+000A LINE FEED (LF), U+000C FORM FEED (FF), and U+000D CARRIAGE RETURN
(CR). | 85 // WebVTT space characters are U+0020 SPACE, U+0009 CHARACTER TABULATION
(tab), U+000A LINE FEED (LF), U+000C FORM FEED (FF), and U+000D CARRIAGE RETURN
(CR). |
86 return c == ' ' || c == '\t' || c == '\n' || c == '\f' || c == '\r'; | 86 return c == ' ' || c == '\t' || c == '\n' || c == '\f' || c == '\r'; |
87 } | 87 } |
88 static inline bool isValidSettingDelimiter(UChar c) | 88 static inline bool isValidSettingDelimiter(UChar c) |
89 { | 89 { |
90 // ... a WebVTT cue consists of zero or more of the following components
, in any order, separated from each other by one or more | 90 // ... a WebVTT cue consists of zero or more of the following components
, in any order, separated from each other by one or more |
91 // U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characte
rs. | 91 // U+0020 SPACE characters or U+0009 CHARACTER TABULATION (tab) characte
rs. |
92 return c == ' ' || c == '\t'; | 92 return c == ' ' || c == '\t'; |
93 } | 93 } |
94 static unsigned collectDigitsToInt(const String& input, unsigned* position,
int& number); | |
95 static bool collectTimeStamp(const String&, double& timeStamp); | 94 static bool collectTimeStamp(const String&, double& timeStamp); |
96 | 95 |
97 // Useful functions for parsing percentage settings. | 96 // Useful functions for parsing percentage settings. |
98 static bool parseFloatPercentageValue(VTTScanner& valueScanner, float& perce
ntage); | 97 static bool parseFloatPercentageValue(VTTScanner& valueScanner, float& perce
ntage); |
99 static bool parseFloatPercentageValuePair(const String&, char, FloatPoint&); | 98 static bool parseFloatPercentageValuePair(VTTScanner&, char, FloatPoint&); |
100 | 99 |
101 // Create the DocumentFragment representation of the WebVTT cue text. | 100 // Create the DocumentFragment representation of the WebVTT cue text. |
102 static PassRefPtr<DocumentFragment> createDocumentFragmentFromCueText(Docume
nt&, const String&); | 101 static PassRefPtr<DocumentFragment> createDocumentFragmentFromCueText(Docume
nt&, const String&); |
103 | 102 |
104 // Input data to the parser to parse. | 103 // Input data to the parser to parse. |
105 void parseBytes(const char* data, unsigned length); | 104 void parseBytes(const char* data, unsigned length); |
106 void flush(); | 105 void flush(); |
107 | 106 |
108 // Transfers ownership of last parsed cues to caller. | 107 // Transfers ownership of last parsed cues to caller. |
109 void getNewCues(Vector<RefPtr<VTTCue> >&); | 108 void getNewCues(Vector<RefPtr<VTTCue> >&); |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
143 VTTParserClient* m_client; | 142 VTTParserClient* m_client; |
144 | 143 |
145 Vector<RefPtr<VTTCue> > m_cuelist; | 144 Vector<RefPtr<VTTCue> > m_cuelist; |
146 | 145 |
147 Vector<RefPtr<VTTRegion> > m_regionList; | 146 Vector<RefPtr<VTTRegion> > m_regionList; |
148 }; | 147 }; |
149 | 148 |
150 } // namespace WebCore | 149 } // namespace WebCore |
151 | 150 |
152 #endif | 151 #endif |
OLD | NEW |