---
title: OCKTaskController
framework: CareKit
role: symbol
role_heading: Class
platforms: [iOS 13.0+, Mac Catalyst 13.0+, watchOS 7.0+]
path: carekit/ocktaskcontroller
---

# OCKTaskController

A controller object that watches, and updates tasks.

## Declaration

```swift
class OCKTaskController
```

## Topics

### Creating Task Controllers

- [init(storeManager:)](carekit/ocktaskcontroller/init(storemanager:).md)

### Configuring Task Controllers

- [objectWillChange](carekit/ocktaskcontroller/objectwillchange.md)
- [store](carekit/ocktaskcontroller/store.md)
- [storeManager](carekit/ocktaskcontroller/storemanager.md)

### Handling Task Selection

- [appendOutcomeValue(withType:at:completion:)](carekit/ocktaskcontroller/appendoutcomevalue(withtype:at:completion:).md)
- [eventFor(indexPath:)](carekit/ocktaskcontroller/eventfor(indexpath:).md)
- [initiateDetailsViewController(forIndexPath:)](carekit/ocktaskcontroller/initiatedetailsviewcontroller(forindexpath:).md)
- [initiateDeletionForOutcomeValue(atIndex:eventIndexPath:deletionCompletion:)](carekit/ocktaskcontroller/initiatedeletionforoutcomevalue(atindex:eventindexpath:deletioncompletion:).md)
- [makeOutcomeFor(event:withValues:)](carekit/ocktaskcontroller/makeoutcomefor(event:withvalues:).md)
- [setEvent(atIndexPath:isComplete:completion:)](carekit/ocktaskcontroller/setevent(atindexpath:iscomplete:completion:).md)

### Fetching and Observing Events

- [fetchAndObserveEvents(forTask:eventQuery:errorHandler:)](carekit/ocktaskcontroller/fetchandobserveevents(fortask:eventquery:errorhandler:).md)
- [fetchAndObserveEvents(forTaskID:eventQuery:errorHandler:)](carekit/ocktaskcontroller/fetchandobserveevents(fortaskid:eventquery:errorhandler:).md)
- [fetchAndObserveEvents(forTaskIDs:eventQuery:errorHandler:)](carekit/ocktaskcontroller/fetchandobserveevents(fortaskids:eventquery:errorhandler:).md)

### Default Implementations

- [OCKTaskControllerProtocol Implementations](carekit/ocktaskcontroller/ocktaskcontrollerprotocol-implementations.md)

## Relationships

### Inherited By

- [OCKButtonLogTaskController](carekit/ockbuttonlogtaskcontroller.md)

### Conforms To

- Combine.ObservableObject
- [OCKTaskControllerProtocol](carekit/ocktaskcontrollerprotocol.md)

## See Also

### Task Views and Controllers

- [OCKSimpleTaskViewController](carekit/ocksimpletaskviewcontroller.md)
- [OCKSimpleTaskView](carekitui/ocksimpletaskview.md)
- [OCKGridTaskViewController](carekit/ockgridtaskviewcontroller.md)
- [OCKGridTaskView](carekitui/ockgridtaskview.md)
- [OCKGridTaskCell](carekitui/ockgridtaskcell.md)
- [OCKChecklistTaskView](carekitui/ockchecklisttaskview.md)
- [OCKInstructionsTaskView](carekitui/ockinstructionstaskview.md)
- [OCKButtonLogTaskController](carekit/ockbuttonlogtaskcontroller.md)
- [OCKButtonLogTaskView](carekitui/ockbuttonlogtaskview.md)
- [OCKLogTaskView](carekitui/ocklogtaskview.md)
- [OCKLogButtonCell](carekitui/ocklogbuttoncell.md)
- [OCKTaskViewController](carekit/ocktaskviewcontroller.md)
