NOTES 1.6 KB

12345678910111213141516171819202122232425262728
  1. ## Wichtigere Sachen
  2. *Für die generischen Klassen müssen wir uns etwas überlegen*. Die Implementationen müssen mit in die Header, aber wir können die Lib so "von außen" nicht benutzen, weil wir beim Kompilieren der Templates die NICE_USELIB.. aus unserem Buildsystem brauchen und damit auch noch beim Benutzer Abhängigkeiten erzeugen, die vermeidbar wären.
  3. ```
  4. $ grep --include={*.h,*.tcc} -rnw ./ -e ".*def.*USELIB.*" | wc -l
  5. 185
  6. ```
  7. In den meisten Fällen können wir wohl die Template-Funktion explizit instantiieren und in den Header nur noch "extern template..." angeben.
  8. ## Buildsystem
  9. -- WITH_QT OFF verhindert nicht das Kompilieren von libimagedisplay, die hängt aber von Qt ab.
  10. ?? NICE_USELIB_QT verwenden, um in ImageDisplay.h die QT-Header auszuschließen
  11. -- Das Verzeichnis von GLUT ist für Windows hardcoded, sollte eigentlich Umgebungsvariable nutzen.
  12. ?? Rausnehmen
  13. -- WITH... sind Voreinstellungen in CMakeLists
  14. ?? In Abhängigkeit der gefundenen Libs setzen
  15. -- Die Abhängigkeiten werden in nice-core/CMakeLists.txt gesucht, aber in nice-core/core/CMakeLists.txt werden unabhängig davon die Ergebnisse der find_package()-Aufrufe benutzt.
  16. ?? Wenn nice-core ohnehin nur aus "core" besteht, reicht vielleicht auch nur eine CMakeLists.txt. Dann können wir target_link_libraries aufrufen, nachdem wir eine Abhängigkeit gefunden haben. Alternativ: Wenn jedes Projekt seine eigenen Abhängigkeiten hat, dann kann auch jedes Projekt selbst danach suchen.
  17. ## Aufräumen
  18. -- "Filter.h is obsolete" - hängt noch sehr viel davon ab?
  19. ## Bugs
  20. -- Konstruktor von ImageT ruft string::substr mit falschen Parametern auf, wenn der Punkt im Dateinamen fehlt.