Workspace (.slcw)¶
Workspace description files can be located anywhere on disk, either inside or outside an SDK. The location of the workspace description file is the root directory for the workspace, and all workspace-relative paths are resolved from this location. A workspace description file shall have the .slcw extension.
Properties¶
workspace_name
¶
Required: Yes
Type: String
Condition: No
The workspace_name
key contains the name of the workspace, used by exporters to name IDE project files and output binaries.
1 |
|
package
¶
Required: Yes
Type: String
Condition: No
The package key is used to describe which SDK package the workspace should be part of.
1 |
|
label
¶
Required: Yes
Type: String
Human-readable string defining the name of the workspace.
description
¶
Required: No
Type: String
Textual description of the workspace, meant to provide an end user with information about its functionality. Used for search and in user interfaces. The description is typically not more than a few sentences.
quality
¶
Required: No
Type: String
The quality level of the workspace.
The following quality levels are available:
Quality | Description |
---|---|
production |
Production Ready |
evaluation |
Evaluation |
experimental |
Experimental |
deprecated |
Deprecated |
internal |
Internal |
GUI tools are expected to use the human-readable description when referring to project qualities.
filter
¶
Required: No Type: List of objects Condition: No
A list of filters to assist with discovery and classification of workspaces.
Each filter object is to be formatted like so:
Key | Required | Type | Description |
---|---|---|---|
name |
Yes | String | The name of the filter category. Typically implemented as a heading for a section that allows the user to choose between possible values. |
value |
Yes | List of strings | The list of filter values that apply to this workspace within the given filter category. |
Example
1 2 3 4 5 |
|
This workspace is visible if the user filters by Zigbee, Bluetooth or Multiprotocol, as well as if the user filters by Machine Learning.
Note
Tools may restrict what headings and filters are given visibility. For example, Simplicity Studio will not show certain filter options in the Launcher and New Project Wizard that are not part of an internal accepted filter list.
project
¶
Required: Yes
Type: List
List of references to projects making up the workspace. The sort order of this list encodes the build order of dependent projects, and the include order of exported include paths.
Key | Required | Type | Description |
---|---|---|---|
path |
Yes | String | Path to .slcp file. Relative to the workspace or absolute. |
id |
Yes | String | Unique ID of the project in the context of this workspace. Used in post-build files and in the import section of projects. |
output |
No | String | Output directory for the generated project. |
post_build
¶
Required: No
Type: Object
Properties for post-build steps to be performed for this workspace. The workspace may reference an SDK template profile (A), or an existing, specific post-build file (B). When generating a workspace referencing an SDK template profile, the .slcw file shall be rewritten to point to the path of the resolved post-build file.
Key | Required | Type | Description |
---|---|---|---|
profile |
A | String | The ID of the post-build profile to use from the SDK as a template for this workspace. If the requested profile doesn't exist in the SDK, an error is raised. |
path |
B | String | Path to post-build file. |