1<article class="markdown-body"> 2 3Link from APIs to requirements 4============================== 5 6# `ParameterMgrPlatformConnector` 7 8This class is the main client interface. 9 10See 11<http://01org.github.io/parameter-framework/doc/classCParameterMgrPlatformConnector.html> 12for the complete documentation of each API. 13 14## `createSelectionCriterionType` and `createSelectionCriterion` 15 16Implement the **Selection Criterion** creation requirements. See section **5.4** 17of the requirements documentation. 18 19## `getSelectionCriterion` 20 21There is no requirement to retreive a criterion by it's name. 22 23## `setLogger` 24 25Implement [req-post-mortem-debug]. 26 27Implements a way for the user to provide a log backend. 28This is not a requirentment currently. 29Maybe it is a miss? 30 31## `start` and `isStarted` 32 33**???** 34 35There is no "two-step-creation" requirement. This is an implementation detail. 36 37## `applyConfigurations` 38 39Deffered application requirement; see [req-multiple-criterion-change-atomicity] 40See also the Selection Criterion APIs below. 41 42## `createParameterHandle` 43 44Introspection and direct parameter read/write access; 45see [req-introspection] especialy the point about parameter properties. 46See also the Parameter Handle APIs below. 47 48## `setForceNoRemoteInterface` and `getForceNoRemoteInterface` 49 50Tuning capability activation control; see section [req-disabling] in [req-tuning]. 51 52## `setFailureOnMissingSubsystem` and `getFailureOnMissingSubsystem` 53 54**???** 55 56Currently only used for XML generation. There is no requirement associated. 57 58## `setFailureOnFailedSettingsLoad` and `getFailureOnFailedSettingsLoad` 59 60**???** 61 62Currently only used for XML generaton. There is no requirement associated. 63 64## `setSchemaUri` and `getSchemaUri`; `setValidateSchemasOnStart` and `getValidateSchemasOnStart` 65 66**???** 67 68Currently only used for XML generation. There is no requirement associated. 69 70# `ParameterMgrFullConnector` 71 72This is another client interface that covers the same purposes and APIs than 73`ParameterMgrPlatformConnector` and extands them. See this class' description. 74Added APIs are described in this chapter. 75 76## `setTuningMode` and `isTuningModeOn` 77 78Tuning capability activation control; see section [req-parameter-overwriting]. 79It adds another level of flexibility over `setForceNoRemoteInterface`. 80The semantic of these two APIs overlap but **neither one fully contains the other**. 81 82**TODO**: fix the semantics. 83 84## `setValueSpace` and `isValueSpaceRaw`; `setOutputRawFormat` and `isOutputRawFormatHex` 85 86Serialization control (FIXME: what about deserialization ?). Seems **UNUSED**. 87There is no requirement associated. 88 89## `setAutoSync`, `isAutoSyncOn` and `sync` 90 91Synchronization on client request; see section [req-explicit-sync]. 92 93## `accessParameterValue` 94 95Parameter value direct access. **This overlaps with ParameterHandle.** 96Implements the same requirement: [req-parameter-overwriting] 97 98## `getParameterMapping` 99 100Part of the Introspection requirements. See [req-introspection] especialy implement 101intropsepction of the mapped syncer. 102 103## Tuning APIs 104 105All of the following APIs implement the Tuning requirement; see section [req-tuning] 106 107- `accessConfigurationValue` 108 109- `createDomain` 110- `deleteDomain` 111- `renameDomain` 112- `deleteAllDomains` 113 114- `setSequenceAwareness` 115- `getSequenceAwareness` 116- `setElementSequence` 117 118- `createConfiguration` 119- `deleteConfiguration` 120- `renameConfiguration` 121- `restoreConfiguration` 122- `saveConfiguration` 123 124- `addConfigurableElementToDomain` 125- `removeConfigurableElementFromDomain` 126- `split` 127 128- `setApplicationRule` 129- `getApplicationRule` 130- `clearApplicationRule` 131 132## Persistance APIs 133 134### `exportDomainsXml` 135 136Exports the "Domains" (aka "Settings") which is the inference engine's data. 137See section [req-serializable]. 138 139### `importDomainsXml` 140 141Imports previously-exported data into the inference engine. See [req-deserializable]. 142 143### `exportSingleDomainXml` 144 145Exports a given part of the inference engine data. See [Serialization of individual data]. 146 147### `importSingleDomainXml` 148 149Imports a partial inference engine data as previously exported. See section 150[req-deserialization-of-individual-data]. 151 152# `ISelectionCriterionTypeInterface` 153 154Implementation detail of the criterion requirement [req-selection-criterion]. 155 156## `addValuePair` 157 158Implementation of [req-criterion-changes]. 159 160## `getNumericalValue` 161 162Implementation of [req-criterion-changes]. 163 164## `getLiteralValue` 165 166Implementation of [req-criterion-changes]. 167 168## `isTypeInclusive` 169 170Get how the criterion possible states were specified, 171see [req-state-domain-specification] 172 173## `getFormattedState` 174 175Pretty print criterion state [req-pretty-print] 176 177# `ISelectionCriterionInterface` 178 179## `setCriterionState` and `getCriterionState` 180 181Allow Introspection of a criterion; see [req-introspection]. 182## `getCriterionName` 183 184Allow Introspection of a criterion; see [req-introspection]. 185 186## `getCriterionType` 187 188Allow Introspection of a criterion; see [req-introspection]. 189 190# `CParameterHandle` 191 192This class implements the requirements related to direct read/write access to 193parameters. 194 195## `isRogue` 196 197Relative to setting rogue parameters; see section [req-introspection]. 198 199## `isArray` 200 201Allow Introspection of a parameter metadata; see [req-introspection]. 202 203## `getArrayLength` 204 205Allow Introspection of a parameter metadata; see [req-introspection]. 206 207## `getPath` and `getKind` 208 209Allow Introspection of a parameter identifier; see [req-introspection]. 210 211## Setters and getters 212 213The following APIs allow reading/writing parameters. 214Implements [req-introspection] and [req-parameter-overwriting] 215 216- `setAsBoolean` 217- `getAsBoolean` 218- `setAsBooleanArray` 219- `getAsBooleanArray` 220- 221- `setAsInteger` 222- `getAsInteger` 223- `setAsIntegerArray` 224- `getAsIntegerArray` 225- `setAsSignedInteger` 226- `getAsSignedInteger` 227- `setAsSignedIntegerArray` 228- `getAsSignedIntegerArray` 229- 230- `setAsDouble` 231- `getAsDouble` 232- `setAsDoubleArray` 233- `getAsDoubleArray` 234- 235- `setAsString` 236- `getAsString` 237- `setAsStringArray` 238- `getAsStringArray` 239 240</article> 241