ILNumerics Ultimate VS

Size Class

ILNumerics Ultimate VS Documentation
ILNumerics - Technical Application Development
Size - dimensions for array objects. This object is immutable.

[ILNumerics Core Module]

Inheritance Hierarchy

SystemObject
  ILNumericsSize

Namespace:  ILNumerics
Assembly:  ILNumerics.Core (in ILNumerics.Core.dll) Version: 5.4.0.0 (5.4.7431.3055)
Syntax

[SerializableAttribute]
public class Size

The Size type exposes the following members.

Properties

  NameDescription
Public propertyBaseOffset
Gets the element index of the first element addressed relative to the beginning of the underlying buffer storage.

[ILNumerics Core Module]

Public propertyIsContinuous
Determines if elements stored according to this size descriptor are layed-out continously in memory.

[ILNumerics Core Module]

Public propertyItem
Get length of dimension at index idx.

[ILNumerics Core Module]

Public propertyLongest
Length of the longest dimension.

[ILNumerics Core Module]

Public propertyNonSingletonDimensions
Number of non singleton dimensions of this size.

[ILNumerics Core Module]

Public propertyNumberOfDimensions
Gets the number of dimensions referenced by this size descriptor.

[ILNumerics Core Module]

Public propertyNumberOfElements
Gets the overall number of elements managed by this size descriptor.

[ILNumerics Core Module]

Public propertyStorageOrder
The storage order this size descriptor represents. This is lazily evaluated once for any unchanged descriptor.

[ILNumerics Core Module]

Top
Methods

  NameDescription
Public methodGetBSD
[EXPERT INTERFACE!] Gets a reference to the internal BSD array describing the sizes / strides of this size object. Use with care!

[ILNumerics Core Module]

Public methodGetElementSpan
Gets the element index of the last element addressed by this size descriptor.

[ILNumerics Core Module]

Public methodStatic memberGetElementSpan(Int64*)
Gets the element index of the last element addressed by a size descriptor.

[ILNumerics Core Module]

Public methodGetHashCode
Gets a hash code representing this size descriptors current content.

[ILNumerics Core Module]

(Overrides ObjectGetHashCode.)
Public methodGetPermuted
Permutes the dimension of an existing BSD.

[ILNumerics Core Module]

Public methodGetSeqIndex(Int64)
Retrieves the storage element index into an array stored according to this size descriptor object based on the provided sequential index d0. Allows negative indices.

[ILNumerics Core Module]

Public methodGetSeqIndex(UInt32)
Retrieves the storage element index into an array stored according to this size descriptor object based on the provided sequential index d0.

[ILNumerics Core Module]

Public methodGetSeqIndex(InArrayInt64)
Retrieves the element index of an element located at indices stored in an array according to this size descriptor.

[ILNumerics Core Module]

Public methodGetSeqIndex(Int64, Int64)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d1. Allows negative indices.

[ILNumerics Core Module]

Public methodGetSeqIndex(UInt32*, UInt32)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided index array d.

[ILNumerics Core Module]

Public methodGetSeqIndex(UInt32, UInt32)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 and d1.

[ILNumerics Core Module]

Public methodGetSeqIndex(Int64, Int64, Int64)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d2. Allows negative indices.

[ILNumerics Core Module]

Public methodGetSeqIndex(UInt32, UInt32, UInt32)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d2.

[ILNumerics Core Module]

Public methodGetSeqIndex(Int64, Int64, Int64, Int64)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d3. Allows negative indices.

[ILNumerics Core Module]

Public methodGetSeqIndex(UInt32, UInt32, UInt32, UInt32)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d3.

[ILNumerics Core Module]

Public methodGetSeqIndex(Int64, Int64, Int64, Int64, Int64)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d4. Allows negative indices.

[ILNumerics Core Module]

Public methodGetSeqIndex(UInt32, UInt32, UInt32, UInt32, UInt32)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d4.

[ILNumerics Core Module]

Public methodGetSeqIndex(Int64, Int64, Int64, Int64, Int64, Int64)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d5. Allows negative indices.

[ILNumerics Core Module]

Public methodGetSeqIndex(UInt32, UInt32, UInt32, UInt32, UInt32, UInt32)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d5.

[ILNumerics Core Module]

Public methodGetSeqIndex(Int64, Int64, Int64, Int64, Int64, Int64, Int64)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d6. Allows negative indices.

[ILNumerics Core Module]

Public methodGetSeqIndex(UInt32, UInt32, UInt32, UInt32, UInt32, UInt32, UInt32)
Retrieves the sequential index into an array stored according to this size descriptor object based on the provided indices d0 ... d6.

[ILNumerics Core Module]

Public methodGetSeqIndex_NP
Computes the memory element offset into an array stored according to this BSD to retrieve the element identified by the _row major_ sequential element index d0.

[ILNumerics Core Module]

Public methodGetShifted
Create a new BSD with a rotated version of the dimensions of this size descriptor.

[ILNumerics Core Module]

Public methodGetStride
Get the spacing between elements in the dimension dim.

[ILNumerics Core Module]

Public methodIsSameShape(InArrayInt64)
Compares the exact shape of this size to another size. Considering all dimensions.

[ILNumerics Core Module]

Public methodIsSameShape(Size)
Compares the exact shape of this size to another size. Considering all dimensions.

[ILNumerics Core Module]

Public methodIsSameSize
Compares this size to another size, ignoring leading and trailing singleton dimensions.

[ILNumerics Core Module]

Public methodSetAll
Set all values of this size descriptor.

[ILNumerics Core Module]

Public methodToIntArray Obsolete.
Gets the lengths of the dimensions of the array associated with this size object.

[ILNumerics Core Module]

Public methodToString
Pretty print dimensions in the format "[a,b,c]".

[ILNumerics Core Module]

(Overrides ObjectToString.)
Public methodWorkingDimension
Find working dimension to work on. Array style dependent.

[ILNumerics Core Module]

Top
Operators

  NameDescription
Public operatorStatic memberEquality(Size, InArrayInt64) Obsolete.
'Equal' operator, compares this size with a shape vector.

[ILNumerics Core Module]

Public operatorStatic memberEquality(Size, Size)
'Equal' operator on two instances of Size

[ILNumerics Core Module]

Public operatorStatic memberInequality(Size, InArrayInt64) Obsolete.
'Not equal' operator, compares this size with a shape vector.

[ILNumerics Core Module]

Public operatorStatic memberInequality(Size, Size)
'Not equal' operator on two instances of Size

[ILNumerics Core Module]

Top
Fields

  NameDescription
Public fieldStatic memberBSDLength
The maximum number of entries for a size descriptor. Currently: 17.
Public fieldStatic memberCONT_FLAG
The value / bit No# 32 storing the property: continous storage layout in the m_flags variable.
Public fieldStatic memberMaxNumberOfDimensions
The maximum number of dimensions a size descriptor is able to handle. Currently, from version 5.2: 32.
Top
Extension Methods

  NameDescription
Public Extension MethodIterator
Efficient iterator over the array for use in foreach loops.

[ILNumerics Core Module]

(Defined by ExtensionMethods.)
Top
Remarks

The class manages /stores all dimensions information of ILNumerics arrays.

Up from version 5.0 every storage holds a permanent instance of one single Size object. Size objects get pooled with the array, reused with the array's storage and become modified when the storage is reassigned a new data array to.

Size uses the full Buffer Size Descriptor format as is used in the Accelerator API. Since version 5.0 arrays in ILNumerics CE can have any storage format! Elements can be storage in column major, row major or any other order which is representable with positive strides. Commonly, array elements address a continous area of elements stored in the host array.

The base offset - the starting index in the host array of the first element - is stored in the BSD long[2] element.

[ILNumerics Core Module]

See Also

Reference