Changes to the Carbide API
The following section provides information on changed, deprecated, and removed Carbide APIs.
Changed APIs
The following APIs have been changed.
Since Carbide 1.2.0
Since Carbide 1.2.1
- In order to support multiple documents per model, we must inject a way to determine how IDocument instances are provided for use in creating ITranslationUnits. Any implementations of com.nokia.carbide.cpp.epoc.engine.model.IViewParserConfiguration must now implement the method IModelDocumentProvider getModelDocumentProvider(). This is used to isolate the mechanism for creating IDocument instances, either from disk or from memory.
- Similarly, the method #getTranslationUnit(File) in com.nokia.carbide.cpp.epoc.engine.preprocessor.ITranslationUnitProvider is changed to #getTranslationUnit(File, IModelDocumentProvider).
Since Carbide 1.2.2
- Due to changes in in CDT 4.0, we needed to change com.nokia.carbide.cdt.builder.ICarbideBuildManager and com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo. Methods which modified Carbide.c++ project properties were moved to the new interface com.nokia.carbide.cdt.builder.project.ICarbideProjectModifier.
- ICarbideProjectInfo#getCleanCommand has been changed to ICarbideProjectInfo#getCleanLevel to match the preference change.
- ICarbideBuildConfiguration#getSISBuilderInfo has been changed to ICarbideBuildConfiguration#getSISBuilderInfoList to match the changes to the SIS Builder tab.
- EpocEngineHelper#getProjectRoots now returns a list with three elements (formerly 2), the last of which is the path that contains the build files and the sources (aka the "desired root").
Since Carbide 2.0
- Added com.nokia.carbide.cpp.sdk.core.ISDKManager#checkDevicesXMLSynchronized().
- The EMMPLanguage#UNKNOWNxxx enums have been renamed with their proper names. All the same language
codes are available, so EMMPLangage#forLangCode() or #fromCode() should still work. (We couldn't leave the unknown
enums in, mark them @Deprecated, and add the correct ones, since this would violate uniqueness in the EMMPLanguage#values()
array.)
Deprecated APIs
The following Carbide APIs have been deprecated and should not be used anymore. Please see the JavaDoc for these classes and methods for more information.
Since Carbide 1.2.0
Since Carbide 1.2.1
Since Carbide 1.2.2
- com.nokia.carbide.cdt.builder.builder.CarbideCommandLauncher.getCmdExeLocation()
- com.nokia.carbide.cdt.builder.builder.CarbideCPPBuilder.callAbldBuildForConfiguration(ICarbideBuildConfiguration, IProgressMonitor, IConsole, int, boolean)
- com.nokia.carbide.cdt.builder.builder.CarbideCPPBuilder.invokeBldmakeBldFiles(ICarbideBuildConfiguration, CarbideCommandLauncher, IProgressMonitor, IConsole, String[], IPath)
- com.nokia.carbide.cdt.builder.builder.CarbideCPPBuilder.projectNeedsMakefileGeneration(IPath, ICarbideBuildConfiguration)
- com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo.getMMPTargetFile()
- com.nokia.carbide.cdt.builder.EpocEngineHelper.getPathToMainExecutable(ICarbideBuildConfiguration)
- com.nokia.carbide.cdt.builder.EpocEngineHelper.getPathToMainExecutable(ICarbideProjectInfo)
- com.nokia.carbide.cdt.builder.EpocEngineHelper.getTargetPathForMainExecutable(ICarbideProjectInfo)
- com.nokia.carbide.cdt.builder.EpocEngineHelper.getHostAndTargetResources(ICarbideProjectInfo)
- com.nokia.carbide.cdt.internal.builder.EnvironmentVarsInfo
- com.nokia.carbide.cdt.internal.builder.SISBuilderInfo
- com.nokia.carbide.cpp.sdk.core.getProjectVariantHRHMacros()
Since Carbide 2.0
Removed APIs
The following Carbide APIs have been removed and are no longer available to plug-ins.
Since Carbide 1.2.0
Since Carbide 1.2.1
Since Carbide 1.2.2
- Some methods that were not intended to be made public were removed from the following classes and interfaces:
- com.nokia.carbide.cdt.builder.builder.CarbideCPPBuilder
- com.nokia.carbide.cdt.builder.ICarbideBuildManager
- com.nokia.carbide.cdt.builder.project.ICarbideProjectInfo
- com.nokia.carbide.cdt.builder.project.ICarbideBuildConfiguration
Since Carbide 2.0