make controlled_by configuration work properly

- secnode.py: initialize all modules before creating description
- fixes in ctrlby.py
This commit is contained in:
2025-10-30 12:22:00 +01:00
parent 2a4a37ed2f
commit b45635e4f8
2 changed files with 5 additions and 1 deletions

View File

@@ -58,6 +58,7 @@ class WrapControlledBy:
prev_enum = self.parameters['controlled_by'].datatype.export_datatype()['members'] prev_enum = self.parameters['controlled_by'].datatype.export_datatype()['members']
# add enum member, using autoincrement feature of Enum # add enum member, using autoincrement feature of Enum
self.parameters['controlled_by'].datatype = EnumType(Enum(prev_enum, **{name: None})) self.parameters['controlled_by'].datatype = EnumType(Enum(prev_enum, **{name: None}))
self.log.info('enumtype %r', self.parameters['controlled_by'].datatype)
def write_controlled_by(self, modulename): def write_controlled_by(self, modulename):
result = modulename result = modulename

View File

@@ -99,7 +99,7 @@ class SecNode:
modobj._initfailed = True modobj._initfailed = True
raise InitFailed('try to access erroneous module') from e raise InitFailed('try to access erroneous module') from e
modobj._isinitialized = True modobj._isinitialized = True
self.log.debug('initialized module %r', modulename) self.log.info('initialized module %r', modulename)
return modobj return modobj
def get_module_instance(self, modulename): def get_module_instance(self, modulename):
@@ -201,6 +201,9 @@ class SecNode:
self.log.info('Pinata %s found %d modules', self.log.info('Pinata %s found %d modules',
modname, len(pinata_modules)) modname, len(pinata_modules))
todos.extend(pinata_modules) todos.extend(pinata_modules)
# inititalize all modules
for modulename in self.modules:
self.get_module(modulename)
def export_accessibles(self, modobj): def export_accessibles(self, modobj):
self.log.debug('export_accessibles(%r)', modobj.name) self.log.debug('export_accessibles(%r)', modobj.name)