Hi Chris, You have several C++ errors in Chamber.h. You wrongly initialize your arrays. See modified file in the attachement. Rene Brun Chris Hayward wrote: > > I am trying to define a class called Chamber. Right now it is simply all > public variables and the constructor. However, I have been getting a lot > of errors. I am running ROOT 3.05/05 on lxplus. I type into the command > line: > > #include "Chamber.h" > Chamber *chamber = new Chamber(); > > I get errors of the following type for all the variables I define: > Error: Incorrect assignment to site, wrong type 'char' FILE:Chamber.h > LINE:35 > Error: Incorrect assignment to chamber_type, wrong type 'char' > FILE:Chamber.h LINE:35 > > This occurs for the Int_t and Float_t variables also. I believe that I > have defined my class as in the user guide, but it does not work. Please > tell me what I should do. The interface and implementation files are > below. > > Thanks, > Chris > > Chamber.h > > #include <iostream.h> > #include "TObject.h" > #include <string.h> > > class Chamber : public TObject { > > public: > > char chamber_type[10]; //this info read from scan filenames > char site[6]; > Int_t serial_no; > char section[20]; //array of 20 strings to allow for 20 scans > char orientation[20]; > Int_t scan_no[20]; > > Int_t ch_sag_1; //sag of chamber, wires, and difference for > section 1 > Int_t wire_sag_1; > Int_t sag_diff_1; > > Int_t ch_sag_2; //sag of chamber, wires, and difference for > section 2 > Int_t wire_sag_2; > Int_t sag_diff_2; > > Int_t tool[20]; //data to be read from each scan > Int_t side[20]; > > Int_t theta_x[20]; > Int_t S_z[20]; > Int_t S_y_corrected[20]; > Int_t S_y_raw[20]; > Int_t S_y_correction[20]; > Float_t rms[20]; > > Chamber(){ > chamber_type=site=''; > section=orientation=''; > > serial_no=ch_sag_1=wire_sag_1=sag_diff_1=ch_sag_2=wire_sag_2=sag_diff_2=0; > scan_no=tool=side=theta_x=S_z=S_y_corrected=S_y_raw=S_y_correction=0; > rms=0.0; > }; > > ClassDef (Chamber, 1); > }; > > Chamber.cxx > > #include "Chamber.h" > ClassImp (Chamber); #include <iostream.h> #include "TObject.h" #include <string.h> class Chamber : public TObject { public: char chamber_type[10]; //this info read from scan filenames char site[6]; Int_t serial_no; char section[20]; //array of 20 strings to allow for 20 scans char orientation[20]; Int_t scan_no[20]; Int_t ch_sag_1; //sag of chamber, wires, and difference for section 1 Int_t wire_sag_1; Int_t sag_diff_1; Int_t ch_sag_2; //sag of chamber, wires, and difference for section 2 Int_t wire_sag_2; Int_t sag_diff_2; Int_t tool[20]; //data to be read from each scan Int_t side[20]; Int_t theta_x[20]; Int_t S_z[20]; Int_t S_y_corrected[20]; Int_t S_y_raw[20]; Int_t S_y_correction[20]; Float_t rms[20]; Chamber(){ chamber_type[0]=site[0]=''; section[0]=orientation[0]=''; serial_no=ch_sag_1=wire_sag_1=sag_diff_1=ch_sag_2=wire_sag_2=sag_diff_2=0; for (int i=0;i<20;i++) { scan_no[i]=tool[i]=side[i]=theta_x[i]=S_z[i]=S_y_corrected[i]=S_y_raw[i]=S_y_correction[i]=0; rms[i]=0.0; } }; ClassDef (Chamber, 1); };
This archive was generated by hypermail 2b29 : Thu Jan 01 2004 - 17:50:12 MET