-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
7. Apr 2018
Hallo Thomas, habe via Persönlicher Nachricht geantwortet!
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
17. Okt 2016
Lieber Thomas,
ja, ich bin noch an der Sache dran. Nur dauert meine Arbeit noch an, da wir es mit einer sehr komplexen Struktur zu tun haben und alle möglichen genealogischen Zusammensetzungen (Cousin/en-Ehe, Inzucht etc.) berücksichtigt werden müssen. Das ist alles, was ich bisher dazu sagen kann. Ich halte an dieser Stelle aber auf dem Laufenden. Bei genaueren Fragen, Anregungen und Wünschen,...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
13. Dez 2014
...ach verdammt, ich kriege es nicht zum laufen.
Was wäre denn noch ein Konzept so eine Datei, ressourcenschonend, einzulesen?
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
12. Dez 2014
Da hat Sir Rufo recht!
Genauso ist es. Es werden nur die Verweiszeiger, also die ReferenceIDs gespeichert. Alle Hauptobjekte werden in Collections verwaltet (INDI, FAM, SOUR, OBJ, NOTE).
Sir Rufo, da hast Du wiederum recht, allerdings schreibt der Standard explizit folgende Notation für Hauptobjekte außer HEAD und TRLR vor:
0 @I123@ INDI
0 @F123@ FAM
0 @N123@ NOTE
0 @S123@ SOUR
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
11. Dez 2014
Kannst Du bitte deinen gesamten Source posten, dann kann ich ersten besser nachvollziehen und zweitens versuchen in Xoxo zu übersetzen, an sich nicht schwer.
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
11. Dez 2014
Kannst Du den Quellcode bitte bisschen kommentieren? Was ist bei Dir TDataRecord?
Was macht LValue.DataIsReference?
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
11. Dez 2014
OK, soweit habe ich das verstanden.
Ich lese die Datei via TextInputStream ein (in Delphi TStringList) - und zwar Zeilenweise. Ich überprüfe, ob die Zeile mit 0 beginnt und extrahiere dann den Typ. Soweit klappt das.
Wenn Das Objekt vom z.B. Typ "INDI" ist, Erstelle ich dementsprechend eine neues IndividualRecord und rufe dessen Parser-Methode auf. Auch das klappt. ABER, und jetzt wieder zum...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
11. Dez 2014
Genau das ist der Grund, warum ich mich so schwer tue, alles in einer Binärbaum-Struktur unterzubringen.
Die Personen/Familien werden alle in einer eigenen Liste gespeichert. Auf sie zugreifen kann man über deren UUID. Dann ist es auch möglich Spezialfälle wie Inzucht oder Cousin- & Cousinenehen darzustellen.
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
11. Dez 2014
Die Klassenstruktur habe ich. Ich habe sie nach der Gedcom 5.51 Definition erstellt.
Das war an sich auch nicht das Problem, da ich ja nun die Datenstruktur/Modell habe. Es geht einzig und allein darum, wie ich eine bestehende Gedcom-Datei schnell einlesen kann. Und ich befürchte, dass das bei den ganzen Stringoperationen und bei Gedcom-Dateien mit 10000 Personen und/oder Familien und mehr...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
11. Dez 2014
Dankeschön. Genauso ist es, eine Person kann 0..* Kinder haben.
Die Wurzel ist immer das erste INDI-Record eine Gedcom-Datei (z.B. "0 @I1@ INDI").
So richtig hilft mir der Gedankenansatz nicht weiter ;)
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
11. Dez 2014
Es geht um den konzeptionellen Gedanken für einen Algorithmus, also die Performance, da ja doch etliche Stringelemente pro Objekt ausgelesen werden müssen.
Ja, es ist eine private "Spielerei". Ich möchte meine Daten in eine spezielle Form bringen, die mir kein auf dem Markt befindliches Produkt so bietet und der Aufwand wird sich lohnen. Ich habe viel Zeit damit verbracht nach dem zu suchen,...
-
Forum: Algorithmen, Datenstrukturen und Klassendesign
by hansklok,
11. Dez 2014
Hallo,
ich schreibe heute, da ich mir von der Community meiner alten Lieblingsprogrammiersprache Hilfe erhoffe, die mir die Kollegen des aktuellen Frameworks "Xojo" nicht geben können. An sich geht es um einen Algorithmus, deswegen ist die Plattform egal.
Was soll gepasst werden?
Eine Gedcom-Datei. Gedcom ist eine Textdatei, ein Format mit der Endung ".ged", in der Ahnenforscher Ihre...