// // Enum // internal void SetEnum(eNkMAIDCapability capability, NkMAIDEnum enumeration) { CapSet( capability, eNkMAIDDataType.kNkMAIDDataType_EnumPtr, new IntPtr(&enumeration)); }
internal NikonEnum(NkMAIDEnum e, byte[] buffer) { _enum = e; _enum.pData = IntPtr.Zero; switch (e.ulType) { case eNkMAIDArrayType.kNkMAIDArrayType_PackedString: _list = GetPackedStringArray(buffer); break; case eNkMAIDArrayType.kNkMAIDArrayType_Unsigned: _list = GetUint32Array(buffer, e.ulElements); break; default: throw new NikonException("Enum of type " + e.ulType.ToString() + " cannot be parsed. Not implemented."); } }
public static uint GetDataSize(this NkMAIDEnum e) { return((uint)(e.ulElements * e.wPhysicalBytes)); }