# GovernanceRegistry

## Overview

The `GovernanceRegistry` keeps a record of miscellaneous data used by Spectra's governance contracts.

## GovernanceRegistry Methods

### votingRewardsFactory

Returns the address of `VotingRewardsFactory`.

```solidity
function votingRewardsFactory() external view returns (address)
```

### poolsData

Returns the pool data.

```solidity
function poolsData(uint160 _poolId) external view returns (address, uint256, bool)
```

<table><thead><tr><th width="246.33333333333331">Return Parameter</th><th width="188">Type</th><th>Description</th></tr></thead><tbody><tr><td><code>_pool</code></td><td>address</td><td>The pool address.</td></tr><tr><td><code>_chainId</code></td><td>uint256</td><td>The chainId of the network on which the pool is deployed.</td></tr><tr><td><code>_isRegistered</code></td><td>bool</td><td>True if the pool is registered, false otherwise.</td></tr></tbody></table>

### getPoolId

Returns the pool ID for the given pool.

{% hint style="info" %}
`poolId = uint160(poolAddress)` $$\oplus$$ `uint160(chainId)`
{% endhint %}

```solidity
function getPoolId(address _pool, uint256 _chainId) external view returns (uint160)
```

### isPoolRegistered

Returns wether the given pool is registered for deployment of voting rewards.

```solidity
function isPoolRegistered(uint160 _poolId) external view returns (bool)
```

```solidity
function isPoolRegistered(address _pool, uint256 _chainId) external view returns (bool)
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://dev.spectra.finance/technical-reference/contract-functions/governanceregistry.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
