|
y_fotsing |
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 09:12
Titel: Callback identifitieren
|
|
Hallo Zusammen,
In meinem M-file gibt es viele Callback, die ich gar nicht verwende wird, und die möchte ich gern identifitieren und loeschen.
Mein M-file enthält über 100 Callback, und wenn ich das mit dem Objekt Browser vergleichen will, würde es mir Tage kosten.
Weiß Jemand wie ich schnell die unnötigen Callbacks herausfinde.
Danke...
|
|
|
|
|
Dagnabit |
Forum-Century
|
|
Beiträge: 244
|
|
|
|
Anmeldedatum: 23.04.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 09:18
Titel:
|
|
Servus y-fotsing
Eine Möglichkeit wäre "Save and Check Code with M-Lint" zu verwenden.
Dieses Tool findest Du im Matlab- editor unter "Tools".
_________________
lg
Martin
|
|
|
y_fotsing |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 09:57
Titel:
|
|
Ich war gerade auf Tools dann M-Lint und dann Show M-lint Report.
Ich bekomme 'no message' als Antwort.
Das ist aber komisch denn, ich habe viel unverwendeten Callback in meinem M-file, oder habe ich falsch gemacht.
|
|
|
Dagnabit |
Forum-Century
|
|
Beiträge: 244
|
|
|
|
Anmeldedatum: 23.04.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 10:10
Titel:
|
|
Hm
Das kann ich mir auch nicht erklären.
Möglicherweise fährst Du eine andere Matlabversion als ich; bei mir gibts unter Tools 'Check Code with M-Lint'. Es öffnet sich eine seperates Fenster in dem einige Vorschläge bzgl. unverwenderter Variablen und Funktion stehen.
Bei Deinem Editor gehts über 'Tools' -> 'M-Lint' -> 'Show M-Lint Report'?
Gibts da keine Option 'Create M-Lint Report', 'Run M-Lint' oder ähnliches?
_________________
lg
Martin
|
|
|
y_fotsing |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 10:33
Titel:
|
|
Ich benutze eine Studentenversion von Matlab 7.5.0(R2007b).
Unter Tools habe ich:
-M Lint: + Matlab compiler messages default
+show M-Lint Report
-Show Dependency Report
-Open profiler
-compare against: + ...
Ich habe mal über 'Show Dependency Report' probiert, und es zeigt mir alles function. Die verwendeten, und die unverwendeten.
|
|
|
Dagnabit |
Forum-Century
|
|
Beiträge: 244
|
|
|
|
Anmeldedatum: 23.04.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 10:50
Titel:
|
|
Wie siehts mit folgendem aus?
Zitat: |
From the Current Directory browser, click the Actions button , and then select Reports > M-Lint Code Check Report. |
(Aus der MatlabDoku)
_________________
lg
Martin
|
|
|
y_fotsing |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 11:08
Titel:
|
|
Bei mir habe ich unter current directory diese Möglichkeit nicht.
|
|
|
Dagnabit |
Forum-Century
|
|
Beiträge: 244
|
|
|
|
Anmeldedatum: 23.04.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 11:25
Titel:
|
|
Sorry, ich weiß jetzt auch nicht weiter.
Möglicherweise gibts m-lint nicht bei Deiner Version.
Tippe mal 'help mlint' ins CommandWindow. Wenn m-lint verfügbar ist, dann sollte da der Hilfetext erscheinen.
_________________
lg
Martin
|
|
|
y_fotsing |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 11:31
Titel:
|
|
Ich habe es sehen und ausgeführt.
Ich erhalte aber 'no message' als Antwort, was natürlich nicht richtig ist.
|
|
|
y_fotsing |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 45
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 17.07.2009, 13:03
Titel:
|
|
Vielleicht soll ich noch mal das Problem erklären. Denn irgendwie sollte es eine Lösung geben.
Wenn ich in meinem GUI Push Button oder oder Slider ... einfüge, dann wird es beim speichern in dem M-file ein Callback dafür erzeugt.
Wenn ich aber später in meinem GUI dieses Button loeschen; dann wird dies nicht in dem M-file gelöscht.
Und in meinem M-file gibt es viele solche Callback, die unnötigt sind.
Die Frage ist, wie kann ich es identifitieren? Ich kann das natürlich zu Fuß machen, aber mein M-file enthält über 100 function.
Irgendwie musste es automatisch gehen oder über einen Vergleich mit dem Object auf dem GUI?
Näturlich, die Frage ist wie?
|
|
|
Lloyd Blankfein |
Forum-Century
|
|
Beiträge: 149
|
|
|
|
Anmeldedatum: 23.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 24.01.2012, 18:03
Titel:
|
|
Hallo,
ich habe ein ähnliches Problem. Ich habe diverse GUIs / m-files mit hunderten Callbacks. Viele dieser Callbacks werden nicht mehr genutzt und sollen zwecks besserer Übersicht gelöscht werden.
mlint hilft hier leider nicht weiter, da z. B. auch ein Callback welcher via Pusfbutton getriggert wird als "überflüssig" eingestuft wird.
Ich bräuchte also eine Funktion welche mir aus der mit mlint erzeugten Liste, die Funktionen streicht, welche über die GUI betriggert werden.
Hat jemand eine Idee, stellt Matlab einen Algorithmus bereit?
Vielen Dank, für eure Hilfe!
Gruß,
Lloyd
|
|
|
Lloyd Blankfein |
Forum-Century
|
|
Beiträge: 149
|
|
|
|
Anmeldedatum: 23.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 31.01.2012, 11:03
Titel:
|
|
|
|
denny |
Supporter
|
|
Beiträge: 3.853
|
|
|
|
Anmeldedatum: 14.02.08
|
|
|
|
Wohnort: Ulm
|
|
|
|
Version: R2012b
|
|
|
|
|
|
Verfasst am: 31.01.2012, 16:12
Titel:
|
|
Hallo
also ich kenne weder eine Funktion noch triviale Lösung.
Die Idee wäre über OPENFIG/FINDOBJ Callbacks auszulesen und mit MLINT dann abzugleichen
|
|
|
Lloyd Blankfein |
Forum-Century
|
|
Beiträge: 149
|
|
|
|
Anmeldedatum: 23.02.11
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 31.01.2012, 17:13
Titel:
|
|
Hallo denny,
Hmm, auf die Schnelle ist das wohl nicht realisierbar. Trotzdem vielen Dank!
Gruß,
Lloyd
|
|
|
denny |
Supporter
|
|
Beiträge: 3.853
|
|
|
|
Anmeldedatum: 14.02.08
|
|
|
|
Wohnort: Ulm
|
|
|
|
Version: R2012b
|
|
|
|
|
|
Verfasst am: 01.02.2012, 14:16
Titel:
|
|
Hallo Lloyd!
Auf der Schnelle habe ich kleines Script geschrieben(siehe Anhang).
Die Funktion SHOW_UNUSED_FCN zeigt aber nur Funktionen an, welche in GUI nicht gefunden waren.
Wenn du Zeile 93 auskommentierst, dann bekommst du eine MLINT Liste mit Funktione, die in GUI nicht vorkamen
Beschreibung: |
|
Download |
Dateiname: |
show_unused_fcn.m |
Dateigröße: |
4.8 KB |
Heruntergeladen: |
358 mal |
Zuletzt bearbeitet von denny am 06.02.2012, 12:07, insgesamt einmal bearbeitet
|
|
|
|
Gehe zu Seite 1, 2 Weiter
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|