687121165623"><a name="p1887687121165623"></a><a name="p1887687121165623"></a>Declares ability-related functions, including ability lifecycle callbacks and functions for connecting to or disconnecting from Particle Abilities. As the fundamental unit of OpenHarmony applications, abilities are classified into <a href="feature.md">Feature</a> Abilities and Particle Abilities. <a href="feature.md">Feature</a> Abilities support the Page template, and Particle Abilities support the <a href="service.md">Service</a> template. An ability using the Page template is called a Page ability for short and that using the <a href="service.md">Service</a> template is called a <a href="service.md">Service</a> ability. </p>
</td>
</tr>
<tr id="row1763037614165623"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.1 "><p id="p1854190489165623"><a name="p1854190489165623"></a><a name="p1854190489165623"></a><a href="want-h.md">want.h</a></p>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.2 "><p id="p1503925968165623"><a name="p1503925968165623"></a><a name="p1503925968165623"></a>Declares the structure that provides abstract description of the operation to be performed, including the ability information and the carried data, and functions for setting data in the structure. </p>
</td>
</tr>
</tbody>
</table>

## Data Structures<a name="nested-classes"></a>

<a name="table1347462441165623"></a>
<table><thead align="left"><tr id="row1108840585165623"><th class="cellrowborder" valign="top" width="50%" id="mcps1.1.3.1.1"><p id="p341968454165623"><a name="p341968454165623"></a><a name="p341968454165623"></a>Data Structure Name</p>
</th>
<th class="cellrowborder" valign="top" width="50%" id="mcps1.1.3.1.2"><p id="p716963118165623"><a name="p716963118165623"></a><a name="p716963118165623"></a>Description</p>
</th>
</tr>
</thead>
<tbody><tr id="row978813801165623"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.1 "><p id="p490572705165623"><a name="p490572705165623"></a><a name="p490572705165623"></a><a href="ohos-ability.md">OHOS::Ability</a></p>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.2 "><p id="p839714125165623"><a name="p839714125165623"></a><a name="p839714125165623"></a>Declares ability-related functions, including ability lifecycle callbacks and functions for connecting to or disconnecting from Particle Abilities. </p>
</td>
</tr>
<tr id="row1621150401165623"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.1 "><p id="p513144426165623"><a name="p513144426165623"></a><a name="p513144426165623"></a><a href="iabilityconnection.md">IAbilityConnection</a></p>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.2 "><p id="p318984509165623"><a name="p318984509165623"></a><a name="p318984509165623"></a>Provides callbacks to be invoked when a remote <a href="service.md">Service</a> ability is connected or disconnected. </p>
</td>
</tr>
<tr id="row978690111165623"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.1 "><p id="p1372638095165623"><a name="p1372638095165623"></a><a name="p1372638095165623"></a><a href="ohos-abilitycontext.md">OHOS::AbilityContext</a></p>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.2 "><p id="p2050799819165623"><a name="p2050799819165623"></a><a name="p2050799819165623"></a>Provides functions for starting and stopping an ability. </p>
</td>
</tr>
<tr id="row1967357444165623"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.1 "><p id="p2076330370165623"><a name="p2076330370165623"></a><a name="p2076330370165623"></a><a href="ohos-abilityeventhandler.md">OHOS::AbilityEventHandler</a></p>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.2 "><p id="p1652428203165623"><a name="p1652428203165623"></a><a name="p1652428203165623"></a>Declares functions for performing operations during inter-thread communication, including running and quitting the event loop of the current thread and posting tasks to an asynchronous thread. </p>
</td>
</tr>
<tr id="row1676933322165623"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.1 "><p id="p880190676165623"><a name="p880190676165623"></a><a name="p880190676165623"></a><a href="ohos-abilityloader.md">OHOS::AbilityLoader</a></p>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.2 "><p id="p293527311165623"><a name="p293527311165623"></a><a name="p293527311165623"></a>Declares functions for registering the class names of <a href="ohos-ability.md">Ability</a> and <a href="ohos-abilityslice.md">AbilitySlice</a> with the ability management framework. </p>
</td>
</tr>
<tr id="row808996378165623"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.1 "><p id="p1205038970165623"><a name="p1205038970165623"></a><a name="p1205038970165623"></a><a href="ohos-abilityslice.md">OHOS::AbilitySlice</a></p>
</td>
<td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.2 "><p id="p908656541165623"><a name="p908656541165623"></a><a name="p908656541165623"></a>Provides ability slice-related functions, including ability slice lifecycle callbacks and functions for connecting to or disconnecting from ability slices. </p>
</td>
</tr>
<tr id="row312459057165623"><td class="cellrowborder" valign="top" width="50%" headers="mcps1.1.3.1.1 "><p id="p1858331898165623"><a name="p1858331898165623"></a><a name="p185833189816