Added absolute group key property to TargetRegisterGroup class

This commit is contained in:
Nav
2024-10-04 21:29:59 +01:00
parent cdcad9dde1
commit 876d402baa
2 changed files with 11 additions and 1 deletions

View File

@@ -335,6 +335,7 @@ class TargetDescriptionFile
$registerGroupInstance->addressSpaceKey,
$registerGroup,
$registerGroupInstance->offset ?? 0,
null,
$peripheral->moduleKey,
$registerGroupInstance->key,
$registerGroupInstance->name
@@ -349,13 +350,17 @@ class TargetDescriptionFile
string $addressSpaceKey,
RegisterGroup $registerGroup,
int $addressOffset,
?string $parentGroupAbsoluteKey,
string $moduleKey,
?string $keyOverride = null,
?string $nameOverride = null
): TargetRegisterGroup {
$addressOffset += $registerGroup->offset ?? 0;
$groupKey = $keyOverride ?? $registerGroup->key;
$output = new TargetRegisterGroup(
$keyOverride ?? $registerGroup->key,
$groupKey,
!empty($parentGroupAbsoluteKey) ? $parentGroupAbsoluteKey . '.' . $groupKey : $groupKey,
$nameOverride ?? $registerGroup->name,
$addressSpaceKey,
$addressOffset,
@@ -368,6 +373,7 @@ class TargetDescriptionFile
$addressSpaceKey,
$subgroup,
$addressOffset,
$output->absoluteKey,
$moduleKey
);
}
@@ -380,6 +386,7 @@ class TargetDescriptionFile
$addressSpaceKey,
$subgroup,
$addressOffset + $subgroupReference->offset,
$output->absoluteKey,
$moduleKey,
$subgroupReference->key,
$subgroupReference->name

View File

@@ -19,6 +19,7 @@ require_once __DIR__ . "/TargetRegister.php";
class TargetRegisterGroup
{
public ?string $key = null;
public ?string $absoluteKey = null;
public ?string $name = null;
public ?string $addressSpaceKey = null;
public ?int $baseAddress = null;
@@ -31,6 +32,7 @@ class TargetRegisterGroup
public function __construct(
?string $key,
?string $absoluteKey,
?string $name,
?string $addressSpaceKey,
?int $baseAddress,
@@ -38,6 +40,7 @@ class TargetRegisterGroup
array $registers
) {
$this->key = $key;
$this->absoluteKey = $absoluteKey;
$this->name = $name;
$this->addressSpaceKey = $addressSpaceKey;
$this->baseAddress = $baseAddress;