21 rate = 1.; likelihood = 0.;
core =
false;
22 ellipticity = 0.; polarisation = 0.;
30 rate = 1.; likelihood = 0.;
core =
false;
31 ellipticity = 0.; polarisation = 0.;
48 for(
size_t i=1;
i<
n;
i++) data.push_back(pix);
65 this->data = value.
data;
67 this->tdAmp = value.
tdAmp;
76 size_t n = this->neighbors.size();
77 size_t m = this->data.size();
78 size_t k = this->tdAmp.size();
81 k = (k==
m) ? this->tdAmp[0].
size() : 0;
90 db[2] = (double)this->clusterID;
93 db[5] = this->
core ? 1. : 0.;
95 db[7] = this->likelihood;
98 db[10]= this->ellipticity;
99 db[11]= this->polarisation;
103 if(fwrite(db, 14*
sizeof(
double), 1, (FILE*)fp)!=1)
return false;
106 for(i=0; i<I; i++) wb.
data[i] = n ? neighbors[i] : 0.;
110 wb.
data[I++] = this->data[
i].noiserms;
111 wb.
data[I++] = this->data[
i].wave;
112 wb.
data[I++] = this->data[
i].w_90;
113 wb.
data[I++] = this->data[
i].asnr;
114 wb.
data[I++] = this->data[
i].a_90;
115 wb.
data[I++] = (double)this->data[i].
rank;
116 wb.
data[I++] = (double)this->data[i].
index;
122 wb.
data[I++] = (
double)this->tdAmp[
i].data[
j];
124 if(fwrite(wb.
data, I*
sizeof(
double), 1, (FILE*)fp)!=1)
return false;
139 if(fread(db, 14*
sizeof(
double), 1, (FILE*)fp)!=1)
return false;
141 this->clusterID = size_t(db[2]+0.1);
142 this->
time = size_t(db[3]+0.1);
144 this->
core = db[5]>0. ?
true :
false;
145 this->
rate = (float)db[6];
146 this->likelihood = (float)db[7];
147 this->
theta = (float)db[8];
148 this->
phi = (float)db[9];
149 this->ellipticity = (float)db[10];
150 this->polarisation = (float)db[11];
151 this->
layers = size_t(db[12]+0.1);
153 size_t m = size_t(db[0]+0.1);
154 size_t I = size_t(db[1]+0.1);
155 size_t k = size_t(db[13]+0.1);
156 size_t n = I + m*(7+
k);
160 if(fread(wb.data, n*
sizeof(
double), 1, (FILE*)fp)!=1)
return false;
164 j = wb.data[
i]<0. ?
int(wb.data[i]-0.1) :
int(wb.data[i]+0.1);
165 if(j) this->neighbors.push_back(j);
171 pix.
wave = wb.data[I++];
172 pix.
w_90 = wb.data[I++];
173 pix.
asnr = wb.data[I++];
174 pix.
a_90 = wb.data[I++];
175 pix.
rank = float(wb.data[I++]);
177 this->data.push_back(pix);
182 for(j=0; j<(
int)k; j++) {
183 tda.
data[
j] = float(wb.data[I++]);
185 if(k) this->tdAmp.push_back(tda);
std::vector< wavearray< float > > tdAmp
std::vector< int > neighbors
std::vector< pixdata > data
netpixel & operator=(const netpixel &)