/[TS3.SkuReader]/tags/1.0.0.13211/s3pi.Interfaces.xml
ViewVC logotype

Contents of /tags/1.0.0.13211/s3pi.Interfaces.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 62 - (show annotations) (download) (as text)
Sat Jun 23 23:48:16 2012 UTC (7 years, 8 months ago) by william
File MIME type: text/xml
File size: 276289 byte(s)


1 <?xml version="1.0"?>
2 <doc>
3 <assembly>
4 <name>s3pi.Interfaces</name>
5 </assembly>
6 <members>
7 <member name="T:s3pi.Interfaces.Quaternion">
8 <summary>
9 Defines a quaternion - the quotient of two vectors.
10 </summary>
11 </member>
12 <member name="T:s3pi.Interfaces.AHandlerElement">
13 <summary>
14 A useful extension to <see cref="T:s3pi.Interfaces.AApiVersionedFields"/> where a change handler is required
15 </summary>
16 </member>
17 <member name="T:s3pi.Interfaces.AApiVersionedFields">
18 <summary>
19 API Objects should all descend from this Abstract class.
20 It will provide versioning support -- when implemented.
21 It provides ContentFields support
22 </summary>
23 </member>
24 <member name="T:s3pi.Interfaces.IApiVersion">
25 <summary>
26 Support for API versioning
27 </summary>
28 </member>
29 <member name="P:s3pi.Interfaces.IApiVersion.RequestedApiVersion">
30 <summary>
31 The version of the API in use
32 </summary>
33 </member>
34 <member name="P:s3pi.Interfaces.IApiVersion.RecommendedApiVersion">
35 <summary>
36 The best supported version of the API available
37 </summary>
38 </member>
39 <member name="T:s3pi.Interfaces.IContentFields">
40 <summary>
41 Standardised interface to API objects (hiding the reflection)
42 </summary>
43 </member>
44 <member name="P:s3pi.Interfaces.IContentFields.ContentFields">
45 <summary>
46 A <c>List&lt;string&gt;</c> of available field names on object
47 </summary>
48 </member>
49 <member name="P:s3pi.Interfaces.IContentFields.Item(System.String)">
50 <summary>
51 A <see cref="T:s3pi.Interfaces.TypedValue"/> on this object
52 </summary>
53 <param name="index">The <see cref="T:System.String"/> representing the name of the field
54 (i.e. one of the values from <see cref="P:s3pi.Interfaces.IContentFields.ContentFields"/>)</param>
55 <returns>The <see cref="T:s3pi.Interfaces.TypedValue"/> of field <paramref name="index"/> on this API object.</returns>
56 <exception cref="T:System.ArgumentOutOfRangeException">Thrown when an unknown index name is requested</exception>
57 </member>
58 <member name="F:s3pi.Interfaces.AApiVersionedFields.requestedApiVersion">
59 <summary>
60 Versioning is not currently implemented
61 Set this to the version of the API requested on object creation
62 </summary>
63 </member>
64 <member name="M:s3pi.Interfaces.AApiVersionedFields.GetContentFields(System.Int32,System.Type)">
65 <summary>
66 Versioning is not currently implemented
67 Return the list of fields for a given API Class
68 </summary>
69 <param name="APIversion">Set to 0 (== "best")</param>
70 <param name="t">The class type for which to get the fields</param>
71 <returns>List of field names for the given API version</returns>
72 </member>
73 <member name="M:s3pi.Interfaces.AApiVersionedFields.GetTGIBlocks(s3pi.Interfaces.AApiVersionedFields,System.String)">
74 <summary>
75 Get the TGIBlock list for a Content Field.
76 </summary>
77 <param name="o">The object to query.</param>
78 <param name="f">The property name under inspection.</param>
79 <returns>The TGIBlock list for a Content Field, if present; otherwise <c>null</c>.</returns>
80 </member>
81 <member name="M:s3pi.Interfaces.AApiVersionedFields.GetTGIBlocks(System.String)">
82 <summary>
83 Get the TGIBlock list for a Content Field.
84 </summary>
85 <param name="f">The property name under inspection.</param>
86 <returns>The TGIBlock list for a Content Field, if present; otherwise <c>null</c>.</returns>
87 </member>
88 <member name="M:s3pi.Interfaces.AApiVersionedFields.ToString">
89 <summary>
90 Returns a <see cref="T:System.String"/> that represents the current <see cref="T:s3pi.Interfaces.AApiVersionedFields"/> object.
91 </summary>
92 <returns>A <see cref="T:System.String"/> that represents the current <see cref="T:s3pi.Interfaces.AApiVersionedFields"/> object.</returns>
93 </member>
94 <member name="M:s3pi.Interfaces.AApiVersionedFields.CompareByPriority(System.String,System.String)">
95 <summary>
96 Sorts Content Field names by their <see cref="T:s3pi.Interfaces.ElementPriorityAttribute"/> (if set)
97 </summary>
98 <param name="x">First content field name</param>
99 <param name="y">Second content field name</param>
100 <returns>A signed number indicating the relative values of this instance and value.</returns>
101 </member>
102 <member name="M:s3pi.Interfaces.AApiVersionedFields.GetContentFieldTypes(System.Int32,System.Type)">
103 <summary>
104 Gets a lookup table from fieldname to type.
105 </summary>
106 <param name="APIversion">Version of API to use</param>
107 <param name="t">API data type to query</param>
108 <returns></returns>
109 </member>
110 <member name="M:s3pi.Interfaces.AApiVersionedFields.FOURCC(System.String)">
111 <summary>
112 Convert a string (up to 8 characters) to a UInt64
113 </summary>
114 <param name="s">String to convert</param>
115 <returns>UInt64 packed representation of <paramref name="s"/></returns>
116 </member>
117 <member name="M:s3pi.Interfaces.AApiVersionedFields.FOURCC(System.UInt64)">
118 <summary>
119 Convert a UInt64 to a string (up to 8 characters, high-order zeros omitted)
120 </summary>
121 <param name="i">Bytes to convert</param>
122 <returns>String representation of <paramref name="i"/></returns>
123 </member>
124 <member name="M:s3pi.Interfaces.AApiVersionedFields.FlagNames(System.Type)">
125 <summary>
126 Return a space-separated string containing valid enumeration names for the given type
127 </summary>
128 <param name="t">Enum type</param>
129 <returns>Valid enum names</returns>
130 </member>
131 <member name="P:s3pi.Interfaces.AApiVersionedFields.RequestedApiVersion">
132 <summary>
133 The version of the API in use
134 </summary>
135 </member>
136 <member name="P:s3pi.Interfaces.AApiVersionedFields.RecommendedApiVersion">
137 <summary>
138 The best supported version of the API available
139 </summary>
140 </member>
141 <member name="P:s3pi.Interfaces.AApiVersionedFields.ContentFields">
142 <summary>
143 The list of available field names on this API object
144 </summary>
145 </member>
146 <member name="P:s3pi.Interfaces.AApiVersionedFields.Item(System.String)">
147 <summary>
148 A typed value on this object
149 </summary>
150 <param name="index">The name of the field (i.e. one of the values from ContentFields)</param>
151 <returns>The typed value of the named field</returns>
152 <exception cref="T:System.ArgumentOutOfRangeException">Thrown when an unknown index name is requested</exception>
153 </member>
154 <member name="P:s3pi.Interfaces.AApiVersionedFields.ValueBuilderFields">
155 <summary>
156 The fields ValueBuilder will return; used to eliminate those that should not be used.
157 </summary>
158 </member>
159 <member name="P:s3pi.Interfaces.AApiVersionedFields.ValueBuilder">
160 <summary>
161 Returns a string representing the value of the field (and any contained sub-fields)
162 </summary>
163 </member>
164 <member name="T:s3pi.Interfaces.AApiVersionedFields.Comparer`1">
165 <summary>
166 A class enabling sorting API objects by a ContentFields name
167 </summary>
168 <typeparam name="T">API object type</typeparam>
169 </member>
170 <member name="M:s3pi.Interfaces.AApiVersionedFields.Comparer`1.#ctor(System.String)">
171 <summary>
172 Sort API Objects by <paramref name="field"/>
173 </summary>
174 <param name="field">ContentField name to sort by</param>
175 </member>
176 <member name="M:s3pi.Interfaces.AApiVersionedFields.Comparer`1.Compare(`0,`0)">
177 <summary>
178 Compares two objects of type T and returns a value indicating whether one is less than,
179 equal to, or greater than the other.
180 </summary>
181 <param name="x">The first IContentFields object to compare.</param>
182 <param name="y">The second IContentFields object to compare.</param>
183 <returns>Value Condition Less than zero -- x is less than y.
184 Zero -- x equals y.
185 Greater than zero -- x is greater than y.</returns>
186 </member>
187 <member name="F:s3pi.Interfaces.AHandlerElement.handler">
188 <summary>
189 Holds the <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.
190 </summary>
191 </member>
192 <member name="F:s3pi.Interfaces.AHandlerElement.dirty">
193 <summary>
194 Indicates if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> has been changed by OnElementChanged()
195 </summary>
196 </member>
197 <member name="M:s3pi.Interfaces.AHandlerElement.#ctor(System.Int32,System.EventHandler)">
198 <summary>
199 Initialize a new instance
200 </summary>
201 <param name="APIversion">The requested API version.</param>
202 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
203 </member>
204 <member name="M:s3pi.Interfaces.AHandlerElement.Clone(System.EventHandler)">
205 <summary>
206 Get a copy of the <see cref="T:s3pi.Interfaces.AHandlerElement"/> but with a new change <see cref="T:System.EventHandler"/>.
207 </summary>
208 <param name="handler">The replacement <see cref="T:System.EventHandler"/> delegate.</param>
209 <returns>Return a copy of the <see cref="T:s3pi.Interfaces.AHandlerElement"/> but with a new change <see cref="T:System.EventHandler"/>.</returns>
210 </member>
211 <member name="M:s3pi.Interfaces.AHandlerElement.OnElementChanged">
212 <summary>
213 Flag the <see cref="T:s3pi.Interfaces.AHandlerElement"/> as dirty and invoke the <see cref="T:System.EventHandler"/> delegate.
214 </summary>
215 </member>
216 <member name="M:s3pi.Interfaces.Quaternion.#ctor(System.Int32,System.EventHandler)">
217 <summary>
218 Create a Quaternion { 0, 0, 0, 0 }.
219 </summary>
220 <param name="APIversion">The requested API version.</param>
221 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
222 </member>
223 <member name="M:s3pi.Interfaces.Quaternion.#ctor(System.Int32,System.EventHandler,System.IO.Stream)">
224 <summary>
225 Create a Quaternion from a <see cref="T:System.IO.Stream"/>.
226 </summary>
227 <param name="APIversion">The requested API version.</param>
228 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
229 <param name="s"><see cref="T:System.IO.Stream"/> containing coordinates.</param>
230 </member>
231 <member name="M:s3pi.Interfaces.Quaternion.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.Quaternion)">
232 <summary>
233 Create a Quaternion from a given value.
234 </summary>
235 <param name="APIversion">The requested API version.</param>
236 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
237 <param name="basis"><see cref="T:s3pi.Interfaces.Quaternion"/> to copy.</param>
238 </member>
239 <member name="M:s3pi.Interfaces.Quaternion.#ctor(System.Int32,System.EventHandler,System.Single,System.Single,System.Single,System.Single)">
240 <summary>
241 Create a Quaternion { a, b, c, d }.
242 </summary>
243 <param name="APIversion">The requested API version.</param>
244 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
245 <param name="a">Q 'a' value.</param>
246 <param name="b">Q 'b' value.</param>
247 <param name="c">Q 'c' value.</param>
248 <param name="d">Q 'd' value.</param>
249 </member>
250 <member name="M:s3pi.Interfaces.Quaternion.UnParse(System.IO.Stream)">
251 <summary>
252 Write the Quaternion to the given <see cref="T:System.IO.Stream"/>.
253 </summary>
254 <param name="s"><see cref="T:System.IO.Stream"/> to contain coordinates.</param>
255 </member>
256 <member name="M:s3pi.Interfaces.Quaternion.Clone(System.EventHandler)">
257 <summary>
258 Get a copy of the <see cref="T:s3pi.Interfaces.Quaternion"/> but with a new change <see cref="T:System.EventHandler"/>.
259 </summary>
260 <param name="handler">The replacement <see cref="T:System.EventHandler"/> delegate.</param>
261 <returns>Return a copy of the <see cref="T:s3pi.Interfaces.Quaternion"/> but with a new change <see cref="T:System.EventHandler"/>.</returns>
262 </member>
263 <member name="M:s3pi.Interfaces.Quaternion.Equals(s3pi.Interfaces.Quaternion)">
264 <summary>
265 Indicates whether the current object is equal to another object of the same type.
266 </summary>
267 <param name="other">An object to compare with this object.</param>
268 <returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
269 </member>
270 <member name="M:s3pi.Interfaces.Quaternion.Equals(System.Object)">
271 <summary>
272 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.Quaternion"/>.
273 </summary>
274 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.Quaternion"/>.</param>
275 <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.Quaternion"/>; otherwise, false.</returns>
276 </member>
277 <member name="M:s3pi.Interfaces.Quaternion.GetHashCode">
278 <summary>
279 Returns the hash code for this instance.
280 </summary>
281 <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
282 </member>
283 <member name="P:s3pi.Interfaces.Quaternion.RecommendedApiVersion">
284 <summary>
285 The best supported version of the API available
286 </summary>
287 </member>
288 <member name="P:s3pi.Interfaces.Quaternion.ContentFields">
289 <summary>
290 The list of available field names on this API object.
291 </summary>
292 </member>
293 <member name="P:s3pi.Interfaces.Quaternion.A">
294 <summary>
295 'a' value
296 </summary>
297 </member>
298 <member name="P:s3pi.Interfaces.Quaternion.B">
299 <summary>
300 'b' value
301 </summary>
302 </member>
303 <member name="P:s3pi.Interfaces.Quaternion.C">
304 <summary>
305 'c' value
306 </summary>
307 </member>
308 <member name="P:s3pi.Interfaces.Quaternion.D">
309 <summary>
310 'd' value
311 </summary>
312 </member>
313 <member name="P:s3pi.Interfaces.Quaternion.Value">
314 <summary>
315 A displayable representation of the object
316 </summary>
317 </member>
318 <member name="T:s3pi.Interfaces.VersionAttribute">
319 <summary>
320 Base class for versioning support. Not directly used by the API.
321 </summary>
322 </member>
323 <member name="M:s3pi.Interfaces.VersionAttribute.#ctor(System.Int32)">
324 <summary>
325 Version number attribute (base)
326 </summary>
327 <param name="Version">Version number</param>
328 </member>
329 <member name="P:s3pi.Interfaces.VersionAttribute.Version">
330 <summary>
331 Version number
332 </summary>
333 </member>
334 <member name="T:s3pi.Interfaces.MinimumVersionAttribute">
335 <summary>
336 Specify the Minumum version from which a field or method is supported
337 </summary>
338 </member>
339 <member name="M:s3pi.Interfaces.MinimumVersionAttribute.#ctor(System.Int32)">
340 <summary>
341 Specify the Minumum version from which a field or method is supported
342 </summary>
343 <param name="Version">Version number</param>
344 </member>
345 <member name="T:s3pi.Interfaces.MaximumVersionAttribute">
346 <summary>
347 Specify the Maximum version up to which a field or method is supported
348 </summary>
349 </member>
350 <member name="M:s3pi.Interfaces.MaximumVersionAttribute.#ctor(System.Int32)">
351 <summary>
352 Specify the Maximum version up to which a field or method is supported
353 </summary>
354 <param name="Version">Version number</param>
355 </member>
356 <member name="T:s3pi.Interfaces.DependentList`1">
357 <summary>
358 Abstract extension to <see cref="T:System.Collections.Generic.AHandlerList`1"/> adding support for <see cref="T:System.IO.Stream"/> IO
359 and partially implementing <see cref="T:s3pi.Interfaces.IGenericAdd"/>.
360 </summary>
361 <typeparam name="T"><see cref="T:System.Type"/> of list element</typeparam>
362 <seealso cref="T:System.Collections.Generic.AHandlerList`1"/>
363 <seealso cref="T:s3pi.Interfaces.IGenericAdd"/>
364 </member>
365 <member name="T:s3pi.Interfaces.IGenericAdd">
366 <summary>
367 Classes implementing this interface can have elements added with
368 an empty parameter list or
369 the list of arguments to a generic class' constructor.
370 </summary>
371 <seealso cref="T:s3pi.Interfaces.DependentList`1"/>
372 </member>
373 <member name="M:s3pi.Interfaces.IGenericAdd.Add">
374 <summary>
375 Add a default element to an <see cref="T:System.Collections.IList"/> that implements this interface.
376 </summary>
377 <exception cref="T:System.NotImplementedException">Lists of abstract classes will fail
378 with a NotImplementedException.</exception>
379 <seealso cref="T:s3pi.Interfaces.DependentList`1"/>
380 </member>
381 <member name="M:s3pi.Interfaces.IGenericAdd.Add(System.Object[])">
382 <summary>
383 Adds an entry to an <see cref="T:System.Collections.IList"/> that implements this interface.
384 </summary>
385 <param name="fields">
386 Either the object to add or the generic type's constructor arguments.
387 </param>
388 <returns>True on success</returns>
389 <seealso cref="T:s3pi.Interfaces.DependentList`1"/>
390 </member>
391 <member name="F:s3pi.Interfaces.DependentList`1.elementHandler">
392 <summary>
393 Holds the <see cref="T:System.EventHandler"/> delegate to invoke if an element in the <see cref="T:s3pi.Interfaces.DependentList`1"/> changes.
394 </summary>
395 <remarks>Work around for list event handler triggering during stream constructor and other places.</remarks>
396 </member>
397 <member name="M:s3pi.Interfaces.DependentList`1.#ctor(System.EventHandler,System.Int64)">
398 <summary>
399 Initializes a new instance of the <see cref="T:s3pi.Interfaces.DependentList`1"/> class
400 that is empty.
401 </summary>
402 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
403 <param name="maxSize">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
404 </member>
405 <member name="M:s3pi.Interfaces.DependentList`1.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{`0},System.Int64)">
406 <summary>
407 Initializes a new instance of the <see cref="T:s3pi.Interfaces.DependentList`1"/> class
408 filled with the content of <paramref name="ilt"/>.
409 </summary>
410 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
411 <param name="ilt">The initial content of the list.</param>
412 <param name="maxSize">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
413 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
414 <remarks>Calls <c>this.Add(...)</c> to ensure a fresh instance is created, rather than passing <paramref name="ilt"/> to the base constructor.</remarks>
415 </member>
416 <member name="M:s3pi.Interfaces.DependentList`1.#ctor(System.EventHandler,System.IO.Stream,System.Int64)">
417 <summary>
418 Initializes a new instance of the <see cref="T:s3pi.Interfaces.DependentList`1"/> class
419 filled from <see cref="T:System.IO.Stream"/> <paramref name="s"/>.
420 </summary>
421 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
422 <param name="s">The <see cref="T:System.IO.Stream"/> to read for the initial content of the list.</param>
423 <param name="maxSize">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
424 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
425 </member>
426 <member name="M:s3pi.Interfaces.DependentList`1.Parse(System.IO.Stream)">
427 <summary>
428 Read list entries from a stream
429 </summary>
430 <param name="s">Stream containing list entries</param>
431 <remarks>This method bypasses <see cref="M:s3pi.Interfaces.DependentList`1.Add(System.Object[])"/>
432 because <see cref="M:s3pi.Interfaces.DependentList`1.CreateElement(System.IO.Stream,System.Boolean@)"/> must take care of the same issues.</remarks>
433 </member>
434 <member name="M:s3pi.Interfaces.DependentList`1.ReadCount(System.IO.Stream)">
435 <summary>
436 Return the number of elements to be created.
437 </summary>
438 <param name="s"><see cref="T:System.IO.Stream"/> being processed.</param>
439 <returns>The number of elements to be created.</returns>
440 </member>
441 <member name="M:s3pi.Interfaces.DependentList`1.CreateElement(System.IO.Stream)">
442 <summary>
443 Create a new element from the <see cref="T:System.IO.Stream"/>.
444 </summary>
445 <param name="s">Stream containing element data.</param>
446 <returns>A new element.</returns>
447 </member>
448 <member name="M:s3pi.Interfaces.DependentList`1.CreateElement(System.IO.Stream,System.Boolean@)">
449 <summary>
450 Create a new element from the <see cref="T:System.IO.Stream"/> and indicates whether it counts towards the number of elements to be created.
451 </summary>
452 <param name="s"><see cref="T:System.IO.Stream"/> containing element data.</param>
453 <param name="inc">Whether this call towards the number of elements to be created.</param>
454 <returns>A new element.</returns>
455 </member>
456 <member name="M:s3pi.Interfaces.DependentList`1.UnParse(System.IO.Stream)">
457 <summary>
458 Write list entries to a stream
459 </summary>
460 <param name="s">Stream to receive list entries</param>
461 </member>
462 <member name="M:s3pi.Interfaces.DependentList`1.WriteCount(System.IO.Stream,System.Int32)">
463 <summary>
464 Write the count of list elements to the stream.
465 </summary>
466 <param name="s"><see cref="T:System.IO.Stream"/> to write <paramref name="count"/> to.</param>
467 <param name="count">Value to write to <see cref="T:System.IO.Stream"/> <paramref name="s"/>.</param>
468 </member>
469 <member name="M:s3pi.Interfaces.DependentList`1.WriteElement(System.IO.Stream,`0)">
470 <summary>
471 Write an element to the stream.
472 </summary>
473 <param name="s"><see cref="T:System.IO.Stream"/> to write <paramref name="element"/> to.</param>
474 <param name="element">Value to write to <see cref="T:System.IO.Stream"/> <paramref name="s"/>.</param>
475 </member>
476 <member name="M:s3pi.Interfaces.DependentList`1.Add">
477 <summary>
478 Add a default element to a <see cref="T:s3pi.Interfaces.DependentList`1"/>.
479 </summary>
480 <exception cref="T:System.NotImplementedException">Lists of abstract classes will fail
481 with a NotImplementedException.</exception>
482 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
483 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.DependentList`1"/> is read-only.</exception>
484 </member>
485 <member name="M:s3pi.Interfaces.DependentList`1.Add(System.Object[])">
486 <summary>
487 Adds an entry to an <see cref="T:s3pi.Interfaces.DependentList`1"/>.
488 </summary>
489 <param name="fields">
490 The object to add: either an instance or, for abstract generic lists,
491 a concrete type or (to be deprecated) the concrete type constructor arguments. See 'remarks'.
492 </param>
493 <returns>True on success</returns>
494 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
495 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.DependentList`1"/> is read-only.</exception>
496 <remarks>
497 <para>As at 27 April 2012, changes are afoot in how this works.
498 Using <see cref="T:s3pi.Interfaces.ConstructorParametersAttribute"/> will soon be deprecated.
499 Concrete implementations of abstract types will be expected to have a default constructor taking only <c>APIversion</c> and <c>elementHandler</c>.</para>
500 <para>Currently, this method supports the following invocations:</para>
501 <list type="bullet">
502 <item><term><c>Add(T newElement)</c></term><description>Create a new instance from the one supplied.</description></item>
503 <item><term><c>Add(Type concreteOfT)</c></term>
504 <description>Create a default instance of the given concrete implementation of an abstract class.
505 Where <c>concreteOfT</c> has a <see cref="T:s3pi.Interfaces.ConstructorParametersAttribute"/>, these will additionally be passed to the constructor (to be deprecated).</description>
506 </item>
507 <item><term><c>Add(param object[] parameters)</c></term>
508 <description>(to be deprecated)
509 For abstract types, the concrete type will be looked up from the supplied parameters.
510 A new instance will be created, passing the supplied parameters.</description>
511 </item>
512 </list>
513 <para>The new instance will be created passing a zero APIversion and the list's change handler.</para>
514 </remarks>
515 <seealso cref="M:System.Activator.CreateInstance(System.Type,System.Object[])"/>
516 </member>
517 <member name="M:s3pi.Interfaces.DependentList`1.GetElementType(System.Object[])">
518 <summary>
519 Return the type to get the constructor from, for the given set of fields.
520 </summary>
521 <param name="fields">Constructor parameters</param>
522 <returns>Class on which to invoke constructor</returns>
523 <remarks><paramref name="fields"/>[0] could be an instance of the abstract class: it should provide a constructor that accepts a "template"
524 object and creates a new instance on that basis.</remarks>
525 </member>
526 <member name="T:s3pi.Interfaces.CountedTGIBlockList">
527 <summary>
528 A TGIBlock list class where the count of elements is separate from the stored list
529 </summary>
530 </member>
531 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,System.Int64)">
532 <summary>
533 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
534 that is empty
535 with <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of "TGI".
536 </summary>
537 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
538 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
539 </member>
540 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{s3pi.Interfaces.TGIBlock},System.Int64)">
541 <summary>
542 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
543 filled with the content of <paramref name="ilt"/>
544 with <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of "TGI".
545 </summary>
546 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
547 <param name="ilt">The <see cref="T:System.Collections.Generic.IEnumerable`1"/> to use as the initial content of the list.</param>
548 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
549 </member>
550 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,System.Int32,System.IO.Stream,System.Int64)">
551 <summary>
552 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
553 filled with <paramref name="count"/> elements from <see cref="T:System.IO.Stream"/> <paramref name="s"/>
554 with <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of "TGI".
555 </summary>
556 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
557 <param name="count">The number of list elements to read.</param>
558 <param name="s">The <see cref="T:System.IO.Stream"/> to read for the initial content of the list.</param>
559 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
560 </member>
561 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,s3pi.Interfaces.TGIBlock.Order,System.Int64)">
562 <summary>
563 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
564 that is empty
565 with the specified <see cref="T:s3pi.Interfaces.TGIBlock.Order"/>.
566 </summary>
567 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
568 <param name="order">The <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of the <see cref="T:s3pi.Interfaces.TGIBlock"/> values.</param>
569 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
570 </member>
571 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,s3pi.Interfaces.TGIBlock.Order,System.Collections.Generic.IEnumerable{s3pi.Interfaces.TGIBlock},System.Int64)">
572 <summary>
573 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
574 filled with the content of <paramref name="ilt"/>
575 with the specified <see cref="T:s3pi.Interfaces.TGIBlock.Order"/>.
576 </summary>
577 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
578 <param name="order">The <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of the <see cref="T:s3pi.Interfaces.TGIBlock"/> values.</param>
579 <param name="ilt">The <see cref="T:System.Collections.Generic.IEnumerable`1"/> to use as the initial content of the list.</param>
580 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
581 </member>
582 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,s3pi.Interfaces.TGIBlock.Order,System.Int32,System.IO.Stream,System.Int64)">
583 <summary>
584 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
585 filled with <paramref name="count"/> elements from <see cref="T:System.IO.Stream"/> <paramref name="s"/>
586 with the specified <see cref="T:s3pi.Interfaces.TGIBlock.Order"/>.
587 </summary>
588 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
589 <param name="order">The <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of the <see cref="T:s3pi.Interfaces.TGIBlock"/> values.</param>
590 <param name="count">The number of list elements to read.</param>
591 <param name="s">The <see cref="T:System.IO.Stream"/> to read for the initial content of the list.</param>
592 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
593 </member>
594 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,System.String,System.Int64)">
595 <summary>
596 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
597 that is empty
598 with the specified <see cref="T:s3pi.Interfaces.TGIBlock.Order"/>.
599 </summary>
600 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
601 <param name="order">A string representing the <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of the <see cref="T:s3pi.Interfaces.TGIBlock"/> values.</param>
602 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
603 </member>
604 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,System.String,System.Collections.Generic.IEnumerable{s3pi.Interfaces.TGIBlock},System.Int64)">
605 <summary>
606 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
607 filled with the content of <paramref name="ilt"/>
608 with the specified <see cref="T:s3pi.Interfaces.TGIBlock.Order"/>.
609 </summary>
610 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
611 <param name="order">A string representing the <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of the <see cref="T:s3pi.Interfaces.TGIBlock"/> values.</param>
612 <param name="ilt">The <see cref="T:System.Collections.Generic.IEnumerable`1"/> to use as the initial content of the list.</param>
613 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
614 </member>
615 <member name="M:s3pi.Interfaces.CountedTGIBlockList.#ctor(System.EventHandler,System.String,System.Int32,System.IO.Stream,System.Int64)">
616 <summary>
617 Initializes a new instance of the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> class
618 filled with <paramref name="count"/> elements from <see cref="T:System.IO.Stream"/> <paramref name="s"/>
619 with the specified <see cref="T:s3pi.Interfaces.TGIBlock.Order"/>.
620 </summary>
621 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
622 <param name="order">A string representing the <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of the <see cref="T:s3pi.Interfaces.TGIBlock"/> values.</param>
623 <param name="count">The number of list elements to read.</param>
624 <param name="s">The <see cref="T:System.IO.Stream"/> to read for the initial content of the list.</param>
625 <param name="size">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
626 </member>
627 <member name="M:s3pi.Interfaces.CountedTGIBlockList.CreateElement(System.IO.Stream)">
628 <summary>
629 Create a new element from the <see cref="T:System.IO.Stream"/>.
630 </summary>
631 <param name="s">Stream containing element data.</param>
632 <returns>A new element.</returns>
633 </member>
634 <member name="M:s3pi.Interfaces.CountedTGIBlockList.WriteElement(System.IO.Stream,s3pi.Interfaces.TGIBlock)">
635 <summary>
636 Write an element to the stream.
637 </summary>
638 <param name="s"><see cref="T:System.IO.Stream"/> to write <paramref name="element"/> to.</param>
639 <param name="element">Value to write to <see cref="T:System.IO.Stream"/> <paramref name="s"/>.</param>
640 </member>
641 <member name="M:s3pi.Interfaces.CountedTGIBlockList.ReadCount(System.IO.Stream)">
642 <summary>
643 Return the number of elements to be created.
644 </summary>
645 <param name="s"><see cref="T:System.IO.Stream"/> being processed -- ignored.</param>
646 <returns>The number of elements to be created, as provided to the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> constructor.</returns>
647 </member>
648 <member name="M:s3pi.Interfaces.CountedTGIBlockList.WriteCount(System.IO.Stream,System.Int32)">
649 <summary>
650 This list does not manage a count within the <see cref="T:System.IO.Stream"/>.
651 </summary>
652 <param name="s">Ignored.</param>
653 <param name="count">Ignored.</param>
654 </member>
655 <member name="M:s3pi.Interfaces.CountedTGIBlockList.Add">
656 <summary>
657 Add a new default element to the list.
658 </summary>
659 </member>
660 <member name="M:s3pi.Interfaces.CountedTGIBlockList.Add(s3pi.Interfaces.TGIBlock)">
661 <summary>
662 Adds a new <see cref="T:s3pi.Interfaces.TGIBlock"/> to the list using the values of the specified <see cref="T:s3pi.Interfaces.TGIBlock"/>.
663 </summary>
664 <param name="item">The <see cref="T:s3pi.Interfaces.TGIBlock"/> to use as a basis for the new <see cref="T:s3pi.Interfaces.TGIBlock"/>.</param>
665 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
666 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.AHandlerList`1"/> is read-only.</exception>
667 <remarks>A new element is created rather than using the element passed
668 as the order (TGI/ITG/etc) may be different.</remarks>
669 </member>
670 <member name="M:s3pi.Interfaces.CountedTGIBlockList.Add(s3pi.Interfaces.IResourceKey)">
671 <summary>
672 Adds a new TGIBlock to the list using the values of the IResourceKey.
673 </summary>
674 <param name="rk">The ResourceKey values to use for the TGIBlock.</param>
675 <remarks>A new element is created rather than using the element passed
676 as the order (TGI/ITG/etc) may be different.</remarks>
677 </member>
678 <member name="M:s3pi.Interfaces.CountedTGIBlockList.Insert(System.Int32,s3pi.Interfaces.TGIBlock)">
679 <summary>
680 Inserts a new <see cref="T:s3pi.Interfaces.TGIBlock"/> to the list at the specified index using the values of the specified <see cref="T:s3pi.Interfaces.TGIBlock"/>.
681 </summary>
682 <param name="index">The zero-based index at which the new <see cref="T:s3pi.Interfaces.TGIBlock"/> should be inserted.</param>
683 <param name="item">The <see cref="T:s3pi.Interfaces.TGIBlock"/> to use as a basis for the new <see cref="T:s3pi.Interfaces.TGIBlock"/>.</param>
684 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is not a valid index
685 in the <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/>.</exception>
686 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
687 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> is read-only.</exception>
688 <remarks>A new element is created rather than using the element passed
689 as the order (TGI/ITG/etc) may be different.</remarks>
690 </member>
691 <member name="T:s3pi.Interfaces.TGIBlockList">
692 <summary>
693 A TGIBlock list class where the count and size of the list are stored separately (but managed by this class)
694 </summary>
695 </member>
696 <member name="M:s3pi.Interfaces.TGIBlockList.#ctor(System.EventHandler,System.Boolean)">
697 <summary>
698 Initializes a new instance of the <see cref="T:s3pi.Interfaces.TGIBlockList"/> class
699 that is empty.
700 </summary>
701 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
702 <param name="addEight">When true, invoke fudge factor in parse/unparse</param>
703 </member>
704 <member name="M:s3pi.Interfaces.TGIBlockList.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{s3pi.Interfaces.TGIBlock},System.Boolean)">
705 <summary>
706 Initializes a new instance of the <see cref="T:s3pi.Interfaces.TGIBlockList"/> class
707 filled with the content of <paramref name="ilt"/>.
708 </summary>
709 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
710 <param name="ilt">The <see cref="T:System.Collections.Generic.IEnumerable`1"/> to use as the initial content of the list.</param>
711 <param name="addEight">When true, invoke fudge factor in parse/unparse</param>
712 </member>
713 <member name="M:s3pi.Interfaces.TGIBlockList.#ctor(System.EventHandler,System.IO.Stream,System.Int64,System.Int64,System.Boolean)">
714 <summary>
715 Initializes a new instance of the <see cref="T:s3pi.Interfaces.TGIBlockList"/> class
716 filled with elements from <see cref="T:System.IO.Stream"/> <paramref name="s"/>.
717 </summary>
718 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
719 <param name="s">The <see cref="T:System.IO.Stream"/> to read for the initial content of the list.</param>
720 <param name="tgiPosn">Position in the <see cref="T:System.IO.Stream"/> where the list of <see cref="T:s3pi.Interfaces.TGIBlock"/>s starts.</param>
721 <param name="tgiSize">Size (in bytes) of the stored list.</param>
722 <param name="addEight">When true, invoke fudge factor in parse/unparse</param>
723 </member>
724 <member name="M:s3pi.Interfaces.TGIBlockList.CreateElement(System.IO.Stream)">
725 <summary>
726 Create a new element from the <see cref="T:System.IO.Stream"/>.
727 </summary>
728 <param name="s">Stream containing element data.</param>
729 <returns>A new element.</returns>
730 </member>
731 <member name="M:s3pi.Interfaces.TGIBlockList.WriteElement(System.IO.Stream,s3pi.Interfaces.TGIBlock)">
732 <summary>
733 Write an element to the stream.
734 </summary>
735 <param name="s"><see cref="T:System.IO.Stream"/> to write <paramref name="element"/> to.</param>
736 <param name="element">Value to write to <see cref="T:System.IO.Stream"/> <paramref name="s"/>.</param>
737 </member>
738 <member name="M:s3pi.Interfaces.TGIBlockList.Parse(System.IO.Stream,System.Int64,System.Int64)">
739 <summary>
740 Read list entries from a stream
741 </summary>
742 <param name="s">Stream containing list entries</param>
743 <param name="tgiPosn">Position in the <see cref="T:System.IO.Stream"/> where the list of <see cref="T:s3pi.Interfaces.TGIBlock"/>s starts.</param>
744 <param name="tgiSize">Size (in bytes) of the stored list.</param>
745 </member>
746 <member name="M:s3pi.Interfaces.TGIBlockList.UnParse(System.IO.Stream,System.Int64)">
747 <summary>
748 Write list entries to a stream
749 </summary>
750 <param name="s">Stream to receive list entries</param>
751 <param name="ptgiO">Position in <see cref="T:System.IO.Stream"/> to write list position and size values.</param>
752 </member>
753 <member name="M:s3pi.Interfaces.TGIBlockList.Add">
754 <summary>
755 Add a new default element to the list
756 </summary>
757 </member>
758 <member name="T:s3pi.Interfaces.TGIBlock">
759 <summary>
760 An implementation of AResourceKey that supports storing the Type, Group and Instance in any order.
761 </summary>
762 <remarks>An explicit implementation of <see cref="T:System.IEquatable`1"/> is required by
763 <see cref="T:s3pi.Interfaces.CountedTGIBlockList"/> and <see cref="T:s3pi.Interfaces.TGIBlockList"/>.</remarks>
764 </member>
765 <member name="T:s3pi.Interfaces.AResourceKey">
766 <summary>
767 An abstract class, extending <see cref="T:s3pi.Interfaces.AHandlerElement"/> and implementing <see cref="T:s3pi.Interfaces.IResourceKey"/>.
768 </summary>
769 </member>
770 <member name="T:s3pi.Interfaces.IResourceKey">
771 <summary>
772 Exposes a standard set of properties to identify a resource
773 </summary>
774 </member>
775 <member name="P:s3pi.Interfaces.IResourceKey.ResourceType">
776 <summary>
777 The "type" of the resource
778 </summary>
779 </member>
780 <member name="P:s3pi.Interfaces.IResourceKey.ResourceGroup">
781 <summary>
782 The "group" the resource is part of
783 </summary>
784 </member>
785 <member name="P:s3pi.Interfaces.IResourceKey.Instance">
786 <summary>
787 The "instance" number of the resource
788 </summary>
789 </member>
790 <member name="F:s3pi.Interfaces.AResourceKey.resourceType">
791 <summary>
792 The "type" of the resource
793 </summary>
794 </member>
795 <member name="F:s3pi.Interfaces.AResourceKey.resourceGroup">
796 <summary>
797 The "group" the resource is part of
798 </summary>
799 </member>
800 <member name="F:s3pi.Interfaces.AResourceKey.instance">
801 <summary>
802 The "instance" number of the resource
803 </summary>
804 </member>
805 <member name="M:s3pi.Interfaces.AResourceKey.#ctor(System.Int32,System.EventHandler)">
806 <summary>
807 Initialize a new instance
808 </summary>
809 <param name="APIversion">The requested API version.</param>
810 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AResourceKey"/> changes.</param>
811 </member>
812 <member name="M:s3pi.Interfaces.AResourceKey.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.IResourceKey)">
813 <summary>
814 Initialize a new instance
815 </summary>
816 <param name="APIversion">The requested API version.</param>
817 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AResourceKey"/> changes.</param>
818 <param name="basis">The <see cref="T:s3pi.Interfaces.IResourceKey"/> values to use to initialise the instance.</param>
819 </member>
820 <member name="M:s3pi.Interfaces.AResourceKey.#ctor(System.Int32,System.EventHandler,System.UInt32,System.UInt32,System.UInt64)">
821 <summary>
822 Initialize a new instance
823 </summary>
824 <param name="APIversion">The requested API version.</param>
825 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AResourceKey"/> changes.</param>
826 <param name="resourceType">The type of the resource.</param>
827 <param name="resourceGroup">The group of the resource.</param>
828 <param name="instance">The instance of the resource.</param>
829 </member>
830 <member name="M:s3pi.Interfaces.AResourceKey.Equals(s3pi.Interfaces.IResourceKey,s3pi.Interfaces.IResourceKey)">
831 <summary>
832 Determines whether the specified <see cref="T:s3pi.Interfaces.IResourceKey"/> instances are equal.
833 </summary>
834 <param name="x">The first <see cref="T:s3pi.Interfaces.IResourceKey"/> to compare.</param>
835 <param name="y">The second <see cref="T:s3pi.Interfaces.IResourceKey"/> to compare.</param>
836 <returns>true if the specified <see cref="T:s3pi.Interfaces.IResourceKey"/> instances are equal; otherwise, false.</returns>
837 </member>
838 <member name="M:s3pi.Interfaces.AResourceKey.GetHashCode(s3pi.Interfaces.IResourceKey)">
839 <summary>
840 Returns a hash code for the specified <see cref="T:s3pi.Interfaces.IResourceKey"/>.
841 </summary>
842 <param name="obj">The <see cref="T:s3pi.Interfaces.IResourceKey"/> for which a hash code is to be returned.</param>
843 <returns>A hash code for the specified object.</returns>
844 <exception cref="T:System.ArgumentNullException">The type of <paramref name="obj"/> is a reference type and
845 <paramref name="obj"/> is null.</exception>
846 <seealso cref="M:s3pi.Interfaces.AResourceKey.GetHashCode"/>
847 </member>
848 <member name="M:s3pi.Interfaces.AResourceKey.GetHashCode">
849 <summary>
850 Serves as a hash function for an <see cref="T:s3pi.Interfaces.AResourceKey"/>.
851 </summary>
852 <returns>A hash code for the current <see cref="T:s3pi.Interfaces.AResourceKey"/>.</returns>
853 </member>
854 <member name="M:s3pi.Interfaces.AResourceKey.Equals(s3pi.Interfaces.IResourceKey)">
855 <summary>
856 Indicates whether the current <see cref="T:s3pi.Interfaces.AResourceKey"/> instance is equal to another <see cref="T:s3pi.Interfaces.IResourceKey"/> instance.
857 </summary>
858 <param name="other">An <see cref="T:s3pi.Interfaces.IResourceKey"/> instance to compare with this instance.</param>
859 <returns>true if the current instance is equal to the <paramref name="other"/> parameter; otherwise, false.</returns>
860 </member>
861 <member name="M:s3pi.Interfaces.AResourceKey.Equals(System.Object)">
862 <summary>
863 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.AResourceKey"/>.
864 </summary>
865 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.AResourceKey"/>.</param>
866 <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.AResourceKey"/>; otherwise, false.</returns>
867 </member>
868 <member name="M:s3pi.Interfaces.AResourceKey.CompareTo(s3pi.Interfaces.IResourceKey)">
869 <summary>
870 Compare this <see cref="T:s3pi.Interfaces.AResourceKey"/> to another <see cref="T:s3pi.Interfaces.IResourceKey"/> for sort order purposes
871 </summary>
872 <param name="other">Target <see cref="T:s3pi.Interfaces.IResourceKey"/></param>
873 <returns>A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings:
874 <table>
875 <thead><tr><td><strong>Value</strong></td><td><strong>Meaning</strong></td></tr></thead>
876 <tbody>
877 <tr><td>Less than zero</td><td>This instance is less than <paramref name="other"/>.</td></tr>
878 <tr><td>Zero</td><td>This instance is equal to <paramref name="other"/>.</td></tr>
879 <tr><td>Greater than zero</td><td>This instance is greater than <paramref name="other"/>.</td></tr>
880 </tbody>
881 </table>
882 </returns>
883 <exception cref="T:System.NotImplementedException">Either this object's Type or the target's is not comparable</exception>
884 <exception cref="T:System.ArgumentException">The target is not comparable with this object</exception>
885 </member>
886 <member name="M:s3pi.Interfaces.AResourceKey.TryParse(System.String,s3pi.Interfaces.IResourceKey)">
887 <summary>
888 Converts the string representation of a resource key to its <see cref="T:s3pi.Interfaces.AResourceKey"/>
889 equivalent. A return value indicates whether the conversion succeeded.
890 </summary>
891 <param name="value">A string containing a resource key to convert.</param>
892 <param name="result">
893 When this method returns, contains the <see cref="T:s3pi.Interfaces.AResourceKey"/> equivalent
894 to the resource key contained in <paramref name="value"/>, if the conversion succeeded, or
895 unchanged if the conversion failed. The conversion fails if the <paramref name="value"/>
896 parameter is null or is not of the correct format. This parameter must not be null.
897 </param>
898 <returns>true if <paramref name="value"/> was converted successfully; otherwise, false.</returns>
899 <exception cref="T:System.NullReferenceException">Thrown if <paramref name="result"/> is null.</exception>
900 </member>
901 <member name="M:s3pi.Interfaces.AResourceKey.op_Implicit(s3pi.Interfaces.AResourceKey)~System.String">
902 <summary>
903 Converts an <see cref="T:s3pi.Interfaces.AResourceKey"/> to a string representation.
904 </summary>
905 <param name="value">The <see cref="T:s3pi.Interfaces.AResourceKey"/> to convert</param>
906 <returns>The 42 character string representation of this resource key,
907 of the form 0xXXXXXXXX-0xXXXXXXXX-0xXXXXXXXXXXXXXXXX.</returns>
908 </member>
909 <member name="M:s3pi.Interfaces.AResourceKey.ToString">
910 <summary>
911 Returns a string representation of this <see cref="T:s3pi.Interfaces.AResourceKey"/>.
912 </summary>
913 <returns>The 42 character string representation of this resource key,
914 of the form 0xXXXXXXXX-0xXXXXXXXX-0xXXXXXXXXXXXXXXXX.</returns>
915 </member>
916 <member name="P:s3pi.Interfaces.AResourceKey.ResourceType">
917 <summary>
918 The "type" of the resource
919 </summary>
920 </member>
921 <member name="P:s3pi.Interfaces.AResourceKey.ResourceGroup">
922 <summary>
923 The "group" the resource is part of
924 </summary>
925 </member>
926 <member name="P:s3pi.Interfaces.AResourceKey.Instance">
927 <summary>
928 The "instance" number of the resource
929 </summary>
930 </member>
931 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.TGIBlock)">
932 <summary>
933 Initialize a new TGIBlock
934 with the order and values
935 based on <paramref name="basis"/>.
936 </summary>
937 <param name="APIversion">The requested API version.</param>
938 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
939 <param name="basis">The TGIBlock to use for the <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> and <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
940 </member>
941 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler)">
942 <summary>
943 Initialize a new TGIBlock
944 with the default order ("TGI").
945 </summary>
946 <param name="APIversion">The requested API version.</param>
947 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
948 </member>
949 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,System.String)">
950 <summary>
951 Initialize a new TGIBlock
952 with the specified order.
953 </summary>
954 <param name="APIversion">The requested API version.</param>
955 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
956 <param name="order">A <see cref="T:System.String"/> representing the <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> to use to store the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
957 </member>
958 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.TGIBlock.Order)">
959 <summary>
960 Initialize a new TGIBlock
961 with the specified order.
962 </summary>
963 <param name="APIversion">The requested API version.</param>
964 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
965 <param name="order">The <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> to use to store the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
966 </member>
967 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,System.UInt32,System.UInt32,System.UInt64)">
968 <summary>
969 Initialize a new TGIBlock
970 with the default order ("TGI") and specified values.
971 </summary>
972 <param name="APIversion">The requested API version.</param>
973 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
974 <param name="resourceType">The resource type value.</param>
975 <param name="resourceGroup">The resource group value.</param>
976 <param name="instance">The resource instance value.</param>
977 </member>
978 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,System.String,System.UInt32,System.UInt32,System.UInt64)">
979 <summary>
980 Initialize a new TGIBlock
981 with the specified order and values.
982 </summary>
983 <param name="APIversion">The requested API version.</param>
984 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
985 <param name="order">A <see cref="T:System.String"/> representing the <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> to use to store the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
986 <param name="resourceType">The resource type value.</param>
987 <param name="resourceGroup">The resource group value.</param>
988 <param name="instance">The resource instance value.</param>
989 </member>
990 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.TGIBlock.Order,System.UInt32,System.UInt32,System.UInt64)">
991 <summary>
992 Initialize a new TGIBlock
993 with the specified order and values.
994 </summary>
995 <param name="APIversion">The requested API version.</param>
996 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
997 <param name="order">The <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> to use to store the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
998 <param name="resourceType">The resource type value.</param>
999 <param name="resourceGroup">The resource group value.</param>
1000 <param name="instance">The resource instance value.</param>
1001 </member>
1002 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.IResourceKey)">
1003 <summary>
1004 Initialize a new TGIBlock
1005 with the default order ("TGI") and specified <see cref="T:s3pi.Interfaces.IResourceKey"/> values.
1006 </summary>
1007 <param name="APIversion">The requested API version.</param>
1008 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1009 <param name="rk">The <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1010 </member>
1011 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,System.String,s3pi.Interfaces.IResourceKey)">
1012 <summary>
1013 Initialize a new TGIBlock
1014 with the specified order and <see cref="T:s3pi.Interfaces.IResourceKey"/> values.
1015 </summary>
1016 <param name="APIversion">The requested API version.</param>
1017 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1018 <param name="order">A <see cref="T:System.String"/> representing the <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> to use to store the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1019 <param name="rk">The <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1020 </member>
1021 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.TGIBlock.Order,s3pi.Interfaces.IResourceKey)">
1022 <summary>
1023 Initialize a new TGIBlock
1024 with the specified order and <see cref="T:s3pi.Interfaces.IResourceKey"/> values.
1025 </summary>
1026 <param name="APIversion">The requested API version.</param>
1027 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1028 <param name="order">The <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> to use to store the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1029 <param name="rk">The <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1030 </member>
1031 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,System.IO.Stream)">
1032 <summary>
1033 Initialize a new TGIBlock
1034 with the default order ("TGI") and values read from the specified <see cref="T:System.IO.Stream"/>.
1035 </summary>
1036 <param name="APIversion">The requested API version.</param>
1037 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1038 <param name="s">The <see cref="T:System.IO.Stream"/> from which to read the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1039 </member>
1040 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,System.String,System.IO.Stream)">
1041 <summary>
1042 Initialize a new TGIBlock
1043 with the specified order and values read from the specified <see cref="T:System.IO.Stream"/>.
1044 </summary>
1045 <param name="APIversion">The requested API version.</param>
1046 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1047 <param name="order">A <see cref="T:System.String"/> representing the <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1048 <param name="s">The <see cref="T:System.IO.Stream"/> from which to read the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1049 </member>
1050 <member name="M:s3pi.Interfaces.TGIBlock.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.TGIBlock.Order,System.IO.Stream)">
1051 <summary>
1052 Initialize a new TGIBlock
1053 with the specified order and values read from the specified <see cref="T:System.IO.Stream"/>.
1054 </summary>
1055 <param name="APIversion">The requested API version.</param>
1056 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1057 <param name="order">The <see cref="T:s3pi.Interfaces.TGIBlock.Order"/> of the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1058 <param name="s">The <see cref="T:System.IO.Stream"/> from which to read the <see cref="T:s3pi.Interfaces.IResourceKey"/> values.</param>
1059 </member>
1060 <member name="M:s3pi.Interfaces.TGIBlock.Parse(System.IO.Stream)">
1061 <summary>
1062 Used by the <see cref="T:s3pi.Interfaces.TGIBlock"/> constructor to inialise a new <see cref="T:s3pi.Interfaces.TGIBlock"/> from a <see cref="T:System.IO.Stream"/>.
1063 </summary>
1064 <param name="s"><see cref="T:System.IO.Stream"/> containing <see cref="T:s3pi.Interfaces.TGIBlock"/> values in known order.</param>
1065 </member>
1066 <member name="M:s3pi.Interfaces.TGIBlock.UnParse(System.IO.Stream)">
1067 <summary>
1068 Writes the <see cref="T:s3pi.Interfaces.TGIBlock"/> to the specified <see cref="T:System.IO.Stream"/> in known order.
1069 </summary>
1070 <param name="s"><see cref="T:System.IO.Stream"/> to write <see cref="T:s3pi.Interfaces.TGIBlock"/> values to.</param>
1071 </member>
1072 <member name="M:s3pi.Interfaces.TGIBlock.Clone(System.EventHandler)">
1073 <summary>
1074 Get a copy of the <see cref="T:s3pi.Interfaces.TGIBlock"/> but with a new change <see cref="T:System.EventHandler"/>.
1075 </summary>
1076 <param name="handler">The replacement <see cref="T:System.EventHandler"/> delegate.</param>
1077 <returns>Return a copy of the <see cref="T:s3pi.Interfaces.TGIBlock"/> but with a new change <see cref="T:System.EventHandler"/>.</returns>
1078 </member>
1079 <member name="M:s3pi.Interfaces.TGIBlock.Equals(s3pi.Interfaces.TGIBlock)">
1080 <summary>
1081 Indicates whether the current <see cref="T:s3pi.Interfaces.TGIBlock"/> instance is equal to another <see cref="T:s3pi.Interfaces.TGIBlock"/> instance.
1082 </summary>
1083 <param name="other">An <see cref="T:s3pi.Interfaces.TGIBlock"/> instance to compare with this instance.</param>
1084 <returns>true if the current instance is equal to the <paramref name="other"/> parameter; otherwise, false.</returns>
1085 </member>
1086 <member name="P:s3pi.Interfaces.TGIBlock.ContentFields">
1087 <summary>
1088 The list of available field names on this API object
1089 </summary>
1090 </member>
1091 <member name="P:s3pi.Interfaces.TGIBlock.RecommendedApiVersion">
1092 <summary>
1093 The best supported version of the API available
1094 </summary>
1095 </member>
1096 <member name="P:s3pi.Interfaces.TGIBlock.Value">
1097 <summary>
1098 A display-ready string representing the <see cref="T:s3pi.Interfaces.TGIBlock"/>.
1099 </summary>
1100 </member>
1101 <member name="T:s3pi.Interfaces.TGIBlock.Order">
1102 <summary>
1103 Options for the order of the Type, Group and Instance elements of a TGIBlock
1104 </summary>
1105 </member>
1106 <member name="F:s3pi.Interfaces.TGIBlock.Order.TGI">
1107 <summary>
1108 Type, Group, Instance
1109 </summary>
1110 </member>
1111 <member name="F:s3pi.Interfaces.TGIBlock.Order.TIG">
1112 <summary>
1113 Type, Instance, Group
1114 </summary>
1115 </member>
1116 <member name="F:s3pi.Interfaces.TGIBlock.Order.GTI">
1117 <summary>
1118 Group, Type, Instance
1119 </summary>
1120 </member>
1121 <member name="F:s3pi.Interfaces.TGIBlock.Order.GIT">
1122 <summary>
1123 Group, Instance, Type
1124 </summary>
1125 </member>
1126 <member name="F:s3pi.Interfaces.TGIBlock.Order.ITG">
1127 <summary>
1128 Instance, Type, Group
1129 </summary>
1130 </member>
1131 <member name="F:s3pi.Interfaces.TGIBlock.Order.IGT">
1132 <summary>
1133 Instance, Group, Type
1134 </summary>
1135 </member>
1136 <member name="T:s3pi.Interfaces.ElementPriorityAttribute">
1137 <summary>
1138 Element priority is used when displaying elements
1139 </summary>
1140 </member>
1141 <member name="M:s3pi.Interfaces.ElementPriorityAttribute.#ctor(System.Int32)">
1142 <summary>
1143 Element priority is used when displaying elements
1144 </summary>
1145 <param name="priority">Element priority, lower values are higher priority</param>
1146 </member>
1147 <member name="M:s3pi.Interfaces.ElementPriorityAttribute.GetPriority(System.Type,System.String)">
1148 <summary>
1149 Return the ElementPriority value for a Content Field.
1150 </summary>
1151 <param name="t">Type on which Content Field exists.</param>
1152 <param name="index">Content Field name.</param>
1153 <returns>The value of the ElementPriorityAttribute Priority field, if found;
1154 otherwise Int32.MaxValue.</returns>
1155 </member>
1156 <member name="P:s3pi.Interfaces.ElementPriorityAttribute.Priority">
1157 <summary>
1158 Element priority, lower values are higher priority
1159 </summary>
1160 </member>
1161 <member name="T:s3pi.Interfaces.IResource">
1162 <summary>
1163 Minimal resource interface
1164 </summary>
1165 </member>
1166 <member name="P:s3pi.Interfaces.IResource.Stream">
1167 <summary>
1168 The resource content as a <see cref="T:System.IO.Stream"/>.
1169 </summary>
1170 </member>
1171 <member name="P:s3pi.Interfaces.IResource.AsBytes">
1172 <summary>
1173 The resource content as a <see cref="T:System.Byte"/> array
1174 </summary>
1175 </member>
1176 <member name="E:s3pi.Interfaces.IResource.ResourceChanged">
1177 <summary>
1178 Raised if the resource is changed
1179 </summary>
1180 </member>
1181 <member name="T:s3pi.Interfaces.AResourceHandler">
1182 <summary>
1183 Used by WrapperDealer to identify "interesting" classes and assemblies.
1184 The class maps implementers of AResource to string representations of ResourceType.
1185 Hence each "wrapper" assembly can contain multiple wrapper types (Type key) each of which
1186 supports one or more ResourceTypes (List&lt;string&gt; value). The single
1187 AResourceHandler implementation summarises what the assembly provides.
1188 </summary>
1189 </member>
1190 <member name="T:s3pi.Interfaces.IResourceHandler">
1191 <summary>
1192 Used by <see cref="T:s3pi.Interfaces.AResourceHandler"/>, which is used by <c>WrapperDealer</c>
1193 to identify "interesting" classes within assemblies
1194 </summary>
1195 </member>
1196 <member name="M:s3pi.Interfaces.AResourceHandler.#ctor">
1197 <summary>
1198 Create the content of the Dictionary
1199 </summary>
1200 </member>
1201 <member name="T:s3pi.Interfaces.APackage">
1202 <summary>
1203 Abstract definition of a package
1204 </summary>
1205 </member>
1206 <member name="T:s3pi.Interfaces.IPackage">
1207 <summary>
1208 Representation of a Sims 3 Package
1209 </summary>
1210 </member>
1211 <member name="M:s3pi.Interfaces.IPackage.SavePackage">
1212 <summary>
1213 Tell the package to save itself to wherever it believes it came from
1214 </summary>
1215 </member>
1216 <member name="M:s3pi.Interfaces.IPackage.SaveAs(System.IO.Stream)">
1217 <summary>
1218 Tell the package to save itself to the <see cref="T:System.IO.Stream"/> <paramref name="s"/>
1219 </summary>
1220 <param name="s">A <see cref="T:System.IO.Stream"/> to which the package should be saved</param>
1221 </member>
1222 <member name="M:s3pi.Interfaces.IPackage.SaveAs(System.String)">
1223 <summary>
1224 Tell the package to save itself to a file with the name in <paramref name="path"/>
1225 </summary>
1226 <param name="path">A fully-qualified file name</param>
1227 </member>
1228 <member name="M:s3pi.Interfaces.IPackage.Find(System.UInt32,s3pi.Interfaces.IResourceIndexEntry)">
1229 <summary>
1230 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1231 for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
1232 <paramref name="flags"/> and <paramref name="values"/>.
1233 </summary>
1234 <param name="flags">True bits enable matching against numerically equivalent <paramref name="values"/> entry.</param>
1235 <param name="values">Field values to compare against.</param>
1236 <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
1237 </member>
1238 <member name="M:s3pi.Interfaces.IPackage.Find(System.String[],s3pi.Interfaces.TypedValue[])">
1239 <summary>
1240 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1241 for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
1242 <paramref name="names"/> and <paramref name="values"/>.
1243 </summary>
1244 <param name="names">Names of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> fields to compare.</param>
1245 <param name="values">Field values to compare against.</param>
1246 <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
1247 </member>
1248 <member name="M:s3pi.Interfaces.IPackage.Find(System.Predicate{s3pi.Interfaces.IResourceIndexEntry})">
1249 <summary>
1250 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1251 for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
1252 the <c>Predicate&lt;IResourceIndexEntry&gt;</c> <paramref name="Match"/>.
1253 </summary>
1254 <param name="Match"><c>Predicate&lt;IResourceIndexEntry&gt;</c> defining matching conditions.</param>
1255 <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
1256 <remarks>Note that entries marked as deleted will not be returned.</remarks>
1257 </member>
1258 <member name="M:s3pi.Interfaces.IPackage.FindAll(System.UInt32,s3pi.Interfaces.IResourceIndexEntry)">
1259 <summary>
1260 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1261 for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
1262 <paramref name="flags"/> and <paramref name="values"/>.
1263 </summary>
1264 <param name="flags">True bits enable matching against numerically equivalent <paramref name="values"/> entry.</param>
1265 <param name="values">Field values to compare against.</param>
1266 <returns>An <c>IList&lt;IResourceIndexEntry&gt;</c> of zero or more matches.</returns>
1267 </member>
1268 <member name="M:s3pi.Interfaces.IPackage.FindAll(System.String[],s3pi.Interfaces.TypedValue[])">
1269 <summary>
1270 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1271 for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
1272 <paramref name="names"/> and <paramref name="values"/>.
1273 </summary>
1274 <param name="names">Names of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> fields to compare.</param>
1275 <param name="values">Field values to compare against.</param>
1276 <returns>An <c>IList&lt;IResourceIndexEntry&gt;</c> of zero or more matches.</returns>
1277 </member>
1278 <member name="M:s3pi.Interfaces.IPackage.FindAll(System.Predicate{s3pi.Interfaces.IResourceIndexEntry})">
1279 <summary>
1280 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1281 for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
1282 the <c>Predicate&lt;IResourceIndexEntry&gt;</c> <paramref name="Match"/>.
1283 </summary>
1284 <param name="Match"><c>Predicate&lt;IResourceIndexEntry&gt;</c> defining matching conditions.</param>
1285 <returns>Zero or more matches.</returns>
1286 <remarks>Note that entries marked as deleted will not be returned.</remarks>
1287 </member>
1288 <member name="M:s3pi.Interfaces.IPackage.AddResource(s3pi.Interfaces.IResourceKey,System.IO.Stream,System.Boolean)">
1289 <summary>
1290 Add a resource to the <see cref="T:s3pi.Interfaces.IPackage"/>.
1291 </summary>
1292 <param name="rk">The resource's <see cref="T:s3pi.Interfaces.IResourceKey"/></param>
1293 <param name="stream">The <see cref="T:System.IO.Stream"/> that contains the resource's data</param>
1294 <param name="rejectDups">If true, fail if the <see cref="T:s3pi.Interfaces.IResourceKey"/> already exists</param>
1295 <returns>Null if rejectDups and the <see cref="T:s3pi.Interfaces.IResourceKey"/> exists; else the new <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/></returns>
1296 </member>
1297 <member name="M:s3pi.Interfaces.IPackage.ReplaceResource(s3pi.Interfaces.IResourceIndexEntry,s3pi.Interfaces.IResource)">
1298 <summary>
1299 Tell the <see cref="T:s3pi.Interfaces.IPackage"/> to replace the data for the resource indexed by <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> <paramref name="rc"/>
1300 with the data from the <see cref="T:s3pi.Interfaces.IResource"/> <paramref name="res"/>.
1301 </summary>
1302 <param name="rc">Target <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>.</param>
1303 <param name="res">Source <see cref="T:s3pi.Interfaces.IResource"/>.</param>
1304 </member>
1305 <member name="M:s3pi.Interfaces.IPackage.DeleteResource(s3pi.Interfaces.IResourceIndexEntry)">
1306 <summary>
1307 Tell the package to delete the resource indexed by <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> <paramref name="rc"/>.
1308 </summary>
1309 <param name="rc">Target <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>.</param>
1310 </member>
1311 <member name="P:s3pi.Interfaces.IPackage.Magic">
1312 <summary>
1313 Package header: "DBPF" bytes
1314 </summary>
1315 </member>
1316 <member name="P:s3pi.Interfaces.IPackage.Major">
1317 <summary>
1318 Package header: 0x00000002
1319 </summary>
1320 </member>
1321 <member name="P:s3pi.Interfaces.IPackage.Minor">
1322 <summary>
1323 Package header: 0x00000000
1324 </summary>
1325 </member>
1326 <member name="P:s3pi.Interfaces.IPackage.Unknown1">
1327 <summary>
1328 Package header: unused
1329 </summary>
1330 </member>
1331 <member name="P:s3pi.Interfaces.IPackage.Indexcount">
1332 <summary>
1333 Package header: number of entries in the package index
1334 </summary>
1335 </member>
1336 <member name="P:s3pi.Interfaces.IPackage.Unknown2">
1337 <summary>
1338 Package header: unused
1339 </summary>
1340 </member>
1341 <member name="P:s3pi.Interfaces.IPackage.Indexsize">
1342 <summary>
1343 Package header: index size on disk in bytes
1344 </summary>
1345 </member>
1346 <member name="P:s3pi.Interfaces.IPackage.Unknown3">
1347 <summary>
1348 Package header: unused
1349 </summary>
1350 </member>
1351 <member name="P:s3pi.Interfaces.IPackage.Indexversion">
1352 <summary>
1353 Package header: always 3?
1354 </summary>
1355 </member>
1356 <member name="P:s3pi.Interfaces.IPackage.Indexposition">
1357 <summary>
1358 Package header: index position in file
1359 </summary>
1360 </member>
1361 <member name="P:s3pi.Interfaces.IPackage.Unknown4">
1362 <summary>
1363 Package header: unused
1364 </summary>
1365 </member>
1366 <member name="P:s3pi.Interfaces.IPackage.HeaderStream">
1367 <summary>
1368 A <see cref="T:System.IO.MemoryStream"/> covering the package header bytes
1369 </summary>
1370 </member>
1371 <member name="E:s3pi.Interfaces.IPackage.ResourceIndexInvalidated">
1372 <summary>
1373 Package index: raised when the result of a previous call to GetResourceList becomes invalid
1374 </summary>
1375 </member>
1376 <member name="P:s3pi.Interfaces.IPackage.Indextype">
1377 <summary>
1378 Package index: the index format in use
1379 </summary>
1380 </member>
1381 <member name="P:s3pi.Interfaces.IPackage.GetResourceList">
1382 <summary>
1383 Package index: the index as a <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> list
1384 </summary>
1385 </member>
1386 <member name="M:s3pi.Interfaces.APackage.SavePackage">
1387 <summary>
1388 Tell the package to save itself to wherever it believes it came from
1389 </summary>
1390 </member>
1391 <member name="M:s3pi.Interfaces.APackage.SaveAs(System.IO.Stream)">
1392 <summary>
1393 Tell the package to save itself to the stream <paramref name="s"/>
1394 </summary>
1395 <param name="s">A stream to which the package should be saved</param>
1396 </member>
1397 <member name="M:s3pi.Interfaces.APackage.SaveAs(System.String)">
1398 <summary>
1399 Tell the package to save itself to a file with the name in <paramref name="path"/>
1400 </summary>
1401 <param name="path">A fully-qualified file name</param>
1402 </member>
1403 <member name="M:s3pi.Interfaces.APackage.Find(System.UInt32,s3pi.Interfaces.IResourceIndexEntry)">
1404 <summary>
1405 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1406 for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
1407 <paramref name="flags"/> and <paramref name="values"/>.
1408 </summary>
1409 <param name="flags">True bits enable matching against numerically equivalent <paramref name="values"/> entry.</param>
1410 <param name="values">Field values to compare against.</param>
1411 <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
1412 </member>
1413 <member name="M:s3pi.Interfaces.APackage.Find(System.String[],s3pi.Interfaces.TypedValue[])">
1414 <summary>
1415 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1416 for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
1417 <paramref name="names"/> and <paramref name="values"/>.
1418 </summary>
1419 <param name="names">Names of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> fields to compare.</param>
1420 <param name="values">Field values to compare against.</param>
1421 <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
1422 </member>
1423 <member name="M:s3pi.Interfaces.APackage.Find(System.Predicate{s3pi.Interfaces.IResourceIndexEntry})">
1424 <summary>
1425 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1426 for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
1427 the <c>Predicate&lt;IResourceIndexEntry&gt;</c> <paramref name="Match"/>.
1428 </summary>
1429 <param name="Match"><c>Predicate&lt;IResourceIndexEntry&gt;</c> defining matching conditions.</param>
1430 <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
1431 <remarks>Note that entries marked as deleted will not be returned.</remarks>
1432 </member>
1433 <member name="M:s3pi.Interfaces.APackage.FindAll(System.UInt32,s3pi.Interfaces.IResourceIndexEntry)">
1434 <summary>
1435 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1436 for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
1437 <paramref name="flags"/> and <paramref name="values"/>.
1438 </summary>
1439 <param name="flags">True bits enable matching against numerically equivalent <paramref name="values"/> entry.</param>
1440 <param name="values">Field values to compare against.</param>
1441 <returns>An <c>IList&lt;IResourceIndexEntry&gt;</c> of zero or more matches.</returns>
1442 </member>
1443 <member name="M:s3pi.Interfaces.APackage.FindAll(System.String[],s3pi.Interfaces.TypedValue[])">
1444 <summary>
1445 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1446 for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
1447 <paramref name="names"/> and <paramref name="values"/>.
1448 </summary>
1449 <param name="names">Names of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> fields to compare.</param>
1450 <param name="values">Field values to compare against.</param>
1451 <returns>An <c>IList&lt;IResourceIndexEntry&gt;</c> of zero or more matches.</returns>
1452 </member>
1453 <member name="M:s3pi.Interfaces.APackage.FindAll(System.Predicate{s3pi.Interfaces.IResourceIndexEntry})">
1454 <summary>
1455 Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
1456 for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
1457 the <c>Predicate&lt;IResourceIndexEntry&gt;</c> <paramref name="Match"/>.
1458 </summary>
1459 <param name="Match"><c>Predicate&lt;IResourceIndexEntry&gt;</c> defining matching conditions.</param>
1460 <returns>Zero or more matches.</returns>
1461 <remarks>Note that entries marked as deleted will not be returned.</remarks>
1462 </member>
1463 <member name="M:s3pi.Interfaces.APackage.AddResource(s3pi.Interfaces.IResourceKey,System.IO.Stream,System.Boolean)">
1464 <summary>
1465 Add a resource to the package
1466 </summary>
1467 <param name="rk">The resource key</param>
1468 <param name="stream">The stream that contains the resource data</param>
1469 <param name="rejectDups">If true, fail if the resource key already exists</param>
1470 <returns>Null if rejectDups and the resource key exists; else the new IResourceIndexEntry</returns>
1471 </member>
1472 <member name="M:s3pi.Interfaces.APackage.ReplaceResource(s3pi.Interfaces.IResourceIndexEntry,s3pi.Interfaces.IResource)">
1473 <summary>
1474 Tell the package to replace the data for the resource indexed by <paramref name="rc"/>
1475 with the data from the resource <paramref name="res"/>
1476 </summary>
1477 <param name="rc">Target resource index</param>
1478 <param name="res">Source resource</param>
1479 </member>
1480 <member name="M:s3pi.Interfaces.APackage.DeleteResource(s3pi.Interfaces.IResourceIndexEntry)">
1481 <summary>
1482 Tell the package to delete the resource indexed by <paramref name="rc"/>
1483 </summary>
1484 <param name="rc">Target resource index</param>
1485 </member>
1486 <member name="M:s3pi.Interfaces.APackage.NewPackage(System.Int32)">
1487 <summary>
1488 Initialise a new, empty package and return the IPackage reference
1489 </summary>
1490 <param name="APIversion">(unused)</param>
1491 <returns>IPackage reference to an empty package</returns>
1492 </member>
1493 <member name="M:s3pi.Interfaces.APackage.OpenPackage(System.Int32,System.String)">
1494 <summary>
1495 Open an existing package by filename, read only
1496 </summary>
1497 <param name="APIversion">(unused)</param>
1498 <param name="packagePath">Fully qualified filename of the package</param>
1499 <returns>IPackage reference to an existing package on disk</returns>
1500 </member>
1501 <member name="M:s3pi.Interfaces.APackage.OpenPackage(System.Int32,System.String,System.Boolean)">
1502 <summary>
1503 Open an existing package by filename, optionally readwrite
1504 </summary>
1505 <param name="APIversion">(unused)</param>
1506 <param name="packagePath">Fully qualified filename of the package</param>
1507 <param name="readwrite">True to open for update</param>
1508 <returns>IPackage reference to an existing package on disk</returns>
1509 </member>
1510 <member name="M:s3pi.Interfaces.APackage.ClosePackage(System.Int32,s3pi.Interfaces.IPackage)">
1511 <summary>
1512 Releases any internal references associated with the given package
1513 </summary>
1514 <param name="APIversion">(unused)</param>
1515 <param name="pkg">IPackage reference to close</param>
1516 </member>
1517 <member name="M:s3pi.Interfaces.APackage.GetResource(s3pi.Interfaces.IResourceIndexEntry)">
1518 <summary>
1519 Used by WrapperDealer to get the data for a resource
1520 </summary>
1521 <param name="rie">IResourceIndexEntry of resource</param>
1522 <returns>The resource data (uncompressed, if necessary)</returns>
1523 </member>
1524 <member name="M:s3pi.Interfaces.APackage.OnResourceIndexInvalidated(System.Object,System.EventArgs)">
1525 <summary>
1526 Used to indicate a resource index returned by GetResourceList is no longer valid (as a whole)
1527 </summary>
1528 <param name="sender">Object causing the list to become invalid</param>
1529 <param name="e">(not used)</param>
1530 </member>
1531 <member name="P:s3pi.Interfaces.APackage.ContentFields">
1532 <summary>
1533 The list of available field names on this API object
1534 </summary>
1535 </member>
1536 <member name="P:s3pi.Interfaces.APackage.Magic">
1537 <summary>
1538 Package header: "DBPF" bytes
1539 </summary>
1540 </member>
1541 <member name="P:s3pi.Interfaces.APackage.Major">
1542 <summary>
1543 Package header: 0x00000002
1544 </summary>
1545 </member>
1546 <member name="P:s3pi.Interfaces.APackage.Minor">
1547 <summary>
1548 Package header: 0x00000000
1549 </summary>
1550 </member>
1551 <member name="P:s3pi.Interfaces.APackage.Unknown1">
1552 <summary>
1553 Package header: unused
1554 </summary>
1555 </member>
1556 <member name="P:s3pi.Interfaces.APackage.Indexcount">
1557 <summary>
1558 Package header: number of entries in the package index
1559 </summary>
1560 </member>
1561 <member name="P:s3pi.Interfaces.APackage.Unknown2">
1562 <summary>
1563 Package header: unused
1564 </summary>
1565 </member>
1566 <member name="P:s3pi.Interfaces.APackage.Indexsize">
1567 <summary>
1568 Package header: index size on disk in bytes
1569 </summary>
1570 </member>
1571 <member name="P:s3pi.Interfaces.APackage.Unknown3">
1572 <summary>
1573 Package header: unused
1574 </summary>
1575 </member>
1576 <member name="P:s3pi.Interfaces.APackage.Indexversion">
1577 <summary>
1578 Package header: always 3?
1579 </summary>
1580 </member>
1581 <member name="P:s3pi.Interfaces.APackage.Indexposition">
1582 <summary>
1583 Package header: index position in file
1584 </summary>
1585 </member>
1586 <member name="P:s3pi.Interfaces.APackage.Unknown4">
1587 <summary>
1588 Package header: unused
1589 </summary>
1590 </member>
1591 <member name="P:s3pi.Interfaces.APackage.HeaderStream">
1592 <summary>
1593 A MemoryStream covering the package header bytes
1594 </summary>
1595 </member>
1596 <member name="E:s3pi.Interfaces.APackage.ResourceIndexInvalidated">
1597 <summary>
1598 Package index: raised when the result of a previous call to GetResourceList becomes invalid
1599 </summary>
1600 </member>
1601 <member name="P:s3pi.Interfaces.APackage.Indextype">
1602 <summary>
1603 Package index: the index format in use
1604 </summary>
1605 </member>
1606 <member name="P:s3pi.Interfaces.APackage.GetResourceList">
1607 <summary>
1608 Package index: the index
1609 </summary>
1610 </member>
1611 <member name="T:s3pi.Interfaces.IResourceIndexEntry">
1612 <summary>
1613 An index entry within a package
1614 </summary>
1615 </member>
1616 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Chunkoffset">
1617 <summary>
1618 If the resource was read from a package, the location in the package the resource was read from
1619 </summary>
1620 </member>
1621 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Filesize">
1622 <summary>
1623 The number of bytes the resource uses within the package
1624 </summary>
1625 </member>
1626 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Memsize">
1627 <summary>
1628 The number of bytes the resource uses in memory
1629 </summary>
1630 </member>
1631 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Compressed">
1632 <summary>
1633 0xFFFF if Filesize != Memsize, else 0x0000
1634 </summary>
1635 </member>
1636 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Unknown2">
1637 <summary>
1638 Always 0x0001
1639 </summary>
1640 </member>
1641 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Stream">
1642 <summary>
1643 A <see cref="T:System.IO.MemoryStream"/> covering the index entry bytes
1644 </summary>
1645 </member>
1646 <member name="P:s3pi.Interfaces.IResourceIndexEntry.IsDeleted">
1647 <summary>
1648 True if the index entry has been deleted from the package index
1649 </summary>
1650 </member>
1651 <member name="T:s3pi.Interfaces.AResourceIndexEntry">
1652 <summary>
1653 An abstract class, descended from <see cref="T:s3pi.Interfaces.AResourceKey"/>, providing an abstract implemention of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>,
1654 representing an index entry within a package.
1655 </summary>
1656 </member>
1657 <member name="M:s3pi.Interfaces.AResourceIndexEntry.#ctor">
1658 <summary>
1659 Initialize a new instance with the default API version and no change <see cref="T:System.EventHandler"/>.
1660 </summary>
1661 </member>
1662 <member name="F:s3pi.Interfaces.AResourceIndexEntry.ResourceIndexEntryChanged">
1663 <summary>
1664 Raised when the AResourceIndexEntry changes
1665 </summary>
1666 </member>
1667 <member name="M:s3pi.Interfaces.AResourceIndexEntry.Equals(s3pi.Interfaces.IResourceIndexEntry)">
1668 <summary>
1669 Indicates whether the current <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> instance is equal to another <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> instance.
1670 </summary>
1671 <param name="other">An <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> instance to compare with this instance.</param>
1672 <returns>true if the current instance is equal to the <paramref name="other"/> parameter; otherwise, false.</returns>
1673 </member>
1674 <member name="M:s3pi.Interfaces.AResourceIndexEntry.Equals(System.Object)">
1675 <summary>
1676 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.AResourceIndexEntry"/>.
1677 </summary>
1678 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.AResourceIndexEntry"/>.</param>
1679 <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.AResourceIndexEntry"/>; otherwise, false.</returns>
1680 </member>
1681 <member name="M:s3pi.Interfaces.AResourceIndexEntry.GetHashCode">
1682 <summary>
1683 Returns the hash code for this instance.
1684 </summary>
1685 <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
1686 </member>
1687 <member name="P:s3pi.Interfaces.AResourceIndexEntry.ContentFields">
1688 <summary>
1689 The list of available field names on this API object
1690 </summary>
1691 </member>
1692 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Chunkoffset">
1693 <summary>
1694 If the resource was read from a package, the location in the package the resource was read from
1695 </summary>
1696 </member>
1697 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Filesize">
1698 <summary>
1699 The number of bytes the resource uses within the package
1700 </summary>
1701 </member>
1702 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Memsize">
1703 <summary>
1704 The number of bytes the resource uses in memory
1705 </summary>
1706 </member>
1707 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Compressed">
1708 <summary>
1709 0xFFFF if Filesize != Memsize, else 0x0000
1710 </summary>
1711 </member>
1712 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Unknown2">
1713 <summary>
1714 Always 0x0001
1715 </summary>
1716 </member>
1717 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Stream">
1718 <summary>
1719 A MemoryStream covering the index entry bytes
1720 </summary>
1721 </member>
1722 <member name="P:s3pi.Interfaces.AResourceIndexEntry.IsDeleted">
1723 <summary>
1724 True if the index entry has been deleted from the package index
1725 </summary>
1726 </member>
1727 <member name="T:s3pi.Interfaces.ConstructorParametersAttribute">
1728 <summary>
1729 Specify the constructor parameters for a descendant of an abstract class
1730 </summary>
1731 </member>
1732 <member name="F:s3pi.Interfaces.ConstructorParametersAttribute.parameters">
1733 <summary>
1734 The constructor parameters
1735 </summary>
1736 </member>
1737 <member name="M:s3pi.Interfaces.ConstructorParametersAttribute.#ctor(System.Object[])">
1738 <summary>
1739 Specify the constructor parameters for a descendant of an abstract class
1740 </summary>
1741 <param name="parameters">The constructor parameters</param>
1742 </member>
1743 <member name="T:s3pi.Interfaces.IndexList`1">
1744 <summary>
1745 A flexible generic list of <see cref="T:s3pi.Interfaces.DependentList`1"/> indices.
1746 </summary>
1747 <typeparam name="T">A simple data type (such as <see cref="T:System.Int32"/> or <see cref="T:System.Byte"/>).</typeparam>
1748 <seealso cref="T:s3pi.Interfaces.SimpleList`1"/>
1749 </member>
1750 <member name="M:s3pi.Interfaces.IndexList`1.#ctor(System.EventHandler,s3pi.Interfaces.IndexList{`0}.CreateElementMethod,s3pi.Interfaces.IndexList{`0}.WriteElementMethod,System.Int64,s3pi.Interfaces.IndexList{`0}.ReadCountMethod,s3pi.Interfaces.IndexList{`0}.WriteCountMethod)">
1751 <summary>
1752 Initializes a new instance of the <see cref="T:s3pi.Interfaces.SimpleList`1"/> class
1753 that is empty.
1754 </summary>
1755 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1756 <param name="createElement">Optional; the method to create a new element in the list from a stream. If null, return default{T}.</param>
1757 <param name="writeElement">Optional; the method to create a new element in the list from a stream. No operation if null.</param>
1758 <param name="size">Optional maximum number of elements in the list.</param>
1759 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
1760 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
1761 </member>
1762 <member name="M:s3pi.Interfaces.IndexList`1.#ctor(System.EventHandler,System.IO.Stream,s3pi.Interfaces.IndexList{`0}.CreateElementMethod,s3pi.Interfaces.IndexList{`0}.WriteElementMethod,System.Int64,s3pi.Interfaces.IndexList{`0}.ReadCountMethod,s3pi.Interfaces.IndexList{`0}.WriteCountMethod)">
1763 <summary>
1764 Initializes a new instance of the <see cref="T:s3pi.Interfaces.SimpleList`1"/> class
1765 from <paramref name="s"/>.
1766 </summary>
1767 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1768 <param name="s">The <see cref="T:System.IO.Stream"/> to read for the initial content of the list.</param>
1769 <param name="createElement">Required; the method to create a new element in the list from a stream.</param>
1770 <param name="writeElement">Required; the method to create a new element in the list from a stream.</param>
1771 <param name="size">Optional maximum number of elements in the list.</param>
1772 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
1773 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
1774 </member>
1775 <member name="M:s3pi.Interfaces.IndexList`1.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{`0},s3pi.Interfaces.IndexList{`0}.CreateElementMethod,s3pi.Interfaces.IndexList{`0}.WriteElementMethod,System.Int64,s3pi.Interfaces.IndexList{`0}.ReadCountMethod,s3pi.Interfaces.IndexList{`0}.WriteCountMethod)">
1776 <summary>
1777 Initializes a new instance of the <see cref="T:s3pi.Interfaces.SimpleList`1"/> class
1778 from <paramref name="collection"/>, wrapping each entry in a <see cref="T:s3pi.Interfaces.TGIBlockListIndex`1"/> instance.
1779 </summary>
1780 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1781 <param name="collection">The source to use as the initial content of the list.</param>
1782 <param name="createElement">Optional; the method to create a new element in the list from a stream. If null, return default{T}.</param>
1783 <param name="writeElement">Optional; the method to create a new element in the list from a stream. No operation if null.</param>
1784 <param name="size">Optional maximum number of elements in the list.</param>
1785 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
1786 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
1787 </member>
1788 <member name="M:s3pi.Interfaces.IndexList`1.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{s3pi.Interfaces.TGIBlockListIndex{`0}},s3pi.Interfaces.IndexList{`0}.CreateElementMethod,s3pi.Interfaces.IndexList{`0}.WriteElementMethod,System.Int64,s3pi.Interfaces.IndexList{`0}.ReadCountMethod,s3pi.Interfaces.IndexList{`0}.WriteCountMethod)">
1789 <summary>
1790 Initializes a new instance of the <see cref="T:s3pi.Interfaces.SimpleList`1"/> class from the existing <paramref name="collection"/>.
1791 </summary>
1792 <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1793 <param name="collection">The source to use as the initial content of the list.</param>
1794 <param name="createElement">Optional; the method to create a new element in the list from a stream. If null, return default{T}.</param>
1795 <param name="writeElement">Optional; the method to create a new element in the list from a stream. No operation if null.</param>
1796 <param name="size">Optional maximum number of elements in the list.</param>
1797 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
1798 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
1799 </member>
1800 <member name="M:s3pi.Interfaces.IndexList`1.ReadCount(System.IO.Stream)">
1801 <summary>
1802 Return the number of elements to be created.
1803 </summary>
1804 <param name="s"><see cref="T:System.IO.Stream"/> being processed.</param>
1805 <returns>The number of elements to be created.</returns>
1806 </member>
1807 <member name="M:s3pi.Interfaces.IndexList`1.WriteCount(System.IO.Stream,System.Int32)">
1808 <summary>
1809 Write the count of list elements to the stream.
1810 </summary>
1811 <param name="s"><see cref="T:System.IO.Stream"/> to write <paramref name="count"/> to.</param>
1812 <param name="count">Value to write to <see cref="T:System.IO.Stream"/> <paramref name="s"/>.</param>
1813 </member>
1814 <member name="M:s3pi.Interfaces.IndexList`1.CreateElement(System.IO.Stream)">
1815 <summary>
1816 Creates an new list element of type <typeparamref name="T"/> by reading <paramref name="s"/>.
1817 </summary>
1818 <param name="s"><see cref="T:System.IO.Stream"/> containing data.</param>
1819 <returns>New list element.</returns>
1820 </member>
1821 <member name="M:s3pi.Interfaces.IndexList`1.WriteElement(System.IO.Stream,s3pi.Interfaces.TGIBlockListIndex{`0})">
1822 <summary>
1823 Writes the value of a list element to <paramref name="s"/>.
1824 </summary>
1825 <param name="s"><see cref="T:System.IO.Stream"/> containing data.</param>
1826 <param name="element">List element for which to write the value to the <see cref="T:System.IO.Stream"/>.</param>
1827 </member>
1828 <member name="M:s3pi.Interfaces.IndexList`1.Add">
1829 <summary>
1830 Add a default element to a <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
1831 </summary>
1832 <exception cref="T:System.NotImplementedException">Lists of abstract classes will fail
1833 with a NotImplementedException.</exception>
1834 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1835 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
1836 </member>
1837 <member name="M:s3pi.Interfaces.IndexList`1.Add(`0)">
1838 <summary>
1839 Adds an entry to a <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
1840 </summary>
1841 <param name="item">The object to add.</param>
1842 <returns>True on success</returns>
1843 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1844 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
1845 </member>
1846 <member name="M:s3pi.Interfaces.IndexList`1.AddRange(System.Collections.Generic.IEnumerable{`0})">
1847 <summary>
1848 Adds the elements of the specified collection to the end of the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
1849 </summary>
1850 <param name="collection">The collection whose elements should be added to the end of the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
1851 The collection itself cannot be null, but it can contain elements that are null, if type <typeparamref name="T"/> is a reference type.</param>
1852 <exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
1853 <exception cref="T:System.InvalidOperationException">Thrown when list size would be exceeded.</exception>
1854 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
1855 <remarks>Calls <see cref="M:s3pi.Interfaces.IndexList`1.Add(`0)"/> for each item in <paramref name="collection"/>.</remarks>
1856 </member>
1857 <member name="M:s3pi.Interfaces.IndexList`1.BinarySearch(`0)">
1858 <summary>
1859 Searches a the entire sorted <see cref="T:s3pi.Interfaces.SimpleList`1"/>
1860 for an element using the default comparer and returns the zero-based index
1861 of the element.
1862 </summary>
1863 <param name="item">
1864 The object to locate.
1865 </param>
1866 <returns>
1867 The zero-based index of item in the sorted <see cref="T:s3pi.Interfaces.SimpleList`1"/>,
1868 if item is found; otherwise, a negative number that is the bitwise complement
1869 of the index of the next element that is larger than item or, if there is
1870 no larger element, the bitwise complement of <see cref="T:s3pi.Interfaces.SimpleList`1"/>.Count.
1871 </returns>
1872 <exception cref="T:System.InvalidOperationException">
1873 The default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
1874 cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
1875 or the <see cref="T:System.IComparable"/> interface for type T.
1876 </exception>
1877 </member>
1878 <member name="M:s3pi.Interfaces.IndexList`1.BinarySearch(`0,System.Collections.Generic.IComparer{`0})">
1879 <summary>
1880 Searches a the entire sorted <see cref="T:s3pi.Interfaces.SimpleList`1"/>
1881 for an element using the specified comparer and returns the zero-based index
1882 of the element.
1883 </summary>
1884 <param name="item">
1885 The object to locate.
1886 </param>
1887 <param name="comparer">
1888 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
1889 elements.
1890 <br/>-or-<br/>
1891 null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
1892 </param>
1893 <returns>
1894 The zero-based index of item in the sorted <see cref="T:s3pi.Interfaces.SimpleList`1"/>,
1895 if item is found; otherwise, a negative number that is the bitwise complement
1896 of the index of the next element that is larger than item or, if there is
1897 no larger element, the bitwise complement of <see cref="T:s3pi.Interfaces.SimpleList`1"/>.Count.
1898 </returns>
1899 <exception cref="T:System.InvalidOperationException">
1900 <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
1901 cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
1902 or the <see cref="T:System.IComparable"/> interface for type T.
1903 </exception>
1904 </member>
1905 <member name="M:s3pi.Interfaces.IndexList`1.BinarySearch(System.Int32,System.Int32,`0,System.Collections.Generic.IComparer{`0})">
1906 <summary>
1907 Searches a range of elements in the sorted <see cref="T:s3pi.Interfaces.SimpleList`1"/>
1908 for an element using the specified comparer and returns the zero-based index
1909 of the element.
1910 </summary>
1911 <param name="index">
1912 The zero-based starting index of the range to search.
1913 </param>
1914 <param name="count">
1915 The length of the range to search.
1916 </param>
1917 <param name="item">
1918 The object to locate.
1919 </param>
1920 <param name="comparer">
1921 The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
1922 elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
1923 </param>
1924 <returns>
1925 The zero-based index of item in the sorted <see cref="T:s3pi.Interfaces.SimpleList`1"/>,
1926 if item is found; otherwise, a negative number that is the bitwise complement
1927 of the index of the next element that is larger than item or, if there is
1928 no larger element, the bitwise complement of <see cref="T:s3pi.Interfaces.SimpleList`1"/>.Count.
1929 </returns>
1930 <exception cref="T:System.ArgumentOutOfRangeException">
1931 <paramref name="index"/> is less than 0.
1932 <br/>-or-<br/>
1933 <paramref name="count"/> is less than 0.
1934 </exception>
1935 <exception cref="T:System.ArgumentException">
1936 <paramref name="index"/> and <paramref name="count"/> do not denote a valid range in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
1937 </exception>
1938 <exception cref="T:System.InvalidOperationException">
1939 <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
1940 cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
1941 or the <see cref="T:System.IComparable"/> interface for type T.
1942 </exception>
1943 </member>
1944 <member name="M:s3pi.Interfaces.IndexList`1.ConvertAll``1(System.Converter{`0,``0})">
1945 <summary>
1946 Converts the elements in the current <see cref="T:s3pi.Interfaces.SimpleList`1"/> to
1947 another type, and returns a list containing the converted elements.
1948 </summary>
1949 <typeparam name="TOutput">
1950 The target type of the elements of the <see cref="T:System.Collections.Generic.List`1"/>.
1951 </typeparam>
1952 <param name="converter">
1953 A <see cref="T:System.Converter`2"/> delegate that converts each element from
1954 one type to another type.
1955 </param>
1956 <returns>
1957 A <see cref="T:System.Collections.Generic.List`1"/> of the target type containing the converted
1958 elements from the current <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
1959 </returns>
1960 <exception cref="T:System.ArgumentNullException">
1961 <paramref name="converter"/> is null.
1962 </exception>
1963 </member>
1964 <member name="M:s3pi.Interfaces.IndexList`1.CopyTo(`0[])">
1965 <summary>
1966 Copies the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/> to
1967 a compatible one-dimensional array, starting at the beginning of the target array.
1968 </summary>
1969 <param name="array">
1970 The one-dimensional System.Array that is the destination of the elements
1971 copied from <see cref="T:s3pi.Interfaces.SimpleList`1"/>. The <see cref="T:System.Array"/> must have
1972 zero-based indexing.
1973 </param>
1974 <exception cref="T:System.ArgumentNullException">
1975 <paramref name="array"/> is null.
1976 </exception>
1977 <exception cref="T:System.ArgumentException">
1978 The number of elements in the source <see cref="T:s3pi.Interfaces.SimpleList`1"/> is
1979 greater than the number of elements that the destination <paramref name="array"/> can contain.
1980 </exception>
1981 </member>
1982 <member name="M:s3pi.Interfaces.IndexList`1.CopyTo(`0[],System.Int32)">
1983 <summary>
1984 Copies the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/> to
1985 a compatible one-dimensional array.
1986 </summary>
1987 <param name="array">
1988 The one-dimensional System.Array that is the destination of the elements
1989 copied from <see cref="T:s3pi.Interfaces.SimpleList`1"/>. The <see cref="T:System.Array"/> must have
1990 zero-based indexing.
1991 </param>
1992 <param name="arrayIndex">
1993 The zero-based index in <paramref name="array"/> at which copying begins.
1994 </param>
1995 <exception cref="T:System.ArgumentNullException">
1996 <paramref name="array"/> is null.
1997 </exception>
1998 <exception cref="T:System.ArgumentOutOfRangeException">
1999 <paramref name="arrayIndex"/> is less than 0.
2000 </exception>
2001 <exception cref="T:System.ArgumentException">
2002 <paramref name="arrayIndex"/> is equal to or greater than the length of array.
2003 <br/>-or-<br/>
2004 The number of elements in the source <see cref="T:s3pi.Interfaces.SimpleList`1"/> is greater
2005 than the available space from <paramref name="arrayIndex"/> to the end of the destination <paramref name="array"/>.
2006 </exception>
2007 </member>
2008 <member name="M:s3pi.Interfaces.IndexList`1.CopyTo(System.Int32,`0[],System.Int32,System.Int32)">
2009 <summary>
2010 Copies a range of elements from the <see cref="T:s3pi.Interfaces.SimpleList`1"/> to
2011 a compatible one-dimensional array, starting at the specified <paramref name="index"/> of the
2012 target <paramref name="array"/>.
2013 </summary>
2014 <param name="index">
2015 The zero-based index in the source <see cref="T:s3pi.Interfaces.SimpleList`1"/> at
2016 which copying begins.
2017 </param>
2018 <param name="array">
2019 The one-dimensional System.Array that is the destination of the elements
2020 copied from <see cref="T:s3pi.Interfaces.SimpleList`1"/>. The <see cref="T:System.Array"/> must have
2021 zero-based indexing.
2022 </param>
2023 <param name="arrayIndex">
2024 The zero-based index in <paramref name="array"/> at which copying begins.
2025 </param>
2026 <param name="count">
2027 The number of elements to copy.
2028 </param>
2029 <exception cref="T:System.ArgumentNullException">
2030 <paramref name="array"/> is null.
2031 </exception>
2032 <exception cref="T:System.ArgumentOutOfRangeException">
2033 <paramref name="index"/> is less than 0.
2034 <br/>-or-<br/>
2035 <paramref name="arrayIndex"/> is less than 0.
2036 <br/>-or-<br/>
2037 <paramref name="count"/> is less than 0.
2038 </exception>
2039 <exception cref="T:System.ArgumentException">
2040 <paramref name="index"/> is equal to or greater than the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.Count
2041 of the source <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2042 <br/>-or-<br/>
2043 <paramref name="arrayIndex"/> is equal to or greater than the length of array.
2044 <br/>-or-<br/>
2045 The number of elements from
2046 <paramref name="index"/> to the end of the source <see cref="T:s3pi.Interfaces.SimpleList`1"/> is greater
2047 than the available space from <paramref name="arrayIndex"/> to the end of the destination <paramref name="array"/>.
2048 </exception>
2049 </member>
2050 <member name="M:s3pi.Interfaces.IndexList`1.Contains(`0)">
2051 <summary>
2052 Determines whether an element is in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2053 </summary>
2054 <param name="item">The object to locate in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.</param>
2055 <returns>true if item is found in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>; otherwise, false.</returns>
2056 </member>
2057 <member name="M:s3pi.Interfaces.IndexList`1.Exists(System.Predicate{`0})">
2058 <summary>
2059 Determines whether the <see cref="T:s3pi.Interfaces.SimpleList`1"/> contains elements
2060 that match the conditions defined by the specified predicate.
2061 </summary>
2062 <param name="match">
2063 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
2064 to search for.
2065 </param>
2066 <returns>
2067 true if the <see cref="T:s3pi.Interfaces.SimpleList`1"/> contains one or more elements
2068 that match the conditions defined by the specified predicate; otherwise,
2069 false.
2070 </returns>
2071 <exception cref="T:System.ArgumentNullException">
2072 match is null.
2073 </exception>
2074 </member>
2075 <member name="M:s3pi.Interfaces.IndexList`1.Find(System.Predicate{`0})">
2076 <summary>
2077 Searches for an element that matches the conditions defined by the specified
2078 predicate, and returns the first occurrence within the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2079 </summary>
2080 <param name="match">
2081 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2082 to search for.
2083 </param>
2084 <returns>
2085 The first element that matches the conditions defined by the specified predicate,
2086 if found; otherwise, the default value for type <typeparamref name="T"/>.
2087 </returns>
2088 <exception cref="T:System.ArgumentNullException">
2089 <paramref name="match"/> is null.
2090 </exception>
2091 </member>
2092 <member name="M:s3pi.Interfaces.IndexList`1.FindAll(System.Predicate{`0})">
2093 <summary>
2094 Retrieves all the elements that match the conditions defined by the specified predicate.
2095 </summary>
2096 <param name="match">
2097 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
2098 to search for.
2099 </param>
2100 <returns>
2101 A <see cref="T:System.Collections.Generic.List`1"/> containing all the elements that match
2102 the conditions defined by the specified predicate, if found; otherwise, an
2103 empty <see cref="T:System.Collections.Generic.List`1"/>.
2104 </returns>
2105 <exception cref="T:System.ArgumentNullException">
2106 <paramref name="match"/> is null.
2107 </exception>
2108 </member>
2109 <member name="M:s3pi.Interfaces.IndexList`1.FindIndex(System.Predicate{`0})">
2110 <summary>
2111 Retrieves all the elements that match the conditions defined by the specified predicate.
2112 Searches for an element that matches the conditions defined by the specified
2113 predicate, and returns the zero-based index of the first occurrence within
2114 the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2115 </summary>
2116 <param name="match">
2117 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2118 to search for.
2119 </param>
2120 <returns>
2121 The zero-based index of the first occurrence of an element that matches the
2122 conditions defined by <paramref name="match"/>, if found; otherwise, –1.
2123 </returns>
2124 <exception cref="T:System.ArgumentNullException">
2125 <paramref name="match"/> is null.
2126 </exception>
2127 </member>
2128 <member name="M:s3pi.Interfaces.IndexList`1.FindIndex(System.Int32,System.Predicate{`0})">
2129 <summary>
2130 Searches for an element that matches the conditions defined by the specified
2131 predicate, and returns the zero-based index of the first occurrence within
2132 the range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> that extends
2133 from the specified index to the last element.
2134 </summary>
2135 <param name="startIndex">
2136 The zero-based starting index of the search.
2137 </param>
2138 <param name="match">
2139 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2140 to search for.
2141 </param>
2142 <returns>
2143 The zero-based index of the first occurrence of an element that matches the
2144 conditions defined by <paramref name="match"/>, if found; otherwise, –1.
2145 </returns>
2146 <exception cref="T:System.ArgumentNullException">
2147 <paramref name="match"/> is null.
2148 </exception>
2149 <exception cref="T:System.ArgumentOutOfRangeException">
2150 <paramref name="startIndex"/> is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2151 </exception>
2152 </member>
2153 <member name="M:s3pi.Interfaces.IndexList`1.FindIndex(System.Int32,System.Int32,System.Predicate{`0})">
2154 <summary>
2155 Searches for an element that matches the conditions defined by the specified
2156 predicate, and returns the zero-based index of the first occurrence within
2157 the range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> that starts
2158 at the specified index and contains the specified number of elements.
2159 </summary>
2160 <param name="startIndex">
2161 The zero-based starting index of the search.
2162 </param>
2163 <param name="count">
2164 The number of elements in the section to search.
2165 </param>
2166 <param name="match">
2167 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2168 to search for.
2169 </param>
2170 <returns>
2171 The zero-based index of the first occurrence of an element that matches the
2172 conditions defined by <paramref name="match"/>, if found; otherwise, –1.
2173 </returns>
2174 <exception cref="T:System.ArgumentNullException">
2175 <paramref name="match"/> is null.
2176 </exception>
2177 <exception cref="T:System.ArgumentOutOfRangeException">
2178 <paramref name="startIndex"/> is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2179 <br/>-or-<br/>
2180 <paramref name="count"/> is less than 0.
2181 <br/>-or-<br/>
2182 <paramref name="startIndex"/> and <paramref name="count"/> do not specify a valid section in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2183 </exception>
2184 </member>
2185 <member name="M:s3pi.Interfaces.IndexList`1.FindLast(System.Predicate{`0})">
2186 <summary>
2187 Searches for an element that matches the conditions defined by the specified
2188 predicate, and returns the last occurrence within the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2189 </summary>
2190 <param name="match">
2191 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2192 to search for.
2193 </param>
2194 <returns>
2195 The last element that matches the conditions defined by the specified predicate,
2196 if found; otherwise, the default value for type <typeparamref name="T"/>.
2197 </returns>
2198 <exception cref="T:System.ArgumentNullException">
2199 <paramref name="match"/> is null.
2200 </exception>
2201 </member>
2202 <member name="M:s3pi.Interfaces.IndexList`1.FindLastIndex(System.Predicate{`0})">
2203 <summary>
2204 Searches for an element that matches the conditions defined by the specified
2205 predicate, and returns the zero-based index of the last occurrence within
2206 the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2207 </summary>
2208 <param name="match">
2209 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2210 to search for.
2211 </param>
2212 <returns>
2213 The zero-based index of the last occurrence of an element that matches the
2214 conditions defined by <paramref name="match"/>, if found; otherwise, –1.
2215 </returns>
2216 <exception cref="T:System.ArgumentNullException">
2217 <paramref name="match"/> is null.
2218 </exception>
2219 </member>
2220 <member name="M:s3pi.Interfaces.IndexList`1.FindLastIndex(System.Int32,System.Predicate{`0})">
2221 <summary>
2222 Searches for an element that matches the conditions defined by the specified
2223 predicate, and returns the zero-based index of the last occurrence within
2224 the range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> that
2225 extends from the first element to the specified index.
2226 </summary>
2227 <param name="startIndex">
2228 The zero-based starting index of the backward search.
2229 </param>
2230 <param name="match">
2231 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2232 to search for.
2233 </param>
2234 <returns>
2235 The zero-based index of the last occurrence of an element that matches the
2236 conditions defined by <paramref name="match"/>, if found; otherwise, –1.
2237 </returns>
2238 <exception cref="T:System.ArgumentNullException">
2239 <paramref name="match"/> is null.
2240 </exception>
2241 <exception cref="T:System.ArgumentOutOfRangeException">
2242 <paramref name="startIndex"/> is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2243 </exception>
2244 </member>
2245 <member name="M:s3pi.Interfaces.IndexList`1.FindLastIndex(System.Int32,System.Int32,System.Predicate{`0})">
2246 <summary>
2247 Searches for an element that matches the conditions defined by the specified
2248 predicate, and returns the zero-based index of the last occurrence within
2249 the range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> that
2250 contains the specified number of elements and ends at the specified index.
2251 </summary>
2252 <param name="startIndex">
2253 The zero-based starting index of the backward search.
2254 </param>
2255 <param name="count">
2256 The number of elements in the section to search.
2257 </param>
2258 <param name="match">
2259 The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2260 to search for.
2261 </param>
2262 <returns>
2263 The zero-based index of the last occurrence of an element that matches the
2264 conditions defined by <paramref name="match"/>, if found; otherwise, –1.
2265 </returns>
2266 <exception cref="T:System.ArgumentNullException">
2267 <paramref name="match"/> is null.
2268 </exception>
2269 <exception cref="T:System.ArgumentOutOfRangeException">
2270 <paramref name="startIndex"/> is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2271 <br/>-or-<br/>
2272 <paramref name="count"/> is less than 0.
2273 <br/>-or-<br/>
2274 <paramref name="startIndex"/> and <paramref name="count"/> do not specify a valid section in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2275 </exception>
2276 </member>
2277 <member name="M:s3pi.Interfaces.IndexList`1.ForEach(System.Action{`0})">
2278 <summary>
2279 Performs the specified action on each element of the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2280 </summary>
2281 <param name="action">
2282 The <see cref="T:System.Action`1"/> delegate to perform on each element of the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2283 </param>
2284 <exception cref="T:System.ArgumentNullException">
2285 <paramref name="action"/> is null.
2286 </exception>
2287 </member>
2288 <member name="M:s3pi.Interfaces.IndexList`1.InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
2289 <summary>
2290 Inserts the elements of a collection into the <see cref="T:s3pi.Interfaces.SimpleList`1"/> at the specified index.
2291 </summary>
2292 <param name="index">The zero-based index at which the new elements should be inserted.</param>
2293 <param name="collection">The collection whose elements should be inserted into the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2294 The collection itself cannot be null, but it can contain elements that are null, if type <typeparamref name="T"/> is a reference type.</param>
2295 <exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
2296 <exception cref="T:System.ArgumentOutOfRangeException">
2297 <paramref name="index"/> is less than 0.
2298 <br/>-or-<br/>
2299 <paramref name="index"/> is greater than <see cref="T:s3pi.Interfaces.SimpleList`1"/>.Count.
2300 </exception>
2301 <exception cref="T:System.InvalidOperationException">Thrown when list size would be exceeded.</exception>
2302 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
2303 <remarks>Calls <see cref="M:s3pi.Interfaces.IndexList`1.Insert(System.Int32,`0)"/> for each item in <paramref name="collection"/>.</remarks>
2304 </member>
2305 <member name="M:s3pi.Interfaces.IndexList`1.IndexOf(`0,System.Int32)">
2306 <summary>
2307 Searches for the specified object and returns the zero-based index of the
2308 first occurrence within the range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>
2309 that extends from the specified index to the last element.
2310 </summary>
2311 <param name="item">
2312 The object to locate in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2313 </param>
2314 <param name="index">
2315 The zero-based starting index of the search.
2316 </param>
2317 <returns>
2318 The zero-based index of the first occurrence of item within the range of
2319 elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> that extends from index
2320 to the last element, if found; otherwise, –1.
2321 </returns>
2322 <exception cref="T:System.ArgumentOutOfRangeException">
2323 index is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2324 </exception>
2325 </member>
2326 <member name="M:s3pi.Interfaces.IndexList`1.IndexOf(`0,System.Int32,System.Int32)">
2327 <summary>
2328 Searches for the specified object and returns the zero-based index of the
2329 first occurrence within the range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>
2330 that starts at the specified index and contains the specified number of elements.
2331 </summary>
2332 <param name="item">
2333 The object to locate in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2334 </param>
2335 <param name="index">
2336 The zero-based starting index of the search.
2337 </param>
2338 <param name="count">
2339 The number of elements in the section to search.
2340 </param>
2341 <returns>
2342 The zero-based index of the first occurrence of item within the range of
2343 elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> that
2344 starts at <paramref name="index"/> and contains <paramref name="count"/> number of elements,
2345 if found; otherwise, –1.
2346 </returns>
2347 <exception cref="T:System.ArgumentOutOfRangeException">
2348 index is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2349 <br/>-or-<br/>
2350 count is less than 0.
2351 <br/>-or-<br/>
2352 index and count do not specify a valid section in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2353 </exception>
2354 </member>
2355 <member name="M:s3pi.Interfaces.IndexList`1.LastIndexOf(`0)">
2356 <summary>
2357 Searches for the specified object and returns the zero-based index of the
2358 last occurrence within the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2359 </summary>
2360 <param name="item">
2361 The object to locate in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2362 </param>
2363 <returns>
2364 The zero-based index of the last occurrence of item within the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/>,
2365 if found; otherwise, –1.
2366 </returns>
2367 </member>
2368 <member name="M:s3pi.Interfaces.IndexList`1.LastIndexOf(`0,System.Int32)">
2369 <summary>
2370 Searches for the specified object and returns the zero-based index of the
2371 last occurrence within the range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>
2372 that extends from the first element to the specified index.
2373 </summary>
2374 <param name="item">
2375 The object to locate in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2376 </param>
2377 <param name="index">
2378 The zero-based starting index of the backward search.
2379 </param>
2380 <returns>
2381 The zero-based index of the last occurrence of item within the range of
2382 elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> that
2383 extends from the first element and ends at <paramref name="index"/>,
2384 if found; otherwise, –1.
2385 </returns>
2386 <exception cref="T:System.ArgumentOutOfRangeException">
2387 index is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2388 </exception>
2389 </member>
2390 <member name="M:s3pi.Interfaces.IndexList`1.LastIndexOf(`0,System.Int32,System.Int32)">
2391 <summary>
2392 Searches for the specified object and returns the zero-based index of the
2393 last occurrence within the range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>
2394 that contains the specified number of elements and ends at the specified index.
2395 </summary>
2396 <param name="item">
2397 The object to locate in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2398 </param>
2399 <param name="index">
2400 The zero-based starting index of the backward search.
2401 </param>
2402 <param name="count">
2403 The number of elements in the section to search.
2404 </param>
2405 <returns>
2406 The zero-based index of the last occurrence of item within the range of
2407 elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> that
2408 contains <paramref name="count"/> number of elements and ends at <paramref name="index"/>,
2409 if found; otherwise, –1.
2410 </returns>
2411 <exception cref="T:System.ArgumentOutOfRangeException">
2412 index is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2413 <br/>-or-<br/>
2414 count is less than 0.
2415 <br/>-or-<br/>
2416 index and count do not specify a valid section in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2417 </exception>
2418 </member>
2419 <member name="M:s3pi.Interfaces.IndexList`1.Remove(`0)">
2420 <summary>
2421 Removes the first occurrence of an entry from the <see cref="T:s3pi.Interfaces.SimpleList`1"/> with the value given.
2422 </summary>
2423 <param name="item">The value to remove from the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.</param>
2424 <returns>
2425 true if item was successfully removed from the <see cref="T:s3pi.Interfaces.SimpleList`1"/>
2426 otherwise, false. This method also returns false if item is not found in
2427 the original <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2428 </returns>
2429 <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.AHandlerList`1"/> is read-only.</exception>
2430 </member>
2431 <member name="M:s3pi.Interfaces.IndexList`1.RemoveAll(System.Predicate{`0})">
2432 <summary>
2433 Removes the all the elements that match the conditions defined by the specified predicate.
2434 </summary>
2435 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements to remove.</param>
2436 <returns>The number of elements removed from the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.</returns>
2437 <exception cref="T:System.ArgumentNullException"><paramref name="match"/> is null.</exception>
2438 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
2439 </member>
2440 <member name="M:s3pi.Interfaces.IndexList`1.Sort(System.Comparison{`0})">
2441 <summary>
2442 Sorts the elements in the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/> using the specified <see cref="T:System.Comparison`1"/>.
2443 </summary>
2444 <param name="comparison">The <see cref="T:System.Comparison`1"/> to use when comparing elements.</param>
2445 <exception cref="T:System.ArgumentException">The implementation of <paramref name="comparison"/> caused an error during the sort.
2446 For example, <paramref name="comparison"/> might not return 0 when comparing an item with itself.</exception>
2447 <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is null.</exception>
2448 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
2449 </member>
2450 <member name="M:s3pi.Interfaces.IndexList`1.Sort(System.Collections.Generic.IComparer{`0})">
2451 <summary>
2452 Sorts the elements in the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/> using the specified comparer.
2453 </summary>
2454 <param name="comparer">The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing elements,
2455 or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.</param>
2456 <exception cref="T:System.ArgumentException">
2457 The implementation of <paramref name="comparer"/> caused an error during the sort.
2458 For example, <paramref name="comparer"/> might not return 0 when comparing an item with itself.
2459 </exception>
2460 <exception cref="T:System.InvalidOperationException">
2461 <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
2462 cannot find implementation of the <see cref="T:System.IComparable`1"/> generic interface
2463 or the System.IComparable interface for type <typeparamref name="T"/>.
2464 </exception>
2465 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
2466 </member>
2467 <member name="M:s3pi.Interfaces.IndexList`1.Sort(System.Int32,System.Int32,System.Collections.Generic.IComparer{`0})">
2468 <summary>
2469 Sorts the elements in a range of elements in <see cref="T:s3pi.Interfaces.SimpleList`1"/> using the specified comparer.
2470 </summary>
2471 <param name="index">The zero-based starting index of the range to sort.</param>
2472 <param name="count">The number of elements in the range to sort.</param>
2473 <param name="comparer">The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing elements,
2474 or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.</param>
2475 <exception cref="T:System.ArgumentException">
2476 <paramref name="index"/> and <paramref name="count"/> do not denote a valid range of elements in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2477 <br/>-or-<br/>
2478 The implementation of <paramref name="comparer"/> caused an error during the sort.
2479 For example, <paramref name="comparer"/> might not return 0 when comparing an item with itself.
2480 <br/>-or-<br/>
2481 <paramref name="comparer"/> is null, and an implementation of the <see cref="T:System.IComparable`1"/> generic interface
2482 or the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/> cannot be found.
2483 </exception>
2484 <exception cref="T:System.ArgumentOutOfRangeException">
2485 <paramref name="index"/> is less than 0.
2486 <br/>-or-<br/>
2487 <paramref name="count"/> is less than 0.
2488 </exception>
2489 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
2490 </member>
2491 <member name="M:s3pi.Interfaces.IndexList`1.ToArray">
2492 <summary>
2493 Copies the elements of the <see cref="T:s3pi.Interfaces.SimpleList`1"/> to a new array.
2494 </summary>
2495 <returns>
2496 An array containing copies of the elements of the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2497 </returns>
2498 </member>
2499 <member name="M:s3pi.Interfaces.IndexList`1.TrueForAll(System.Predicate{`0})">
2500 <summary>
2501 Determines whether every element in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>
2502 matches the conditions defined by the specified predicate.
2503 </summary>
2504 <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions to check against the elements.</param>
2505 <returns>
2506 true if every element in the <see cref="T:s3pi.Interfaces.SimpleList`1"/> matches the
2507 conditions defined by the specified predicate; otherwise, false. If the list
2508 has no elements, the return value is true.
2509 </returns>
2510 <exception cref="T:System.ArgumentNullException"><paramref name="match"/> is null.</exception>
2511 </member>
2512 <member name="M:s3pi.Interfaces.IndexList`1.IndexOf(`0)">
2513 <summary>
2514 Searches for the specified object and returns the zero-based index of the
2515 first occurrence within the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2516 </summary>
2517 <param name="item">
2518 The object to locate in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.
2519 </param>
2520 <returns>
2521 The zero-based index of the first occurrence of item within the entire <see cref="T:s3pi.Interfaces.SimpleList`1"/>,
2522 if found; otherwise, –1.
2523 </returns>
2524 </member>
2525 <member name="M:s3pi.Interfaces.IndexList`1.Insert(System.Int32,`0)">
2526 <summary>
2527 Inserts an item to the <see cref="T:s3pi.Interfaces.SimpleList`1"/> at the specified index.
2528 </summary>
2529 <param name="index">The zero-based index at which item should be inserted.</param>
2530 <param name="item">The object to insert into the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.</param>
2531 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is not a valid index in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.</exception>
2532 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
2533 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
2534 </member>
2535 <member name="M:s3pi.Interfaces.IndexList`1.GetEnumerator">
2536 <summary>
2537 Returns an enumerator that iterates through the collection.
2538 </summary>
2539 <returns>A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.</returns>
2540 </member>
2541 <member name="P:s3pi.Interfaces.IndexList`1.ParentTGIBlocks">
2542 <summary>
2543 Reference to TGIBlockList into which this is an index.
2544 </summary>
2545 </member>
2546 <member name="P:s3pi.Interfaces.IndexList`1.Item(System.Int32)">
2547 <summary>
2548 Gets or sets the element at the specified index.
2549 </summary>
2550 <param name="index">The zero-based index of the element to get or set.</param>
2551 <returns>The element at the specified index.</returns>
2552 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is not a valid index in the <see cref="T:s3pi.Interfaces.SimpleList`1"/>.</exception>
2553 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.SimpleList`1"/> is read-only.</exception>
2554 </member>
2555 <member name="T:s3pi.Interfaces.IndexList`1.Enumerator`1">
2556 <summary>
2557 Supports a simple iteration over a generic collection.
2558 </summary>
2559 <typeparam name="U">The type of objects to enumerate.</typeparam>
2560 </member>
2561 <member name="M:s3pi.Interfaces.IndexList`1.Enumerator`1.Dispose">
2562 <summary>
2563 Releases all resources used by the enumerator.
2564 </summary>
2565 </member>
2566 <member name="M:s3pi.Interfaces.IndexList`1.Enumerator`1.MoveNext">
2567 <summary>
2568 Advances the enumerator to the next element of the collection.
2569 </summary>
2570 <returns>
2571 true if the enumerator was successfully advanced to the next element;
2572 false if the enumerator has passed the end of the collection.
2573 </returns>
2574 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
2575 </member>
2576 <member name="M:s3pi.Interfaces.IndexList`1.Enumerator`1.Reset">
2577 <summary>
2578 Sets the enumerator to its initial position, which is before the first element in the collection.
2579 </summary>
2580 <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
2581 </member>
2582 <member name="P:s3pi.Interfaces.IndexList`1.Enumerator`1.Current">
2583 <summary>
2584 Gets the element at the current position of the enumerator.
2585 </summary>
2586 </member>
2587 <member name="T:s3pi.Interfaces.IndexList`1.CreateElementMethod">
2588 <summary>
2589 Create a new element of type <typeparamref name="T"/> from a <see cref="T:System.IO.Stream"/>.
2590 </summary>
2591 <param name="s">The <see cref="T:System.IO.Stream"/> from which to read the element data.</param>
2592 <returns>A new element of type <typeparamref name="T"/>.</returns>
2593 </member>
2594 <member name="T:s3pi.Interfaces.IndexList`1.WriteElementMethod">
2595 <summary>
2596 Write an element of type <typeparamref name="T"/> to a <see cref="T:System.IO.Stream"/>.
2597 </summary>
2598 <param name="s">The <see cref="T:System.IO.Stream"/> to which to write the value.</param>
2599 <param name="value">The value of type <typeparamref name="T"/> to write.</param>
2600 </member>
2601 <member name="T:s3pi.Interfaces.IndexList`1.ReadCountMethod">
2602 <summary>
2603 Return the number of list elements to read.
2604 </summary>
2605 <param name="s">A <see cref="T:System.IO.Stream"/> that may contain the number of elements.</param>
2606 <returns>The number of list elements to read.</returns>
2607 </member>
2608 <member name="T:s3pi.Interfaces.IndexList`1.WriteCountMethod">
2609 <summary>
2610 Store the number of elements in the list.
2611 </summary>
2612 <param name="s">A <see cref="T:System.IO.Stream"/> to which list elements will be written after the count.</param>
2613 <param name="count">The number of list elements.</param>
2614 </member>
2615 <member name="T:s3pi.Interfaces.ByteIndexList">
2616 <summary>
2617 A byte-size use of <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2618 </summary>
2619 </member>
2620 <member name="M:s3pi.Interfaces.ByteIndexList.#ctor(System.EventHandler,s3pi.Interfaces.IndexList{System.Byte}.ReadCountMethod,s3pi.Interfaces.IndexList{System.Byte}.WriteCountMethod,System.Int64)">
2621 <summary>
2622 Create an empty UIntList.
2623 </summary>
2624 <param name="handler">Event handler.</param>
2625 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2626 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2627 <param name="size">Optional list size (should be <c>byte.MaxValue</c> or below).</param>
2628 </member>
2629 <member name="M:s3pi.Interfaces.ByteIndexList.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{System.Byte},s3pi.Interfaces.IndexList{System.Byte}.ReadCountMethod,s3pi.Interfaces.IndexList{System.Byte}.WriteCountMethod,System.Int64)">
2630 <summary>
2631 Create a UIntList populated from an existing set of values.
2632 </summary>
2633 <param name="handler">Event handler.</param>
2634 <param name="basis">Basis on which to populate the list.</param>
2635 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2636 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2637 <param name="size">Optional list size (should be <c>byte.MaxValue</c> or below).</param>
2638 </member>
2639 <member name="M:s3pi.Interfaces.ByteIndexList.#ctor(System.EventHandler,System.IO.Stream,s3pi.Interfaces.IndexList{System.Byte}.ReadCountMethod,s3pi.Interfaces.IndexList{System.Byte}.WriteCountMethod,System.Int64)">
2640 <summary>
2641 Create a UIntList populated from a <see cref="T:System.IO.Stream"/>.
2642 </summary>
2643 <param name="handler">Event handler.</param>
2644 <param name="s"><see cref="T:System.IO.Stream"/> from which to read elements.</param>
2645 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2646 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2647 <param name="size">Optional list size (should be <c>byte.MaxValue</c> or below).</param>
2648 </member>
2649 <member name="T:s3pi.Interfaces.Int32IndexList">
2650 <summary>
2651 <see cref="T:s3pi.Interfaces.IndexList`1"/> with <see cref="T:System.Int32"/> entries.
2652 </summary>
2653 </member>
2654 <member name="M:s3pi.Interfaces.Int32IndexList.#ctor(System.EventHandler,System.Int64,s3pi.Interfaces.IndexList{System.Int32}.ReadCountMethod,s3pi.Interfaces.IndexList{System.Int32}.WriteCountMethod)">
2655 <summary>
2656 Create an empty UIntList.
2657 </summary>
2658 <param name="handler">Event handler.</param>
2659 <param name="size">Optional list size.</param>
2660 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2661 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2662 </member>
2663 <member name="M:s3pi.Interfaces.Int32IndexList.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{System.Int32},System.Int64,s3pi.Interfaces.IndexList{System.Int32}.ReadCountMethod,s3pi.Interfaces.IndexList{System.Int32}.WriteCountMethod)">
2664 <summary>
2665 Create a UIntList populated from an existing set of values.
2666 </summary>
2667 <param name="handler">Event handler.</param>
2668 <param name="basis">Basis on which to populate the list.</param>
2669 <param name="size">Optional list size.</param>
2670 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2671 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2672 </member>
2673 <member name="M:s3pi.Interfaces.Int32IndexList.#ctor(System.EventHandler,System.IO.Stream,System.Int64,s3pi.Interfaces.IndexList{System.Int32}.ReadCountMethod,s3pi.Interfaces.IndexList{System.Int32}.WriteCountMethod)">
2674 <summary>
2675 Create a UIntList populated from a <see cref="T:System.IO.Stream"/>.
2676 </summary>
2677 <param name="handler">Event handler.</param>
2678 <param name="s"><see cref="T:System.IO.Stream"/> from which to read elements.</param>
2679 <param name="size">Optional list size.</param>
2680 <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2681 <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2682 </member>
2683 <member name="T:s3pi.Interfaces.DataGridExpandableAttribute">
2684 <summary>
2685 Indicates that the element should be expandable rather than requiring a popup
2686 </summary>
2687 </member>
2688 <member name="M:s3pi.Interfaces.DataGridExpandableAttribute.#ctor">
2689 <summary>
2690 Indicates that the element should be expandable rather than requiring a popup
2691 </summary>
2692 </member>
2693 <member name="M:s3pi.Interfaces.DataGridExpandableAttribute.#ctor(System.Boolean)">
2694 <summary>
2695 If true, indicates that the element should be expandable rather than requiring a popup
2696 </summary>
2697 <param name="value">True to indicate the element should be expandable</param>
2698 </member>
2699 <member name="M:s3pi.Interfaces.DataGridExpandableAttribute.GetDataGridExpandable(System.Type,System.String)">
2700 <summary>
2701 Return the DataGridExpandable value for a Content Field.
2702 </summary>
2703 <param name="t">Type on which Content Field exists.</param>
2704 <param name="index">Content Field name.</param>
2705 <returns>The value of the DataGridExpandableAttribute DataGridExpandable field, if found;
2706 otherwise <c>false</c>.</returns>
2707 </member>
2708 <member name="P:s3pi.Interfaces.DataGridExpandableAttribute.DataGridExpandable">
2709 <summary>
2710 Indicate whether the element should be expandable (true) or not (false)
2711 </summary>
2712 </member>
2713 <member name="T:s3pi.Interfaces.TypedValue">
2714 <summary>
2715 A tuple associating a data type (or class) with a value object (of the given type)
2716 </summary>
2717 </member>
2718 <member name="F:s3pi.Interfaces.TypedValue.Type">
2719 <summary>
2720 The data type
2721 </summary>
2722 </member>
2723 <member name="F:s3pi.Interfaces.TypedValue.Value">
2724 <summary>
2725 The value
2726 </summary>
2727 </member>
2728 <member name="M:s3pi.Interfaces.TypedValue.#ctor(System.Type,System.Object)">
2729 <summary>
2730 Create a new <see cref="T:s3pi.Interfaces.TypedValue"/>
2731 </summary>
2732 <param name="t">The data type</param>
2733 <param name="v">The value</param>
2734 </member>
2735 <member name="M:s3pi.Interfaces.TypedValue.#ctor(System.Type,System.Object,System.String)">
2736 <summary>
2737 Create a new <see cref="T:s3pi.Interfaces.TypedValue"/>
2738 </summary>
2739 <param name="t">The data type</param>
2740 <param name="v">The value</param>
2741 <param name="f">The default format for <see cref="M:s3pi.Interfaces.TypedValue.ToString"/></param>
2742 </member>
2743 <member name="M:s3pi.Interfaces.TypedValue.op_Implicit(s3pi.Interfaces.TypedValue)~System.String">
2744 <summary>
2745 Return a string representing the <see cref="T:s3pi.Interfaces.TypedValue"/>
2746 <paramref name="tv"/>.
2747 </summary>
2748 <param name="tv">The value to convert.</param>
2749 <returns>A string representing <paramref name="tv"/>.</returns>
2750 </member>
2751 <member name="M:s3pi.Interfaces.TypedValue.ToString">
2752 <summary>
2753 Return the Value as a string using the default format
2754 </summary>
2755 <returns>String representation of Value in default format</returns>
2756 </member>
2757 <member name="M:s3pi.Interfaces.TypedValue.ToString(System.String)">
2758 <summary>
2759 Return the Value as a string using the given format
2760 </summary>
2761 <param name="format">Format to use for result</param>
2762 <returns>String representation of Value in given format</returns>
2763 </member>
2764 <member name="M:s3pi.Interfaces.TypedValue.CompareTo(s3pi.Interfaces.TypedValue)">
2765 <summary>
2766 Compare this <see cref="T:s3pi.Interfaces.TypedValue"/> to another for sort order purposes
2767 </summary>
2768 <param name="other">Target <see cref="T:s3pi.Interfaces.TypedValue"/></param>
2769 <returns>A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings:
2770 <table>
2771 <thead><tr><td><strong>Value</strong></td><td><strong>Meaning</strong></td></tr></thead>
2772 <tbody>
2773 <tr><td>Less than zero</td><td>This instance is less than <paramref name="other"/>.</td></tr>
2774 <tr><td>Zero</td><td>This instance is equal to <paramref name="other"/>.</td></tr>
2775 <tr><td>Greater than zero</td><td>This instance is greater than <paramref name="other"/>.</td></tr>
2776 </tbody>
2777 </table>
2778 </returns>
2779 <exception cref="T:System.NotImplementedException">Either this object's Type or the target's is not comparable</exception>
2780 <exception cref="T:System.ArgumentException">The target is not comparable with this object</exception>
2781 </member>
2782 <member name="M:s3pi.Interfaces.TypedValue.Equals(s3pi.Interfaces.TypedValue,s3pi.Interfaces.TypedValue)">
2783 <summary>
2784 Determines whether the specified <see cref="T:s3pi.Interfaces.TypedValue"/> instances are equal.
2785 </summary>
2786 <param name="x">The first <see cref="T:s3pi.Interfaces.TypedValue"/> to compare.</param>
2787 <param name="y">The second <see cref="T:s3pi.Interfaces.TypedValue"/> to compare.</param>
2788 <returns>true if the specified <see cref="T:s3pi.Interfaces.TypedValue"/> instances are equal; otherwise, false.</returns>
2789 </member>
2790 <member name="M:s3pi.Interfaces.TypedValue.GetHashCode(s3pi.Interfaces.TypedValue)">
2791 <summary>
2792 Returns a hash code for the specified <see cref="T:s3pi.Interfaces.TypedValue"/>.
2793 </summary>
2794 <param name="obj">The <see cref="T:s3pi.Interfaces.TypedValue"/> for which a hash code is to be returned.</param>
2795 <returns>A hash code for the specified object.</returns>
2796 <exception cref="T:System.ArgumentNullException">The type of <paramref name="obj"/> is a reference type and
2797 <paramref name="obj"/> is null.</exception>
2798 </member>
2799 <member name="M:s3pi.Interfaces.TypedValue.Equals(s3pi.Interfaces.TypedValue)">
2800 <summary>
2801 Indicates whether the current <see cref="T:s3pi.Interfaces.TypedValue"/> instance is equal to another <see cref="T:s3pi.Interfaces.TypedValue"/> instance.
2802 </summary>
2803 <param name="other">An <see cref="T:s3pi.Interfaces.TypedValue"/> instance to compare with this instance.</param>
2804 <returns>true if the current instance is equal to the <paramref name="other"/> parameter; otherwise, false.</returns>
2805 </member>
2806 <member name="M:s3pi.Interfaces.TypedValue.Equals(System.Object)">
2807 <summary>
2808 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.TypedValue"/>.
2809 </summary>
2810 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.TypedValue"/>.</param>
2811 <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.TypedValue"/>; otherwise, false.</returns>
2812 </member>
2813 <member name="M:s3pi.Interfaces.TypedValue.GetHashCode">
2814 <summary>
2815 Returns the hash code for this instance.
2816 </summary>
2817 <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
2818 </member>
2819 <member name="M:s3pi.Interfaces.TypedValue.GetTypeCode">
2820 <summary>
2821 Returns the <see cref="T:System.TypeCode"/> for this instance.
2822 </summary>
2823 <returns>The enumerated constant that is the <see cref="T:System.TypeCode"/> of the <see cref="T:s3pi.Interfaces.TypedValue"/> class.</returns>
2824 </member>
2825 <member name="M:s3pi.Interfaces.TypedValue.ToBoolean(System.IFormatProvider)">
2826 <summary>
2827 Converts the value of this instance to an equivalent <see cref="T:System.Boolean"/> value
2828 (ignoring the specified culture-specific formatting information).
2829 </summary>
2830 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2831 that supplies culture-specific formatting information.</param>
2832 <returns>A <see cref="T:System.Boolean"/> value equivalent to the value of this instance.</returns>
2833 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2834 cannot be assigned to a <see cref="T:System.Boolean"/>.</exception>
2835 </member>
2836 <member name="M:s3pi.Interfaces.TypedValue.ToByte(System.IFormatProvider)">
2837 <summary>
2838 Converts the value of this instance to an equivalent <see cref="T:System.Byte"/> value
2839 (ignoring the specified culture-specific formatting information).
2840 </summary>
2841 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2842 that supplies culture-specific formatting information.</param>
2843 <returns>A <see cref="T:System.Byte"/> value equivalent to the value of this instance.</returns>
2844 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2845 cannot be assigned to a <see cref="T:System.Byte"/>.</exception>
2846 </member>
2847 <member name="M:s3pi.Interfaces.TypedValue.ToChar(System.IFormatProvider)">
2848 <summary>
2849 Converts the value of this instance to an equivalent <see cref="T:System.Char"/> value
2850 (ignoring the specified culture-specific formatting information).
2851 </summary>
2852 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2853 that supplies culture-specific formatting information.</param>
2854 <returns>A <see cref="T:System.Char"/> value equivalent to the value of this instance.</returns>
2855 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2856 cannot be assigned to a <see cref="T:System.Char"/>.</exception>
2857 </member>
2858 <member name="M:s3pi.Interfaces.TypedValue.ToDateTime(System.IFormatProvider)">
2859 <summary>
2860 Converts the value of this instance to an equivalent <see cref="T:System.DateTime"/> value
2861 (ignoring the specified culture-specific formatting information).
2862 </summary>
2863 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2864 that supplies culture-specific formatting information.</param>
2865 <returns>A <see cref="T:System.DateTime"/> value equivalent to the value of this instance.</returns>
2866 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2867 cannot be assigned to a <see cref="T:System.DateTime"/>.</exception>
2868 </member>
2869 <member name="M:s3pi.Interfaces.TypedValue.ToDecimal(System.IFormatProvider)">
2870 <summary>
2871 Converts the value of this instance to an equivalent <see cref="T:System.Decimal"/> value
2872 (ignoring the specified culture-specific formatting information).
2873 </summary>
2874 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2875 that supplies culture-specific formatting information.</param>
2876 <returns>A <see cref="T:System.Decimal"/> value equivalent to the value of this instance.</returns>
2877 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2878 cannot be assigned to a <see cref="T:System.Decimal"/>.</exception>
2879 </member>
2880 <member name="M:s3pi.Interfaces.TypedValue.ToDouble(System.IFormatProvider)">
2881 <summary>
2882 Converts the value of this instance to an equivalent <see cref="T:System.Double"/> value
2883 (ignoring the specified culture-specific formatting information).
2884 </summary>
2885 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2886 that supplies culture-specific formatting information.</param>
2887 <returns>A <see cref="T:System.Double"/> value equivalent to the value of this instance.</returns>
2888 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2889 cannot be assigned to a <see cref="T:System.Double"/>.</exception>
2890 </member>
2891 <member name="M:s3pi.Interfaces.TypedValue.ToInt16(System.IFormatProvider)">
2892 <summary>
2893 Converts the value of this instance to an equivalent <see cref="T:System.Int16"/> value
2894 (ignoring the specified culture-specific formatting information).
2895 </summary>
2896 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2897 that supplies culture-specific formatting information.</param>
2898 <returns>A <see cref="T:System.Int16"/> value equivalent to the value of this instance.</returns>
2899 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2900 cannot be assigned to a <see cref="T:System.Int16"/>.</exception>
2901 </member>
2902 <member name="M:s3pi.Interfaces.TypedValue.ToInt32(System.IFormatProvider)">
2903 <summary>
2904 Converts the value of this instance to an equivalent <see cref="T:System.Int32"/> value
2905 (ignoring the specified culture-specific formatting information).
2906 </summary>
2907 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2908 that supplies culture-specific formatting information.</param>
2909 <returns>A <see cref="T:System.Int32"/> value equivalent to the value of this instance.</returns>
2910 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2911 cannot be assigned to a <see cref="T:System.Int32"/>.</exception>
2912 </member>
2913 <member name="M:s3pi.Interfaces.TypedValue.ToInt64(System.IFormatProvider)">
2914 <summary>
2915 Converts the value of this instance to an equivalent <see cref="T:System.Int64"/> value
2916 (ignoring the specified culture-specific formatting information).
2917 </summary>
2918 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2919 that supplies culture-specific formatting information.</param>
2920 <returns>A <see cref="T:System.Int64"/> value equivalent to the value of this instance.</returns>
2921 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2922 cannot be assigned to a <see cref="T:System.Int64"/>.</exception>
2923 </member>
2924 <member name="M:s3pi.Interfaces.TypedValue.ToSByte(System.IFormatProvider)">
2925 <summary>
2926 Converts the value of this instance to an equivalent <see cref="T:System.SByte"/> value
2927 (ignoring the specified culture-specific formatting information).
2928 </summary>
2929 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2930 that supplies culture-specific formatting information.</param>
2931 <returns>A <see cref="T:System.SByte"/> value equivalent to the value of this instance.</returns>
2932 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2933 cannot be assigned to a <see cref="T:System.SByte"/>.</exception>
2934 </member>
2935 <member name="M:s3pi.Interfaces.TypedValue.ToSingle(System.IFormatProvider)">
2936 <summary>
2937 Converts the value of this instance to an equivalent <see cref="T:System.Single"/> value
2938 (ignoring the specified culture-specific formatting information).
2939 </summary>
2940 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2941 that supplies culture-specific formatting information.</param>
2942 <returns>A <see cref="T:System.Single"/> value equivalent to the value of this instance.</returns>
2943 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2944 cannot be assigned to a <see cref="T:System.Single"/>.</exception>
2945 </member>
2946 <member name="M:s3pi.Interfaces.TypedValue.ToString(System.IFormatProvider)">
2947 <summary>
2948 Converts the value of this instance to an equivalent <see cref="T:System.String"/> value
2949 (ignoring the specified culture-specific formatting information).
2950 </summary>
2951 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2952 that supplies culture-specific formatting information.</param>
2953 <returns>A <see cref="T:System.String"/> value equivalent to the value of this instance.</returns>
2954 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2955 cannot be assigned to a <see cref="T:System.String"/>.</exception>
2956 </member>
2957 <member name="M:s3pi.Interfaces.TypedValue.ToType(System.Type,System.IFormatProvider)">
2958 <summary>
2959 Converts the value of this instance to an <see cref="T:System.Object"/> of the specified <see cref="F:s3pi.Interfaces.TypedValue.Type"/>
2960 that has an equivalent value, using the specified culture-specific formatting information.
2961 </summary>
2962 <param name="conversionType">The <see cref="F:s3pi.Interfaces.TypedValue.Type"/> to which the value of this instance is converted.</param>
2963 <param name="provider">An <see cref="T:System.IFormatProvider"/> interface implementation that supplies culture-specific formatting information.</param>
2964 <returns>An <see cref="T:System.Object"/> instance of type <paramref name="conversionType"/> whose value is equivalent to the value of this instance.</returns>
2965 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2966 cannot be assigned to a <paramref name="conversionType"/> object.</exception>
2967 </member>
2968 <member name="M:s3pi.Interfaces.TypedValue.ToUInt16(System.IFormatProvider)">
2969 <summary>
2970 Converts the value of this instance to an equivalent <see cref="T:System.UInt16"/> value
2971 (ignoring the specified culture-specific formatting information).
2972 </summary>
2973 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2974 that supplies culture-specific formatting information.</param>
2975 <returns>A <see cref="T:System.UInt16"/> value equivalent to the value of this instance.</returns>
2976 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2977 cannot be assigned to a <see cref="T:System.UInt16"/>.</exception>
2978 </member>
2979 <member name="M:s3pi.Interfaces.TypedValue.ToUInt32(System.IFormatProvider)">
2980 <summary>
2981 Converts the value of this instance to an equivalent <see cref="T:System.UInt32"/> value
2982 (ignoring the specified culture-specific formatting information).
2983 </summary>
2984 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2985 that supplies culture-specific formatting information.</param>
2986 <returns>A <see cref="T:System.UInt32"/> value equivalent to the value of this instance.</returns>
2987 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2988 cannot be assigned to a <see cref="T:System.UInt32"/>.</exception>
2989 </member>
2990 <member name="M:s3pi.Interfaces.TypedValue.ToUInt64(System.IFormatProvider)">
2991 <summary>
2992 Converts the value of this instance to an equivalent <see cref="T:System.UInt64"/> value
2993 (ignoring the specified culture-specific formatting information).
2994 </summary>
2995 <param name="provider">(unused, may be null) An <see cref="T:System.IFormatProvider"/> interface implementation
2996 that supplies culture-specific formatting information.</param>
2997 <returns>A <see cref="T:System.UInt64"/> value equivalent to the value of this instance.</returns>
2998 <exception cref="T:System.NotImplementedException">Thrown if the <see cref="T:s3pi.Interfaces.TypedValue"/> value
2999 cannot be assigned to a <see cref="T:System.UInt64"/>.</exception>
3000 </member>
3001 <member name="M:s3pi.Interfaces.TypedValue.Clone">
3002 <summary>
3003 Creates a new object that is a copy of the current instance.
3004 </summary>
3005 <returns>A new object that is a copy of this instance.</returns>
3006 <exception cref="T:System.NotImplementedException">Thrown if the value cannot be cloned.</exception>
3007 </member>
3008 <member name="M:s3pi.Interfaces.TypedValue.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
3009 <summary>
3010 Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
3011 </summary>
3012 <param name="info">The System.Runtime.Serialization.SerializationInfo to populate with data.</param>
3013 <param name="context">The destination (see System.Runtime.Serialization.StreamingContext) for this serialization.</param>
3014 <exception cref="T:System.Security.SecurityException">The caller does not have the required permission.</exception>
3015 </member>
3016 <member name="T:s3pi.Interfaces.TGIBlockListContentFieldAttribute">
3017 <summary>
3018 Indicates that the element should be expandable rather than requiring a popup
3019 </summary>
3020 </member>
3021 <member name="M:s3pi.Interfaces.TGIBlockListContentFieldAttribute.#ctor(System.String)">
3022 <summary>
3023 Attaches a TGIBlockList to an Index ContentField.
3024 </summary>
3025 <param name="value">The TGIBlockList to which this ContentField Property applies.</param>
3026 </member>
3027 <member name="M:s3pi.Interfaces.TGIBlockListContentFieldAttribute.GetTGIBlockListContentField(System.Type,System.String)">
3028 <summary>
3029 Return the TGIBlockListContentField value for a Content Field.
3030 </summary>
3031 <param name="t">Type on which Content Field exists.</param>
3032 <param name="index">Content Field name.</param>
3033 <returns>The value of the TGIBlockListContentFieldAttribute TGIBlockListContentField field, if found;
3034 otherwise <c>null</c>.</returns>
3035 </member>
3036 <member name="P:s3pi.Interfaces.TGIBlockListContentFieldAttribute.TGIBlockListContentField">
3037 <summary>
3038 The TGIBlockList to which this ContentField Property applies.
3039 </summary>
3040 </member>
3041 <member name="T:s3pi.Interfaces.Vertex">
3042 <summary>
3043 Defines a vertex - a point in 3d space defined by three coordinates.
3044 </summary>
3045 </member>
3046 <member name="M:s3pi.Interfaces.Vertex.#ctor(System.Int32,System.EventHandler)">
3047 <summary>
3048 Create a vertex at { 0, 0, 0 }.
3049 </summary>
3050 <param name="APIversion">The requested API version.</param>
3051 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
3052 </member>
3053 <member name="M:s3pi.Interfaces.Vertex.#ctor(System.Int32,System.EventHandler,System.IO.Stream)">
3054 <summary>
3055 Create a vertex from a <see cref="T:System.IO.Stream"/>.
3056 </summary>
3057 <param name="APIversion">The requested API version.</param>
3058 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
3059 <param name="s"><see cref="T:System.IO.Stream"/> containing coordinates.</param>
3060 </member>
3061 <member name="M:s3pi.Interfaces.Vertex.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.Vertex)">
3062 <summary>
3063 Create a vertex from a given value.
3064 </summary>
3065 <param name="APIversion">The requested API version.</param>
3066 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
3067 <param name="basis"><see cref="T:s3pi.Interfaces.Vertex"/> to copy.</param>
3068 </member>
3069 <member name="M:s3pi.Interfaces.Vertex.#ctor(System.Int32,System.EventHandler,System.Single,System.Single,System.Single)">
3070 <summary>
3071 Create a vertex at { x, y, z }.
3072 </summary>
3073 <param name="APIversion">The requested API version.</param>
3074 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
3075 <param name="x">X coordinate.</param>
3076 <param name="y">Y coordinate.</param>
3077 <param name="z">Z coordinate.</param>
3078 </member>
3079 <member name="M:s3pi.Interfaces.Vertex.UnParse(System.IO.Stream)">
3080 <summary>
3081 Write the vertex to the given <see cref="T:System.IO.Stream"/>.
3082 </summary>
3083 <param name="s"><see cref="T:System.IO.Stream"/> to contain coordinates.</param>
3084 </member>
3085 <member name="M:s3pi.Interfaces.Vertex.Clone(System.EventHandler)">
3086 <summary>
3087 Get a copy of the <see cref="T:s3pi.Interfaces.Vertex"/> but with a new change <see cref="T:System.EventHandler"/>.
3088 </summary>
3089 <param name="handler">The replacement <see cref="T:System.EventHandler"/> delegate.</param>
3090 <returns>Return a copy of the <see cref="T:s3pi.Interfaces.Vertex"/> but with a new change <see cref="T:System.EventHandler"/>.</returns>
3091 </member>
3092 <member name="M:s3pi.Interfaces.Vertex.Equals(s3pi.Interfaces.Vertex)">
3093 <summary>
3094 Indicates whether the current object is equal to another object of the same type.
3095 </summary>
3096 <param name="other">An object to compare with this object.</param>
3097 <returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
3098 </member>
3099 <member name="M:s3pi.Interfaces.Vertex.Equals(System.Object)">
3100 <summary>
3101 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.Vertex"/>.
3102 </summary>
3103 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.Vertex"/>.</param>
3104 <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.Vertex"/>; otherwise, false.</returns>
3105 </member>
3106 <member name="M:s3pi.Interfaces.Vertex.GetHashCode">
3107 <summary>
3108 Returns the hash code for this instance.
3109 </summary>
3110 <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
3111 </member>
3112 <member name="P:s3pi.Interfaces.Vertex.RecommendedApiVersion">
3113 <summary>
3114 The best supported version of the API available
3115 </summary>
3116 </member>
3117 <member name="P:s3pi.Interfaces.Vertex.ContentFields">
3118 <summary>
3119 The list of available field names on this API object.
3120 </summary>
3121 </member>
3122 <member name="P:s3pi.Interfaces.Vertex.X">
3123 <summary>
3124 X coordinate
3125 </summary>
3126 </member>
3127 <member name="P:s3pi.Interfaces.Vertex.Y">
3128 <summary>
3129 Y coordinate
3130 </summary>
3131 </member>
3132 <member name="P:s3pi.Interfaces.Vertex.Z">
3133 <summary>
3134 Z coordinate
3135 </summary>
3136 </member>
3137 <member name="P:s3pi.Interfaces.Vertex.Value">
3138 <summary>
3139 A displayable representation of the object
3140 </summary>
3141 </member>
3142 <member name="T:s3pi.Interfaces.BoundingBox">
3143 <summary>
3144 Defines a bounding box - a imaginary box large enough to completely contain an object
3145 - by its minimum and maximum vertices.
3146 </summary>
3147 </member>
3148 <member name="M:s3pi.Interfaces.BoundingBox.#ctor(System.Int32,System.EventHandler)">
3149 <summary>
3150 Create an zero-sized bounding box.
3151 </summary>
3152 <param name="APIversion">The requested API version.</param>
3153 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
3154 </member>
3155 <member name="M:s3pi.Interfaces.BoundingBox.#ctor(System.Int32,System.EventHandler,System.IO.Stream)">
3156 <summary>
3157 Create a bounding box from a <see cref="T:System.IO.Stream"/>.
3158 </summary>
3159 <param name="APIversion">The requested API version.</param>
3160 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
3161 <param name="s"><see cref="T:System.IO.Stream"/> containing vertices.</param>
3162 </member>
3163 <member name="M:s3pi.Interfaces.BoundingBox.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.BoundingBox)">
3164 <summary>
3165 Create a bounding box from a given value.
3166 </summary>
3167 <param name="APIversion">The requested API version.</param>
3168 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
3169 <param name="basis"><see cref="T:s3pi.Interfaces.BoundingBox"/> to copy.</param>
3170 </member>
3171 <member name="M:s3pi.Interfaces.BoundingBox.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.Vertex,s3pi.Interfaces.Vertex)">
3172 <summary>
3173 Create a bounding box with the specified minimum and maximum vertices.
3174 </summary>
3175 <param name="APIversion">The requested API version.</param>
3176 <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
3177 <param name="min">Minimum vertex.</param>
3178 <param name="max">Maximum vertex.</param>
3179 </member>
3180 <member name="M:s3pi.Interfaces.BoundingBox.UnParse(System.IO.Stream)">
3181 <summary>
3182 Write the bounding box to the given <see cref="T:System.IO.Stream"/>.
3183 </summary>
3184 <param name="s"><see cref="T:System.IO.Stream"/> to contain vertices.</param>
3185 </member>
3186 <member name="M:s3pi.Interfaces.BoundingBox.Clone(System.EventHandler)">
3187 <summary>
3188 Get a copy of the <see cref="T:s3pi.Interfaces.BoundingBox"/> but with a new change <see cref="T:System.EventHandler"/>.
3189 </summary>
3190 <param name="handler">The replacement <see cref="T:System.EventHandler"/> delegate.</param>
3191 <returns>Return a copy of the <see cref="T:s3pi.Interfaces.BoundingBox"/> but with a new change <see cref="T:System.EventHandler"/>.</returns>
3192 </member>
3193 <member name="M:s3pi.Interfaces.BoundingBox.Equals(s3pi.Interfaces.BoundingBox)">
3194 <summary>
3195 Indicates whether the current object is equal to another object of the same type.
3196 </summary>
3197 <param name="other">An object to compare with this object.</param>
3198 <returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
3199 </member>
3200 <member name="M:s3pi.Interfaces.BoundingBox.Equals(System.Object)">
3201 <summary>
3202 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.BoundingBox"/>.
3203 </summary>
3204 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.BoundingBox"/>.</param>
3205 <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.BoundingBox"/>; otherwise, false.</returns>
3206 </member>
3207 <member name="M:s3pi.Interfaces.BoundingBox.GetHashCode">
3208 <summary>
3209 Returns the hash code for this instance.
3210 </summary>
3211 <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
3212 </member>
3213 <member name="P:s3pi.Interfaces.BoundingBox.RecommendedApiVersion">
3214 <summary>
3215 The best supported version of the API available
3216 </summary>
3217 </member>
3218 <member name="P:s3pi.Interfaces.BoundingBox.ContentFields">
3219 <summary>
3220 The list of available field names on this API object.
3221 </summary>
3222 </member>
3223 <member name="P:s3pi.Interfaces.BoundingBox.Min">
3224 <summary>
3225 Minimum vertex
3226 </summary>
3227 </member>
3228 <member name="P:s3pi.Interfaces.BoundingBox.Max">
3229 <summary>
3230 Maximum vertex
3231 </summary>
3232 </member>
3233 <member name="P:s3pi.Interfaces.BoundingBox.Value">
3234 <summary>
3235 A displayable representation of the object
3236 </summary>
3237 </member>
3238 <member name="T:s3pi.Interfaces.AResource">
3239 <summary>
3240 A resource contained in a package.
3241 </summary>
3242 </member>
3243 <member name="F:s3pi.Interfaces.AResource.stream">
3244 <summary>
3245 Resource data <see cref="T:System.IO.Stream"/>
3246 </summary>
3247 </member>
3248 <member name="F:s3pi.Interfaces.AResource.dirty">
3249 <summary>
3250 Indicates the resource stream may no longer reflect the resource content
3251 </summary>
3252 </member>
3253 <member name="M:s3pi.Interfaces.AResource.#ctor(System.Int32,System.IO.Stream)">
3254 <summary>
3255 Create a new instance of the resource
3256 </summary>
3257 <param name="APIversion">Requested API version</param>
3258 <param name="s"><see cref="T:System.IO.Stream"/> to use, or null to create from scratch.</param>
3259 </member>
3260 <member name="M:s3pi.Interfaces.AResource.UnParse">
3261 <summary>
3262 AResource classes must supply an <see cref="M:s3pi.Interfaces.AResource.UnParse"/> method that serializes the class to a <see cref="T:System.IO.Stream"/> that is returned.
3263 </summary>
3264 <returns><see cref="T:System.IO.Stream"/> containing serialized class data.</returns>
3265 </member>
3266 <member name="M:s3pi.Interfaces.AResource.OnResourceChanged(System.Object,System.EventArgs)">
3267 <summary>
3268 AResource classes must use this to indicate the resource has changed.
3269 </summary>
3270 <param name="sender">The resource (or sub-class) that has changed.</param>
3271 <param name="e">(Empty) event data object.</param>
3272 </member>
3273 <member name="P:s3pi.Interfaces.AResource.ContentFields">
3274 <summary>
3275 A <see cref="T:System.Collections.Generic.List`1"/> of available field names on object
3276 </summary>
3277 </member>
3278 <member name="P:s3pi.Interfaces.AResource.Stream">
3279 <summary>
3280 The resource content as a <see cref="T:System.IO.Stream"/>.
3281 </summary>
3282 </member>
3283 <member name="P:s3pi.Interfaces.AResource.AsBytes">
3284 <summary>
3285 The resource content as a <see cref="T:System.Byte"/> array
3286 </summary>
3287 </member>
3288 <member name="E:s3pi.Interfaces.AResource.ResourceChanged">
3289 <summary>
3290 Raised if the resource is changed
3291 </summary>
3292 </member>
3293 <member name="T:s3pi.Interfaces.SimpleList`1">
3294 <summary>
3295 A flexible generic list that implements <see cref="T:s3pi.Interfaces.DependentList`1"/> for
3296 a simple data type (such as <see cref="T:System.UInt32"/>).
3297 </summary>
3298 <typeparam name="T">A simple data type (such as <see cref="T:System.UInt32"/>).</typeparam>
3299 <example>
3300 The following method shows a way to create a list of UInt32 values, with an Int32 entry count
3301 stored in the stream immediately before the list.
3302 <code>
3303 <![CDATA[
3304 SimpleList<UInt32> ReadUInt32List(EventHandler e, Stream s)
3305 {
3306 return new SimpleList<UInt32>(e, s,
3307 s => new BinaryReader(s).ReadUInt32(),
3308 (s, value) => new BinaryWriter(s).Write(value));
3309 }
3310 ]]>
3311 </code>
3312 For more complex cases, or where repeated use of the same kind of <see cref="T:s3pi.Interfaces.SimpleList`1"/> is needed in different contexts,
3313 it can be worthwhile extending the class, as shown below. This example is for a list of byte values prefixed
3314 by a one byte count. It shows that the list length can also be specified (here using <c>Byte.MaxValue</c>
3315 <code>
3316 <![CDATA[
3317 public class ByteList : SimpleList<Byte>
3318 {
3319 public ByteList(EventHandler handler) : base(handler, ReadByte, WriteByte, Byte.MaxValue, ReadListCount, WriteListCount) { }
3320 public ByteList(EventHandler handler, Stream s) : base(handler, s, ReadByte, WriteByte, Byte.MaxValue, ReadListCount, WriteListCount) { }
3321 public ByteList(EventHandler handler, IList<Byte> le) : base(handler, le, ReadByte, WriteByte Byte.MaxValue, ReadListCount, WriteListCount) { }
3322
3323 static uint ReadListCount(Stream s) { return new BinaryReader(s).ReadByte(); }
3324 static void WriteListCount(Stream s, uint count) { new BinaryWriter(s).Write((byte)count); }
3325 static byte ReadByte(Stream s) { return new BinaryReader(s).ReadByte(); }
3326 static void WriteByte(Stream s, byte value) { new BinaryWriter(s).Write(value); }
3327 }
3328 ]]>
3329 </code>
3330 </example>
3331 <seealso cref="T:s3pi.Interfaces.HandlerElement`1"/>
3332 <seealso cref="T:s3pi.Interfaces.IndexList`1"/>
3333 </member>
3334 <member name="M:s3pi.Interfaces.SimpleList`1.#ctor(System.EventHandler,s3pi.Interfaces.SimpleList{`0}.CreateElementMethod,s3pi.Interfaces.SimpleList{`0}.WriteElementMethod,System.Int64,s3pi.Interfaces.SimpleList{`0}.ReadCountMethod,s3pi.Interfaces.SimpleList{`0}.WriteCountMethod)">
3335