---
title: CLRegion
framework: corelocation
role: symbol
role_heading: Class
path: corelocation/clregion
---

# CLRegion

A base class representing an area that can be monitored.

## Declaration

```swift
class CLRegion
```

## Overview

Overview This is an abstract base class. Instantiate one of the provided subclasses that define specific types of regions. After you create a region, register it with a CLLocationManager object with the startMonitoring(for:) method. The location manager generates appropriate events whenever the user crosses the boundaries of the region.

## Topics

### Getting the region identifier

- [identifier](corelocation/clregion/identifier.md)

### Specifying the notification conditions

- [notifyOnEntry](corelocation/clregion/notifyonentry.md)
- [notifyOnExit](corelocation/clregion/notifyonexit.md)

### Deprecated

- [init(circularRegionWithCenter:radius:identifier:)](corelocation/clregion/init(circularregionwithcenter:radius:identifier:).md)
- [contains(_:)](corelocation/clregion/contains(_:).md)
- [center](corelocation/clregion/center.md)
- [radius](corelocation/clregion/radius.md)

### Initializers

- [init(coder:)](corelocation/clregion/init(coder:).md)

## Relationships

### Inherits From

- [NSObject](objectivec/nsobject-swift.class.md)

### Inherited By

- [CLBeaconRegion](corelocation/clbeaconregion.md)
- [CLCircularRegion](corelocation/clcircularregion.md)

### Conforms To

- [CVarArg](swift/cvararg.md)
- [CustomDebugStringConvertible](swift/customdebugstringconvertible.md)
- [CustomStringConvertible](swift/customstringconvertible.md)
- [Equatable](swift/equatable.md)
- [Hashable](swift/hashable.md)
- [NSCoding](foundation/nscoding.md)
- [NSCopying](foundation/nscopying.md)
- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
- [NSSecureCoding](foundation/nssecurecoding.md)

## See Also

### Region monitoring

- [Monitoring the user’s proximity to geographic regions](corelocation/monitoring-the-user-s-proximity-to-geographic-regions.md)
