Weil es grad in einem Ticket aufkam, stoße ich die Diskussion hier nochmal an: REFLEX beinhaltet sehr viel altem oder ungetestetem Code, alte Treiber und Klassen von denen niemand mehr genau weiss, was sie machen sollen. Und dann kommen da immer neue Sachen hinzu (ich hab z.B. grad eine einfache 'Delay' Komponente zugefügt -> Ticket #190 im trac [1]). Wir wollen REFLEX eigentlich sauber, klein und übersichtlich halten. Aber dabei muss natürlich trotzdem jede Menge Funktionalität geboten werden. Ein erster Ansatz wurde ja schonmal diskutiert, bei dem man bestimmte Teile von REFLEX verschieden klassifiziert und dann auch getrennt verwaltet. Die Idee eines "REFLEX core" war dabei das zentrale Element. Ein möglichst kleiner funktionaler Kern. Mit der Ordnerstruktur haben wir ja sowas in der Art schon, aber das sollte nochmal richtig spezifiziert werden und dann vielleicht sogar in getrennte Repositories wandern.
core - Eventkanäle (Source/Sink), Scheduling, ??? lib - Controller-unabhängige Komponenten, VirtualTimer? controller - für jede(n) Controller(familie) getrennt driver - Gerätetreiber mit spezifizierten Schnittstellen (I2C, SPI) contrib - der ganze andere Kram ;-) Fragen: * wo würden in so einem System die examples hinwandern? Dort geht es ja darum, ein example für viele Plattformen gemeinsam bereit zu stellen. * Wo kommt die Dokumentation hin? Was wird alles dokumentiert? * Wie entscheiden wir, was wie nah an den Reflex Kern ran darf * Was wurde da noch alles vergessen? Das nur ganz kurz um das anzustoßen. Fertig ausgearbeitet gab es da ja noch von niemandem etwas, soweit ich weiss. Diese Änderungen werden definitiv nicht ins nächste Release aufgenommen. Das wird leider länger dauern. Grüße Stefan [1] https://idun.informatik.tu-cottbus.de/reflex/cgi/reflex-trac.fcgi/ticket/190
signature.asc
Description: OpenPGP digital signature
