Package org.eclipse.cdt.core.build

## Interface ICBuildConfigurationProvider

    public interface ICBuildConfigurationProvider

A CBuildConfigurationProvider provides C build configurations.

Since:
  6.0

### Method Summary

All Methods Instance Methods Abstract Methods Default Methods
`default ICBuildConfiguration` `createBuildConfiguration​(org.eclipse.core.resources.IProject project, IToolChain toolChain, String launchMode, org.eclipse.core.runtime.IProgressMonitor monitor)` Create a new build configuration for a given project using a given toolchain and builds for a given launch mode.
`ICBuildConfiguration` `getCBuildConfiguration​(org.eclipse.core.resources.IBuildConfiguration config, String name)` Returns the ICBuildConfiguration that owns this build configuration.
`String` `getId()` Return the id of this provider
`default Collection<IToolChain>` `getSupportedToolchains​(Collection<IToolChain> toolchains)` Return a collection of supported toolchains for build configurations of this type.

### Method Detail

#### getId

    String getId()

Return the id of this provider

Returns:
  provider id

#### getCBuildConfiguration

    ICBuildConfiguration getCBuildConfiguration​(org.eclipse.core.resources.IBuildConfiguration config,
                                                String name)
                                         throws org.eclipse.core.runtime.CoreException

Returns the ICBuildConfiguration that owns this build configuration.

Parameters:
  `config` -
Returns:
  CDT build configuration for the Platform build configuration
Throws:
  `org.eclipse.core.runtime.CoreException`

#### createBuildConfiguration

    default ICBuildConfiguration createBuildConfiguration​(org.eclipse.core.resources.IProject project,
                                                          IToolChain toolChain,
                                                          String launchMode,
                                                          org.eclipse.core.runtime.IProgressMonitor monitor)
                                                   throws org.eclipse.core.runtime.CoreException

Create a new build configuration for a given project using a given toolchain and builds for a given launch mode.

Parameters:
  `project` - project for the config
  `toolChain` - toolchain the build config will use
  `launchMode` - launch mode the buld config will build for
Returns:
  new build configuration or null combination not supported
Throws:
  `org.eclipse.core.runtime.CoreException`
Since:
  6.1

#### getSupportedToolchains

    default Collection<IToolChain> getSupportedToolchains​(Collection<IToolChain> toolchains)
                                                   throws org.eclipse.core.runtime.CoreException

Return a collection of supported toolchains for build configurations of this type.

Throws:
  `org.eclipse.core.runtime.CoreException`
Since:
  6.4