Struct ArConfig
Represents the configuration for an ArSession.
Inherited Members
Namespace: UnityEngine.XR.ARCore
Assembly: Unity.XR.ARCore.dll
Syntax
public struct ArConfig : IEquatable<ArConfig>, IDisposable
Remarks
This is an opaque object that represents a native ArConfig.
Constructors
ArConfig(ArSession)
Creates a new session configuration and initializes it to a sensible default configuration.
Declaration
public ArConfig(ArSession session)
Parameters
Type | Name | Description |
---|---|---|
ArSession | session | A non-null ArSession. |
Remarks
Plane detection and Lighting Estimation are enabled, and blocking update is selected. This configuration is guaranteed to be supported on all devices that support ARCore.
When you no longer need the ArConfig, you should destroy it by calling Dispose(). If you do not dispose it, ARCore will leak memory.
See Also
Properties
IsNull
(Read Only) Indicates whether this ArConfig is null
.
This property is deprecated. Use the equality operator (==
) to compare with null
instead.
Declaration
[Obsolete("Compare to null instead.")]
public bool IsNull { get; }
Property Value
Type | Description |
---|---|
bool |
See Also
Null
Represents a null ArConfig, i.e., one whose underlying native pointer is null
.
This property is deprecated. Use default instead.
Declaration
[Obsolete("Use default instead.")]
public static ArConfig Null { get; }
Property Value
Type | Description |
---|---|
ArConfig |
See Also
Methods
AsIntPtr()
Gets the underlying native pointer for this ArConfig.
Declaration
public IntPtr AsIntPtr()
Returns
Type | Description |
---|---|
IntPtr | Returns the underlying native pointer for this ArConfig. |
See Also
Dispose()
Destroys this ArConfig and sets the underlying native pointer to null
.
Declaration
public void Dispose()
Remarks
You should only dispose an ArConfig if you explicitly created it, e.g., by calling ArConfig(ArSession). If you convert an existing config from an IntPtr (e.g., by calling FromIntPtr(IntPtr)), then you should not dispose it.
See Also
Equals(object)
Tests for equality.
Declaration
public override bool Equals(object obj)
Parameters
Type | Name | Description |
---|---|---|
object | obj | An object to compare against. |
Returns
Type | Description |
---|---|
bool | Returns |
Overrides
See Also
Equals(ArConfig)
Tests for equality.
Declaration
public bool Equals(ArConfig other)
Parameters
Type | Name | Description |
---|---|---|
ArConfig | other | The ArConfig to compare against. |
Returns
Type | Description |
---|---|
bool | Returns |
Remarks
Two ArConfigs are considered equal if their underlying pointers are equal.
See Also
FromIntPtr(IntPtr)
Creates an ArConfig from an existing native pointer. The native pointer must point to an existing ArConfig.
Declaration
public static ArConfig FromIntPtr(IntPtr value)
Parameters
Type | Name | Description |
---|---|---|
IntPtr | value | A pointer to an existing native ArConfig. |
Returns
Type | Description |
---|---|
ArConfig | Returns an ArConfig whose underlying native pointer is
|
See Also
GetHashCode()
Generates a hash code suitable for use with a HashSet
or Dictionary
Declaration
public override int GetHashCode()
Returns
Type | Description |
---|---|
int | Returns a hash code for this ArConfig. |
Overrides
See Also
Operators
operator ==(ArConfig?, ArConfig?)
Tests for equality.
Declaration
public static bool operator ==(ArConfig? lhs, ArConfig? rhs)
Parameters
Type | Name | Description |
---|---|---|
ArConfig? | lhs | The nullable ArConfig to compare with |
ArConfig? | rhs | The nullable ArConfig to compare with |
Returns
Type | Description |
---|---|
bool | Returns true if any of these conditions are met:
-
|
Remarks
This equality operator lets you to compare an ArConfig with null
to determine whether its
underlying pointer is null. This allows for a more natural comparison with the native ARCore object:
bool TestForNull(ArConfig obj)
{
if (obj == null)
{
// obj.AsIntPtr() is IntPtr.Zero
}
}
See Also
operator ==(ArConfig, ArConfig)
Tests for equality. Same as Equals(ArConfig).
Declaration
public static bool operator ==(ArConfig lhs, ArConfig rhs)
Parameters
Type | Name | Description |
---|---|---|
ArConfig | lhs | The ArConfig to compare with |
ArConfig | rhs | The ArConfig to compare with |
Returns
Type | Description |
---|---|
bool | Returns |
See Also
explicit operator IntPtr(ArConfig)
Casts an ArConfig to its underlying native pointer.
Declaration
public static explicit operator IntPtr(ArConfig config)
Parameters
Type | Name | Description |
---|---|---|
ArConfig | config | The ArConfig to cast. |
Returns
Type | Description |
---|---|
IntPtr | Returns the underlying native pointer for |
See Also
operator !=(ArConfig?, ArConfig?)
Tests for inequality.
Declaration
public static bool operator !=(ArConfig? lhs, ArConfig? rhs)
Parameters
Type | Name | Description |
---|---|---|
ArConfig? | lhs | The native object to compare with |
ArConfig? | rhs | The native object to compare with |
Returns
Type | Description |
---|---|
bool | Returns false if any of these conditions are met:
-
|
Remarks
This inequality operator lets you to compare an ArConfig with null
to determine whether its
underlying pointer is null. This allows for a more natural comparison with the native ARCore object:
bool TestForNull(ArConfig obj)
{
if (obj != null)
{
// obj.AsIntPtr() is not IntPtr.Zero
}
}
See Also
operator !=(ArConfig, ArConfig)
Tests for inequality. Same as the negation of Equals(ArConfig).
Declaration
public static bool operator !=(ArConfig lhs, ArConfig rhs)
Parameters
Type | Name | Description |
---|---|---|
ArConfig | lhs | The ArConfig to compare with |
ArConfig | rhs | The ArConfig to compare with |
Returns
Type | Description |
---|---|
bool | Returns |