---
title: "Class ContainerDiscoverer | Customer's Canvas On-Premises"
canonical: "https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.ImageProcessing.Services/ContainerDiscoverer/"
---

# Class ContainerDiscoverer

> **Inheritance:** `System.Object` -> ContainerDiscoverer

###### **Namespace**: [Aurigma.DesignAtoms.ImageProcessing.Services](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.ImageProcessing.Services.md)

###### **Assembly**: Aurigma.DesignAtoms.ImageProcessing.dll

```csharp title="Syntax"
public class ContainerDiscoverer : IColorDiscoverer
```

## Implements

* [Aurigma.DesignAtoms.ImageProcessing.Services.IColorDiscoverer](https://customerscanvas.com/docs/on-premises/design-atoms-cs/reference/api/Aurigma.DesignAtoms.ImageProcessing.Services/IColorDiscoverer.md)

## Inherited Members

* `System.Object.ToString`
* `System.Object.Equals(System.Object)`
* `System.Object.Equals(System.Object,System.Object)`
* `System.Object.ReferenceEquals(System.Object,System.Object)`
* `System.Object.GetHashCode`
* `System.Object.GetType`
* `System.Object.MemberwiseClone`

## Constructors

### ContainerDiscoverer

```csharp
public ContainerDiscoverer(Func<Item, IColorDiscoverer> discovererFactory)
```

## Methods

### DiscoverColors

```csharp
public (List<Color> Colors, Item ProcessedItem) DiscoverColors(Item containerItem, int maxColorLimit, Color paletteReferenceColor = null)
```

##### Parameters

| Type | Name | Description |
|:---|:---|:---|
| `Aurigma.GraphicsMill.AdvancedDrawing.Item` | *containerItem* |  |
| `System.Int32` | *maxColorLimit* |  |
| `Aurigma.GraphicsMill.Color` | *paletteReferenceColor* |  |

##### Returns

`System.ValueTuple<System.Collections.Generic.List<Aurigma.GraphicsMill.Color>,Aurigma.GraphicsMill.AdvancedDrawing.Item>`
