Benutzer-Werkzeuge

Webseiten-Werkzeuge


pr:mlib

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu der Vergleichsansicht

Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung
Nächste Überarbeitung
Vorherige Überarbeitung
Nächste Überarbeitung Beide Seiten, nächste Überarbeitung
pr:mlib [2010/12/26 18:14]
martok
pr:mlib [2011/05/12 23:45]
martok
Zeile 1: Zeile 1:
-====== Medienbibliothek/allgemeine Planung ​======+====== Medienbibliothek ======
 (Original-Thread [[http://​branch.delphi-forum.de/​topic_MedienIndizierungsSoftware_101096.html|im DF]]) (Original-Thread [[http://​branch.delphi-forum.de/​topic_MedienIndizierungsSoftware_101096.html|im DF]])
 +
 +Bilder: [[pr:​mlib:​Bilder|Bilderseite]]
 +
 +[[pr:​mlib:​Todo|To-Do Liste]]
  
 ===== Features ===== ===== Features =====
Zeile 62: Zeile 66:
   * FlatDB Key-Value-Store,​ Dateien indiziert über (Name, Pfad, ÄnderungsDatum,​ ErstellDatum,​ Größe, InhaltsHash)   * FlatDB Key-Value-Store,​ Dateien indiziert über (Name, Pfad, ÄnderungsDatum,​ ErstellDatum,​ Größe, InhaltsHash)
     * wäre auch wiedererkennbar,​ wenn extern verändert (closest match)     * wäre auch wiedererkennbar,​ wenn extern verändert (closest match)
-    * <​code>​{"​file":​{"​name":​ "​abc.jpg","​path":"​foo\bar\baz","​mdate":"​1234567890","​cdate":"​1234567000","​size":"​555123","​sha1":"​abcdef12abcdef12abcdef12abcdef12"​}}</​code>​+    * <​code>​{"​file":​{"​name":​ "​abc.jpg","​path":"​foo\\bar\\baz","​mdate":"​1234567890","​cdate":"​1234567000","​size":"​555123","​sha1":"​abcdef12abcdef12abcdef12abcdef12"​}}</​code>​
  
 ==== Organisationsstruktur ==== ==== Organisationsstruktur ====
-  * Bibliothek (enthält auch Voreinstellungen)  ​//library.json// +  ​* Archivgruppe 
-    Programmeinstellungen ​(unabhängig von Daten//config.json// +    ​* Bibliothek (enthält auch Voreinstellungen)  ​[[.:mlib:library.json]] 
-    * Datenbank (FlatDB-Ordner,​ Name aus library.json)+      Datenbank ​(FlatDB-Ordner) 
 +        * Dokumente: [[.:​mlib:​Metadaten]] 
 +    * Bibliothek ...
  
 ==== Klassen ==== ==== Klassen ====
 +  * Application
 +    * Interface zur Hauptanwendung (Logger etc)
   * MetadataExtractor   * MetadataExtractor
     * Bekommt Datei, Füllt SuperObject     * Bekommt Datei, Füllt SuperObject
Zeile 81: Zeile 89:
 Global immer nur ein Objekt, dessen Methoden aufgerufen werden (also SideEffect-frei sein müssen). Global immer nur ein Objekt, dessen Methoden aufgerufen werden (also SideEffect-frei sein müssen).
 Alle Klassen sind auch extern ladbar, aber schon an Delphi gebunden. Keine besondere CallingConvention also. Alle Klassen sind auch extern ladbar, aber schon an Delphi gebunden. Keine besondere CallingConvention also.
-In Main: Initializatzion->​ RegisterClass(TImplementor.Create) ​-> wird auf Interfaces geprüft und in passende Listen einsortiert.+ 
 +In Main: Initializatzion->​ RegisterClass(TImplementor.Create) 
 Extern: DLL-Load->​ DLL.Register(@RegisterFunction),​ DLL ruft RegisterFunction mit Instanzen von dem was sie hat auf. (BPL, nur besser) Extern: DLL-Load->​ DLL.Register(@RegisterFunction),​ DLL ruft RegisterFunction mit Instanzen von dem was sie hat auf. (BPL, nur besser)
  
 +RegisterClass prüft, ob IMLibModule implementiert wird; Ruft IMLibModule.Init auf und übergibt IMLibApplication.
pr/mlib.txt · Zuletzt geändert: 2011/10/29 20:16 von martok