Package org.eclipse.debug.ui.memory

## Interface IMemoryRenderingBindingsProvider

All Known Subinterfaces:
  `IMemoryRenderingManager`

All Known Implementing Classes:
  `AbstractMemoryRenderingBindingsProvider`

    public interface IMemoryRenderingBindingsProvider

A rendering bindings provider provides rendering type bindings for a memory block.

By default, bindings for a memory block are provided by the memory rendering manager. However, a client can provide dynamic renderings for a memory block by contributing a dynamic rendering binding in the `renderingBindings` element of a `memoryRenderings` extension.

Clients contributing dynamic rendering bindings are intended to implement this interface.

Since:
  3.1

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `addListener​(IMemoryRenderingBindingsListener listener)` Adds a listener to this binding provider.
`IMemoryRenderingType[]` `getDefaultRenderingTypes​(IMemoryBlock block)` Returns default rendering types bound to the given memory block, possibly empty.
`IMemoryRenderingType` `getPrimaryRenderingType​(IMemoryBlock block)` Returns the primary rendering type bound to the given memory block, or `null` if none.
`IMemoryRenderingType[]` `getRenderingTypes​(IMemoryBlock block)` Returns all rendering types bound to the given memory block.
`void` `removeListener​(IMemoryRenderingBindingsListener listener)` Removes a listener from this binding provider.

### Method Detail

#### getRenderingTypes

    IMemoryRenderingType[] getRenderingTypes​(IMemoryBlock block)

Returns all rendering types bound to the given memory block. This includes default and primary rendering types.

Parameters:
  `block` - memory block
Returns:
  all rendering types bound to the given memory block

#### getDefaultRenderingTypes

    IMemoryRenderingType[] getDefaultRenderingTypes​(IMemoryBlock block)

Returns default rendering types bound to the given memory block, possibly empty.

Parameters:
  `block` - memory block
Returns:
  default rendering types bound to the given memory block, possibly empty

#### getPrimaryRenderingType

    IMemoryRenderingType getPrimaryRenderingType​(IMemoryBlock block)

Returns the primary rendering type bound to the given memory block, or `null` if none.

Parameters:
  `block` - memory block
Returns:
  the primary rendering type bound to the given memory block, or `null` if none

#### addListener

    void addListener​(IMemoryRenderingBindingsListener listener)

Adds a listener to this binding provider. The listener will be notified when rendering bindings change.

Has no effect if an identical listener is already registered.

Parameters:
  `listener` - listener to add

#### removeListener

    void removeListener​(IMemoryRenderingBindingsListener listener)

Removes a listener from this binding provider.

Has no effect if an identical listener is not already registered.

Parameters:
  `listener` - listener to remove