Carbide.c++

com.nokia.carbide.cpp.sdk.core
Interface ISymbianSDK


public interface ISymbianSDK

This interface provides details on a single Symbian OS SDK. Notes on return values for unknown/undefined items: - String value are empty "" - IPath and IFile objects are null - containers have zero size


Field Summary
static java.lang.String EKA1_A_BRANCH_IDENTIFIER
          Branch identifier to note Beech branch, OS 8.1a and prior
static java.lang.String EKA1_S_BRANCH_IDENTIFIER
          Branch identifier to note S branch, OS 7.0x
static java.lang.String EKA2_B_BRANCH_IDENTIFIER
          Branch identifier to note Cedar branch, OS 8.0b and later (not used for OS 9.x and greater)
static java.lang.String PUBLISHER_NOKIA
           
static java.lang.String PUBLISHER_SYMBIAN
           
static java.lang.String PUBLISHER_UIQ
           
static java.lang.String S60_FAMILY_ID
           
static java.lang.String S60_SDK_NAME
           
static java.lang.String S80_FAMILY_ID
           
static java.lang.String S80_SDK_NAME
           
static java.lang.String SERIES60_FAMILY_ID
           
static java.lang.String SERIES60_SDK_NAME
           
static java.lang.String TECHVIEW_FAMILY_ID
           
static java.lang.String TECHVIEW_SDK_NAME
           
static java.lang.String UIQ_FAMILY_ID
           
static java.lang.String UIQ_SDK_NAME
           
 
Method Summary
 java.util.List<java.lang.String> getAvailablePlatforms()
          Returns the list of all available platforms for this SDK.
 IBSFCatalog getBSFCatalog()
          Get the BSF catalog for the SDK.
 java.util.Date getCreationDate()
          Get the creation date of the manifest.xml
 java.lang.String getEPOCROOT()
          Returns the absolute path to the epoc32 directory of this SDK.
 java.lang.String getFamily()
          Returns the family name of this SDK.
 java.util.List<ISymbianBuildContext> getFilteredBuildConfigurations()
          Returns the filtered list of build configurations for this SDK.
 IPath getIncludePath()
          Returns an IPath for the epoc32\include directory of this SDK.
 java.io.File getLicenseFile()
          Get the licese file location in the SDK.
 java.lang.String getName()
          Returns the display name of this SDK.
 Version getOSVersion()
          Returns the OS version string of this SDK.
 java.util.List<java.lang.String> getPlatformMacros(java.lang.String platform)
          Returns the list of all platform macros for this SDK.
 java.io.File getPrefixFile()
          Returns the File object for the prefix file for this SDK.
 java.util.List<IDefine> getProjectVariantHRHDefines()
          Deprecated. use ISymbianBuildContext.getVariantHRHDefines() instead. This was moved because the include paths in which to find any header files included from the main .hrh file may be build configuration specific.
 java.util.List<java.lang.String> getProjectVariantHRHMacros()
          Deprecated. use #getProjectVariantHRHDefines() which returns a list of IDefine instead.
 java.lang.String getPublisherName()
          Get the publisher name present in manifest.xml
 java.net.URL getPublisherURL()
          Get the HTTP location for the SDK publisher.
 IPath getReleaseRoot()
          Returns an IPath for the epoc32\release directory of this SDK.
 boolean getRequiresRestart()
          Deprecated. 
 java.lang.String getSDKDescription()
           
 java.lang.String getSDKOSBranch()
          Get the branch qualifier for the OS.
 Version getSDKVersion()
          Returns the SDK version string of this SDK.
 java.util.List<java.lang.String> getSupportedTargetTypes()
          Get a list of supported targettypes listed by this SDK.
 java.util.List<java.lang.String> getTargetTypeMacros(java.lang.String targettype)
          Get a list of macros specific to the given target type, e.g.
 IPath getToolsPath()
          Returns an IPath for the epoc32\tools directory of this SDK.
 java.util.List<ISymbianBuildContext> getUnfilteredBuildConfigurations()
          Returns the unfiltered list of build configurations for this SDK.
 java.lang.String getUniqueId()
          Returns the unique id of this SDK.
 java.util.List<java.lang.String> getVariantCFGMacros()
          Returns a list of the macros defined in the variant.cfg file.
 java.lang.String getVendor()
          Returns the vendor name of this SDK.
 java.util.List<java.lang.String> getVendorSDKMacros()
          Get a list of macros that are used to distinguish this SDK.
 boolean isDefaultSDK()
          Returns whether or not this is the default SDK in the devices.xml file.
 boolean isEKA1()
          Tell if the SDK is EKA1
 boolean isEKA2()
          Tell if the SDK is EKA2
 boolean isEnabled()
          Returns true if the SDK is enabled, false otherwise.
 boolean isS60()
          Tell if the SDK is Series60
 boolean isValid()
          Returns true if the SDK is configured properly, false otherwise.
 void scanSDK()
          Scans/Rescans the SDK for info such as prefix file, variant macros, manifest.xml, etc.
 void setCreateDate(java.util.Date createDate)
           
 void setEnabled(boolean enable)
          Marks the SDK as enabled or disabled
 void setEPOCROOT(java.lang.String epocRoot)
           
 void setIsDefaultSDK(boolean isDefault)
           
 void setLicenseFile(java.io.File licenseFile)
           
 void setName(java.lang.String name)
           
 void setOSSDKBranch(java.lang.String branch)
           
 void setOSVersion(Version osVer)
           
 void setPrefixFile(IPath prefixFile)
           
 void setPublisherName(java.lang.String pubName)
           
 void setPublisherURL(java.net.URL pubURL)
           
 void setSDKDescription(java.lang.String descr)
           
 void setSDKVersion(Version sdkVers)
           
 void setSupportsWINSCW_UREL(boolean isSupported)
          Set the flag wheter or not this SDK has WINSCW UREL binary support
 void setUniqueID(java.lang.String id)
           
 boolean supportsWINSCW_UREL()
          Get whether or not this SDK has WINSCW UREL binary support
 java.util.List<java.lang.String> validationErrors()
          Returns a list of human readable error strings desribing why the SDK is not configured properly.
 

Field Detail

EKA1_A_BRANCH_IDENTIFIER

static final java.lang.String EKA1_A_BRANCH_IDENTIFIER
Branch identifier to note Beech branch, OS 8.1a and prior

See Also:
Constant Field Values

EKA1_S_BRANCH_IDENTIFIER

static final java.lang.String EKA1_S_BRANCH_IDENTIFIER
Branch identifier to note S branch, OS 7.0x

See Also:
Constant Field Values

EKA2_B_BRANCH_IDENTIFIER

static final java.lang.String EKA2_B_BRANCH_IDENTIFIER
Branch identifier to note Cedar branch, OS 8.0b and later (not used for OS 9.x and greater)

See Also:
Constant Field Values

SERIES60_FAMILY_ID

static final java.lang.String SERIES60_FAMILY_ID
See Also:
Constant Field Values

S60_FAMILY_ID

static final java.lang.String S60_FAMILY_ID
See Also:
Constant Field Values

S80_FAMILY_ID

static final java.lang.String S80_FAMILY_ID
See Also:
Constant Field Values

UIQ_FAMILY_ID

static final java.lang.String UIQ_FAMILY_ID
See Also:
Constant Field Values

TECHVIEW_FAMILY_ID

static final java.lang.String TECHVIEW_FAMILY_ID
See Also:
Constant Field Values

SERIES60_SDK_NAME

static final java.lang.String SERIES60_SDK_NAME
See Also:
Constant Field Values

S60_SDK_NAME

static final java.lang.String S60_SDK_NAME
See Also:
Constant Field Values

S80_SDK_NAME

static final java.lang.String S80_SDK_NAME
See Also:
Constant Field Values

UIQ_SDK_NAME

static final java.lang.String UIQ_SDK_NAME
See Also:
Constant Field Values

TECHVIEW_SDK_NAME

static final java.lang.String TECHVIEW_SDK_NAME
See Also:
Constant Field Values

PUBLISHER_NOKIA

static final java.lang.String PUBLISHER_NOKIA
See Also:
Constant Field Values

PUBLISHER_UIQ

static final java.lang.String PUBLISHER_UIQ
See Also:
Constant Field Values

PUBLISHER_SYMBIAN

static final java.lang.String PUBLISHER_SYMBIAN
See Also:
Constant Field Values
Method Detail

isValid

boolean isValid()
Returns true if the SDK is configured properly, false otherwise.

Returns:
true if the SDK is configured properly, and false otherwise

validationErrors

java.util.List<java.lang.String> validationErrors()
Returns a list of human readable error strings desribing why the SDK is not configured properly.

Returns:
a list of strings which may be empty.
See Also:
isValid()

isEnabled

boolean isEnabled()
Returns true if the SDK is enabled, false otherwise.

Returns:
true if the SDK is enabled, and false otherwise

setEnabled

void setEnabled(boolean enable)
Marks the SDK as enabled or disabled

Parameters:
enable - whether to enable or disable the SDK

getPlatformMacros

java.util.List<java.lang.String> getPlatformMacros(java.lang.String platform)
Returns the list of all platform macros for this SDK.

This is somewhat equivalent to calling "bldmake plat" on the command line These are the macros that can be used in MMP and INF files. They are only given by name (no value)

Parameters:
platform - the platform name
Returns:
a list of macros, which may be empty.

getProjectVariantHRHMacros

java.util.List<java.lang.String> getProjectVariantHRHMacros()
Deprecated. use #getProjectVariantHRHDefines() which returns a list of IDefine instead.

Returns the list of all vendor specific C/C++ macros for this SDK. The list of macros is defined in the variant configuration file inside \epoc32\tools\variant.cfg (or \epoc32\tools\spp_variant.cfg for platform variation SDKs). The file itself contains an HRH file entry and may also contain macro definitions thereafter.

Macros follow the form of a #define statement, excluding the "#define", e.g.:
"FOO", "BAR=1", "_INCLUDE_=\"\\mydir\\prefix.hrh\\\"", "INCLUDE(x)=\epoc32\include\##x"

Returns:
a list of macros which may be empty.

getProjectVariantHRHDefines

java.util.List<IDefine> getProjectVariantHRHDefines()
Deprecated. use ISymbianBuildContext.getVariantHRHDefines() instead. This was moved because the include paths in which to find any header files included from the main .hrh file may be build configuration specific.

Returns the list of all vendor specific C/C++ macros for this SDK. The list of macros is defined in the variant configuration file inside \epoc32\tools\variant.cfg (or \epoc32\tools\spp_variant.cfg for platform variation SDKs). The file itself contains an HRH file entry and may also contain macro definitions thereafter.

Returns:
a list of macros which may be empty.

getVariantCFGMacros

java.util.List<java.lang.String> getVariantCFGMacros()
Returns a list of the macros defined in the variant.cfg file. This is NOT the macros in the HRH file, but the actual maros written to the variant.cfg file.

Returns:
A String list of macros found as is, or an empty list if none.

getVendorSDKMacros

java.util.List<java.lang.String> getVendorSDKMacros()
Get a list of macros that are used to distinguish this SDK. Typically only S603rd edition SDKs contain this information and it's used to differentiate between varios S60 SDK releases. Other vendors, such as UIQ may put their macros in the variant HRH file.

Returns:
A list of macros just returned by name.

getAvailablePlatforms

java.util.List<java.lang.String> getAvailablePlatforms()
Returns the list of all available platforms for this SDK.

Returns:
a list of platform names which may be empty.

getFilteredBuildConfigurations

java.util.List<ISymbianBuildContext> getFilteredBuildConfigurations()
Returns the filtered list of build configurations for this SDK.

Build configs to disply can be filtered by the user using a global preference page.

Returns:
a list build configuration names which may be empty.

getUnfilteredBuildConfigurations

java.util.List<ISymbianBuildContext> getUnfilteredBuildConfigurations()
Returns the unfiltered list of build configurations for this SDK.

Build configs to disply can be filtered by the user using a global preference page.

Returns:
a list build configuration names which may be empty.

getUniqueId

java.lang.String getUniqueId()
Returns the unique id of this SDK. This is the devices.xml 'id' attribute.

Returns:
the id string of this sdk.

getName

java.lang.String getName()
Returns the display name of this SDK. This is the com.vendor.family identifier.

Returns:
the name of this sdk.

getVendor

java.lang.String getVendor()
Returns the vendor name of this SDK. This is parsed from the 'name' attribute from devices.xml.

Returns:
the vendor name of this sdk.

getFamily

java.lang.String getFamily()
Returns the family name of this SDK. This is parsed from the 'vendor' attribute from devices.xml.

Returns:
the family name of this sdk.

getEPOCROOT

java.lang.String getEPOCROOT()
Returns the absolute path to the epoc32 directory of this SDK. This method is guaranteed to return the path with a trailing File.separator.

Returns:
the absolute path to the epoc32 directory.

isDefaultSDK

boolean isDefaultSDK()
Returns whether or not this is the default SDK in the devices.xml file.

Returns:
true if the SDK is the default, and false otherwise

getOSVersion

Version getOSVersion()
Returns the OS version string of this SDK.

Returns:
the OS Version object. If the version cannot be determined it will be "0.0".

getSDKVersion

Version getSDKVersion()
Returns the SDK version string of this SDK.

Returns:
the SDK Version object. If the version cannot be determined it will be "0.0".

getPrefixFile

java.io.File getPrefixFile()
Returns the File object for the prefix file for this SDK.

Returns:
the File object for the prefix file, or null if there isn't one for this SDK.

getToolsPath

IPath getToolsPath()
Returns an IPath for the epoc32\tools directory of this SDK.

Returns:
an IPath for the epoc32\tools directory, or null.

getReleaseRoot

IPath getReleaseRoot()
Returns an IPath for the epoc32\release directory of this SDK.

Returns:
an IPath for the epoc32\release directory, or null.

getIncludePath

IPath getIncludePath()
Returns an IPath for the epoc32\include directory of this SDK.

Returns:
an IPath for the epoc32\include directory, or null.

getSDKDescription

java.lang.String getSDKDescription()

getCreationDate

java.util.Date getCreationDate()
Get the creation date of the manifest.xml

Returns:
a Date object

getLicenseFile

java.io.File getLicenseFile()
Get the licese file location in the SDK. Comes from manifest.xml.

Returns:
File, full path to the license file.

getSDKOSBranch

java.lang.String getSDKOSBranch()
Get the branch qualifier for the OS. Typically "a" or "b" to denote the Beech and Cedar code branchs respectively. This is typically used to denote EKA1 from EKA2.

Returns:
the branch, or empty string if none.

getPublisherURL

java.net.URL getPublisherURL()
Get the HTTP location for the SDK publisher. Comes from manifest.xml.

Returns:
A (hopefully) valid URL.

getPublisherName

java.lang.String getPublisherName()
Get the publisher name present in manifest.xml

Returns:
The name entry or empty string if not present.

getSupportedTargetTypes

java.util.List<java.lang.String> getSupportedTargetTypes()
Get a list of supported targettypes listed by this SDK. This routine parses the \epoc32\tools\trgttype.pm file to build it's list.

Returns:
A list of targettype names that can be used in an MMP file

getTargetTypeMacros

java.util.List<java.lang.String> getTargetTypeMacros(java.lang.String targettype)
Get a list of macros specific to the given target type, e.g. "__EXE__" or "__DLL__"

Parameters:
targettype -
Returns:
list of macro strings, may be empty

getRequiresRestart

@Deprecated
boolean getRequiresRestart()
Deprecated. 


setLicenseFile

void setLicenseFile(java.io.File licenseFile)

setPrefixFile

void setPrefixFile(IPath prefixFile)

setOSVersion

void setOSVersion(Version osVer)

setSDKVersion

void setSDKVersion(Version sdkVers)

setPublisherURL

void setPublisherURL(java.net.URL pubURL)

setCreateDate

void setCreateDate(java.util.Date createDate)

setOSSDKBranch

void setOSSDKBranch(java.lang.String branch)

setIsDefaultSDK

void setIsDefaultSDK(boolean isDefault)

setSDKDescription

void setSDKDescription(java.lang.String descr)

setPublisherName

void setPublisherName(java.lang.String pubName)

setUniqueID

void setUniqueID(java.lang.String id)

setEPOCROOT

void setEPOCROOT(java.lang.String epocRoot)

setName

void setName(java.lang.String name)

isEKA1

boolean isEKA1()
Tell if the SDK is EKA1


isEKA2

boolean isEKA2()
Tell if the SDK is EKA2


isS60

boolean isS60()
Tell if the SDK is Series60


supportsWINSCW_UREL

boolean supportsWINSCW_UREL()
Get whether or not this SDK has WINSCW UREL binary support

Returns:
true if the SDK has the WINSCW/UREL folder with epoc.exe components.

setSupportsWINSCW_UREL

void setSupportsWINSCW_UREL(boolean isSupported)
Set the flag wheter or not this SDK has WINSCW UREL binary support

Parameters:
isSuported -

scanSDK

void scanSDK()
Scans/Rescans the SDK for info such as prefix file, variant macros, manifest.xml, etc.


getBSFCatalog

IBSFCatalog getBSFCatalog()
Get the BSF catalog for the SDK.


Carbide.c++