Memory leak due to Write/ReadObject and vectors

Dear experts,
My problem is as follows: I’m trying to save (GEANT) objects into a ROOT file according to the persistency example P01 (GEANT). My object does not inherit from TObject and the dictionary to read the ROOT file is produced via Reflex (cmake).
My object is written according to:

When I try to read my ROOT file via ReadObj() I run into a major memory leak. To my understanding this memory leak is produced as ROOT doesn’t know how to delete objects in vectors but does also not allow calling the destructor of TrackClass. Is there a known solution to this memory leak or do I have to work around by e.g. inheriting from TObject / write it into a branch of a TTree instead directly to a file/create my dictionary via Linkdef? Any idea is appreciated! If possible I’d rather not inherit from TObject as this clashes with some GEANT classes.