# LayoutAnalysisResult

The `LayoutAnalysisResult` class holds the comprehensive results of the layout analysis. It implements `IDisposable` and must be disposed after use.

## Definition

*Namespace:* Dynamsoft.Utility

```csharp
public class LayoutAnalysisResult : IDisposable
```

## Properties

| Property | Type | Description |
|----------|------|-------------|
| [`inferredQuads`](#inferredquads) | *Quadrilateral[]* | Array of newly generated (inferred) quads. |
| [`elements`](#elements) | *LayoutElement[,]* | A 2D array (grid) of layout elements. |
| [`detectedPattern`](#detectedpattern) | *LayoutPattern* | The actual layout pattern identified by the engine. |
| [`errorCode`](#errorcode) | *int* | 0 for success, non-zero for error. |

### inferredQuads

Array of newly generated (inferred) quads.

```csharp
public Quadrilateral[] inferredQuads;
```

**See Also**

[Quadrilateral](https://www.dynamsoft.com/capture-vision/docs/server/programming/dotnet/api-reference/core/basic-classes/quadrilateral.md)

### elements

A 2D array (grid) of layout elements `[rowCount, colCount]`. In `LP_LINES` mode, rows may have varying physical lengths. Rows shorter than `colCount` are padded with elements whose source is set to `LES_NONE`.

```csharp
public LayoutElement[,] elements;
```

**See Also**

[LayoutElement](https://www.dynamsoft.com/capture-vision/docs/server/programming/dotnet/api-reference/utility/layout-element.md)

### detectedPattern

The actual layout pattern identified by the engine.

```csharp
public LayoutPattern detectedPattern;
```

**See Also**

[LayoutPattern](https://www.dynamsoft.com/capture-vision/docs/server/programming/dotnet/api-reference/utility/enum-layout-pattern.md)

### errorCode

0 for success, non-zero for error.

```csharp
public int errorCode;
```
