#include "TObject.h"
#include "TTree.h"


class ClassA : public TObject
{
 public:
  ClassA() {
 
    event = 1;
    num_2 = 2;
    num_3 = 3;
    num_4 = 4;
  };
  virtual ~ClassA() {};
  
  Int_t event;
  Int_t num_2;
  Int_t num_3;
  Int_t num_4;

private:

    ClassDef(ClassA, 1) // ClassA
};

ClassImp(ClassA)

class ClassB : public ClassA
{

 public:
  ClassB() {
    num_1 = 101;
    num_2 = 102;
    num_3 = 103;
    num_4 = 104;
  }

  virtual ~ClassB() {};

 private:
  Int_t num_1;
  Int_t num_2;
  Int_t num_3;
  Int_t num_4;
      
  ClassDef(ClassB, 1) //ClassB
};

ClassImp(ClassB)

void fill_ANtp_tree() {

  ClassB* class_b = new ClassB();
  TTree* fNtuple = new TTree("NtupleTest", "Ntuple Test");
  fNtuple->Branch("event.", "ClassB", &class_b, 64000, 2);
  fNtuple->Fill();
  fNtuple->Show(0);
}

