Skip to content
Snippets Groups Projects
Commit d7cedec4 authored by Matevz Tadel's avatar Matevz Tadel
Browse files

Introduce two new functions to make flow clearer. Implement virtual destructor.

git-svn-id: http://root.cern.ch/svn/root/trunk@31354 27541ba8-7e3a-0410-8455-c3a389f83636
parent 420da889
No related branches found
No related tags found
No related merge requests found
...@@ -119,6 +119,42 @@ public: ...@@ -119,6 +119,42 @@ public:
fVSD = new TEveVSD; fVSD = new TEveVSD;
} }
~TVSDReader()
{
// Destructor.
DropEvent();
delete fVSD;
delete fEvDirKeys;
fFile->Close();
delete fFile;
}
void AttachEvent()
{
// Attach event data from current directory.
fVSD->LoadTrees();
fVSD->SetBranchAddresses();
}
void DropEvent()
{
// Drup currently held event data, release current directory.
// Drop old visualization structures.
gEve->GetViewers()->DeleteAnnotations();
gEve->GetCurrentEvent()->DestroyElements();
// Drop old event-data.
fVSD->DeleteTrees();
delete fDirectory;
fDirectory = 0;
}
//--------------------------------------------------------------------------- //---------------------------------------------------------------------------
// Event navigation // Event navigation
...@@ -142,24 +178,15 @@ public: ...@@ -142,24 +178,15 @@ public:
return kFALSE; return kFALSE;
} }
// Drop old visualization structures. DropEvent();
gEve->GetViewers()->DeleteAnnotations();
gEve->GetCurrentEvent()->DestroyElements();
// Drop old event-data.
fVSD->DeleteTrees();
delete fDirectory;
// Connect to new event-data. // Connect to new event-data.
fCurEv = ev; fCurEv = ev;
fDirectory = (TDirectory*) ((TKey*) fEvDirKeys->At(fCurEv))->ReadObj(); fDirectory = (TDirectory*) ((TKey*) fEvDirKeys->At(fCurEv))->ReadObj();
fVSD->SetDirectory(fDirectory); fVSD->SetDirectory(fDirectory);
fVSD->LoadTrees();
fVSD->SetBranchAddresses(); AttachEvent();
// Load event data into visualization structures. // Load event data into visualization structures.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment