/[TS3.SkuReader]/trunk/TS3.SkuReader/bin/Debug/s3pi.Interfaces.xml
ViewVC logotype

Annotation of /trunk/TS3.SkuReader/bin/Debug/s3pi.Interfaces.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 87 - (hide annotations) (download) (as text)
Sat May 31 07:17:05 2014 UTC (6 years, 7 months ago) by william
File MIME type: text/xml
File size: 278411 byte(s)
1.0.0.13217
1 william 11 <?xml version="1.0"?>
2     <doc>
3     <assembly>
4     <name>s3pi.Interfaces</name>
5     </assembly>
6     <members>
7     <member name="T:s3pi.Interfaces.AApiVersionedFields">
8     <summary>
9     API Objects should all descend from this Abstract class.
10     It will provide versioning support -- when implemented.
11     It provides ContentFields support
12     </summary>
13     </member>
14     <member name="T:s3pi.Interfaces.IApiVersion">
15     <summary>
16     Support for API versioning
17     </summary>
18     </member>
19     <member name="P:s3pi.Interfaces.IApiVersion.RequestedApiVersion">
20     <summary>
21     The version of the API in use
22     </summary>
23     </member>
24     <member name="P:s3pi.Interfaces.IApiVersion.RecommendedApiVersion">
25     <summary>
26     The best supported version of the API available
27     </summary>
28     </member>
29     <member name="T:s3pi.Interfaces.IContentFields">
30     <summary>
31     Standardised interface to API objects (hiding the reflection)
32     </summary>
33     </member>
34     <member name="P:s3pi.Interfaces.IContentFields.ContentFields">
35     <summary>
36     A <c>List&lt;string&gt;</c> of available field names on object
37     </summary>
38     </member>
39     <member name="P:s3pi.Interfaces.IContentFields.Item(System.String)">
40     <summary>
41     A <see cref="T:s3pi.Interfaces.TypedValue"/> on this object
42     </summary>
43 william 56 <param name="index">The <see cref="T:System.String"/> representing the name of the field
44 william 11 (i.e. one of the values from <see cref="P:s3pi.Interfaces.IContentFields.ContentFields"/>)</param>
45     <returns>The <see cref="T:s3pi.Interfaces.TypedValue"/> of field <paramref name="index"/> on this API object.</returns>
46     <exception cref="T:System.ArgumentOutOfRangeException">Thrown when an unknown index name is requested</exception>
47     </member>
48     <member name="F:s3pi.Interfaces.AApiVersionedFields.requestedApiVersion">
49     <summary>
50     Versioning is not currently implemented
51     Set this to the version of the API requested on object creation
52     </summary>
53     </member>
54     <member name="M:s3pi.Interfaces.AApiVersionedFields.GetContentFields(System.Int32,System.Type)">
55     <summary>
56     Versioning is not currently implemented
57     Return the list of fields for a given API Class
58     </summary>
59     <param name="APIversion">Set to 0 (== "best")</param>
60     <param name="t">The class type for which to get the fields</param>
61     <returns>List of field names for the given API version</returns>
62     </member>
63 william 56 <member name="M:s3pi.Interfaces.AApiVersionedFields.GetTGIBlocks(s3pi.Interfaces.AApiVersionedFields,System.String)">
64 william 11 <summary>
65 william 56 Get the TGIBlock list for a Content Field.
66 william 11 </summary>
67 william 56 <param name="o">The object to query.</param>
68     <param name="f">The property name under inspection.</param>
69     <returns>The TGIBlock list for a Content Field, if present; otherwise <c>null</c>.</returns>
70 william 11 </member>
71 william 56 <member name="M:s3pi.Interfaces.AApiVersionedFields.GetTGIBlocks(System.String)">
72     <summary>
73     Get the TGIBlock list for a Content Field.
74     </summary>
75     <param name="f">The property name under inspection.</param>
76     <returns>The TGIBlock list for a Content Field, if present; otherwise <c>null</c>.</returns>
77     </member>
78 william 11 <member name="M:s3pi.Interfaces.AApiVersionedFields.ToString">
79     <summary>
80     Returns a <see cref="T:System.String"/> that represents the current <see cref="T:s3pi.Interfaces.AApiVersionedFields"/> object.
81     </summary>
82     <returns>A <see cref="T:System.String"/> that represents the current <see cref="T:s3pi.Interfaces.AApiVersionedFields"/> object.</returns>
83     </member>
84     <member name="M:s3pi.Interfaces.AApiVersionedFields.CompareByPriority(System.String,System.String)">
85     <summary>
86     Sorts Content Field names by their <see cref="T:s3pi.Interfaces.ElementPriorityAttribute"/> (if set)
87     </summary>
88     <param name="x">First content field name</param>
89     <param name="y">Second content field name</param>
90     <returns>A signed number indicating the relative values of this instance and value.</returns>
91     </member>
92     <member name="M:s3pi.Interfaces.AApiVersionedFields.GetContentFieldTypes(System.Int32,System.Type)">
93     <summary>
94     Gets a lookup table from fieldname to type.
95     </summary>
96     <param name="APIversion">Version of API to use</param>
97     <param name="t">API data type to query</param>
98     <returns></returns>
99     </member>
100     <member name="M:s3pi.Interfaces.AApiVersionedFields.FOURCC(System.String)">
101     <summary>
102     Convert a string (up to 8 characters) to a UInt64
103     </summary>
104     <param name="s">String to convert</param>
105     <returns>UInt64 packed representation of <paramref name="s"/></returns>
106     </member>
107     <member name="M:s3pi.Interfaces.AApiVersionedFields.FOURCC(System.UInt64)">
108     <summary>
109     Convert a UInt64 to a string (up to 8 characters, high-order zeros omitted)
110     </summary>
111     <param name="i">Bytes to convert</param>
112     <returns>String representation of <paramref name="i"/></returns>
113     </member>
114     <member name="M:s3pi.Interfaces.AApiVersionedFields.FlagNames(System.Type)">
115     <summary>
116     Return a space-separated string containing valid enumeration names for the given type
117     </summary>
118     <param name="t">Enum type</param>
119     <returns>Valid enum names</returns>
120     </member>
121     <member name="P:s3pi.Interfaces.AApiVersionedFields.RequestedApiVersion">
122     <summary>
123     The version of the API in use
124     </summary>
125     </member>
126     <member name="P:s3pi.Interfaces.AApiVersionedFields.RecommendedApiVersion">
127     <summary>
128     The best supported version of the API available
129     </summary>
130     </member>
131     <member name="P:s3pi.Interfaces.AApiVersionedFields.ContentFields">
132     <summary>
133     The list of available field names on this API object
134     </summary>
135     </member>
136     <member name="P:s3pi.Interfaces.AApiVersionedFields.Item(System.String)">
137     <summary>
138     A typed value on this object
139     </summary>
140     <param name="index">The name of the field (i.e. one of the values from ContentFields)</param>
141     <returns>The typed value of the named field</returns>
142     <exception cref="T:System.ArgumentOutOfRangeException">Thrown when an unknown index name is requested</exception>
143     </member>
144     <member name="P:s3pi.Interfaces.AApiVersionedFields.ValueBuilderFields">
145     <summary>
146     The fields ValueBuilder will return; used to eliminate those that should not be used.
147     </summary>
148     </member>
149     <member name="P:s3pi.Interfaces.AApiVersionedFields.ValueBuilder">
150     <summary>
151     Returns a string representing the value of the field (and any contained sub-fields)
152     </summary>
153     </member>
154     <member name="T:s3pi.Interfaces.AApiVersionedFields.Comparer`1">
155     <summary>
156     A class enabling sorting API objects by a ContentFields name
157     </summary>
158     <typeparam name="T">API object type</typeparam>
159     </member>
160     <member name="M:s3pi.Interfaces.AApiVersionedFields.Comparer`1.#ctor(System.String)">
161     <summary>
162     Sort API Objects by <paramref name="field"/>
163     </summary>
164     <param name="field">ContentField name to sort by</param>
165     </member>
166     <member name="M:s3pi.Interfaces.AApiVersionedFields.Comparer`1.Compare(`0,`0)">
167     <summary>
168     Compares two objects of type T and returns a value indicating whether one is less than,
169     equal to, or greater than the other.
170     </summary>
171     <param name="x">The first IContentFields object to compare.</param>
172     <param name="y">The second IContentFields object to compare.</param>
173     <returns>Value Condition Less than zero -- x is less than y.
174     Zero -- x equals y.
175     Greater than zero -- x is greater than y.</returns>
176     </member>
177 william 87 <member name="T:s3pi.Interfaces.AHandlerElement">
178     <summary>
179     A useful extension to <see cref="T:s3pi.Interfaces.AApiVersionedFields"/> where a change handler is required
180     </summary>
181     </member>
182 william 11 <member name="F:s3pi.Interfaces.AHandlerElement.handler">
183     <summary>
184     Holds the <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.
185     </summary>
186     </member>
187     <member name="F:s3pi.Interfaces.AHandlerElement.dirty">
188     <summary>
189     Indicates if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> has been changed by OnElementChanged()
190     </summary>
191     </member>
192     <member name="M:s3pi.Interfaces.AHandlerElement.#ctor(System.Int32,System.EventHandler)">
193     <summary>
194     Initialize a new instance
195     </summary>
196     <param name="APIversion">The requested API version.</param>
197     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
198     </member>
199     <member name="M:s3pi.Interfaces.AHandlerElement.Clone(System.EventHandler)">
200     <summary>
201     Get a copy of the <see cref="T:s3pi.Interfaces.AHandlerElement"/> but with a new change <see cref="T:System.EventHandler"/>.
202     </summary>
203     <param name="handler">The replacement <see cref="T:System.EventHandler"/> delegate.</param>
204     <returns>Return a copy of the <see cref="T:s3pi.Interfaces.AHandlerElement"/> but with a new change <see cref="T:System.EventHandler"/>.</returns>
205     </member>
206     <member name="M:s3pi.Interfaces.AHandlerElement.OnElementChanged">
207     <summary>
208     Flag the <see cref="T:s3pi.Interfaces.AHandlerElement"/> as dirty and invoke the <see cref="T:System.EventHandler"/> delegate.
209     </summary>
210     </member>
211 william 87 <member name="M:s3pi.Interfaces.AHandlerElement.SetHandler(System.EventHandler)">
212 william 11 <summary>
213 william 87 Change the element change handler to <paramref name="handler"/>.
214 william 11 </summary>
215 william 87 <param name="handler">The new element change handler.</param>
216 william 11 </member>
217 william 87 <member name="T:s3pi.Interfaces.HandlerElement`1">
218 william 11 <summary>
219 william 87 An extension to <see cref="T:s3pi.Interfaces.AHandlerElement"/>, for simple data types (such as <see cref="T:System.UInt32"/>).
220 william 11 </summary>
221 william 87 <typeparam name="T">A simple data type (such as <see cref="T:System.UInt32"/>).</typeparam>
222     <remarks>For an example of use, see <see cref="T:s3pi.Interfaces.SimpleList`1"/>.</remarks>
223     <seealso cref="T:s3pi.Interfaces.SimpleList`1"/>
224 william 11 </member>
225 william 87 <member name="M:s3pi.Interfaces.HandlerElement`1.#ctor(System.Int32,System.EventHandler)">
226 william 11 <summary>
227 william 87 Initialize a new instance with a default value.
228 william 11 </summary>
229     <param name="APIversion">The requested API version.</param>
230     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
231     </member>
232 william 87 <member name="M:s3pi.Interfaces.HandlerElement`1.#ctor(System.Int32,System.EventHandler,`0)">
233 william 11 <summary>
234 william 87 Initialize a new instance with an initial value of <paramref name="basis"/>.
235 william 11 </summary>
236     <param name="APIversion">The requested API version.</param>
237     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
238 william 87 <param name="basis">Initial value for instance.</param>
239 william 11 </member>
240 william 87 <member name="M:s3pi.Interfaces.HandlerElement`1.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.HandlerElement{`0})">
241 william 11 <summary>
242 william 87 Initialize a new instance with an initial value from <paramref name="basis"/>.
243 william 11 </summary>
244 william 87 <param name="APIversion">The requested API version.</param>
245     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
246     <param name="basis">Element containing the initial value for instance.</param>
247 william 11 </member>
248 william 87 <member name="M:s3pi.Interfaces.HandlerElement`1.Clone(System.EventHandler)">
249 william 11 <summary>
250 william 87 Get a copy of the HandlerElement but with a new change <see cref="T:System.EventHandler"/>.
251 william 11 </summary>
252 william 87 <param name="handler">The replacement HandlerElement delegate.</param>
253     <returns>Return a copy of the HandlerElement but with a new change <see cref="T:System.EventHandler"/>.</returns>
254 william 11 </member>
255 william 87 <member name="M:s3pi.Interfaces.HandlerElement`1.Equals(s3pi.Interfaces.HandlerElement{`0})">
256 william 11 <summary>
257 william 56 Indicates whether the current object is equal to another object of the same type.
258 william 11 </summary>
259 william 56 <param name="other">An object to compare with this object.</param>
260     <returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
261 william 11 </member>
262 william 87 <member name="M:s3pi.Interfaces.HandlerElement`1.Equals(System.Object)">
263 william 11 <summary>
264 william 87 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.HandlerElement`1"/>.
265 william 11 </summary>
266 william 87 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.HandlerElement`1"/>.</param>
267     <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.HandlerElement`1"/>; otherwise, false.</returns>
268     <exception cref="T:System.NullReferenceException">The obj parameter is null.</exception>
269 william 11 </member>
270 william 87 <member name="M:s3pi.Interfaces.HandlerElement`1.GetHashCode">
271 william 11 <summary>
272 william 56 Returns the hash code for this instance.
273 william 11 </summary>
274 william 56 <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
275 william 11 </member>
276 william 87 <member name="M:s3pi.Interfaces.HandlerElement`1.op_Implicit(s3pi.Interfaces.HandlerElement{`0})~`0">
277 william 11 <summary>
278 william 87 Implicit cast from <see cref="T:s3pi.Interfaces.HandlerElement`1"/> to <typeparamref name="T"/>.
279 william 11 </summary>
280 william 87 <param name="value">Value to cast.</param>
281     <returns>Cast value.</returns>
282 william 11 </member>
283 william 87 <member name="P:s3pi.Interfaces.HandlerElement`1.RecommendedApiVersion">
284 william 11 <summary>
285 william 87 The best supported version of the API available
286 william 11 </summary>
287     </member>
288 william 87 <member name="P:s3pi.Interfaces.HandlerElement`1.ContentFields">
289 william 11 <summary>
290 william 87 The list of available field names on this API object.
291 william 11 </summary>
292     </member>
293 william 87 <member name="P:s3pi.Interfaces.HandlerElement`1.Val">
294 william 11 <summary>
295 william 87 The value of the object.
296 william 11 </summary>
297     </member>
298 william 87 <member name="P:s3pi.Interfaces.HandlerElement`1.Value">
299 william 11 <summary>
300 william 87 Get displayable value.
301 william 11 </summary>
302     </member>
303 william 87 <member name="T:s3pi.Interfaces.TGIBlockListIndex`1">
304 william 11 <summary>
305 william 87 An extension to <see cref="T:s3pi.Interfaces.AHandlerElement"/>, for lists of TGIBlockList indices.
306 william 11 </summary>
307 william 87 <typeparam name="T">A simple data type (such as <see cref="T:System.Int32"/>).</typeparam>
308     <remarks>For an example of use, see <see cref="T:s3pi.Interfaces.IndexList`1"/>.</remarks>
309     <seealso cref="T:s3pi.Interfaces.IndexList`1"/>
310 william 11 </member>
311 william 87 <member name="M:s3pi.Interfaces.TGIBlockListIndex`1.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
312 william 11 <summary>
313 william 87 Initialize a new instance with a default value.
314 william 11 </summary>
315 william 87 <param name="APIversion">The requested API version.</param>
316     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
317     <param name="ParentTGIBlocks">Reference to list into which this is an index.</param>
318 william 11 </member>
319 william 87 <member name="M:s3pi.Interfaces.TGIBlockListIndex`1.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.TGIBlockListIndex{`0},s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
320 william 11 <summary>
321 william 87 Initialize a new instance with an initial value from <paramref name="basis"/>.
322 william 11 </summary>
323 william 87 <param name="APIversion">The requested API version.</param>
324     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
325     <param name="basis">Element containing the initial value for instance.</param>
326     <param name="ParentTGIBlocks">Reference to list into which this is an index, or null to use that in <paramref name="basis"/>.</param>
327 william 11 </member>
328 william 87 <member name="M:s3pi.Interfaces.TGIBlockListIndex`1.#ctor(System.Int32,System.EventHandler,`0,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
329 william 11 <summary>
330 william 87 Initialize a new instance with an initial value of <paramref name="value"/>.
331 william 11 </summary>
332 william 87 <param name="APIversion">The requested API version.</param>
333     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
334     <param name="value">Initial value for instance.</param>
335     <param name="ParentTGIBlocks">Reference to list into which this is an index.</param>
336 william 11 </member>
337 william 87 <member name="M:s3pi.Interfaces.TGIBlockListIndex`1.Equals(s3pi.Interfaces.TGIBlockListIndex{`0})">
338 william 11 <summary>
339 william 87 Indicates whether the current object is equal to another object of the same type.
340 william 11 </summary>
341 william 87 <param name="other">An object to compare with this object.</param>
342     <returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
343 william 11 </member>
344 william 87 <member name="M:s3pi.Interfaces.TGIBlockListIndex`1.Equals(System.Object)">
345 william 11 <summary>
346 william 87 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.HandlerElement`1"/>.
347 william 11 </summary>
348 william 87 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.HandlerElement`1"/>.</param>
349     <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.HandlerElement`1"/>; otherwise, false.</returns>
350     <exception cref="T:System.NullReferenceException">The obj parameter is null.</exception>
351 william 11 </member>
352 william 87 <member name="M:s3pi.Interfaces.TGIBlockListIndex`1.GetHashCode">
353 william 11 <summary>
354 william 87 Returns the hash code for this instance.
355 william 11 </summary>
356 william 87 <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
357 william 11 </member>
358 william 87 <member name="M:s3pi.Interfaces.TGIBlockListIndex`1.op_Implicit(s3pi.Interfaces.TGIBlockListIndex{`0})~`0">
359 william 11 <summary>
360 william 87 Implicit cast from <see cref="T:s3pi.Interfaces.HandlerElement`1"/> to <typeparamref name="T"/>.
361 william 11 </summary>
362 william 87 <param name="value">Value to cast.</param>
363     <returns>Cast value.</returns>
364 william 11 </member>
365 william 87 <member name="P:s3pi.Interfaces.TGIBlockListIndex`1.ParentTGIBlocks">
366 william 11 <summary>
367 william 87 Reference to list into which this is an index.
368 william 11 </summary>
369     </member>
370 william 87 <member name="P:s3pi.Interfaces.TGIBlockListIndex`1.RecommendedApiVersion">
371 william 11 <summary>
372 william 87 The best supported version of the API available
373 william 11 </summary>
374     </member>
375 william 87 <member name="P:s3pi.Interfaces.TGIBlockListIndex`1.ContentFields">
376 william 11 <summary>
377 william 87 The list of available field names on this API object.
378 william 11 </summary>
379     </member>
380 william 87 <member name="P:s3pi.Interfaces.TGIBlockListIndex`1.Data">
381 william 11 <summary>
382 william 87 The value of the object.
383 william 11 </summary>
384     </member>
385 william 87 <member name="P:s3pi.Interfaces.TGIBlockListIndex`1.Value">
386 william 11 <summary>
387 william 87 Displayable value
388 william 11 </summary>
389     </member>
390 william 87 <member name="T:s3pi.Interfaces.AResourceIndexEntry">
391 william 11 <summary>
392 william 87 An abstract class, descended from <see cref="T:s3pi.Interfaces.AResourceKey"/>, providing an abstract implemention of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>,
393     representing an index entry within a package.
394 william 11 </summary>
395     </member>
396 william 56 <member name="T:s3pi.Interfaces.AResourceKey">
397     <summary>
398     An abstract class, extending <see cref="T:s3pi.Interfaces.AHandlerElement"/> and implementing <see cref="T:s3pi.Interfaces.IResourceKey"/>.
399     </summary>
400     </member>
401     <member name="T:s3pi.Interfaces.IResourceKey">
402     <summary>
403     Exposes a standard set of properties to identify a resource
404     </summary>
405     </member>
406     <member name="P:s3pi.Interfaces.IResourceKey.ResourceType">
407     <summary>
408     The "type" of the resource
409     </summary>
410     </member>
411     <member name="P:s3pi.Interfaces.IResourceKey.ResourceGroup">
412     <summary>
413     The "group" the resource is part of
414     </summary>
415     </member>
416     <member name="P:s3pi.Interfaces.IResourceKey.Instance">
417     <summary>
418     The "instance" number of the resource
419     </summary>
420     </member>
421     <member name="F:s3pi.Interfaces.AResourceKey.resourceType">
422     <summary>
423     The "type" of the resource
424     </summary>
425     </member>
426     <member name="F:s3pi.Interfaces.AResourceKey.resourceGroup">
427     <summary>
428     The "group" the resource is part of
429     </summary>
430     </member>
431     <member name="F:s3pi.Interfaces.AResourceKey.instance">
432     <summary>
433     The "instance" number of the resource
434     </summary>
435     </member>
436     <member name="M:s3pi.Interfaces.AResourceKey.#ctor(System.Int32,System.EventHandler)">
437     <summary>
438     Initialize a new instance
439     </summary>
440     <param name="APIversion">The requested API version.</param>
441     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AResourceKey"/> changes.</param>
442     </member>
443     <member name="M:s3pi.Interfaces.AResourceKey.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.IResourceKey)">
444     <summary>
445     Initialize a new instance
446     </summary>
447     <param name="APIversion">The requested API version.</param>
448     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AResourceKey"/> changes.</param>
449     <param name="basis">The <see cref="T:s3pi.Interfaces.IResourceKey"/> values to use to initialise the instance.</param>
450     </member>
451     <member name="M:s3pi.Interfaces.AResourceKey.#ctor(System.Int32,System.EventHandler,System.UInt32,System.UInt32,System.UInt64)">
452     <summary>
453     Initialize a new instance
454     </summary>
455     <param name="APIversion">The requested API version.</param>
456     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AResourceKey"/> changes.</param>
457     <param name="resourceType">The type of the resource.</param>
458     <param name="resourceGroup">The group of the resource.</param>
459     <param name="instance">The instance of the resource.</param>
460     </member>
461     <member name="M:s3pi.Interfaces.AResourceKey.Equals(s3pi.Interfaces.IResourceKey,s3pi.Interfaces.IResourceKey)">
462     <summary>
463     Determines whether the specified <see cref="T:s3pi.Interfaces.IResourceKey"/> instances are equal.
464     </summary>
465     <param name="x">The first <see cref="T:s3pi.Interfaces.IResourceKey"/> to compare.</param>
466     <param name="y">The second <see cref="T:s3pi.Interfaces.IResourceKey"/> to compare.</param>
467     <returns>true if the specified <see cref="T:s3pi.Interfaces.IResourceKey"/> instances are equal; otherwise, false.</returns>
468     </member>
469     <member name="M:s3pi.Interfaces.AResourceKey.GetHashCode(s3pi.Interfaces.IResourceKey)">
470     <summary>
471     Returns a hash code for the specified <see cref="T:s3pi.Interfaces.IResourceKey"/>.
472     </summary>
473     <param name="obj">The <see cref="T:s3pi.Interfaces.IResourceKey"/> for which a hash code is to be returned.</param>
474     <returns>A hash code for the specified object.</returns>
475     <exception cref="T:System.ArgumentNullException">The type of <paramref name="obj"/> is a reference type and
476     <paramref name="obj"/> is null.</exception>
477     <seealso cref="M:s3pi.Interfaces.AResourceKey.GetHashCode"/>
478     </member>
479     <member name="M:s3pi.Interfaces.AResourceKey.GetHashCode">
480     <summary>
481     Serves as a hash function for an <see cref="T:s3pi.Interfaces.AResourceKey"/>.
482     </summary>
483     <returns>A hash code for the current <see cref="T:s3pi.Interfaces.AResourceKey"/>.</returns>
484     </member>
485     <member name="M:s3pi.Interfaces.AResourceKey.Equals(s3pi.Interfaces.IResourceKey)">
486     <summary>
487     Indicates whether the current <see cref="T:s3pi.Interfaces.AResourceKey"/> instance is equal to another <see cref="T:s3pi.Interfaces.IResourceKey"/> instance.
488     </summary>
489     <param name="other">An <see cref="T:s3pi.Interfaces.IResourceKey"/> instance to compare with this instance.</param>
490     <returns>true if the current instance is equal to the <paramref name="other"/> parameter; otherwise, false.</returns>
491     </member>
492     <member name="M:s3pi.Interfaces.AResourceKey.Equals(System.Object)">
493     <summary>
494     Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.AResourceKey"/>.
495     </summary>
496     <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.AResourceKey"/>.</param>
497     <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.AResourceKey"/>; otherwise, false.</returns>
498     </member>
499     <member name="M:s3pi.Interfaces.AResourceKey.CompareTo(s3pi.Interfaces.IResourceKey)">
500     <summary>
501     Compare this <see cref="T:s3pi.Interfaces.AResourceKey"/> to another <see cref="T:s3pi.Interfaces.IResourceKey"/> for sort order purposes
502     </summary>
503     <param name="other">Target <see cref="T:s3pi.Interfaces.IResourceKey"/></param>
504     <returns>A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings:
505     <table>
506     <thead><tr><td><strong>Value</strong></td><td><strong>Meaning</strong></td></tr></thead>
507     <tbody>
508     <tr><td>Less than zero</td><td>This instance is less than <paramref name="other"/>.</td></tr>
509     <tr><td>Zero</td><td>This instance is equal to <paramref name="other"/>.</td></tr>
510     <tr><td>Greater than zero</td><td>This instance is greater than <paramref name="other"/>.</td></tr>
511     </tbody>
512     </table>
513     </returns>
514     <exception cref="T:System.NotImplementedException">Either this object's Type or the target's is not comparable</exception>
515     <exception cref="T:System.ArgumentException">The target is not comparable with this object</exception>
516     </member>
517     <member name="M:s3pi.Interfaces.AResourceKey.TryParse(System.String,s3pi.Interfaces.IResourceKey)">
518     <summary>
519     Converts the string representation of a resource key to its <see cref="T:s3pi.Interfaces.AResourceKey"/>
520     equivalent. A return value indicates whether the conversion succeeded.
521     </summary>
522     <param name="value">A string containing a resource key to convert.</param>
523     <param name="result">
524     When this method returns, contains the <see cref="T:s3pi.Interfaces.AResourceKey"/> equivalent
525     to the resource key contained in <paramref name="value"/>, if the conversion succeeded, or
526     unchanged if the conversion failed. The conversion fails if the <paramref name="value"/>
527     parameter is null or is not of the correct format. This parameter must not be null.
528     </param>
529     <returns>true if <paramref name="value"/> was converted successfully; otherwise, false.</returns>
530     <exception cref="T:System.NullReferenceException">Thrown if <paramref name="result"/> is null.</exception>
531     </member>
532     <member name="M:s3pi.Interfaces.AResourceKey.op_Implicit(s3pi.Interfaces.AResourceKey)~System.String">
533     <summary>
534     Converts an <see cref="T:s3pi.Interfaces.AResourceKey"/> to a string representation.
535     </summary>
536     <param name="value">The <see cref="T:s3pi.Interfaces.AResourceKey"/> to convert</param>
537     <returns>The 42 character string representation of this resource key,
538     of the form 0xXXXXXXXX-0xXXXXXXXX-0xXXXXXXXXXXXXXXXX.</returns>
539     </member>
540     <member name="M:s3pi.Interfaces.AResourceKey.ToString">
541     <summary>
542     Returns a string representation of this <see cref="T:s3pi.Interfaces.AResourceKey"/>.
543     </summary>
544     <returns>The 42 character string representation of this resource key,
545     of the form 0xXXXXXXXX-0xXXXXXXXX-0xXXXXXXXXXXXXXXXX.</returns>
546     </member>
547     <member name="P:s3pi.Interfaces.AResourceKey.ResourceType">
548     <summary>
549     The "type" of the resource
550     </summary>
551     </member>
552     <member name="P:s3pi.Interfaces.AResourceKey.ResourceGroup">
553     <summary>
554     The "group" the resource is part of
555     </summary>
556     </member>
557     <member name="P:s3pi.Interfaces.AResourceKey.Instance">
558     <summary>
559     The "instance" number of the resource
560     </summary>
561     </member>
562 william 87 <member name="T:s3pi.Interfaces.IResourceIndexEntry">
563 william 56 <summary>
564 william 87 An index entry within a package
565 william 56 </summary>
566     </member>
567 william 87 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Chunkoffset">
568 william 56 <summary>
569 william 87 If the resource was read from a package, the location in the package the resource was read from
570 william 56 </summary>
571     </member>
572 william 87 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Filesize">
573 william 56 <summary>
574 william 87 The number of bytes the resource uses within the package
575 william 56 </summary>
576     </member>
577 william 87 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Memsize">
578 william 56 <summary>
579 william 87 The number of bytes the resource uses in memory
580 william 56 </summary>
581     </member>
582 william 87 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Compressed">
583 william 56 <summary>
584 william 87 0xFFFF if Filesize != Memsize, else 0x0000
585 william 56 </summary>
586     </member>
587 william 87 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Unknown2">
588 william 56 <summary>
589 william 87 Always 0x0001
590 william 56 </summary>
591     </member>
592 william 87 <member name="P:s3pi.Interfaces.IResourceIndexEntry.Stream">
593 william 56 <summary>
594 william 87 A <see cref="T:System.IO.MemoryStream"/> covering the index entry bytes
595 william 56 </summary>
596     </member>
597 william 87 <member name="P:s3pi.Interfaces.IResourceIndexEntry.IsDeleted">
598 william 56 <summary>
599 william 87 True if the index entry has been deleted from the package index
600 william 56 </summary>
601     </member>
602 william 87 <member name="M:s3pi.Interfaces.AResourceIndexEntry.#ctor">
603 william 56 <summary>
604 william 87 Initialize a new instance with the default API version and no change <see cref="T:System.EventHandler"/>.
605 william 56 </summary>
606     </member>
607 william 87 <member name="F:s3pi.Interfaces.AResourceIndexEntry.ResourceIndexEntryChanged">
608 william 56 <summary>
609 william 87 Raised when the AResourceIndexEntry changes
610 william 56 </summary>
611     </member>
612 william 87 <member name="M:s3pi.Interfaces.AResourceIndexEntry.Equals(s3pi.Interfaces.IResourceIndexEntry)">
613 william 56 <summary>
614 william 87 Indicates whether the current <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> instance is equal to another <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> instance.
615 william 56 </summary>
616 william 87 <param name="other">An <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> instance to compare with this instance.</param>
617     <returns>true if the current instance is equal to the <paramref name="other"/> parameter; otherwise, false.</returns>
618 william 56 </member>
619 william 87 <member name="M:s3pi.Interfaces.AResourceIndexEntry.Equals(System.Object)">
620 william 56 <summary>
621 william 87 Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.AResourceIndexEntry"/>.
622 william 56 </summary>
623 william 87 <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.AResourceIndexEntry"/>.</param>
624     <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.AResourceIndexEntry"/>; otherwise, false.</returns>
625 william 56 </member>
626 william 87 <member name="M:s3pi.Interfaces.AResourceIndexEntry.GetHashCode">
627 william 56 <summary>
628 william 87 Returns the hash code for this instance.
629 william 56 </summary>
630 william 87 <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
631 william 56 </member>
632 william 87 <member name="P:s3pi.Interfaces.AResourceIndexEntry.ContentFields">
633 william 56 <summary>
634     The list of available field names on this API object
635     </summary>
636     </member>
637 william 87 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Chunkoffset">
638 william 56 <summary>
639 william 87 If the resource was read from a package, the location in the package the resource was read from
640 william 56 </summary>
641     </member>
642 william 87 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Filesize">
643 william 56 <summary>
644 william 87 The number of bytes the resource uses within the package
645 william 56 </summary>
646     </member>
647 william 87 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Memsize">
648 william 56 <summary>
649 william 87 The number of bytes the resource uses in memory
650 william 56 </summary>
651     </member>
652 william 87 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Compressed">
653 william 56 <summary>
654 william 87 0xFFFF if Filesize != Memsize, else 0x0000
655 william 56 </summary>
656     </member>
657 william 87 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Unknown2">
658 william 56 <summary>
659 william 87 Always 0x0001
660 william 56 </summary>
661     </member>
662 william 87 <member name="P:s3pi.Interfaces.AResourceIndexEntry.Stream">
663 william 56 <summary>
664 william 87 A MemoryStream covering the index entry bytes
665 william 56 </summary>
666     </member>
667 william 87 <member name="P:s3pi.Interfaces.AResourceIndexEntry.IsDeleted">
668 william 56 <summary>
669 william 87 True if the index entry has been deleted from the package index
670 william 56 </summary>
671     </member>
672 william 11 <member name="T:s3pi.Interfaces.APackage">
673     <summary>
674     Abstract definition of a package
675     </summary>
676     </member>
677     <member name="T:s3pi.Interfaces.IPackage">
678     <summary>
679     Representation of a Sims 3 Package
680     </summary>
681     </member>
682     <member name="M:s3pi.Interfaces.IPackage.SavePackage">
683     <summary>
684     Tell the package to save itself to wherever it believes it came from
685     </summary>
686     </member>
687     <member name="M:s3pi.Interfaces.IPackage.SaveAs(System.IO.Stream)">
688     <summary>
689     Tell the package to save itself to the <see cref="T:System.IO.Stream"/> <paramref name="s"/>
690     </summary>
691     <param name="s">A <see cref="T:System.IO.Stream"/> to which the package should be saved</param>
692     </member>
693     <member name="M:s3pi.Interfaces.IPackage.SaveAs(System.String)">
694     <summary>
695     Tell the package to save itself to a file with the name in <paramref name="path"/>
696     </summary>
697     <param name="path">A fully-qualified file name</param>
698     </member>
699     <member name="M:s3pi.Interfaces.IPackage.Find(System.UInt32,s3pi.Interfaces.IResourceIndexEntry)">
700     <summary>
701     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
702     for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
703     <paramref name="flags"/> and <paramref name="values"/>.
704     </summary>
705     <param name="flags">True bits enable matching against numerically equivalent <paramref name="values"/> entry.</param>
706     <param name="values">Field values to compare against.</param>
707     <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
708     </member>
709     <member name="M:s3pi.Interfaces.IPackage.Find(System.String[],s3pi.Interfaces.TypedValue[])">
710     <summary>
711     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
712     for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
713     <paramref name="names"/> and <paramref name="values"/>.
714     </summary>
715     <param name="names">Names of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> fields to compare.</param>
716     <param name="values">Field values to compare against.</param>
717     <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
718     </member>
719     <member name="M:s3pi.Interfaces.IPackage.Find(System.Predicate{s3pi.Interfaces.IResourceIndexEntry})">
720     <summary>
721     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
722     for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
723     the <c>Predicate&lt;IResourceIndexEntry&gt;</c> <paramref name="Match"/>.
724     </summary>
725     <param name="Match"><c>Predicate&lt;IResourceIndexEntry&gt;</c> defining matching conditions.</param>
726     <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
727     <remarks>Note that entries marked as deleted will not be returned.</remarks>
728     </member>
729     <member name="M:s3pi.Interfaces.IPackage.FindAll(System.UInt32,s3pi.Interfaces.IResourceIndexEntry)">
730     <summary>
731     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
732     for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
733     <paramref name="flags"/> and <paramref name="values"/>.
734     </summary>
735     <param name="flags">True bits enable matching against numerically equivalent <paramref name="values"/> entry.</param>
736     <param name="values">Field values to compare against.</param>
737     <returns>An <c>IList&lt;IResourceIndexEntry&gt;</c> of zero or more matches.</returns>
738     </member>
739     <member name="M:s3pi.Interfaces.IPackage.FindAll(System.String[],s3pi.Interfaces.TypedValue[])">
740     <summary>
741     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
742     for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
743     <paramref name="names"/> and <paramref name="values"/>.
744     </summary>
745     <param name="names">Names of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> fields to compare.</param>
746     <param name="values">Field values to compare against.</param>
747     <returns>An <c>IList&lt;IResourceIndexEntry&gt;</c> of zero or more matches.</returns>
748     </member>
749     <member name="M:s3pi.Interfaces.IPackage.FindAll(System.Predicate{s3pi.Interfaces.IResourceIndexEntry})">
750     <summary>
751     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
752     for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
753     the <c>Predicate&lt;IResourceIndexEntry&gt;</c> <paramref name="Match"/>.
754     </summary>
755     <param name="Match"><c>Predicate&lt;IResourceIndexEntry&gt;</c> defining matching conditions.</param>
756     <returns>Zero or more matches.</returns>
757     <remarks>Note that entries marked as deleted will not be returned.</remarks>
758     </member>
759     <member name="M:s3pi.Interfaces.IPackage.AddResource(s3pi.Interfaces.IResourceKey,System.IO.Stream,System.Boolean)">
760     <summary>
761     Add a resource to the <see cref="T:s3pi.Interfaces.IPackage"/>.
762     </summary>
763     <param name="rk">The resource's <see cref="T:s3pi.Interfaces.IResourceKey"/></param>
764     <param name="stream">The <see cref="T:System.IO.Stream"/> that contains the resource's data</param>
765     <param name="rejectDups">If true, fail if the <see cref="T:s3pi.Interfaces.IResourceKey"/> already exists</param>
766     <returns>Null if rejectDups and the <see cref="T:s3pi.Interfaces.IResourceKey"/> exists; else the new <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/></returns>
767     </member>
768     <member name="M:s3pi.Interfaces.IPackage.ReplaceResource(s3pi.Interfaces.IResourceIndexEntry,s3pi.Interfaces.IResource)">
769     <summary>
770     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"/>
771     with the data from the <see cref="T:s3pi.Interfaces.IResource"/> <paramref name="res"/>.
772     </summary>
773     <param name="rc">Target <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>.</param>
774     <param name="res">Source <see cref="T:s3pi.Interfaces.IResource"/>.</param>
775     </member>
776     <member name="M:s3pi.Interfaces.IPackage.DeleteResource(s3pi.Interfaces.IResourceIndexEntry)">
777     <summary>
778     Tell the package to delete the resource indexed by <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> <paramref name="rc"/>.
779     </summary>
780     <param name="rc">Target <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>.</param>
781     </member>
782     <member name="P:s3pi.Interfaces.IPackage.Magic">
783     <summary>
784     Package header: "DBPF" bytes
785     </summary>
786     </member>
787     <member name="P:s3pi.Interfaces.IPackage.Major">
788     <summary>
789     Package header: 0x00000002
790     </summary>
791     </member>
792     <member name="P:s3pi.Interfaces.IPackage.Minor">
793     <summary>
794     Package header: 0x00000000
795     </summary>
796     </member>
797     <member name="P:s3pi.Interfaces.IPackage.Unknown1">
798     <summary>
799     Package header: unused
800     </summary>
801     </member>
802     <member name="P:s3pi.Interfaces.IPackage.Indexcount">
803     <summary>
804     Package header: number of entries in the package index
805     </summary>
806     </member>
807     <member name="P:s3pi.Interfaces.IPackage.Unknown2">
808     <summary>
809     Package header: unused
810     </summary>
811     </member>
812     <member name="P:s3pi.Interfaces.IPackage.Indexsize">
813     <summary>
814     Package header: index size on disk in bytes
815     </summary>
816     </member>
817     <member name="P:s3pi.Interfaces.IPackage.Unknown3">
818     <summary>
819     Package header: unused
820     </summary>
821     </member>
822     <member name="P:s3pi.Interfaces.IPackage.Indexversion">
823     <summary>
824     Package header: always 3?
825     </summary>
826     </member>
827     <member name="P:s3pi.Interfaces.IPackage.Indexposition">
828     <summary>
829     Package header: index position in file
830     </summary>
831     </member>
832     <member name="P:s3pi.Interfaces.IPackage.Unknown4">
833     <summary>
834     Package header: unused
835     </summary>
836     </member>
837     <member name="P:s3pi.Interfaces.IPackage.HeaderStream">
838     <summary>
839     A <see cref="T:System.IO.MemoryStream"/> covering the package header bytes
840     </summary>
841     </member>
842     <member name="E:s3pi.Interfaces.IPackage.ResourceIndexInvalidated">
843     <summary>
844     Package index: raised when the result of a previous call to GetResourceList becomes invalid
845     </summary>
846     </member>
847     <member name="P:s3pi.Interfaces.IPackage.Indextype">
848     <summary>
849     Package index: the index format in use
850     </summary>
851     </member>
852     <member name="P:s3pi.Interfaces.IPackage.GetResourceList">
853     <summary>
854     Package index: the index as a <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> list
855     </summary>
856     </member>
857     <member name="M:s3pi.Interfaces.APackage.SavePackage">
858     <summary>
859     Tell the package to save itself to wherever it believes it came from
860     </summary>
861     </member>
862     <member name="M:s3pi.Interfaces.APackage.SaveAs(System.IO.Stream)">
863     <summary>
864     Tell the package to save itself to the stream <paramref name="s"/>
865     </summary>
866     <param name="s">A stream to which the package should be saved</param>
867     </member>
868     <member name="M:s3pi.Interfaces.APackage.SaveAs(System.String)">
869     <summary>
870     Tell the package to save itself to a file with the name in <paramref name="path"/>
871     </summary>
872     <param name="path">A fully-qualified file name</param>
873     </member>
874     <member name="M:s3pi.Interfaces.APackage.Find(System.UInt32,s3pi.Interfaces.IResourceIndexEntry)">
875     <summary>
876     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
877     for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
878     <paramref name="flags"/> and <paramref name="values"/>.
879     </summary>
880     <param name="flags">True bits enable matching against numerically equivalent <paramref name="values"/> entry.</param>
881     <param name="values">Field values to compare against.</param>
882     <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
883     </member>
884     <member name="M:s3pi.Interfaces.APackage.Find(System.String[],s3pi.Interfaces.TypedValue[])">
885     <summary>
886     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
887     for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
888     <paramref name="names"/> and <paramref name="values"/>.
889     </summary>
890     <param name="names">Names of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> fields to compare.</param>
891     <param name="values">Field values to compare against.</param>
892     <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
893     </member>
894     <member name="M:s3pi.Interfaces.APackage.Find(System.Predicate{s3pi.Interfaces.IResourceIndexEntry})">
895     <summary>
896     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
897     for the first <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> that matches the conditions defined by
898     the <c>Predicate&lt;IResourceIndexEntry&gt;</c> <paramref name="Match"/>.
899     </summary>
900     <param name="Match"><c>Predicate&lt;IResourceIndexEntry&gt;</c> defining matching conditions.</param>
901     <returns>The first matching <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>, if any; otherwise null.</returns>
902     <remarks>Note that entries marked as deleted will not be returned.</remarks>
903     </member>
904     <member name="M:s3pi.Interfaces.APackage.FindAll(System.UInt32,s3pi.Interfaces.IResourceIndexEntry)">
905     <summary>
906     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
907     for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
908     <paramref name="flags"/> and <paramref name="values"/>.
909     </summary>
910     <param name="flags">True bits enable matching against numerically equivalent <paramref name="values"/> entry.</param>
911     <param name="values">Field values to compare against.</param>
912     <returns>An <c>IList&lt;IResourceIndexEntry&gt;</c> of zero or more matches.</returns>
913     </member>
914     <member name="M:s3pi.Interfaces.APackage.FindAll(System.String[],s3pi.Interfaces.TypedValue[])">
915     <summary>
916     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
917     for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
918     <paramref name="names"/> and <paramref name="values"/>.
919     </summary>
920     <param name="names">Names of <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/> fields to compare.</param>
921     <param name="values">Field values to compare against.</param>
922     <returns>An <c>IList&lt;IResourceIndexEntry&gt;</c> of zero or more matches.</returns>
923     </member>
924     <member name="M:s3pi.Interfaces.APackage.FindAll(System.Predicate{s3pi.Interfaces.IResourceIndexEntry})">
925     <summary>
926     Searches the entire <see cref="T:s3pi.Interfaces.IPackage"/>
927     for all <see cref="T:s3pi.Interfaces.IResourceIndexEntry"/>s that matches the conditions defined by
928     the <c>Predicate&lt;IResourceIndexEntry&gt;</c> <paramref name="Match"/>.
929     </summary>
930     <param name="Match"><c>Predicate&lt;IResourceIndexEntry&gt;</c> defining matching conditions.</param>
931     <returns>Zero or more matches.</returns>
932     <remarks>Note that entries marked as deleted will not be returned.</remarks>
933     </member>
934     <member name="M:s3pi.Interfaces.APackage.AddResource(s3pi.Interfaces.IResourceKey,System.IO.Stream,System.Boolean)">
935     <summary>
936     Add a resource to the package
937     </summary>
938     <param name="rk">The resource key</param>
939     <param name="stream">The stream that contains the resource data</param>
940     <param name="rejectDups">If true, fail if the resource key already exists</param>
941     <returns>Null if rejectDups and the resource key exists; else the new IResourceIndexEntry</returns>
942     </member>
943     <member name="M:s3pi.Interfaces.APackage.ReplaceResource(s3pi.Interfaces.IResourceIndexEntry,s3pi.Interfaces.IResource)">
944     <summary>
945     Tell the package to replace the data for the resource indexed by <paramref name="rc"/>
946     with the data from the resource <paramref name="res"/>
947     </summary>
948     <param name="rc">Target resource index</param>
949     <param name="res">Source resource</param>
950     </member>
951     <member name="M:s3pi.Interfaces.APackage.DeleteResource(s3pi.Interfaces.IResourceIndexEntry)">
952     <summary>
953     Tell the package to delete the resource indexed by <paramref name="rc"/>
954     </summary>
955     <param name="rc">Target resource index</param>
956     </member>
957     <member name="M:s3pi.Interfaces.APackage.NewPackage(System.Int32)">
958     <summary>
959     Initialise a new, empty package and return the IPackage reference
960     </summary>
961     <param name="APIversion">(unused)</param>
962     <returns>IPackage reference to an empty package</returns>
963     </member>
964 william 87 <member name="M:s3pi.Interfaces.APackage.NewPackage(System.Int32,System.Int32)">
965     <summary>
966     Initialise a new, empty package and return the IPackage reference
967     </summary>
968     <param name="APIversion">(unused)</param>
969     <param name="major">Major version for the DBPF package.</param>
970     <returns>IPackage reference to an empty package</returns>
971     </member>
972 william 11 <member name="M:s3pi.Interfaces.APackage.OpenPackage(System.Int32,System.String)">
973     <summary>
974     Open an existing package by filename, read only
975     </summary>
976     <param name="APIversion">(unused)</param>
977     <param name="packagePath">Fully qualified filename of the package</param>
978     <returns>IPackage reference to an existing package on disk</returns>
979     </member>
980     <member name="M:s3pi.Interfaces.APackage.OpenPackage(System.Int32,System.String,System.Boolean)">
981     <summary>
982     Open an existing package by filename, optionally readwrite
983     </summary>
984     <param name="APIversion">(unused)</param>
985     <param name="packagePath">Fully qualified filename of the package</param>
986     <param name="readwrite">True to open for update</param>
987     <returns>IPackage reference to an existing package on disk</returns>
988     </member>
989     <member name="M:s3pi.Interfaces.APackage.ClosePackage(System.Int32,s3pi.Interfaces.IPackage)">
990     <summary>
991     Releases any internal references associated with the given package
992     </summary>
993     <param name="APIversion">(unused)</param>
994     <param name="pkg">IPackage reference to close</param>
995     </member>
996     <member name="M:s3pi.Interfaces.APackage.GetResource(s3pi.Interfaces.IResourceIndexEntry)">
997     <summary>
998 william 87 Required internally by s3pi - <b>not</b> for use in user tools.
999     Please use <c>WrapperDealer.GetResource(int, IPackage, IResourceIndexEntry)</c> instead.
1000 william 11 </summary>
1001     <param name="rie">IResourceIndexEntry of resource</param>
1002     <returns>The resource data (uncompressed, if necessary)</returns>
1003 william 87 <remarks>Used by WrapperDealer to get the data for a resource.</remarks>
1004 william 11 </member>
1005     <member name="M:s3pi.Interfaces.APackage.OnResourceIndexInvalidated(System.Object,System.EventArgs)">
1006     <summary>
1007     Used to indicate a resource index returned by GetResourceList is no longer valid (as a whole)
1008     </summary>
1009     <param name="sender">Object causing the list to become invalid</param>
1010     <param name="e">(not used)</param>
1011     </member>
1012     <member name="P:s3pi.Interfaces.APackage.ContentFields">
1013     <summary>
1014     The list of available field names on this API object
1015     </summary>
1016     </member>
1017     <member name="P:s3pi.Interfaces.APackage.Magic">
1018     <summary>
1019     Package header: "DBPF" bytes
1020     </summary>
1021     </member>
1022     <member name="P:s3pi.Interfaces.APackage.Major">
1023     <summary>
1024     Package header: 0x00000002
1025     </summary>
1026     </member>
1027     <member name="P:s3pi.Interfaces.APackage.Minor">
1028     <summary>
1029     Package header: 0x00000000
1030     </summary>
1031     </member>
1032     <member name="P:s3pi.Interfaces.APackage.Unknown1">
1033     <summary>
1034     Package header: unused
1035     </summary>
1036     </member>
1037     <member name="P:s3pi.Interfaces.APackage.Indexcount">
1038     <summary>
1039     Package header: number of entries in the package index
1040     </summary>
1041     </member>
1042     <member name="P:s3pi.Interfaces.APackage.Unknown2">
1043     <summary>
1044     Package header: unused
1045     </summary>
1046     </member>
1047     <member name="P:s3pi.Interfaces.APackage.Indexsize">
1048     <summary>
1049     Package header: index size on disk in bytes
1050     </summary>
1051     </member>
1052     <member name="P:s3pi.Interfaces.APackage.Unknown3">
1053     <summary>
1054     Package header: unused
1055     </summary>
1056     </member>
1057     <member name="P:s3pi.Interfaces.APackage.Indexversion">
1058     <summary>
1059     Package header: always 3?
1060     </summary>
1061     </member>
1062     <member name="P:s3pi.Interfaces.APackage.Indexposition">
1063     <summary>
1064     Package header: index position in file
1065     </summary>
1066     </member>
1067     <member name="P:s3pi.Interfaces.APackage.Unknown4">
1068     <summary>
1069     Package header: unused
1070     </summary>
1071     </member>
1072     <member name="P:s3pi.Interfaces.APackage.HeaderStream">
1073     <summary>
1074     A MemoryStream covering the package header bytes
1075     </summary>
1076     </member>
1077     <member name="E:s3pi.Interfaces.APackage.ResourceIndexInvalidated">
1078     <summary>
1079     Package index: raised when the result of a previous call to GetResourceList becomes invalid
1080     </summary>
1081     </member>
1082     <member name="P:s3pi.Interfaces.APackage.Indextype">
1083     <summary>
1084     Package index: the index format in use
1085     </summary>
1086     </member>
1087     <member name="P:s3pi.Interfaces.APackage.GetResourceList">
1088     <summary>
1089     Package index: the index
1090     </summary>
1091     </member>
1092 william 87 <member name="T:s3pi.Interfaces.AResource">
1093 william 11 <summary>
1094 william 87 A resource contained in a package.
1095 william 11 </summary>
1096     </member>
1097 william 87 <member name="T:s3pi.Interfaces.IResource">
1098 william 11 <summary>
1099 william 87 Minimal resource interface
1100 william 11 </summary>
1101     </member>
1102 william 87 <member name="P:s3pi.Interfaces.IResource.Stream">
1103 william 11 <summary>
1104 william 87 The resource content as a <see cref="T:System.IO.Stream"/>.
1105 william 11 </summary>
1106     </member>
1107 william 87 <member name="P:s3pi.Interfaces.IResource.AsBytes">
1108 william 11 <summary>
1109 william 87 The resource content as a <see cref="T:System.Byte"/> array
1110 william 11 </summary>
1111     </member>
1112 william 87 <member name="E:s3pi.Interfaces.IResource.ResourceChanged">
1113 william 11 <summary>
1114 william 87 Raised if the resource is changed
1115 william 11 </summary>
1116     </member>
1117 william 87 <member name="F:s3pi.Interfaces.AResource.stream">
1118 william 11 <summary>
1119 william 87 Resource data <see cref="T:System.IO.Stream"/>
1120 william 11 </summary>
1121     </member>
1122 william 87 <member name="F:s3pi.Interfaces.AResource.dirty">
1123 william 11 <summary>
1124 william 87 Indicates the resource stream may no longer reflect the resource content
1125 william 11 </summary>
1126     </member>
1127 william 87 <member name="M:s3pi.Interfaces.AResource.#ctor(System.Int32,System.IO.Stream)">
1128 william 11 <summary>
1129 william 87 Create a new instance of the resource
1130 william 11 </summary>
1131 william 87 <param name="APIversion">Requested API version</param>
1132     <param name="s"><see cref="T:System.IO.Stream"/> to use, or null to create from scratch.</param>
1133 william 11 </member>
1134 william 87 <member name="M:s3pi.Interfaces.AResource.UnParse">
1135 william 11 <summary>
1136 william 87 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.
1137 william 11 </summary>
1138 william 87 <returns><see cref="T:System.IO.Stream"/> containing serialized class data.</returns>
1139 william 11 </member>
1140 william 87 <member name="M:s3pi.Interfaces.AResource.OnResourceChanged(System.Object,System.EventArgs)">
1141 william 11 <summary>
1142 william 87 AResource classes must use this to indicate the resource has changed.
1143 william 11 </summary>
1144 william 87 <param name="sender">The resource (or sub-class) that has changed.</param>
1145     <param name="e">(Empty) event data object.</param>
1146 william 11 </member>
1147 william 87 <member name="P:s3pi.Interfaces.AResource.ContentFields">
1148 william 11 <summary>
1149 william 87 A <see cref="T:System.Collections.Generic.List`1"/> of available field names on object
1150 william 56 </summary>
1151     </member>
1152 william 87 <member name="P:s3pi.Interfaces.AResource.Stream">
1153 william 56 <summary>
1154 william 87 The resource content as a <see cref="T:System.IO.Stream"/>.
1155 william 56 </summary>
1156     </member>
1157 william 87 <member name="P:s3pi.Interfaces.AResource.AsBytes">
1158 william 56 <summary>
1159 william 87 The resource content as a <see cref="T:System.Byte"/> array
1160 william 56 </summary>
1161     </member>
1162 william 87 <member name="E:s3pi.Interfaces.AResource.ResourceChanged">
1163 william 56 <summary>
1164 william 87 Raised if the resource is changed
1165     </summary>
1166     </member>
1167     <member name="T:s3pi.Interfaces.AResourceHandler">
1168     <summary>
1169     Used by WrapperDealer to identify "interesting" classes and assemblies.
1170     The class maps implementers of AResource to string representations of ResourceType.
1171     Hence each "wrapper" assembly can contain multiple wrapper types (Type key) each of which
1172     supports one or more ResourceTypes (List&lt;string&gt; value). The single
1173     AResourceHandler implementation summarises what the assembly provides.
1174     </summary>
1175     </member>
1176     <member name="T:s3pi.Interfaces.IResourceHandler">
1177     <summary>
1178     Used by <see cref="T:s3pi.Interfaces.AResourceHandler"/>, which is used by <c>WrapperDealer</c>
1179     to identify "interesting" classes within assemblies
1180     </summary>
1181     </member>
1182     <member name="M:s3pi.Interfaces.AResourceHandler.#ctor">
1183     <summary>
1184     Create the content of the Dictionary
1185     </summary>
1186     </member>
1187     <member name="T:s3pi.Interfaces.Vertex">
1188     <summary>
1189     Defines a vertex - a point in 3d space defined by three coordinates.
1190     </summary>
1191     </member>
1192     <member name="M:s3pi.Interfaces.Vertex.#ctor(System.Int32,System.EventHandler)">
1193     <summary>
1194     Create a vertex at { 0, 0, 0 }.
1195     </summary>
1196     <param name="APIversion">The requested API version.</param>
1197     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1198     </member>
1199     <member name="M:s3pi.Interfaces.Vertex.#ctor(System.Int32,System.EventHandler,System.IO.Stream)">
1200     <summary>
1201     Create a vertex from a <see cref="T:System.IO.Stream"/>.
1202     </summary>
1203     <param name="APIversion">The requested API version.</param>
1204     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1205     <param name="s"><see cref="T:System.IO.Stream"/> containing coordinates.</param>
1206     </member>
1207     <member name="M:s3pi.Interfaces.Vertex.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.Vertex)">
1208     <summary>
1209     Create a vertex from a given value.
1210     </summary>
1211     <param name="APIversion">The requested API version.</param>
1212     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1213     <param name="basis"><see cref="T:s3pi.Interfaces.Vertex"/> to copy.</param>
1214     </member>
1215     <member name="M:s3pi.Interfaces.Vertex.#ctor(System.Int32,System.EventHandler,System.Single,System.Single,System.Single)">
1216     <summary>
1217     Create a vertex at { x, y, z }.
1218     </summary>
1219     <param name="APIversion">The requested API version.</param>
1220     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1221     <param name="x">X coordinate.</param>
1222     <param name="y">Y coordinate.</param>
1223     <param name="z">Z coordinate.</param>
1224     </member>
1225     <member name="M:s3pi.Interfaces.Vertex.UnParse(System.IO.Stream)">
1226     <summary>
1227     Write the vertex to the given <see cref="T:System.IO.Stream"/>.
1228     </summary>
1229     <param name="s"><see cref="T:System.IO.Stream"/> to contain coordinates.</param>
1230     </member>
1231     <member name="M:s3pi.Interfaces.Vertex.Equals(s3pi.Interfaces.Vertex)">
1232     <summary>
1233     Indicates whether the current object is equal to another object of the same type.
1234     </summary>
1235     <param name="other">An object to compare with this object.</param>
1236     <returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
1237     </member>
1238     <member name="M:s3pi.Interfaces.Vertex.Equals(System.Object)">
1239     <summary>
1240     Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.Vertex"/>.
1241     </summary>
1242     <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.Vertex"/>.</param>
1243     <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.Vertex"/>; otherwise, false.</returns>
1244     </member>
1245     <member name="M:s3pi.Interfaces.Vertex.GetHashCode">
1246     <summary>
1247 william 11 Returns the hash code for this instance.
1248     </summary>
1249     <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
1250     </member>
1251 william 87 <member name="P:s3pi.Interfaces.Vertex.RecommendedApiVersion">
1252 william 11 <summary>
1253 william 87 The best supported version of the API available
1254 william 11 </summary>
1255     </member>
1256 william 87 <member name="P:s3pi.Interfaces.Vertex.ContentFields">
1257 william 11 <summary>
1258 william 87 The list of available field names on this API object.
1259 william 11 </summary>
1260     </member>
1261 william 87 <member name="P:s3pi.Interfaces.Vertex.X">
1262 william 11 <summary>
1263 william 87 X coordinate
1264 william 11 </summary>
1265     </member>
1266 william 87 <member name="P:s3pi.Interfaces.Vertex.Y">
1267 william 11 <summary>
1268 william 87 Y coordinate
1269 william 11 </summary>
1270     </member>
1271 william 87 <member name="P:s3pi.Interfaces.Vertex.Z">
1272 william 11 <summary>
1273 william 87 Z coordinate
1274 william 11 </summary>
1275     </member>
1276 william 87 <member name="P:s3pi.Interfaces.Vertex.Value">
1277 william 11 <summary>
1278 william 87 A displayable representation of the object
1279 william 11 </summary>
1280     </member>
1281 william 87 <member name="T:s3pi.Interfaces.BoundingBox">
1282 william 11 <summary>
1283 william 87 Defines a bounding box - a imaginary box large enough to completely contain an object
1284     - by its minimum and maximum vertices.
1285 william 11 </summary>
1286     </member>
1287 william 87 <member name="M:s3pi.Interfaces.BoundingBox.#ctor(System.Int32,System.EventHandler)">
1288 william 56 <summary>
1289 william 87 Create an zero-sized bounding box.
1290 william 56 </summary>
1291 william 87 <param name="APIversion">The requested API version.</param>
1292     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1293 william 56 </member>
1294 william 87 <member name="M:s3pi.Interfaces.BoundingBox.#ctor(System.Int32,System.EventHandler,System.IO.Stream)">
1295 william 56 <summary>
1296 william 87 Create a bounding box from a <see cref="T:System.IO.Stream"/>.
1297 william 56 </summary>
1298 william 87 <param name="APIversion">The requested API version.</param>
1299     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1300     <param name="s"><see cref="T:System.IO.Stream"/> containing vertices.</param>
1301 william 56 </member>
1302 william 87 <member name="M:s3pi.Interfaces.BoundingBox.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.BoundingBox)">
1303 william 56 <summary>
1304 william 87 Create a bounding box from a given value.
1305 william 56 </summary>
1306 william 87 <param name="APIversion">The requested API version.</param>
1307     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1308     <param name="basis"><see cref="T:s3pi.Interfaces.BoundingBox"/> to copy.</param>
1309 william 56 </member>
1310 william 87 <member name="M:s3pi.Interfaces.BoundingBox.#ctor(System.Int32,System.EventHandler,s3pi.Interfaces.Vertex,s3pi.Interfaces.Vertex)">
1311 william 56 <summary>
1312 william 87 Create a bounding box with the specified minimum and maximum vertices.
1313 william 56 </summary>
1314 william 87 <param name="APIversion">The requested API version.</param>
1315     <param name="handler">The <see cref="T:System.EventHandler"/> delegate to invoke if the <see cref="T:s3pi.Interfaces.AHandlerElement"/> changes.</param>
1316     <param name="min">Minimum vertex.</param>
1317     <param name="max">Maximum vertex.</param>
1318 william 56 </member>
1319 william 87 <member name="M:s3pi.Interfaces.BoundingBox.UnParse(System.IO.Stream)">
1320     <summary>
1321     Write the bounding box to the given <see cref="T:System.IO.Stream"/>.
1322     </summary>
1323     <param name="s"><see cref="T:System.IO.Stream"/> to contain vertices.</param>
1324     </member>
1325     <member name="M:s3pi.Interfaces.BoundingBox.Equals(s3pi.Interfaces.BoundingBox)">
1326     <summary>
1327     Indicates whether the current object is equal to another object of the same type.
1328     </summary>
1329     <param name="other">An object to compare with this object.</param>
1330     <returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
1331     </member>
1332     <member name="M:s3pi.Interfaces.BoundingBox.Equals(System.Object)">
1333     <summary>
1334     Determines whether the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.BoundingBox"/>.
1335     </summary>
1336     <param name="obj">The <see cref="T:System.Object"/> to compare with the current <see cref="T:s3pi.Interfaces.BoundingBox"/>.</param>
1337     <returns>true if the specified <see cref="T:System.Object"/> is equal to the current <see cref="T:s3pi.Interfaces.BoundingBox"/>; otherwise, false.</returns>
1338     </member>
1339     <member name="M:s3pi.Interfaces.BoundingBox.GetHashCode">
1340     <summary>
1341     Returns the hash code for this instance.
1342     </summary>
1343     <returns>A 32-bit signed integer that is the hash code for this instance.</returns>
1344     </member>
1345     <member name="P:s3pi.Interfaces.BoundingBox.RecommendedApiVersion">
1346     <summary>
1347     The best supported version of the API available
1348     </summary>
1349     </member>
1350     <member name="P:s3pi.Interfaces.BoundingBox.ContentFields">
1351     <summary>
1352     The list of available field names on this API object.
1353     </summary>
1354     </member>
1355     <member name="P:s3pi.Interfaces.BoundingBox.Min">
1356     <summary>
1357     Minimum vertex
1358     </summary>
1359     </member>
1360     <member name="P:s3pi.Interfaces.BoundingBox.Max">
1361     <summary>
1362     Maximum vertex
1363     </summary>
1364     </member>
1365     <member name="P:s3pi.Interfaces.BoundingBox.Value">
1366     <summary>
1367     A displayable representation of the object
1368     </summary>
1369     </member>
1370 william 56 <member name="T:s3pi.Interfaces.IndexList`1">
1371     <summary>
1372     A flexible generic list of <see cref="T:s3pi.Interfaces.DependentList`1"/> indices.
1373     </summary>
1374     <typeparam name="T">A simple data type (such as <see cref="T:System.Int32"/> or <see cref="T:System.Byte"/>).</typeparam>
1375     <seealso cref="T:s3pi.Interfaces.SimpleList`1"/>
1376     </member>
1377 william 87 <member name="T:s3pi.Interfaces.DependentList`1">
1378 william 56 <summary>
1379 william 87 Abstract extension to <see cref="T:System.Collections.Generic.AHandlerList`1"/> adding support for <see cref="T:System.IO.Stream"/> IO
1380     and partially implementing <see cref="T:s3pi.Interfaces.IGenericAdd"/>.
1381     </summary>
1382     <typeparam name="T"><see cref="T:System.Type"/> of list element</typeparam>
1383     <seealso cref="T:System.Collections.Generic.AHandlerList`1"/>
1384     <seealso cref="T:s3pi.Interfaces.IGenericAdd"/>
1385     </member>
1386     <member name="T:s3pi.Interfaces.IGenericAdd">
1387     <summary>
1388     Classes implementing this interface can have elements added with
1389     an empty parameter list or
1390     the list of arguments to a generic class' constructor.
1391     </summary>
1392     <seealso cref="T:s3pi.Interfaces.DependentList`1"/>
1393     </member>
1394     <member name="M:s3pi.Interfaces.IGenericAdd.Add">
1395     <summary>
1396     Add a default element to an <see cref="T:System.Collections.IList"/> that implements this interface.
1397     </summary>
1398     <exception cref="T:System.NotImplementedException">Lists of abstract classes will fail
1399     with a NotImplementedException.</exception>
1400     <seealso cref="T:s3pi.Interfaces.DependentList`1"/>
1401     </member>
1402     <member name="M:s3pi.Interfaces.IGenericAdd.Add(System.Type)">
1403     <summary>
1404     Adds an entry to an <see cref="T:System.Collections.IList"/> that implements this interface.
1405     </summary>
1406     <param name="instanceType">Type of the instance to create and add to the <see cref="T:System.Collections.IList"/>.</param>
1407     </member>
1408     <member name="F:s3pi.Interfaces.DependentList`1.elementHandler">
1409     <summary>
1410     Holds the <see cref="T:System.EventHandler"/> delegate to invoke if an element in the <see cref="T:s3pi.Interfaces.DependentList`1"/> changes.
1411     </summary>
1412     <remarks>Work around for list event handler triggering during stream constructor and other places.</remarks>
1413     </member>
1414     <member name="M:s3pi.Interfaces.DependentList`1.#ctor(System.EventHandler,System.Int64)">
1415     <summary>
1416     Initializes a new instance of the <see cref="T:s3pi.Interfaces.DependentList`1"/> class
1417 william 56 that is empty.
1418     </summary>
1419     <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1420 william 87 <param name="maxSize">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
1421     </member>
1422     <member name="M:s3pi.Interfaces.DependentList`1.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{`0},System.Int64)">
1423     <summary>
1424     Initializes a new instance of the <see cref="T:s3pi.Interfaces.DependentList`1"/> class
1425     filled with the content of <paramref name="ilt"/>.
1426     </summary>
1427     <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1428     <param name="ilt">The initial content of the list.</param>
1429     <param name="maxSize">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
1430     <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1431     <remarks>Calls <c>this.Add(...)</c> to ensure a fresh instance is created, rather than passing <paramref name="ilt"/> to the base constructor.</remarks>
1432     </member>
1433     <member name="M:s3pi.Interfaces.DependentList`1.#ctor(System.EventHandler,System.IO.Stream,System.Int64)">
1434     <summary>
1435     Initializes a new instance of the <see cref="T:s3pi.Interfaces.DependentList`1"/> class
1436     filled from <see cref="T:System.IO.Stream"/> <paramref name="s"/>.
1437     </summary>
1438     <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1439     <param name="s">The <see cref="T:System.IO.Stream"/> to read for the initial content of the list.</param>
1440     <param name="maxSize">Optional; -1 for unlimited size, otherwise the maximum number of elements in the list.</param>
1441     <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1442     </member>
1443     <member name="M:s3pi.Interfaces.DependentList`1.Parse(System.IO.Stream)">
1444     <summary>
1445     Read list entries from a stream
1446     </summary>
1447     <param name="s">Stream containing list entries</param>
1448     </member>
1449     <member name="M:s3pi.Interfaces.DependentList`1.ReadCount(System.IO.Stream)">
1450     <summary>
1451     Return the number of elements to be created.
1452     </summary>
1453     <param name="s"><see cref="T:System.IO.Stream"/> being processed.</param>
1454     <returns>The number of elements to be created.</returns>
1455     </member>
1456     <member name="M:s3pi.Interfaces.DependentList`1.CreateElement(System.IO.Stream)">
1457     <summary>
1458     Create a new element from the <see cref="T:System.IO.Stream"/>.
1459     </summary>
1460     <param name="s">Stream containing element data.</param>
1461     <returns>A new element.</returns>
1462     </member>
1463     <member name="M:s3pi.Interfaces.DependentList`1.CreateElement(System.IO.Stream,System.Boolean@)">
1464     <summary>
1465     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.
1466     </summary>
1467     <param name="s"><see cref="T:System.IO.Stream"/> containing element data.</param>
1468     <param name="inc">Whether this call towards the number of elements to be created.</param>
1469     <returns>A new element.</returns>
1470     </member>
1471     <member name="M:s3pi.Interfaces.DependentList`1.UnParse(System.IO.Stream)">
1472     <summary>
1473     Write list entries to a stream
1474     </summary>
1475     <param name="s">Stream to receive list entries</param>
1476     </member>
1477     <member name="M:s3pi.Interfaces.DependentList`1.WriteCount(System.IO.Stream,System.Int32)">
1478     <summary>
1479     Write the count of list elements to the stream.
1480     </summary>
1481     <param name="s"><see cref="T:System.IO.Stream"/> to write <paramref name="count"/> to.</param>
1482     <param name="count">Value to write to <see cref="T:System.IO.Stream"/> <paramref name="s"/>.</param>
1483     </member>
1484     <member name="M:s3pi.Interfaces.DependentList`1.WriteElement(System.IO.Stream,`0)">
1485     <summary>
1486     Write an element to the stream.
1487     </summary>
1488     <param name="s"><see cref="T:System.IO.Stream"/> to write <paramref name="element"/> to.</param>
1489     <param name="element">Value to write to <see cref="T:System.IO.Stream"/> <paramref name="s"/>.</param>
1490     </member>
1491     <member name="M:s3pi.Interfaces.DependentList`1.Add">
1492     <summary>
1493     Add a default element to a <see cref="T:s3pi.Interfaces.DependentList`1"/>.
1494     </summary>
1495     <exception cref="T:System.NotImplementedException"><typeparamref name="T"/> is abstract.</exception>
1496     <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1497     <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.DependentList`1"/> is read-only.</exception>
1498     </member>
1499     <member name="M:s3pi.Interfaces.DependentList`1.Add(`0)">
1500     <summary>
1501     Adds an entry to a <see cref="T:s3pi.Interfaces.DependentList`1"/>, setting the element change handler.
1502     </summary>
1503     <param name="newElement">An instance of type <c>{T}</c> to add to the list.</param>
1504     <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1505     <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.DependentList`1"/> is read-only.</exception>
1506     </member>
1507     <member name="M:s3pi.Interfaces.DependentList`1.Add(System.Type)">
1508     <summary>
1509     Add a default element to a <see cref="T:s3pi.Interfaces.DependentList`1"/> of the specified type, <paramref name="elementType"/>.
1510     </summary>
1511     <param name="elementType">A concrete type assignable to the list generic type, <typeparamref name="T"/>.</param>
1512     <exception cref="T:System.ArgumentException"><paramref name="elementType"/> is abstract.</exception>
1513     <exception cref="T:System.ArgumentException">
1514     Thrown when <paramref name="elementType"/> is not an implementation of the list type, <typeparamref name="T"/>.
1515     </exception>
1516     <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1517     <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.DependentList`1"/> is read-only.</exception>
1518     <seealso cref="M:System.Activator.CreateInstance(System.Type,System.Object[])"/>
1519     </member>
1520     <member name="M:s3pi.Interfaces.DependentList`1.GetElementType(System.Object[])">
1521     <summary>
1522     Return the type to get the constructor from, for the given set of fields.
1523     </summary>
1524     <param name="fields">Constructor parameters</param>
1525     <returns>Class on which to invoke constructor</returns>
1526     <remarks><paramref name="fields"/>[0] could be an instance of the abstract class: it should provide a constructor that accepts a "template"
1527     object and creates a new instance on that basis.</remarks>
1528     </member>
1529     <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,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
1530     <summary>
1531     Initializes a new instance of the <see cref="T:s3pi.Interfaces.IndexList`1"/> class
1532     that is empty.
1533     </summary>
1534     <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1535 william 56 <param name="createElement">Optional; the method to create a new element in the list from a stream. If null, return default{T}.</param>
1536     <param name="writeElement">Optional; the method to create a new element in the list from a stream. No operation if null.</param>
1537     <param name="size">Optional maximum number of elements in the list.</param>
1538     <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
1539     <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
1540 william 87 <param name="ParentTGIBlocks">Optional; default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
1541 william 56 </member>
1542 william 87 <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,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
1543 william 56 <summary>
1544 william 87 Initializes a new instance of the <see cref="T:s3pi.Interfaces.IndexList`1"/> class
1545 william 56 from <paramref name="s"/>.
1546     </summary>
1547     <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1548     <param name="s">The <see cref="T:System.IO.Stream"/> to read for the initial content of the list.</param>
1549     <param name="createElement">Required; the method to create a new element in the list from a stream.</param>
1550     <param name="writeElement">Required; the method to create a new element in the list from a stream.</param>
1551     <param name="size">Optional maximum number of elements in the list.</param>
1552     <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
1553     <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
1554 william 87 <param name="ParentTGIBlocks">Optional; default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
1555 william 56 </member>
1556 william 87 <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,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
1557 william 56 <summary>
1558 william 87 Initializes a new instance of the <see cref="T:s3pi.Interfaces.IndexList`1"/> class
1559 william 56 from <paramref name="collection"/>, wrapping each entry in a <see cref="T:s3pi.Interfaces.TGIBlockListIndex`1"/> instance.
1560     </summary>
1561     <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1562     <param name="collection">The source to use as the initial content of the list.</param>
1563     <param name="createElement">Optional; the method to create a new element in the list from a stream. If null, return default{T}.</param>
1564     <param name="writeElement">Optional; the method to create a new element in the list from a stream. No operation if null.</param>
1565     <param name="size">Optional maximum number of elements in the list.</param>
1566     <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
1567     <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
1568 william 87 <param name="ParentTGIBlocks">Optional; default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
1569 william 56 </member>
1570 william 87 <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,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
1571 william 56 <summary>
1572 william 87 Initializes a new instance of the <see cref="T:s3pi.Interfaces.IndexList`1"/> class from the existing <paramref name="collection"/>.
1573 william 56 </summary>
1574     <param name="handler">The <see cref="T:System.EventHandler"/> to call on changes to the list or its elements.</param>
1575     <param name="collection">The source to use as the initial content of the list.</param>
1576     <param name="createElement">Optional; the method to create a new element in the list from a stream. If null, return default{T}.</param>
1577     <param name="writeElement">Optional; the method to create a new element in the list from a stream. No operation if null.</param>
1578     <param name="size">Optional maximum number of elements in the list.</param>
1579     <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
1580     <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
1581 william 87 <param name="ParentTGIBlocks">Optional; default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
1582 william 56 </member>
1583     <member name="M:s3pi.Interfaces.IndexList`1.ReadCount(System.IO.Stream)">
1584     <summary>
1585     Return the number of elements to be created.
1586     </summary>
1587     <param name="s"><see cref="T:System.IO.Stream"/> being processed.</param>
1588     <returns>The number of elements to be created.</returns>
1589     </member>
1590     <member name="M:s3pi.Interfaces.IndexList`1.WriteCount(System.IO.Stream,System.Int32)">
1591     <summary>
1592     Write the count of list elements to the stream.
1593     </summary>
1594     <param name="s"><see cref="T:System.IO.Stream"/> to write <paramref name="count"/> to.</param>
1595     <param name="count">Value to write to <see cref="T:System.IO.Stream"/> <paramref name="s"/>.</param>
1596     </member>
1597     <member name="M:s3pi.Interfaces.IndexList`1.CreateElement(System.IO.Stream)">
1598     <summary>
1599     Creates an new list element of type <typeparamref name="T"/> by reading <paramref name="s"/>.
1600     </summary>
1601     <param name="s"><see cref="T:System.IO.Stream"/> containing data.</param>
1602     <returns>New list element.</returns>
1603     </member>
1604     <member name="M:s3pi.Interfaces.IndexList`1.WriteElement(System.IO.Stream,s3pi.Interfaces.TGIBlockListIndex{`0})">
1605     <summary>
1606     Writes the value of a list element to <paramref name="s"/>.
1607     </summary>
1608     <param name="s"><see cref="T:System.IO.Stream"/> containing data.</param>
1609     <param name="element">List element for which to write the value to the <see cref="T:System.IO.Stream"/>.</param>
1610     </member>
1611     <member name="M:s3pi.Interfaces.IndexList`1.Add">
1612     <summary>
1613 william 87 Add a default element to a <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1614 william 56 </summary>
1615     <exception cref="T:System.NotImplementedException">Lists of abstract classes will fail
1616     with a NotImplementedException.</exception>
1617     <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1618 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
1619 william 56 </member>
1620     <member name="M:s3pi.Interfaces.IndexList`1.Add(`0)">
1621     <summary>
1622 william 87 Adds an entry to a <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1623 william 56 </summary>
1624     <param name="item">The object to add.</param>
1625     <returns>True on success</returns>
1626     <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
1627 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
1628 william 56 </member>
1629     <member name="M:s3pi.Interfaces.IndexList`1.AddRange(System.Collections.Generic.IEnumerable{`0})">
1630     <summary>
1631 william 87 Adds the elements of the specified collection to the end of the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1632 william 56 </summary>
1633 william 87 <param name="collection">The collection whose elements should be added to the end of the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1634 william 56 The collection itself cannot be null, but it can contain elements that are null, if type <typeparamref name="T"/> is a reference type.</param>
1635     <exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
1636     <exception cref="T:System.InvalidOperationException">Thrown when list size would be exceeded.</exception>
1637 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
1638 william 56 <remarks>Calls <see cref="M:s3pi.Interfaces.IndexList`1.Add(`0)"/> for each item in <paramref name="collection"/>.</remarks>
1639     </member>
1640     <member name="M:s3pi.Interfaces.IndexList`1.BinarySearch(`0)">
1641     <summary>
1642 william 87 Searches a the entire sorted <see cref="T:s3pi.Interfaces.IndexList`1"/>
1643 william 56 for an element using the default comparer and returns the zero-based index
1644     of the element.
1645     </summary>
1646     <param name="item">
1647     The object to locate.
1648     </param>
1649     <returns>
1650 william 87 The zero-based index of item in the sorted <see cref="T:s3pi.Interfaces.IndexList`1"/>,
1651 william 56 if item is found; otherwise, a negative number that is the bitwise complement
1652     of the index of the next element that is larger than item or, if there is
1653 william 87 no larger element, the bitwise complement of <see cref="T:s3pi.Interfaces.IndexList`1"/>.Count.
1654 william 56 </returns>
1655     <exception cref="T:System.InvalidOperationException">
1656     The default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
1657     cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
1658     or the <see cref="T:System.IComparable"/> interface for type T.
1659     </exception>
1660     </member>
1661     <member name="M:s3pi.Interfaces.IndexList`1.BinarySearch(`0,System.Collections.Generic.IComparer{`0})">
1662     <summary>
1663 william 87 Searches a the entire sorted <see cref="T:s3pi.Interfaces.IndexList`1"/>
1664 william 56 for an element using the specified comparer and returns the zero-based index
1665     of the element.
1666     </summary>
1667     <param name="item">
1668     The object to locate.
1669     </param>
1670     <param name="comparer">
1671     The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
1672     elements.
1673     <br/>-or-<br/>
1674     null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
1675     </param>
1676     <returns>
1677 william 87 The zero-based index of item in the sorted <see cref="T:s3pi.Interfaces.IndexList`1"/>,
1678 william 56 if item is found; otherwise, a negative number that is the bitwise complement
1679     of the index of the next element that is larger than item or, if there is
1680 william 87 no larger element, the bitwise complement of <see cref="T:s3pi.Interfaces.IndexList`1"/>.Count.
1681 william 56 </returns>
1682     <exception cref="T:System.InvalidOperationException">
1683     <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
1684     cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
1685     or the <see cref="T:System.IComparable"/> interface for type T.
1686     </exception>
1687     </member>
1688     <member name="M:s3pi.Interfaces.IndexList`1.BinarySearch(System.Int32,System.Int32,`0,System.Collections.Generic.IComparer{`0})">
1689     <summary>
1690 william 87 Searches a range of elements in the sorted <see cref="T:s3pi.Interfaces.IndexList`1"/>
1691 william 56 for an element using the specified comparer and returns the zero-based index
1692     of the element.
1693     </summary>
1694     <param name="index">
1695     The zero-based starting index of the range to search.
1696     </param>
1697     <param name="count">
1698     The length of the range to search.
1699     </param>
1700     <param name="item">
1701     The object to locate.
1702     </param>
1703     <param name="comparer">
1704     The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing
1705     elements, or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.
1706     </param>
1707     <returns>
1708 william 87 The zero-based index of item in the sorted <see cref="T:s3pi.Interfaces.IndexList`1"/>,
1709 william 56 if item is found; otherwise, a negative number that is the bitwise complement
1710     of the index of the next element that is larger than item or, if there is
1711 william 87 no larger element, the bitwise complement of <see cref="T:s3pi.Interfaces.IndexList`1"/>.Count.
1712 william 56 </returns>
1713     <exception cref="T:System.ArgumentOutOfRangeException">
1714     <paramref name="index"/> is less than 0.
1715     <br/>-or-<br/>
1716     <paramref name="count"/> is less than 0.
1717     </exception>
1718     <exception cref="T:System.ArgumentException">
1719 william 87 <paramref name="index"/> and <paramref name="count"/> do not denote a valid range in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1720 william 56 </exception>
1721     <exception cref="T:System.InvalidOperationException">
1722     <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
1723     cannot find an implementation of the <see cref="T:System.IComparable`1"/> generic interface
1724     or the <see cref="T:System.IComparable"/> interface for type T.
1725     </exception>
1726     </member>
1727     <member name="M:s3pi.Interfaces.IndexList`1.ConvertAll``1(System.Converter{`0,``0})">
1728     <summary>
1729 william 87 Converts the elements in the current <see cref="T:s3pi.Interfaces.IndexList`1"/> to
1730 william 56 another type, and returns a list containing the converted elements.
1731     </summary>
1732     <typeparam name="TOutput">
1733     The target type of the elements of the <see cref="T:System.Collections.Generic.List`1"/>.
1734     </typeparam>
1735     <param name="converter">
1736     A <see cref="T:System.Converter`2"/> delegate that converts each element from
1737     one type to another type.
1738     </param>
1739     <returns>
1740     A <see cref="T:System.Collections.Generic.List`1"/> of the target type containing the converted
1741 william 87 elements from the current <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1742 william 56 </returns>
1743     <exception cref="T:System.ArgumentNullException">
1744     <paramref name="converter"/> is null.
1745     </exception>
1746     </member>
1747     <member name="M:s3pi.Interfaces.IndexList`1.CopyTo(`0[])">
1748     <summary>
1749 william 87 Copies the entire <see cref="T:s3pi.Interfaces.IndexList`1"/> to
1750 william 56 a compatible one-dimensional array, starting at the beginning of the target array.
1751     </summary>
1752     <param name="array">
1753     The one-dimensional System.Array that is the destination of the elements
1754 william 87 copied from <see cref="T:s3pi.Interfaces.IndexList`1"/>. The <see cref="T:System.Array"/> must have
1755 william 56 zero-based indexing.
1756     </param>
1757     <exception cref="T:System.ArgumentNullException">
1758     <paramref name="array"/> is null.
1759     </exception>
1760     <exception cref="T:System.ArgumentException">
1761 william 87 The number of elements in the source <see cref="T:s3pi.Interfaces.IndexList`1"/> is
1762 william 56 greater than the number of elements that the destination <paramref name="array"/> can contain.
1763     </exception>
1764     </member>
1765     <member name="M:s3pi.Interfaces.IndexList`1.CopyTo(`0[],System.Int32)">
1766     <summary>
1767 william 87 Copies the entire <see cref="T:s3pi.Interfaces.IndexList`1"/> to
1768 william 56 a compatible one-dimensional array.
1769     </summary>
1770     <param name="array">
1771     The one-dimensional System.Array that is the destination of the elements
1772 william 87 copied from <see cref="T:s3pi.Interfaces.IndexList`1"/>. The <see cref="T:System.Array"/> must have
1773 william 56 zero-based indexing.
1774     </param>
1775     <param name="arrayIndex">
1776     The zero-based index in <paramref name="array"/> at which copying begins.
1777     </param>
1778     <exception cref="T:System.ArgumentNullException">
1779     <paramref name="array"/> is null.
1780     </exception>
1781     <exception cref="T:System.ArgumentOutOfRangeException">
1782     <paramref name="arrayIndex"/> is less than 0.
1783     </exception>
1784     <exception cref="T:System.ArgumentException">
1785     <paramref name="arrayIndex"/> is equal to or greater than the length of array.
1786     <br/>-or-<br/>
1787 william 87 The number of elements in the source <see cref="T:s3pi.Interfaces.IndexList`1"/> is greater
1788 william 56 than the available space from <paramref name="arrayIndex"/> to the end of the destination <paramref name="array"/>.
1789     </exception>
1790     </member>
1791     <member name="M:s3pi.Interfaces.IndexList`1.CopyTo(System.Int32,`0[],System.Int32,System.Int32)">
1792     <summary>
1793 william 87 Copies a range of elements from the <see cref="T:s3pi.Interfaces.IndexList`1"/> to
1794 william 56 a compatible one-dimensional array, starting at the specified <paramref name="index"/> of the
1795     target <paramref name="array"/>.
1796     </summary>
1797     <param name="index">
1798 william 87 The zero-based index in the source <see cref="T:s3pi.Interfaces.IndexList`1"/> at
1799 william 56 which copying begins.
1800     </param>
1801     <param name="array">
1802     The one-dimensional System.Array that is the destination of the elements
1803 william 87 copied from <see cref="T:s3pi.Interfaces.IndexList`1"/>. The <see cref="T:System.Array"/> must have
1804 william 56 zero-based indexing.
1805     </param>
1806     <param name="arrayIndex">
1807     The zero-based index in <paramref name="array"/> at which copying begins.
1808     </param>
1809     <param name="count">
1810     The number of elements to copy.
1811     </param>
1812     <exception cref="T:System.ArgumentNullException">
1813     <paramref name="array"/> is null.
1814     </exception>
1815     <exception cref="T:System.ArgumentOutOfRangeException">
1816     <paramref name="index"/> is less than 0.
1817     <br/>-or-<br/>
1818     <paramref name="arrayIndex"/> is less than 0.
1819     <br/>-or-<br/>
1820     <paramref name="count"/> is less than 0.
1821     </exception>
1822     <exception cref="T:System.ArgumentException">
1823 william 87 <paramref name="index"/> is equal to or greater than the <see cref="T:s3pi.Interfaces.IndexList`1"/>.Count
1824     of the source <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1825 william 56 <br/>-or-<br/>
1826     <paramref name="arrayIndex"/> is equal to or greater than the length of array.
1827     <br/>-or-<br/>
1828     The number of elements from
1829 william 87 <paramref name="index"/> to the end of the source <see cref="T:s3pi.Interfaces.IndexList`1"/> is greater
1830 william 56 than the available space from <paramref name="arrayIndex"/> to the end of the destination <paramref name="array"/>.
1831     </exception>
1832     </member>
1833     <member name="M:s3pi.Interfaces.IndexList`1.Contains(`0)">
1834     <summary>
1835 william 87 Determines whether an element is in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1836 william 56 </summary>
1837 william 87 <param name="item">The object to locate in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.</param>
1838     <returns>true if item is found in the <see cref="T:s3pi.Interfaces.IndexList`1"/>; otherwise, false.</returns>
1839 william 56 </member>
1840     <member name="M:s3pi.Interfaces.IndexList`1.Exists(System.Predicate{`0})">
1841     <summary>
1842 william 87 Determines whether the <see cref="T:s3pi.Interfaces.IndexList`1"/> contains elements
1843 william 56 that match the conditions defined by the specified predicate.
1844     </summary>
1845     <param name="match">
1846     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
1847     to search for.
1848     </param>
1849     <returns>
1850 william 87 true if the <see cref="T:s3pi.Interfaces.IndexList`1"/> contains one or more elements
1851 william 56 that match the conditions defined by the specified predicate; otherwise,
1852     false.
1853     </returns>
1854     <exception cref="T:System.ArgumentNullException">
1855     match is null.
1856     </exception>
1857     </member>
1858     <member name="M:s3pi.Interfaces.IndexList`1.Find(System.Predicate{`0})">
1859     <summary>
1860     Searches for an element that matches the conditions defined by the specified
1861 william 87 predicate, and returns the first occurrence within the entire <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1862 william 56 </summary>
1863     <param name="match">
1864     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
1865     to search for.
1866     </param>
1867     <returns>
1868     The first element that matches the conditions defined by the specified predicate,
1869     if found; otherwise, the default value for type <typeparamref name="T"/>.
1870     </returns>
1871     <exception cref="T:System.ArgumentNullException">
1872     <paramref name="match"/> is null.
1873     </exception>
1874     </member>
1875     <member name="M:s3pi.Interfaces.IndexList`1.FindAll(System.Predicate{`0})">
1876     <summary>
1877     Retrieves all the elements that match the conditions defined by the specified predicate.
1878     </summary>
1879     <param name="match">
1880     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements
1881     to search for.
1882     </param>
1883     <returns>
1884     A <see cref="T:System.Collections.Generic.List`1"/> containing all the elements that match
1885     the conditions defined by the specified predicate, if found; otherwise, an
1886     empty <see cref="T:System.Collections.Generic.List`1"/>.
1887     </returns>
1888     <exception cref="T:System.ArgumentNullException">
1889     <paramref name="match"/> is null.
1890     </exception>
1891     </member>
1892     <member name="M:s3pi.Interfaces.IndexList`1.FindIndex(System.Predicate{`0})">
1893     <summary>
1894     Retrieves all the elements that match the conditions defined by the specified predicate.
1895     Searches for an element that matches the conditions defined by the specified
1896     predicate, and returns the zero-based index of the first occurrence within
1897 william 87 the entire <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1898 william 56 </summary>
1899     <param name="match">
1900     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
1901     to search for.
1902     </param>
1903     <returns>
1904     The zero-based index of the first occurrence of an element that matches the
1905     conditions defined by <paramref name="match"/>, if found; otherwise, –1.
1906     </returns>
1907     <exception cref="T:System.ArgumentNullException">
1908     <paramref name="match"/> is null.
1909     </exception>
1910     </member>
1911     <member name="M:s3pi.Interfaces.IndexList`1.FindIndex(System.Int32,System.Predicate{`0})">
1912     <summary>
1913     Searches for an element that matches the conditions defined by the specified
1914     predicate, and returns the zero-based index of the first occurrence within
1915 william 87 the range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/> that extends
1916 william 56 from the specified index to the last element.
1917     </summary>
1918     <param name="startIndex">
1919     The zero-based starting index of the search.
1920     </param>
1921     <param name="match">
1922     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
1923     to search for.
1924     </param>
1925     <returns>
1926     The zero-based index of the first occurrence of an element that matches the
1927     conditions defined by <paramref name="match"/>, if found; otherwise, –1.
1928     </returns>
1929     <exception cref="T:System.ArgumentNullException">
1930     <paramref name="match"/> is null.
1931     </exception>
1932     <exception cref="T:System.ArgumentOutOfRangeException">
1933 william 87 <paramref name="startIndex"/> is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1934 william 56 </exception>
1935     </member>
1936     <member name="M:s3pi.Interfaces.IndexList`1.FindIndex(System.Int32,System.Int32,System.Predicate{`0})">
1937     <summary>
1938     Searches for an element that matches the conditions defined by the specified
1939     predicate, and returns the zero-based index of the first occurrence within
1940 william 87 the range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/> that starts
1941 william 56 at the specified index and contains the specified number of elements.
1942     </summary>
1943     <param name="startIndex">
1944     The zero-based starting index of the search.
1945     </param>
1946     <param name="count">
1947     The number of elements in the section to search.
1948     </param>
1949     <param name="match">
1950     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
1951     to search for.
1952     </param>
1953     <returns>
1954     The zero-based index of the first occurrence of an element that matches the
1955     conditions defined by <paramref name="match"/>, if found; otherwise, –1.
1956     </returns>
1957     <exception cref="T:System.ArgumentNullException">
1958     <paramref name="match"/> is null.
1959     </exception>
1960     <exception cref="T:System.ArgumentOutOfRangeException">
1961 william 87 <paramref name="startIndex"/> is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1962 william 56 <br/>-or-<br/>
1963     <paramref name="count"/> is less than 0.
1964     <br/>-or-<br/>
1965 william 87 <paramref name="startIndex"/> and <paramref name="count"/> do not specify a valid section in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1966 william 56 </exception>
1967     </member>
1968     <member name="M:s3pi.Interfaces.IndexList`1.FindLast(System.Predicate{`0})">
1969     <summary>
1970     Searches for an element that matches the conditions defined by the specified
1971 william 87 predicate, and returns the last occurrence within the entire <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1972 william 56 </summary>
1973     <param name="match">
1974     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
1975     to search for.
1976     </param>
1977     <returns>
1978     The last element that matches the conditions defined by the specified predicate,
1979     if found; otherwise, the default value for type <typeparamref name="T"/>.
1980     </returns>
1981     <exception cref="T:System.ArgumentNullException">
1982     <paramref name="match"/> is null.
1983     </exception>
1984     </member>
1985     <member name="M:s3pi.Interfaces.IndexList`1.FindLastIndex(System.Predicate{`0})">
1986     <summary>
1987     Searches for an element that matches the conditions defined by the specified
1988     predicate, and returns the zero-based index of the last occurrence within
1989 william 87 the entire <see cref="T:s3pi.Interfaces.IndexList`1"/>.
1990 william 56 </summary>
1991     <param name="match">
1992     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
1993     to search for.
1994     </param>
1995     <returns>
1996     The zero-based index of the last occurrence of an element that matches the
1997     conditions defined by <paramref name="match"/>, if found; otherwise, –1.
1998     </returns>
1999     <exception cref="T:System.ArgumentNullException">
2000     <paramref name="match"/> is null.
2001     </exception>
2002     </member>
2003     <member name="M:s3pi.Interfaces.IndexList`1.FindLastIndex(System.Int32,System.Predicate{`0})">
2004     <summary>
2005     Searches for an element that matches the conditions defined by the specified
2006     predicate, and returns the zero-based index of the last occurrence within
2007 william 87 the range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/> that
2008 william 56 extends from the first element to the specified index.
2009     </summary>
2010     <param name="startIndex">
2011     The zero-based starting index of the backward search.
2012     </param>
2013     <param name="match">
2014     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2015     to search for.
2016     </param>
2017     <returns>
2018     The zero-based index of the last occurrence of an element that matches the
2019     conditions defined by <paramref name="match"/>, if found; otherwise, –1.
2020     </returns>
2021     <exception cref="T:System.ArgumentNullException">
2022     <paramref name="match"/> is null.
2023     </exception>
2024     <exception cref="T:System.ArgumentOutOfRangeException">
2025 william 87 <paramref name="startIndex"/> is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2026 william 56 </exception>
2027     </member>
2028     <member name="M:s3pi.Interfaces.IndexList`1.FindLastIndex(System.Int32,System.Int32,System.Predicate{`0})">
2029     <summary>
2030     Searches for an element that matches the conditions defined by the specified
2031     predicate, and returns the zero-based index of the last occurrence within
2032 william 87 the range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/> that
2033 william 56 contains the specified number of elements and ends at the specified index.
2034     </summary>
2035     <param name="startIndex">
2036     The zero-based starting index of the backward search.
2037     </param>
2038     <param name="count">
2039     The number of elements in the section to search.
2040     </param>
2041     <param name="match">
2042     The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the element
2043     to search for.
2044     </param>
2045     <returns>
2046     The zero-based index of the last occurrence of an element that matches the
2047     conditions defined by <paramref name="match"/>, if found; otherwise, –1.
2048     </returns>
2049     <exception cref="T:System.ArgumentNullException">
2050     <paramref name="match"/> is null.
2051     </exception>
2052     <exception cref="T:System.ArgumentOutOfRangeException">
2053 william 87 <paramref name="startIndex"/> is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2054 william 56 <br/>-or-<br/>
2055     <paramref name="count"/> is less than 0.
2056     <br/>-or-<br/>
2057 william 87 <paramref name="startIndex"/> and <paramref name="count"/> do not specify a valid section in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2058 william 56 </exception>
2059     </member>
2060     <member name="M:s3pi.Interfaces.IndexList`1.ForEach(System.Action{`0})">
2061     <summary>
2062 william 87 Performs the specified action on each element of the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2063 william 56 </summary>
2064     <param name="action">
2065 william 87 The <see cref="T:System.Action`1"/> delegate to perform on each element of the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2066 william 56 </param>
2067     <exception cref="T:System.ArgumentNullException">
2068     <paramref name="action"/> is null.
2069     </exception>
2070     </member>
2071     <member name="M:s3pi.Interfaces.IndexList`1.InsertRange(System.Int32,System.Collections.Generic.IEnumerable{`0})">
2072     <summary>
2073 william 87 Inserts the elements of a collection into the <see cref="T:s3pi.Interfaces.IndexList`1"/> at the specified index.
2074 william 56 </summary>
2075     <param name="index">The zero-based index at which the new elements should be inserted.</param>
2076 william 87 <param name="collection">The collection whose elements should be inserted into the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2077 william 56 The collection itself cannot be null, but it can contain elements that are null, if type <typeparamref name="T"/> is a reference type.</param>
2078     <exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is null.</exception>
2079     <exception cref="T:System.ArgumentOutOfRangeException">
2080     <paramref name="index"/> is less than 0.
2081     <br/>-or-<br/>
2082 william 87 <paramref name="index"/> is greater than <see cref="T:s3pi.Interfaces.IndexList`1"/>.Count.
2083 william 56 </exception>
2084     <exception cref="T:System.InvalidOperationException">Thrown when list size would be exceeded.</exception>
2085 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
2086 william 56 <remarks>Calls <see cref="M:s3pi.Interfaces.IndexList`1.Insert(System.Int32,`0)"/> for each item in <paramref name="collection"/>.</remarks>
2087     </member>
2088     <member name="M:s3pi.Interfaces.IndexList`1.IndexOf(`0,System.Int32)">
2089     <summary>
2090     Searches for the specified object and returns the zero-based index of the
2091 william 87 first occurrence within the range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/>
2092 william 56 that extends from the specified index to the last element.
2093     </summary>
2094     <param name="item">
2095 william 87 The object to locate in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2096 william 56 </param>
2097     <param name="index">
2098     The zero-based starting index of the search.
2099     </param>
2100     <returns>
2101     The zero-based index of the first occurrence of item within the range of
2102 william 87 elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/> that extends from index
2103 william 56 to the last element, if found; otherwise, –1.
2104     </returns>
2105     <exception cref="T:System.ArgumentOutOfRangeException">
2106 william 87 index is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2107 william 56 </exception>
2108     </member>
2109     <member name="M:s3pi.Interfaces.IndexList`1.IndexOf(`0,System.Int32,System.Int32)">
2110     <summary>
2111     Searches for the specified object and returns the zero-based index of the
2112 william 87 first occurrence within the range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/>
2113 william 56 that starts at the specified index and contains the specified number of elements.
2114     </summary>
2115     <param name="item">
2116 william 87 The object to locate in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2117 william 56 </param>
2118     <param name="index">
2119     The zero-based starting index of the search.
2120     </param>
2121     <param name="count">
2122     The number of elements in the section to search.
2123     </param>
2124     <returns>
2125     The zero-based index of the first occurrence of item within the range of
2126 william 87 elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/> that
2127 william 56 starts at <paramref name="index"/> and contains <paramref name="count"/> number of elements,
2128     if found; otherwise, –1.
2129     </returns>
2130     <exception cref="T:System.ArgumentOutOfRangeException">
2131 william 87 index is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2132 william 56 <br/>-or-<br/>
2133     count is less than 0.
2134     <br/>-or-<br/>
2135 william 87 index and count do not specify a valid section in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2136 william 56 </exception>
2137     </member>
2138     <member name="M:s3pi.Interfaces.IndexList`1.LastIndexOf(`0)">
2139     <summary>
2140     Searches for the specified object and returns the zero-based index of the
2141 william 87 last occurrence within the entire <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2142 william 56 </summary>
2143     <param name="item">
2144 william 87 The object to locate in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2145 william 56 </param>
2146     <returns>
2147 william 87 The zero-based index of the last occurrence of item within the entire <see cref="T:s3pi.Interfaces.IndexList`1"/>,
2148 william 56 if found; otherwise, –1.
2149     </returns>
2150     </member>
2151     <member name="M:s3pi.Interfaces.IndexList`1.LastIndexOf(`0,System.Int32)">
2152     <summary>
2153     Searches for the specified object and returns the zero-based index of the
2154 william 87 last occurrence within the range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/>
2155 william 56 that extends from the first element to the specified index.
2156     </summary>
2157     <param name="item">
2158 william 87 The object to locate in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2159 william 56 </param>
2160     <param name="index">
2161     The zero-based starting index of the backward search.
2162     </param>
2163     <returns>
2164     The zero-based index of the last occurrence of item within the range of
2165 william 87 elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/> that
2166 william 56 extends from the first element and ends at <paramref name="index"/>,
2167     if found; otherwise, –1.
2168     </returns>
2169     <exception cref="T:System.ArgumentOutOfRangeException">
2170 william 87 index is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2171 william 56 </exception>
2172     </member>
2173     <member name="M:s3pi.Interfaces.IndexList`1.LastIndexOf(`0,System.Int32,System.Int32)">
2174     <summary>
2175     Searches for the specified object and returns the zero-based index of the
2176 william 87 last occurrence within the range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/>
2177 william 56 that contains the specified number of elements and ends at the specified index.
2178     </summary>
2179     <param name="item">
2180 william 87 The object to locate in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2181 william 56 </param>
2182     <param name="index">
2183     The zero-based starting index of the backward search.
2184     </param>
2185     <param name="count">
2186     The number of elements in the section to search.
2187     </param>
2188     <returns>
2189     The zero-based index of the last occurrence of item within the range of
2190 william 87 elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/> that
2191 william 56 contains <paramref name="count"/> number of elements and ends at <paramref name="index"/>,
2192     if found; otherwise, –1.
2193     </returns>
2194     <exception cref="T:System.ArgumentOutOfRangeException">
2195 william 87 index is outside the range of valid indexes for the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2196 william 56 <br/>-or-<br/>
2197     count is less than 0.
2198     <br/>-or-<br/>
2199 william 87 index and count do not specify a valid section in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2200 william 56 </exception>
2201     </member>
2202     <member name="M:s3pi.Interfaces.IndexList`1.Remove(`0)">
2203     <summary>
2204 william 87 Removes the first occurrence of an entry from the <see cref="T:s3pi.Interfaces.IndexList`1"/> with the value given.
2205 william 56 </summary>
2206 william 87 <param name="item">The value to remove from the <see cref="T:s3pi.Interfaces.IndexList`1"/>.</param>
2207 william 56 <returns>
2208 william 87 true if item was successfully removed from the <see cref="T:s3pi.Interfaces.IndexList`1"/>
2209 william 56 otherwise, false. This method also returns false if item is not found in
2210 william 87 the original <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2211 william 56 </returns>
2212     <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.AHandlerList`1"/> is read-only.</exception>
2213     </member>
2214     <member name="M:s3pi.Interfaces.IndexList`1.RemoveAll(System.Predicate{`0})">
2215     <summary>
2216     Removes the all the elements that match the conditions defined by the specified predicate.
2217     </summary>
2218     <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions of the elements to remove.</param>
2219 william 87 <returns>The number of elements removed from the <see cref="T:s3pi.Interfaces.IndexList`1"/>.</returns>
2220 william 56 <exception cref="T:System.ArgumentNullException"><paramref name="match"/> is null.</exception>
2221 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
2222 william 56 </member>
2223     <member name="M:s3pi.Interfaces.IndexList`1.Sort(System.Comparison{`0})">
2224     <summary>
2225 william 87 Sorts the elements in the entire <see cref="T:s3pi.Interfaces.IndexList`1"/> using the specified <see cref="T:System.Comparison`1"/>.
2226 william 56 </summary>
2227     <param name="comparison">The <see cref="T:System.Comparison`1"/> to use when comparing elements.</param>
2228     <exception cref="T:System.ArgumentException">The implementation of <paramref name="comparison"/> caused an error during the sort.
2229     For example, <paramref name="comparison"/> might not return 0 when comparing an item with itself.</exception>
2230     <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is null.</exception>
2231 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
2232 william 56 </member>
2233     <member name="M:s3pi.Interfaces.IndexList`1.Sort(System.Collections.Generic.IComparer{`0})">
2234     <summary>
2235 william 87 Sorts the elements in the entire <see cref="T:s3pi.Interfaces.IndexList`1"/> using the specified comparer.
2236 william 56 </summary>
2237     <param name="comparer">The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing elements,
2238     or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.</param>
2239     <exception cref="T:System.ArgumentException">
2240     The implementation of <paramref name="comparer"/> caused an error during the sort.
2241     For example, <paramref name="comparer"/> might not return 0 when comparing an item with itself.
2242     </exception>
2243     <exception cref="T:System.InvalidOperationException">
2244     <paramref name="comparer"/> is null, and the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>
2245     cannot find implementation of the <see cref="T:System.IComparable`1"/> generic interface
2246     or the System.IComparable interface for type <typeparamref name="T"/>.
2247     </exception>
2248 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
2249 william 56 </member>
2250     <member name="M:s3pi.Interfaces.IndexList`1.Sort(System.Int32,System.Int32,System.Collections.Generic.IComparer{`0})">
2251     <summary>
2252 william 87 Sorts the elements in a range of elements in <see cref="T:s3pi.Interfaces.IndexList`1"/> using the specified comparer.
2253 william 56 </summary>
2254     <param name="index">The zero-based starting index of the range to sort.</param>
2255     <param name="count">The number of elements in the range to sort.</param>
2256     <param name="comparer">The <see cref="T:System.Collections.Generic.IComparer`1"/> implementation to use when comparing elements,
2257     or null to use the default comparer <see cref="P:System.Collections.Generic.Comparer`1.Default"/>.</param>
2258     <exception cref="T:System.ArgumentException">
2259 william 87 <paramref name="index"/> and <paramref name="count"/> do not denote a valid range of elements in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2260 william 56 <br/>-or-<br/>
2261     The implementation of <paramref name="comparer"/> caused an error during the sort.
2262     For example, <paramref name="comparer"/> might not return 0 when comparing an item with itself.
2263     <br/>-or-<br/>
2264     <paramref name="comparer"/> is null, and an implementation of the <see cref="T:System.IComparable`1"/> generic interface
2265     or the <see cref="T:System.IComparable"/> interface for type <typeparamref name="T"/> cannot be found.
2266     </exception>
2267     <exception cref="T:System.ArgumentOutOfRangeException">
2268     <paramref name="index"/> is less than 0.
2269     <br/>-or-<br/>
2270     <paramref name="count"/> is less than 0.
2271     </exception>
2272 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
2273 william 56 </member>
2274     <member name="M:s3pi.Interfaces.IndexList`1.ToArray">
2275     <summary>
2276 william 87 Copies the elements of the <see cref="T:s3pi.Interfaces.IndexList`1"/> to a new array.
2277 william 56 </summary>
2278     <returns>
2279 william 87 An array containing copies of the elements of the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2280 william 56 </returns>
2281     </member>
2282     <member name="M:s3pi.Interfaces.IndexList`1.TrueForAll(System.Predicate{`0})">
2283     <summary>
2284 william 87 Determines whether every element in the <see cref="T:s3pi.Interfaces.IndexList`1"/>
2285 william 56 matches the conditions defined by the specified predicate.
2286     </summary>
2287     <param name="match">The <see cref="T:System.Predicate`1"/> delegate that defines the conditions to check against the elements.</param>
2288     <returns>
2289 william 87 true if every element in the <see cref="T:s3pi.Interfaces.IndexList`1"/> matches the
2290 william 56 conditions defined by the specified predicate; otherwise, false. If the list
2291     has no elements, the return value is true.
2292     </returns>
2293     <exception cref="T:System.ArgumentNullException"><paramref name="match"/> is null.</exception>
2294     </member>
2295     <member name="M:s3pi.Interfaces.IndexList`1.IndexOf(`0)">
2296     <summary>
2297     Searches for the specified object and returns the zero-based index of the
2298 william 87 first occurrence within the entire <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2299 william 56 </summary>
2300     <param name="item">
2301 william 87 The object to locate in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2302 william 56 </param>
2303     <returns>
2304 william 87 The zero-based index of the first occurrence of item within the entire <see cref="T:s3pi.Interfaces.IndexList`1"/>,
2305 william 56 if found; otherwise, –1.
2306     </returns>
2307     </member>
2308     <member name="M:s3pi.Interfaces.IndexList`1.Insert(System.Int32,`0)">
2309     <summary>
2310 william 87 Inserts an item to the <see cref="T:s3pi.Interfaces.IndexList`1"/> at the specified index.
2311 william 56 </summary>
2312     <param name="index">The zero-based index at which item should be inserted.</param>
2313 william 87 <param name="item">The object to insert into the <see cref="T:s3pi.Interfaces.IndexList`1"/>.</param>
2314     <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is not a valid index in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.</exception>
2315 william 56 <exception cref="T:System.InvalidOperationException">Thrown when list size exceeded.</exception>
2316 william 87 <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
2317 william 56 </member>
2318     <member name="M:s3pi.Interfaces.IndexList`1.GetEnumerator">
2319     <summary>
2320     Returns an enumerator that iterates through the collection.
2321     </summary>
2322     <returns>A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.</returns>
2323     </member>
2324     <member name="P:s3pi.Interfaces.IndexList`1.ParentTGIBlocks">
2325     <summary>
2326     Reference to TGIBlockList into which this is an index.
2327     </summary>
2328     </member>
2329     <member name="P:s3pi.Interfaces.IndexList`1.Item(System.Int32)">
2330     <summary>
2331     Gets or sets the element at the specified index.
2332     </summary>
2333     <param name="index">The zero-based index of the element to get or set.</param>
2334     <returns>The element at the specified index.</returns>
2335 william 87 <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> is not a valid index in the <see cref="T:s3pi.Interfaces.IndexList`1"/>.</exception>
2336     <exception cref="T:System.NotSupportedException">The <see cref="T:s3pi.Interfaces.IndexList`1"/> is read-only.</exception>
2337 william 56 </member>
2338     <member name="T:s3pi.Interfaces.IndexList`1.Enumerator`1">
2339     <summary>
2340     Supports a simple iteration over a generic collection.
2341     </summary>
2342     <typeparam name="U">The type of objects to enumerate.</typeparam>
2343     </member>
2344     <member name="M:s3pi.Interfaces.IndexList`1.Enumerator`1.Dispose">
2345     <summary>
2346     Releases all resources used by the enumerator.
2347     </summary>
2348     </member>
2349     <member name="M:s3pi.Interfaces.IndexList`1.Enumerator`1.MoveNext">
2350     <summary>
2351     Advances the enumerator to the next element of the collection.
2352     </summary>
2353     <returns>
2354     true if the enumerator was successfully advanced to the next element;
2355     false if the enumerator has passed the end of the collection.
2356     </returns>
2357     <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
2358     </member>
2359     <member name="M:s3pi.Interfaces.IndexList`1.Enumerator`1.Reset">
2360     <summary>
2361     Sets the enumerator to its initial position, which is before the first element in the collection.
2362     </summary>
2363     <exception cref="T:System.InvalidOperationException">The collection was modified after the enumerator was created.</exception>
2364     </member>
2365     <member name="P:s3pi.Interfaces.IndexList`1.Enumerator`1.Current">
2366     <summary>
2367     Gets the element at the current position of the enumerator.
2368     </summary>
2369     </member>
2370     <member name="T:s3pi.Interfaces.IndexList`1.CreateElementMethod">
2371     <summary>
2372     Create a new element of type <typeparamref name="T"/> from a <see cref="T:System.IO.Stream"/>.
2373     </summary>
2374     <param name="s">The <see cref="T:System.IO.Stream"/> from which to read the element data.</param>
2375     <returns>A new element of type <typeparamref name="T"/>.</returns>
2376     </member>
2377     <member name="T:s3pi.Interfaces.IndexList`1.WriteElementMethod">
2378     <summary>
2379     Write an element of type <typeparamref name="T"/> to a <see cref="T:System.IO.Stream"/>.
2380     </summary>
2381     <param name="s">The <see cref="T:System.IO.Stream"/> to which to write the value.</param>
2382     <param name="value">The value of type <typeparamref name="T"/> to write.</param>
2383     </member>
2384     <member name="T:s3pi.Interfaces.IndexList`1.ReadCountMethod">
2385     <summary>
2386     Return the number of list elements to read.
2387     </summary>
2388     <param name="s">A <see cref="T:System.IO.Stream"/> that may contain the number of elements.</param>
2389     <returns>The number of list elements to read.</returns>
2390     </member>
2391     <member name="T:s3pi.Interfaces.IndexList`1.WriteCountMethod">
2392     <summary>
2393     Store the number of elements in the list.
2394     </summary>
2395     <param name="s">A <see cref="T:System.IO.Stream"/> to which list elements will be written after the count.</param>
2396     <param name="count">The number of list elements.</param>
2397     </member>
2398     <member name="T:s3pi.Interfaces.ByteIndexList">
2399     <summary>
2400     A byte-size use of <see cref="T:s3pi.Interfaces.IndexList`1"/>.
2401     </summary>
2402     </member>
2403 william 87 <member name="M:s3pi.Interfaces.ByteIndexList.#ctor(System.EventHandler,s3pi.Interfaces.IndexList{System.Byte}.ReadCountMethod,s3pi.Interfaces.IndexList{System.Byte}.WriteCountMethod,System.Int64,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2404 william 56 <summary>
2405     Create an empty UIntList.
2406     </summary>
2407     <param name="handler">Event handler.</param>
2408     <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2409     <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2410     <param name="size">Optional list size (should be <c>byte.MaxValue</c> or below).</param>
2411 william 87 <param name="ParentTGIBlocks">Optional; default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
2412 william 56 </member>
2413 william 87 <member name="M:s3pi.Interfaces.ByteIndexList.#ctor(System.EventHandler,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2414 william 56 <summary>
2415 william 87 Create an empty ByteIndexList, setting the <paramref name="ParentTGIBlocks"/> as passed.
2416     Defaults will be used for list size limit and Data I/O handlers used for the count.
2417     </summary>
2418     <param name="handler">Event handler.</param>
2419     <param name="ParentTGIBlocks">Default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
2420     </member>
2421     <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,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2422     <summary>
2423 william 56 Create a UIntList populated from an existing set of values.
2424     </summary>
2425     <param name="handler">Event handler.</param>
2426     <param name="basis">Basis on which to populate the list.</param>
2427     <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2428     <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2429     <param name="size">Optional list size (should be <c>byte.MaxValue</c> or below).</param>
2430 william 87 <param name="ParentTGIBlocks">Optional; default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
2431 william 56 </member>
2432 william 87 <member name="M:s3pi.Interfaces.ByteIndexList.#ctor(System.EventHandler,System.Collections.Generic.IEnumerable{System.Byte},s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2433 william 56 <summary>
2434 william 87 Create a ByteIndexList populated from an existing set of values, setting the <paramref name="ParentTGIBlocks"/> as passed.
2435     There will be no list size limit and default Data I/O handlers will be used for the count.
2436     </summary>
2437     <param name="handler">Event handler.</param>
2438     <param name="basis">Basis on which to populate the list.</param>
2439     <param name="ParentTGIBlocks">Default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
2440     </member>
2441     <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,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2442     <summary>
2443 william 56 Create a UIntList populated from a <see cref="T:System.IO.Stream"/>.
2444     </summary>
2445     <param name="handler">Event handler.</param>
2446     <param name="s"><see cref="T:System.IO.Stream"/> from which to read elements.</param>
2447     <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2448     <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2449     <param name="size">Optional list size (should be <c>byte.MaxValue</c> or below).</param>
2450 william 87 <param name="ParentTGIBlocks">Optional; default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
2451 william 56 </member>
2452 william 87 <member name="M:s3pi.Interfaces.ByteIndexList.#ctor(System.EventHandler,System.IO.Stream,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2453     <summary>
2454     Create a ByteIndexList populated from a <see cref="T:System.IO.Stream"/>, setting the <paramref name="ParentTGIBlocks"/> as passed.
2455     There will be no list size limit and default Data I/O handlers will be used for the count.
2456     </summary>
2457     <param name="handler">Event handler.</param>
2458     <param name="s"><see cref="T:System.IO.Stream"/> from which to read elements.</param>
2459     <param name="ParentTGIBlocks">Default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
2460     </member>
2461 william 56 <member name="T:s3pi.Interfaces.Int32IndexList">
2462     <summary>
2463     <see cref="T:s3pi.Interfaces.IndexList`1"/> with <see cref="T:System.Int32"/> entries.
2464     </summary>
2465     </member>
2466 william 87 <member name="M:s3pi.Interfaces.Int32IndexList.#ctor(System.EventHandler,System.Int64,s3pi.Interfaces.IndexList{System.Int32}.ReadCountMethod,s3pi.Interfaces.IndexList{System.Int32}.WriteCountMethod,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2467 william 56 <summary>
2468     Create an empty UIntList.
2469     </summary>
2470     <param name="handler">Event handler.</param>
2471     <param name="size">Optional list size.</param>
2472     <param name="readCount">Optional; default is to read a <see cref="T:System.Int32"/> from the <see cref="T:System.IO.Stream"/>.</param>
2473     <param name="writeCount">Optional; default is to write a <see cref="T:System.Int32"/> to the <see cref="T:System.IO.Stream"/>.</param>
2474 william 87 <param name="ParentTGIBlocks">Optional; default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
2475 william 56 </member>
2476 william 87 <member name="M:s3pi.Interfaces.Int32IndexList.#ctor(System.EventHandler,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2477 william 56 <summary>
2478 william 87 Create an empty UIntList, setting the <paramref name="ParentTGIBlocks"/> as passed.
2479     There will be no list size limit and default Data I/O handlers will be used for the count.
2480     </summary>
2481     <param name="handler">Event handler.</param>
2482     <param name="ParentTGIBlocks">Default parent <see cref="T:s3pi.Interfaces.DependentList`1"/> into which elements of this list index.</param>
2483     </member>
2484     <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,s3pi.Interfaces.DependentList{s3pi.Interfaces.TGIBlock})">
2485     <summary>
2486 william 56 Create a UIntList populated from an existing set of values.
2487     </summary>
2488     <param name="handler">Event handler.</param>
2489     <param name=<