TH2F histo drawing in a loop [new]

#include "Riostream.h"
#include "TStyle.h"
#include "TFile.h"
#include "TTree.h"
#include "TH1F.h"
#include "TH2F.h"
#include "TH2.h"
#include "TF1.h"
#include "TMath.h"
#include "TLine.h"
#include "TPolyLine.h"
#include "TArc.h"
#include "TMatrixD.h" 
#include "TMinuit.h"
#include "TMath.h"
#include "TChain.h"
#include "iostream"
#include <iomanip>
float calibs,ADC_input;
float calibs1[16][4],ADC_input1[16][4];
//int TChain;
using namespace std;

int calib_M() {
	    
	    
TChain * fileChain1;
fileChain1 = new TChain("TDCpanda");
//Int_t nEntries = fileChain1->GetEntries();

  fileChain1->Add("/home/j/root/macros/cali_tt.root");	 
  fileChain1->SetBranchAddress("Calib", &calibs);
  fileChain1->SetBranchAddress("ADC_input" , &ADC_input);
  
    TString file3histo ="/home/j/root/macros/calib_histo_fit.root";
  
TFile *file3out = new TFile(file3histo, "RECREATE");


TH2F  *ADC_calib[4][16];

  for (Int_t sl=0; sl<4; sl++) {  
    
    for (Int_t ch=0; ch<16; ch++) {

      TString tdcname = "ADC_pl";
      tdcname += sl+1; tdcname += "_el"; tdcname += ch+1;

      ADC_input1[ch][sl]=ADC_input;
      calibs1[ch][sl]=calibs;
  
      ADC_calib[sl][ch] = new TH2F(tdcname, tdcname,  200, 0.0, 800.0, 200, 0.0, 3000.0);
      ADC_calib[sl][ch]->Fill(ADC_input1[ch][sl],calibs1[ch][sl]);
      //tdcspectrum[nplane][nstraw]->Fill(ADC_input,calibs);
      
      ADC_calib[sl][ch]->Write();
      
      
      ADC_calib[sl][ch]->SetBit(TH2::kCanRebin);

    }
  }
  file3out-> Write();
  file3out->Close();
 
  
  return 0;
  
}

Hello.

When i run this macro I get 64 empty histo.

I can`t simply find my error.

Greetings & thank you

Jacek

the problem is solved,

added " fileChain1->GetEntry(i);"
in a loop.

and the root input file was badly made.

Jacek