GSI Forum
GSI Helmholtzzentrum für Schwerionenforschung

Home » PANDA » PandaRoot » Bugs, Fixes, Releases » incomplete types
incomplete types [message #8912] Thu, 25 June 2009 10:58
Anonymous Poster From: *pool.einsundeins.de
Hi everybody,

I tried to make the GENFIT RecoHitFactory mechanism typesafe. In the produce method I cast a detector hit out of the TClonesArray to a hit_T* (which is specialized as an PndMvdHit for example. It works for the STT, TPC, DCH, .... but for the MVD IO have a problem.

If you try a dynamic_cast<PndMvdHit*>(hit) where hit is an TObject* which comes out of the TClonesArray, you get something like:

/Users/hoeppi/trunk/genfit/RecoHitProducer.h:100: error: cannot dynamic_cast '#'obj_type_ref' not supported by dump_expr#<expression error>((&((RecoHitProducer<PndMvdHit, PndMvdRecoHit>*)this)->RecoHitProducer<PndMvdHit, PndMvdRecoHit>::hitArrayTClones->TClonesArray::<anonymous>), index)' (of type 'class TObject*') to type 'struct PndMvdHit*' (target is not pointer or reference to complete type)
make[2]: *** [mvd/CMakeFiles/MvdTrk.dir/MvdTracking/PndMvdKalmanTask.o] Error 1

Google didnt really help me. Does anyone know what an incomplete type means. I thought it is a class where some methods where declared, but never defined. But I checked PndMvdHit an FairHit (which is its base class) but I didnt find anything.

I would really appreciate your help on this.

Cheers, Christian
Previous Topic: Problems compiling CADConverter on Ubuntu 9.04
Next Topic: fix in GEM gas mixture
Goto Forum:
  


Current Time: Mon Dec 02 16:52:51 CET 2024

Total time taken to generate the page: 0.00834 seconds