introduced attached modules

for the module names, use Attach instead of Property,
which get attached modules automatically before calling initModule

Change-Id: Iff1b37828d4345c03a18ed29b9970bea149a812d
Reviewed-on: https://forge.frm2.tum.de/review/c/sine2020/secop/playground/+/21885
Tested-by: JenkinsCodeReview <bjoern_pedersen@frm2.tum.de>
Reviewed-by: Markus Zolliker <markus.zolliker@psi.ch>
This commit is contained in:
2019-11-22 17:00:46 +01:00
parent b2f730e53e
commit e953b53963
4 changed files with 21 additions and 6 deletions

View File

@ -42,7 +42,7 @@ import threading
import json
from secop.modules import Module, Readable, Drivable, Parameter, Override,\
Communicator, Property
Communicator, Property, Attached
from secop.datatypes import EnumType, FloatRange, IntRange, StringType,\
BoolType, StatusType
from secop.lib.enum import Enum
@ -124,9 +124,7 @@ class Main(Communicator):
class PpmsMixin(Module):
properties = {
'iodev':
Property('attached communicator module',
datatype=StringType(), export=False, default=''),
'iodev': Attached('_main'),
}
parameters = {
'settings':
@ -142,7 +140,6 @@ class PpmsMixin(Module):
slow_pollfactor = 1
def initModule(self):
self._main = self.DISPATCHER.get_module(self.iodev)
self._main.register(self)
def startModule(self, started_callback):