ENGLISH VERSION |
|
Links | | | Forum | | | Kommentare | | | News melden |
Chat | | | Umfragen | | | Newsticker | | | Archiv |
amiga-news.de Forum > Suche | [ - Suche - Neue Beiträge - Registrieren - Login - ] |
|
||||||
AGSzabo
Nutzer
18.01.2012, 13:34 Uhr [ - Direktlink - ] |
Thema: TextLenght() ohne window/screen?
Brett: Programmierung Hallo, wie kann man die Höhe und Breite eines Textes berechnen lassen, wenn man noch kein Fenster und auch keinen Screen für den RastPort hat? Das frage ich mich gerade, weil man mein GUI auch dann layouten können soll, wenn weder ein Fenster noch der/ein Screen dafür offen ist. Mein erster Gedanke war, einen temporären Rastport zu erzeugen ohne Layer und ohne Bitmap. Geht das oder wie würdet ihr es machen? ags -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ Dieser Beitrag wurde von AGSzabo am 18.01.2012 um 13:36 Uhr geändert. ] |
|||||
AGSzabo
Nutzer
15.01.2012, 17:54 Uhr [ - Direktlink - ] |
Thema: Ist das Volume eine RamDisk?
Brett: Programmierung Hallo, für meinen Dateiauswahlrequester vergebe ich Icons je nach Typ des Eintrages. Um die Liste der Volumen zu bekommen, verwende ich die DosList(s). Jetzt möchte ich rausfinden, ob da ein Eintrag eine Ramdisk ist, um dann ein Icon von einem Chip dazu zu vergeben. Wie kann ich das machen? ags -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
15.01.2012, 14:33 Uhr [ - Direktlink - ] |
Thema: Dateiname rüber ziehen, wie?
Brett: Programmierung @Der_Wanderer: Im alten Directoryopus hat es auch funktioniert. > wie man die Felder eigentlich miteinander verknüpft. Was meinst Du damit? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
15.01.2012, 11:06 Uhr [ - Direktlink - ] |
Thema: Dateiname rüber ziehen, wie?
Brett: Programmierung Hallo, ich habe ein Dateifenster programmiert mit zwei Listen links und rechts und möchte eine Datei clicken, Maus gedrückt lassen, und den Namen sichtbar rüber in die andere Liste ziehen. Wie kann man das machen? Bobs? Gels? Icons? Evtl auch in ganz andere Fenster ziehen? ags -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
15.01.2012, 09:59 Uhr [ - Direktlink - ] |
Thema: moeglichkeiten ein image zu laden
Brett: Programmierung @akl: Aber nur ab OS4, oder? Und womit bekäme ich dann das Bild richtig ins Blickfeld kopiert? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
13.01.2012, 21:35 Uhr [ - Direktlink - ] |
Thema: moeglichkeiten ein image zu laden
Brett: Programmierung @Polluks: Wenn ich es richtig verstanden habe, geht diese perfekte Lösung über Datatypes. Aber so weit ich weiß, unterstützt Datatypes keinen Alphakanal. Wie geht das also? Ich würde gerne allgemein PNG Images mit Transparenzen für Toolbuttons und andere Gadgets in meinem GUI nutzen. Gibt es da einen Weg? Mit BlitBitmapRastport() geht's wohl nicht. hmm ... WritePixelArray()? Derzeit verwende ich Icons. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ Dieser Beitrag wurde von AGSzabo am 13.01.2012 um 21:37 Uhr geändert. ] |
|||||
AGSzabo
Nutzer
09.01.2012, 20:23 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Holger: > Welches Satzzeichen, welcher Buchstabe? Der Punkt wollte manchmal nicht da liegen, wo er hingehört. Aber ich habs eben nochmal getestet: es kommt mit dem bitclear zB "test" zwischen "test (4. Kopie)" und "test (5. Kopie)" zum liegen. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
09.01.2012, 18:11 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Holger: > Wieso? Glaubst Du, den User interessiert es, ob Satz- und Sonderzeichen korrekt nach ASCII-Code sortiert sind? Bei mir hat sich das Satzzeichen unter die Buchstaben gemischt. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
09.01.2012, 18:09 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Holger: Ok, ich habe es hin bekommen. Problem, es ist total slow. Was siehst du? code:.binary ; new node in a4, used in .cmpnodes ; get most left node to a2 and ; most right node to d2 move.l (a7),a0 move.l oxO_list(a0),a2 move.l oxO_list+8(a0),d2 ; neue node links oder rechts aussen? move.l a2,a5 bsr .cmpnodes bge .linksaussen move.l d2,a5 bsr .cmpnodes bgt .schleife ; rechtsaussen move.l d2,a2 bra .add .schleife ; folgt rechts auf links? cmp.l (a2),d2 beq .add ; wenn nur eine node zwischen liegt, ; gehe nur eins vorwärts move.l a2,a5 lsr.w #1,d5 move.w d5,d0 beq .vorwaerts subq.w #1,d0 .vorwaerts move.l (a5),a5 dbf d0,.vorwaerts ; ist die neue node links oder rechts vom pivot? bsr .cmpnodes bgt .ist_links ; ist rechts, ersetze linken rand durch pivot move.l a5,a2 bra .schleife .ist_links ; ersetze rechten rand durch pivot move.l a5,d2 bra .schleife .linksaussen sub.l a2,a2 .add ; einfügen nach node in a2 -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ Dieser Beitrag wurde von AGSzabo am 09.01.2012 um 18:12 Uhr geändert. ] [ Dieser Beitrag wurde von AGSzabo am 09.01.2012 um 18:33 Uhr geändert. ] [ Dieser Beitrag wurde von AGSzabo am 09.01.2012 um 18:42 Uhr geändert. ] [ Dieser Beitrag wurde von AGSzabo am 09.01.2012 um 19:00 Uhr geändert. ] |
|||||
AGSzabo
Nutzer
09.01.2012, 11:46 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Holger: Zitat: Hab ich jetzt mal versucht, so um zu setzen. Da ist ein Problem gleich zu Anfang aufgetreten: Angenommen es sind zwei Nodes, da gibt es keine Mitte und ich weiß nicht, ob der neue Knoten vor den ersten, oder zwischen beide, oder nach dem zweiten eingefügt werden muss. Diese Situation kann auch am Ende des Suchvorgangs eintreten. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
08.01.2012, 11:29 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung Bahh, ich habe leider festgestellt, dass mein schöner Algo vermutlich nur bei sehr großen Datenmengen ein paar Fehler mit rein bringt. Und zwar keine einzelnen Ausrutscher, sondern ganze Blöcke von Namen mit dem selben Anfangsbuchstaben landen an der falschen Stelle. Das Problem tritt aber nur sporadisch auf. Außerdem hatte der .strcmp code den Fehler, dass die Case-Unabhängigkeit auch bei Chars außerhalb der Buchstaben das Bit 5 gelöscht hat, was bei Satzzeichen zB zu Fehlern führt. Hab ich mal ganz raus genommen. Dafür konnte ich das leeren von d0 und d1 am Anfang der Funktion einsparen und das sub.l d0,d1 zu sub.b machen. Das geht offenbar genauso: code:.cmploop move.b (a1)+,d1 move.b (a0)+,d0 beq.s .cmp cmp.b d0,d1 beq.s .cmploop .cmp sub.b d1,d0 .rts rts -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ Dieser Beitrag wurde von AGSzabo am 08.01.2012 um 11:56 Uhr geändert. ] |
|||||
AGSzabo
Nutzer
07.01.2012, 14:49 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: > Hast Dus mal auf Geschwindigkeit geprüft? Ich konnte bisher keinen Unterschied feststellen. Der PC an dem ich zur Zeit bin ist sowieso viel zu langsam, besonders die Platte. Daheim kann ich dann besser testen. So Spielchen wie zuerst alle (!) Dateien einlesen (großer Buffer) und dann sehen wie lange das reinen Einfüllen dauert, hab ich schon ausprobiert und keinen Unterschied bemerkt. > Musst nur ausloten wo die Grenze liegt. Ja sowas ging mir auch schon durch den Kopf. Ich vermute so ab 2500 Files. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
07.01.2012, 10:37 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung Jetzt aber zu der eigentlichen AddSorted Routine. Ist das noch optimierbar? Vor allem dass an zwei Stellen .cmpnodes aufgerufen wird, gefällt mir nicht wirklich. Es wird aber nix doppelt ausgeführt, oder? Das .add_where kommt nur am Schluss dran. code:add_sorted ; a0 list ; a1 new node ; a4 new node text (used in .cmpnodes) ; d4 new node priority (used in .cmpnodes) ; d5 number of nodes in list pushm a0/a1 ; a2 is the node after which the new node is added, ; if it remains 0 the new node is added at list head sub.l a2,a2 .start ; get back pointer to list move.l (a7),a5 .half lsr.w #1,d5 beq .add_where bcc .find_pivot addq.w #1,d5 .find_pivot move.w d5,d0 subq.w #1,d0 .loop ; get first or next node move.l (a5),a5 dbf d0,.loop bsr .cmpnodes beq .add bgt .left ; right (ble) move.l a5,a2 bra .half .left move.l a2,a5 move.l a5,d0 ; scratch to test for 0 beq .start bra .half .add_where move.l (a5),a5 bsr .cmpnodes bgt .add ; before ; after (ble) move.l a5,a2 .add popm a0/a1 jmp _LVOoxAddMemberAfter(a6) Die Subroutine .cmpnodes hatten wir schon besprochen, das ist die mit den Strings. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
07.01.2012, 09:48 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung Haha, die Lösung ist mir im Halbschlaf eingefallen: code:.half lsr.w #1,d5 beq .add_where bcc .find_pivot addq.w #1,d5 .find_pivot Das ist eine mögliche Optimierung! -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
06.01.2012, 20:45 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung Mein Algo ist folgender: Hier ist der Algo im Prinzip erklärt: 1. Ich habe die Anzahl und den Anfang. Ist die Anzahl 0, füge ich die neue Node ein. 2. Ich halbiere die Anzahl. Und addiere Sie zum Anfang um den Pivot zu erhalten. An der resultierenden Stelle vergleiche ich die Nodes. 3. War die Anzahl nach der Halbierung 0, füge ich die neue Node je nach dem Vergleich vor oder hinter der Node an der resultierten Stelle ein. 4. War die Anzahl nicht 0 und die neue Node kleiner, gehe ich zu Schritt zwei. War die Anzahl nicht 0 und die neue Node größer, wird der Pivot mein neuer Anfang und ich gehe zu Schritt 2. Das ist sicher durch ein paar Umstellungen noch optimierbar, oder? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
06.01.2012, 20:26 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung Ich habs! Mein Algo funktionierte schon im Grunde! Es musste noch ne Art Rundung mit rein und das ich mir beim vor-zurück gehen die richtige Node raus hole. Man musste mal hier mal da eine Node vorher oder nacher nehmen. Optimieren kann man bestimmt diese Rundung: code:.half ext.l d5 divu.w #2,d5 tst.w d5 beq .add_where move.l d5,d0 swap d0 tst.w d0 beq .a addq.w #1,d5 .a Bitte nicht wundern dass ich das so umständlich mache. Ich hatte zuerst nur ein "lsr.w #1,d5" drin. damit ging es aber nicht. Als Optimierung dachte ich mir, dass man das rechts evtl. raus geschobene ungerade Bit abfragen und/oder benutzen kann. Vielleicht kann jemand das ausschreiben oder hat eine bessere Idee? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ Dieser Beitrag wurde von AGSzabo am 06.01.2012 um 20:36 Uhr geändert. ] |
|||||
AGSzabo
Nutzer
06.01.2012, 15:01 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: Der immer zu halbierende Wert sitzt in d5, d0 ist bloß eine lokale Kopie davon für die Schleife. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ Dieser Beitrag wurde von AGSzabo am 06.01.2012 um 15:01 Uhr geändert. ] |
|||||
AGSzabo
Nutzer
06.01.2012, 14:27 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: Das bleibt drin weil darunter noch der Fall abgehandelt werden soll,falls beide Strings gleich sind... an sonsten kann man es weglassen, ja. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
06.01.2012, 14:16 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: Test hat ergeben, dass der Code zwischen .add_where und .before GARNICHTS bewirkt. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
06.01.2012, 14:05 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: Etwa 10 aus 80 Nodes sind komplett anders positioniert. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
06.01.2012, 13:51 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung Jetzt habe ich folgenden Code, der FAST funktioniert. Ich erhalte eine im Grunde geordnete Liste, in der ein paar wenige falsch positionierte Nodes drin sind. Sieht jemand den Fehler? code:.binary_add ; a0 list ; a1 new node ; a2 noder after which to add ; d4 new node priority ; a4 new node text pushm a0/a1 sub.l a2,a2 ; initially add at head ; get number of rows, add at head if none move.w oxLV_rowscount(a3),d5 beq .before .start ; get back list pointer move.l (a7),a5 ; get first node move.l (a5),a5 .half lsr.w #1,d5 beq .add_where ; find pivot, num is at least 1 move.w d5,d0 subq.w #1,d0 .findpivot move.l (a5),a5 dbf d0,.findpivot cmp.l my_priority(a5),d4 blt .right bgt .left move.l my_text(a5),a0 move.l a4,a1 bsr .strcmp blt .right bgt .left ; strings are equal here bra .after .right move.l a5,a2 bra .half .left move.l a2,a5 cmp.l #0,a5 beq .start bra .half .add_where ; get node priority, higher means add before cmp.l my_priority(a5),d4 blt .after bgt .before move.l my_text(a5),a0 move.l a4,a1 bsr .strcmp blt .after bgt .before ; strings are equal here .after move.l a5,a2 .before popm a0/a1 jmp _LVOoxAddMemberAfter(a6) .strcmp ; a0 string1, a1, string2 moveq #0,d0 moveq #0,d1 .loop1 move.b (a1)+,d1 bclr #5,d1 ; case independent move.b (a0)+,d0 beq.s .exit1 bclr #5,d0 cmp.b d0,d1 beq.s .loop1 .exit1 sub.l d1,d0 rts -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ Dieser Beitrag wurde von AGSzabo am 06.01.2012 um 13:52 Uhr geändert. ] |
|||||
AGSzabo
Nutzer
05.01.2012, 22:46 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung Ich seh grad mein Ansatz funktioniert so noch nicht richtig. Ich denke mir das mal auf Papier durch und melde mich dann wieder. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
05.01.2012, 21:57 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: Bleibt nicht gleich. Wie meinst du das? VOR Jeder Suche nach dem neuen Pivot halbiert sich die Anzahl. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
05.01.2012, 20:27 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Holger: 1. Ich habe einen Anfangsknoten (im ersten Schritt die Erste Node der Liste) und eine Anzahl. Einen Endknoten brauche ich nicht. 2. Ich halbiere die Anzahl. Ist sie 0, gehe ich zu Schritt 4. Sonst gehe vom Anfangsknoten so viele Nodes vorwärts wie die Anzahl ist. Die neue Node vergleiche ich mit dem Ziel. 3. Ist die neue Node kleiner, bleibt der Anfangsknoten der selbe. Ist sie größer, wird der Pivot der neue Anfangsknoten. In beiden Fällen gehe ich zu Schritt 2. An sonsten gehe ich zu 4. 4. Ich füge die Node ein. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
05.01.2012, 20:14 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Holger: > 2. Du besorgst Dir den mittleren Knoten zwischen diesen beiden (Pivot) Hmm, dazu muss ich die Zahl der Nodes dazwischen wissen. Reicht es, wenn ich die beim Adden neuer Nodes 1 dazu zähle und die Zahl bei den Durchläufen jedesmal halbiere, zB mit lsr.l d0 ? Oder kommt es zu Ungenauigkeiten? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
05.01.2012, 20:08 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Holger: Danke. > Gleichheit kann bei Dir nicht auftreten Doch, die AddSorted Methode ist Teil der Listview, die von der Filerequesterklasse lediglich benutzt wird. Aus der Sicht der Listview kann es durchaus zwei oder mehr gleiche Knoten geben. In dem Fall hänge ich die neue Node einfach vor (oder nach?) dem Element ein, an dem die Gleichheit festgestellt wurde? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
05.01.2012, 17:06 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: Zitat: Ah ja, so ginge das. Ich müsste bei jedem Einfügen alle Nodes bis zum ersten Pivot durch steppen (Anzahl / 2), diesen vergleichen und dann von dort aus zB die eben Ermittelte Zahl wieder durch zweit teilen und vorwärts oder rückwärts so viele Nodes durch gehen. Dort wieder vergleichen und so weiter, bis 0 raus kommt, oder 1? Oder was sonst? Ich denke aber über eine noch weitere Beschleunigung nach: Ich merke mir den Anfang der Liste. Wenn ich neue Nodes anfüge, zähle ich deren Anzahl mit. Bei jeder geraden Anzahl steppe ich vom Anfang der Liste um 1 Node weiter und habe so immer einen Zeiger auf die Mitte der Liste, von der ich ausgehen kann! Für die weiteren Schritte würde ich weitere Zeiger benötigen, oder so wie oben weiter machen. Wenn ich weitere Zeiger will, müsste ich bei jedem zweiten weitergehen des aktuellen Mitte-Zeigers zwei neue Zeiger merken, nämlich auf eine Node vorher und eine Node nacher. Diese Zeiger müsste ich alle immer weiter anpassen. Hmmm, ich denke, das ist blöd. Bis auf den ersten Schritt, wo ich die Mitte ALLER Nodes merke. Der bringt mir evtl schonmal eine Beschleunigung um die Hälfte, ohne im ersten Schritt bis zur Hälfte zu steppen. Stimmts? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
05.01.2012, 16:22 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: Ne, ich meine ich muss im zweiten Schritt die Mitte von der hälfte nehmen. Die erste Mitte kann ich wie oben beshrieben durch weitergehen zum nächsten Element nach allen zwei neuen Nodes merken. Die Frage war, ob ich die Mitte der Hälfte auch in etwa so ermitteln kann oder ob ich da dann durch die Hälfte der Hälfte Nodes steigen muss? Und so weiter. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
AGSzabo
Nutzer
05.01.2012, 15:46 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung Ich hab grad wieder auf ExAll() umgestellt. Mit einem größeren Buffer bringt es tatsächlich auch auf einem langsamen Gerät ein paar Sekunden. Den Algo habe ich soweit begriffen. Man könnte auch von Anfang an einen Zeiger auf das erste Element merken, und dann immer nach zwei neuen Nodes um 1 Node weiter gehen. So hat man immer die Mitte ohne die hälfte der Nodes bis dahin durchzugehen. Klappt das aber nur mit der Mitte, oder gibt es eine Möglichkeit, dieses Verfahren auf alle Schritte auszuweiten? ps: mit ExAll() hab ich auch gratis das Patternmatching mit drin, das ist sehr nett. -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. [ Dieser Beitrag wurde von AGSzabo am 05.01.2012 um 15:47 Uhr geändert. ] |
|||||
AGSzabo
Nutzer
05.01.2012, 14:54 Uhr [ - Direktlink - ] |
Thema: Wieviele Files in Dir?
Brett: Programmierung @Thore: > ... Vergleiche es mit der 8: gefunden in 3 Schritten. Soweit klar. Woher weiß ich, wann wo die Mitte ist? -- Author of Open eXternal User Interfaces, eXternal Format Rippers and the Book "Torakosmos". Developing with E-UAE on an Ubuntu dualcore system. |
|||||
|
Impressum |
Datenschutzerklärung |
Netiquette |
Werbung |
Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten. |