Skip to main content

RegenerationIndexRules

RegenerationIndexRules​

This contract handles the RegenerationIndexRules, used by the inspections to estimate the Regenerator impact and calculate the RegnerationScore. The system will have only two categories: Trees & Biodiversity.

Manage index categories and score.

CATEGORY_COUNTS​

uint8 CATEGORY_COUNTS

Allowed categories: Trees & Biodiversity.

categories​

mapping(uint8 => struct Category) categories

Relationship between id and category data

categoryRegenerationIndexDescriptions​

mapping(uint8 => struct RegenerationIndexDescription[]) categoryRegenerationIndexDescriptions

Relationship between category id and category descriptions

regenerationIndex​

mapping(uint32 => struct RegenerationIndex) regenerationIndex

Relationship between regeneration index id and its name/value

constructor​

constructor() public

getCategoryRegenerationIndexDescription​

function getCategoryRegenerationIndexDescription(uint8 categoryId) external view returns (struct RegenerationIndexDescription[])

Returns all added regeneration index descriptions for a specific category.

Validates the provided category ID to ensure it exists.

Parameters​

NameTypeDescription
categoryIduint8The ID of the category to retrieve descriptions for.

Return Values​

NameTypeDescription
[0]struct RegenerationIndexDescription[]RegenerationIndexDescription struct array for the specified category.

calculateScore​

function calculateScore(uint32 treesResult, uint32 biodiversityResult) external view returns (uint32)

Calculates the overall inspection score based on trees and biodiversity results.

This function sums the regeneration index values for trees and biodiversity indicators.

Parameters​

NameTypeDescription
treesResultuint32Inspection result provided by inspector for trees.
biodiversityResultuint32Inspection result provided by inspector for biodiversity.

Return Values​

NameTypeDescription
[0]uint32uint256 The combined inspection score.