CMS 3D CMS Logo

Demangle Class Reference

#include <Utilities/General/interface/ClassName.h>

List of all members.

Public Member Functions

 Demangle (const char *sc)
const char * operator() () const
 ~Demangle ()

Private Attributes

char * demangle


Detailed Description

Definition at line 14 of file ClassName.h.


Constructor & Destructor Documentation

Demangle::Demangle ( const char *  sc  ) 

Definition at line 4 of file ClassName.cc.

References demangle, and StDecayID::status.

00004                                   : demangle(0) {
00005   if (sc==0) return;
00006   int status;
00007   demangle = abi::__cxa_demangle(sc,  0, 0, &status);
00008   if(status == 0) return;  
00009   demangle = 0;
00010   if(status == -1)
00011     throw std::bad_alloc();
00012   else if(status == -2) {
00013     demangle = strdup(sc);
00014   }
00015 }

Demangle::~Demangle (  )  [inline]

Definition at line 20 of file ClassName.h.

References demangle.

00020 { if (demangle) free((void*)demangle); }


Member Function Documentation

const char* Demangle::operator() ( void   )  const [inline]

Definition at line 18 of file ClassName.h.

References demangle.

00018 { return demangle;}


Member Data Documentation

char* Demangle::demangle [private]

Definition at line 24 of file ClassName.h.

Referenced by Demangle(), operator()(), and ~Demangle().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:18:23 2009 for CMSSW by  doxygen 1.5.4