#include <lftvideoanalysedialog.h>
Klassendiagramm für LFTVideoAnalyseDialog:
Öffentliche Slots | |
void | DatenEinlesen () |
void | DatensatzVerkuerzen () |
void | AuswertungSpeichernV09 () |
void | SpeichereAuswertung (QString dieEndung) |
void | DreiertabelleScrollen (int x, int y) |
Öffentliche Methoden | |
LFTVideoAnalyseDialog (QWidget *parent=0, const char *name=0, bool modal=FALSE, WFlags f=0) |
|
Definiert in Zeile 8 der Datei lftvideoanalysedialog.cpp. Benutzt DatenEinlesen(), DatensatzVerkuerzen(), DreiertabelleScrollen(), RatingSkalaKurz, RatingSkalaLang, LFTVideoAnalyseDialogBase::TabRatingSkala, LFTVideoAnalyseDialogBase::TabSum, LFTVideoAnalyseDialogBase::TabUew2, LFTVideoAnalyseDialogBase::TabUew2Prozent, LFTVideoAnalyseDialogBase::TabVerlauf, LFTVideoAnalyseDialogBase::TabVerlaufAlt und LFTVideoAnalyseDialogBase::TextLabelTitel.
00009 : LFTVideoAnalyseDialogBase( parent, name, modal, f ) 00010 { 00011 00012 TextLabelTitel->setText("LFT Video Analyse Tool (v0.96)"); 00013 00014 Verlauf=new RatingVerlauf(); 00015 Auswertung=new VerlaufsAuswertung(); 00016 00017 // Spalten-Namen setzen 00018 TabSum->horizontalHeader()->setLabel(0,"Anzahl(#)"); 00019 TabSum->horizontalHeader()->setLabel(1,"Anzahl(%)"); 00020 TabSum->horizontalHeader()->setLabel(2,"TeilAnzahl(%)"); 00021 TabSum->horizontalHeader()->setLabel(3,"UnterAnzahl(%)"); 00022 00023 TabSum->horizontalHeader()->setLabel(4,"Dauer(sec)"); 00024 TabSum->horizontalHeader()->setLabel(5,"Dauer(%)"); 00025 TabSum->horizontalHeader()->setLabel(6,"TeilDauer(%)"); 00026 TabSum->horizontalHeader()->setLabel(7,"UnterDauer(%)"); 00027 00028 TabSum->setText(0,2," "); 00029 TabSum->item(0,2)->setSpan(3,1); 00030 TabSum->setText(3,2," "); 00031 TabSum->item(3,2)->setSpan(3,1); 00032 00033 TabSum->setText(0,6," "); 00034 TabSum->item(0,6)->setSpan(3,1); 00035 TabSum->setText(3,6," "); 00036 TabSum->item(3,6)->setSpan(3,1); 00037 00038 // resizen der Spalten passiert nun nach Füllen... 00039 /*for (int i=0; i<=3; i++){ 00040 QFontMetrics FM(this->font()); 00041 QString temp=TabSum->horizontalHeader()->label(i); 00042 int width=1.2*FM.boundingRect(temp).width(); 00043 TabSum->horizontalHeader()->resizeSection(i,width); 00044 } 00045 */ 00046 00047 connect((QObject*)(this->ButtonDatenEinlesen), SIGNAL(pressed()), 00048 this, SLOT(DatenEinlesen())); 00049 00050 connect((QObject*)(this->ButtonVerkuerze), SIGNAL(pressed()), 00051 this, SLOT(DatensatzVerkuerzen())); 00052 00053 //connect((QObject*)(this->ButtonSpeichern), SIGNAL(pressed()), 00054 // this, SLOT(AuswertungSpeichernV09())); 00055 00056 /* 00057 // etwas unsauber, 00058 // aber ich baue das Übergangswahrscheinlichkeiten-Fenster einfach hier 00059 uewDialog =new QDialog ( this, "übergangswahrscheinlichkeiten", TRUE, (WFlags)0 ); 00060 TabUew = new QTable( uewDialog, "TabUew" ); 00061 TabUew->setGeometry( QRect( 10, 25, 580, 180 ) ); 00062 TabUew->setProperty( "numRows", 7 ); 00063 TabUew->setProperty( "numCols", 7 ); 00064 00065 buttonUewOK=new QPushButton (uewDialog , "ButtonOK"); 00066 buttonUewOK->setProperty( "text", tr( "&OK" ) ); 00067 buttonUewOK->setProperty( "autoDefault", QVariant( TRUE, 0 ) ); 00068 connect((QObject*)(buttonUewOK), SIGNAL(pressed()), 00069 uewDialog , SLOT(accept())); 00070 00071 LayoutUew = new QVBoxLayout( uewDialog ); 00072 LayoutUew->setSpacing( 6 ); 00073 LayoutUew->setMargin( 0 ); 00074 LayoutUew->addWidget( buttonUewOK ); 00075 LayoutUew->addWidget( TabUew ); 00076 */ 00077 00078 QString text; 00079 int i, k; 00080 for (i=1; i<=7; i++){ 00081 TabRatingSkala->setText(i-1,0,RatingSkalaKurz[i]); 00082 TabRatingSkala->setText(i-1,1,RatingSkalaLang[i]); 00083 for (k=1; k<=7; k++){ 00084 text="%1>%2"; text=text.arg(i).arg(k); 00085 TabUew2->verticalHeader()->setLabel((k-1)*7 + i-1, text); 00086 TabUew2Prozent->verticalHeader()->setLabel((k-1)*7 + i-1, text); 00087 } 00088 } 00089 TabRatingSkala->adjustColumn(0); 00090 TabRatingSkala->adjustColumn(1); 00091 00092 TabVerlauf->horizontalHeader()->setLabel(0,"Zeit"); 00093 TabVerlauf->horizontalHeader()->setLabel(1,"Einsch_VorVorher"); 00094 TabVerlauf->horizontalHeader()->setLabel(2,"Einsch_Vorher"); 00095 TabVerlauf->horizontalHeader()->setLabel(3,"Einsch_Ende"); 00096 TabVerlauf->horizontalHeader()->setLabel(4,"Dauer"); 00097 00098 TabVerlaufAlt->horizontalHeader()->setLabel(0,"Zeit"); 00099 TabVerlaufAlt->horizontalHeader()->setLabel(1,"Einsch_VorVorher"); 00100 TabVerlaufAlt->horizontalHeader()->setLabel(2,"Einsch_Vorher"); 00101 TabVerlaufAlt->horizontalHeader()->setLabel(3,"Einsch_Ende"); 00102 TabVerlaufAlt->horizontalHeader()->setLabel(4,"Dauer"); 00103 00104 connect((QObject*)(this->TabUew2Prozent), SIGNAL(contentsMoving ( int , int ) ), 00105 this, SLOT(DreiertabelleScrollen ( int , int ))); 00106 } |
|
Definiert in Zeile 176 der Datei lftvideoanalysedialog.cpp. Benutzt LFTVideoAnalyseDialogBase::AnzahlGesamt, LFTVideoAnalyseDialogBase::AnzahlKlient, LFTVideoAnalyseDialogBase::AnzahlTherapeut, LFTVideoAnalyseDialogBase::DauerGesamt, LFTVideoAnalyseDialogBase::DauerKlient, LFTVideoAnalyseDialogBase::DauerTherapeut, QStringSpeichern::gibFilename(), LFTVideoAnalyseDialogBase::Klient, QStringSpeichern::merkDirDaten(), LFTVideoAnalyseDialogBase::mittlereDauerGesamt, LFTVideoAnalyseDialogBase::mittlereDauerKlient, LFTVideoAnalyseDialogBase::mittlereDauerTherapeut, LFTVideoAnalyseDialogBase::Rater, DatenSpeichern::speichereDaten() und LFTVideoAnalyseDialogBase::TabSum.
00176 { 00177 int r,c; 00178 QString temp; 00179 00180 temp+=tr("%1\t").arg(DauerGesamt->text()); 00181 temp+=tr("%1\t").arg(DauerTherapeut->text()); 00182 temp+=tr("%1\n").arg(DauerKlient->text()); 00183 temp+=tr("%1\t").arg(AnzahlGesamt->text()); 00184 temp+=tr("%1\t").arg(AnzahlTherapeut->text()); 00185 temp+=tr("%1\n").arg(AnzahlKlient->text()); 00186 temp+=tr("%1\t").arg(mittlereDauerGesamt->text()); 00187 temp+=tr("%1\t").arg(mittlereDauerTherapeut->text()); 00188 temp+=tr("%1\n\n").arg(mittlereDauerKlient->text()); 00189 00190 for ( r=0; r<=6; r++){ 00191 temp+=tr("%1\t").arg(r+1); 00192 for ( c=0; c<=7; c++){ 00193 temp+=TabSum->text(r,c); 00194 temp+='\t'; 00195 } 00196 temp+='\n'; 00197 }; 00198 00199 QStringSpeichern* AuswertungsSpeicherer = new QStringSpeichern(); 00200 AuswertungsSpeicherer->merkDirDaten(temp, "AuswertungV09"); 00201 QString fname=AuswertungsSpeicherer->gibFilename(Klient->text(), Rater->text()); 00202 AuswertungsSpeicherer->speichereDaten(fname, "AuswertungV09"); 00203 delete AuswertungsSpeicherer ; 00204 } |
|
Definiert in Zeile 112 der Datei lftvideoanalysedialog.cpp. Benutzt LFTVideoAnalyseDialogBase::ButtonDatenEinlesen, VerlaufsAuswertung::DatenAnalysieren(), VerlaufsAuswertung::DatenAnzeigen(), LFTVideoAnalyseDialogBase::EinlesenInfoLabel, VerlaufSpeichern::gibFilename(), LFTVideoAnalyseDialogBase::Klient, DatenSpeichern::leseDaten(), LFTVideoAnalyseDialogBase::Rater, VerlaufSpeichern::setzePointerAufDaten() und SpeichereAuswertung(). Wird benutzt von LFTVideoAnalyseDialog().
00112 { 00113 if (Rater->text()=="" || Klient->text()=="") { 00114 EinlesenInfoLabel->setText("Bitte zunächst Klientencode und Ratername eingeben."); 00115 return; 00116 } 00117 EinlesenInfoLabel->setText(""); 00118 00119 Speicherer = new VerlaufSpeichern(); 00120 QString dateiname=Speicherer->gibFilename(Klient->text(), Rater->text()); 00121 Speicherer->setzePointerAufDaten(Verlauf); 00122 00123 bool erfolgreich = Speicherer->leseDaten(dateiname,"Rating Verlauf"); 00124 if (! erfolgreich) { 00125 EinlesenInfoLabel->setText(tr("%1 konnte nicht eingelesen werden").arg(dateiname)); 00126 ButtonDatenEinlesen->setDown(false); 00127 return; 00128 } else { 00129 EinlesenInfoLabel 00130 ->setText(tr("%1 wurde erfolgreich eingelesen und die Auswertung gespeichert.").arg(dateiname)); 00131 } 00132 00133 delete Speicherer; 00134 00135 Auswertung->DatenAnalysieren(Verlauf); 00136 Auswertung->DatenAnzeigen(this); 00137 00138 SpeichereAuswertung("Auswertung"); 00139 } |
|
Definiert in Zeile 141 der Datei lftvideoanalysedialog.cpp. Benutzt VerlaufsAuswertung::DatenAnalysieren(), VerlaufsAuswertung::DatenAnzeigen(), SpeichereAuswertung(), LFTVideoAnalyseDialogBase::TabVerlauf, LFTVideoAnalyseDialogBase::TabVerlaufAlt, LFTVideoAnalyseDialogBase::VerkuerzenInfoLabel und RatingVerlauf::verkuerzeUmAufeinanderfolgendGleiche(). Wird benutzt von LFTVideoAnalyseDialog().
00141 { 00142 00143 //QString temp=Verlauf 00144 // ->printGesamtenRatingVerlauf (MinSec(0,0), Verlauf->BisherLetzterMoment()); 00145 //qDebug(temp); 00146 00147 // alte Version in untere Verlaufstabelle kopieren: 00148 //TabVerlaufAlt=TabVerlauf; 00149 int numRows=TabVerlauf->numRows(); 00150 int numCols=TabVerlauf->numCols(); 00151 TabVerlaufAlt->setNumRows(numRows); 00152 TabVerlaufAlt->setNumCols(numCols); 00153 int i, j; 00154 for (i=0; i<numRows; i++){ 00155 for (j=0; j<numCols; j++){ 00156 TabVerlaufAlt->setText(i,j, TabVerlauf->text(i,j) ); 00157 } 00158 } 00159 00160 long umWieviel=Verlauf->verkuerzeUmAufeinanderfolgendGleiche(); 00161 VerkuerzenInfoLabel-> 00162 setText(tr("Datensatz wurde um %1 Sinneinheiten verkürzt " 00163 "und die neue Auswertung(verkuerzt) gespeichert.").arg(umWieviel)); 00164 00165 Auswertung->DatenAnalysieren(Verlauf); 00166 Auswertung->DatenAnzeigen(this); 00167 00168 SpeichereAuswertung("Auswertung(verkuerzt)"); 00169 00170 //temp=Verlauf-> 00171 // printGesamtenRatingVerlauf (MinSec(0,0), Verlauf->BisherLetzterMoment()); 00172 //qDebug(temp); 00173 00174 } |
|
Definiert in Zeile 108 der Datei lftvideoanalysedialog.cpp. Benutzt LFTVideoAnalyseDialogBase::TabUew2. Wird benutzt von LFTVideoAnalyseDialog().
00108 { 00109 TabUew2->setContentsPos(x,y); 00110 } |
|
Definiert in Zeile 207 der Datei lftvideoanalysedialog.cpp. Benutzt QStringSpeichern::gibFilename(), AuswertungSpeichern::gibFilename(), LFTVideoAnalyseDialogBase::Klient, QStringSpeichern::merkDirDaten(), AuswertungSpeichern::merkDirDaten(), LFTVideoAnalyseDialogBase::Rater, DatenSpeichern::speichereDaten(), VerlaufsAuswertung::uew und VerlaufsAuswertung::uew2. Wird benutzt von DatenEinlesen() und DatensatzVerkuerzen().
00207 { 00208 00209 // Auswertung aggregierte Daten 00210 AuswertungSpeichern* AuswSpeicherer; 00211 AuswSpeicherer= new AuswertungSpeichern(); 00212 AuswSpeicherer->merkDirDaten(Auswertung, dieEndung); 00213 00214 QString fname=AuswSpeicherer->gibFilename(Klient->text(), Rater->text()); 00215 AuswSpeicherer->speichereDaten(fname, dieEndung); 00216 delete AuswSpeicherer; 00217 00218 00219 // Übergangswahrscheinlichkeiten 00220 QString temp, uebergaenge=""; 00221 QString id=Klient->text() + '\t' + Rater->text() + '\t'; 00222 int i, j; 00223 00224 for (i=1; i<=7; i++){ 00225 for (j=1; j<=7; j++){ 00226 temp="%1"; temp=temp.arg(Auswertung->uew[i][j]); 00227 uebergaenge += temp + '\t'; 00228 } 00229 temp="%1"; temp=temp.arg(i); 00230 uebergaenge += id + temp + '\n'; 00231 } 00232 00233 QStringSpeichern* UeWSpeicherer; 00234 UeWSpeicherer= new QStringSpeichern(); 00235 UeWSpeicherer->merkDirDaten(uebergaenge, dieEndung+"_UeW"); 00236 00237 fname=UeWSpeicherer->gibFilename(Klient->text(), Rater->text()); 00238 UeWSpeicherer->speichereDaten(fname, dieEndung); 00239 delete UeWSpeicherer; 00240 00241 // Übergangswahrscheinlichkeiten2 für Dreier-Übergänge 00242 uebergaenge=""; 00243 int k; 00244 for (i=1; i<=7; i++){ 00245 for (j=1; j<=7; j++){ 00246 for (k=1; k<=7; k++){ 00247 // warum j i k, nicht i j k? 00248 temp="%1"; temp=temp.arg(Auswertung->uew2[j][i][k]); 00249 uebergaenge += temp + '\t'; 00250 } 00251 temp="%1\t%2"; temp=temp.arg(j).arg(i); 00252 uebergaenge += id + temp + '\n'; 00253 } 00254 } 00255 00256 QStringSpeichern* UeW2Speicherer; 00257 UeW2Speicherer= new QStringSpeichern(); 00258 UeW2Speicherer->merkDirDaten(uebergaenge, dieEndung+"_UeW2"); 00259 00260 fname=UeW2Speicherer->gibFilename(Klient->text(), Rater->text()); 00261 UeW2Speicherer->speichereDaten(fname, dieEndung); 00262 delete UeW2Speicherer; 00263 00264 } |