63 {
64 int i,j,k;
65
68 printf(
"File %s error!\n",
filename);
69 return 0;
70 }
71
72 printf("write lnk.def\n");
74
75 printf("write default.par\n");
77
78 char buf[256];
79 TObjArray *
tracks =
new TObjArray();
80 for(i=0;i<100;i++)
zlayer[i]=1.1E10;
81
82 printf(
"reanding m-file : %s\n",
filename);
83 for(i=0;
NULL!=fgets(buf,
sizeof(buf),fp);i++){
84 if(buf[0]=='%') {i--; continue;}
85
86 if(i==0) { continue;}
87 if(i==1) { sscanf(buf,
"%d", &
npid);
continue;}
88 if(i==2) {
89 int n=0,nn;
90
91 for(j=
npid-1;j>=0;j--){
92
93 sscanf(buf+n,
"%d%n", &
plid[j], &nn);
97 n+=nn;
98 }
99 printf("write lnk.lst\n");
101 continue;
102 }
103
104
105 int itrk, nseg, pos1, pos2;
106 sscanf(buf, "%d %d %d %d", &itrk, &nseg, &pos1, &pos2);
107
110
111
113 for(j=0;j<nseg;j++){
114 int pos,isg,ph;
115 double ax,ay,x,y,z;
116 fgets(buf,sizeof(buf),fp);
117
118 sscanf(buf,"%d %d %*d %d %lf %lf %lf %lf %lf",
119 &pos, &isg, &ph, &ax, &ay, &x, &y, &z);
120 pos/=10;
121 pos=58-pos;
123
124 s =
new EdbSegP(isg, x,y, ax,ay, ph/10000, 0);
131
132 }
133 t->Set(itrk,
s->X(),
s->Y(),
s->TX(),
s->TY(), 0, 1);
136
138 if(
tracks->GetEntries()%100 == 0) printf(
"%d tracks\r",
tracks->GetEntries());
139
140 }
141 printf(
" %d tracks\n.",
tracks->GetEntries());
142
143 printf("write tracks into linked_tracks.root\n");
145
147
148 return tracks->GetEntries();
149}
const char filename[256]
Definition: RecDispNU.C:83
static int MakeTracksTree(EdbPVRec *ali=0, const char *file="linked_tracks.root")
Definition: EdbDataSet.cxx:2506
Definition: EdbPattern.h:113
int plid[100]
Definition: m2track.cpp:11
double zlayer[100]
Definition: m2track.cpp:12
int z_not_set(int pos)
Definition: m2track.cpp:44
void write_lnkdef(void)
Definition: m2track.cpp:15
int pid[1000]
Definition: m2track.cpp:13
void write_defaultpar(void)
Definition: m2track.cpp:31
void write_lnklst(void)
Definition: m2track.cpp:23
void write_par_files(void)
Definition: m2track.cpp:49
int npid
Definition: m2track.cpp:10
TTree * t
Definition: check_shower.C:4
s
Definition: check_shower.C:55
TTree * tracks
Definition: check_tr.C:19
#define NULL
Definition: nidaqmx.h:84