# DataSourceDisplay

#### new Cesium.DataSourceDisplay(options)
engine/Source/DataSources/DataSourceDisplay.js 35

Visualizes a collection of `DataSource` instances.

Name | Type | Description
--- | --- | ---
`options` | object | Object with the following properties:
Name | Type | Default | Description
--- | --- | --- | ---
`scene` | Scene |  | The scene in which to display the data.
`dataSourceCollection` | DataSourceCollection |  | The data sources to display.
`visualizersCallback` | DataSourceDisplay.VisualizersCallback | `DataSourceDisplay.defaultVisualizersCallback` | optional A function which creates an array of visualizers used for visualization. If undefined, all standard visualizers are used.

### Members

#### dataSources : DataSourceCollection
engine/Source/DataSources/DataSourceDisplay.js 200

Gets the collection of data sources to display.

#### defaultDataSource : CustomDataSource
engine/Source/DataSources/DataSourceDisplay.js 213

Gets the default data source instance which can be used to manually create and visualize entities not tied to a specific data source. This instance is always available and does not appear in the list dataSources collection.

#### readonly ready : boolean
engine/Source/DataSources/DataSourceDisplay.js 225

Gets a value indicating whether or not all entities in the data source are ready

#### scene : Scene
engine/Source/DataSources/DataSourceDisplay.js 190

Gets the scene associated with this display.

### Methods

#### static Cesium.DataSourceDisplay.defaultVisualizersCallback()
engine/Source/DataSources/DataSourceDisplay.js 153

Gets or sets the default function which creates an array of visualizers used for visualization. By default, this function uses all standard visualizers.

#### destroy()
engine/Source/DataSources/DataSourceDisplay.js 262

Destroys the WebGL resources held by this object. Destroying an object allows for deterministic release of WebGL resources, instead of relying on the garbage collector to destroy this object.
Once an object is destroyed, it should not be used; calling any function other than `isDestroyed` will result in a `DeveloperError` exception. Therefore, assign the return value (`undefined`) to the object as done in the example.

##### Throws:

- DeveloperError : This object was destroyed, i.e., destroy() was called.

##### Example:

    dataSourceDisplay = dataSourceDisplay.destroy();

##### See:

- DataSourceDisplay#isDestroyed

#### isDestroyed() → boolean
engine/Source/DataSources/DataSourceDisplay.js 242

Returns true if this object was destroyed; otherwise, false.
If this object was destroyed, it should not be used; calling any function other than `isDestroyed` will result in a `DeveloperError` exception.

##### Returns:

True if this object was destroyed; otherwise, false.

##### See:

- DataSourceDisplay#destroy

#### update(time) → boolean
engine/Source/DataSources/DataSourceDisplay.js 291

Updates the display to the provided time.

Name | Type | Description
--- | --- | ---
`time` | JulianDate | The simulation time.

##### Returns:

True if all data sources are ready to be displayed, false otherwise.

### Type Definitions

#### Cesium.DataSourceDisplay.VisualizersCallback(scene, entityCluster, dataSource) → Array.<Visualizer>
engine/Source/DataSources/DataSourceDisplay.js 529

A function which creates an array of visualizers used for visualization.

Name | Type | Description
--- | --- | ---
`scene` | Scene | The scene to create visualizers for.
`entityCluster` | EntityCluster | The entity cluster to create visualizers for.
`dataSource` | DataSource | The data source to create visualizers for.

##### Returns:

An array of visualizers used for visualization.

##### Example:

    function createVisualizers(scene, entityCluster, dataSource) {
        return [new Cesium.BillboardVisualizer(entityCluster, dataSource.entities)];
    }

Need help? The fastest way to get answers is from the community and team on the Cesium Forum.