LSST Applications g0f08755f38+c89d42e150,g1635faa6d4+b6cf076a36,g1653933729+a8ce1bb630,g1a0ca8cf93+4c08b13bf7,g28da252d5a+f33f8200ef,g29321ee8c0+0187be18b1,g2bbee38e9b+9634bc57db,g2bc492864f+9634bc57db,g2cdde0e794+c2c89b37c4,g3156d2b45e+41e33cbcdc,g347aa1857d+9634bc57db,g35bb328faa+a8ce1bb630,g3a166c0a6a+9634bc57db,g3e281a1b8c+9f2c4e2fc3,g414038480c+077ccc18e7,g41af890bb2+e740673f1a,g5fbc88fb19+17cd334064,g7642f7d749+c89d42e150,g781aacb6e4+a8ce1bb630,g80478fca09+f8b2ab54e1,g82479be7b0+e2bd23ab8b,g858d7b2824+c89d42e150,g9125e01d80+a8ce1bb630,g9726552aa6+10f999ec6a,ga5288a1d22+065360aec4,gacf8899fa4+9553554aa7,gae0086650b+a8ce1bb630,gb58c049af0+d64f4d3760,gbd46683f8f+ac57cbb13d,gc28159a63d+9634bc57db,gcf0d15dbbd+e37acf7834,gda3e153d99+c89d42e150,gda6a2b7d83+e37acf7834,gdaeeff99f8+1711a396fd,ge2409df99d+cb1e6652d6,ge79ae78c31+9634bc57db,gf0baf85859+147a0692ba,gf3967379c6+02b11634a5,w.2024.45
LSST Data Management Base Package
Loading...
Searching...
No Matches
Namespaces | Functions
psfexAdaptors.cc File Reference
#include "boost/format.hpp"
#include "lsst/pex/exceptions.h"
#include "lsst/meas/extensions/psfex/Field.hh"
#include "globals.h"
#include "context.h"
#include "prefs.h"
#include "sample.h"

Go to the source code of this file.

Namespaces

namespace  lsst
 
namespace  lsst::meas
 
namespace  lsst::meas::extensions
 
namespace  lsst::meas::extensions::psfex
 

Functions

setstruct * load_samples (char **filenames, int catindex, int ncat, int ext, int next, contextstruct *context)
 
void lsst::meas::extensions::psfex::makeit (std::vector< std::shared_ptr< Field > > &fields_, std::vector< std::shared_ptr< Set > > const &sets)
 

Function Documentation

◆ load_samples()

setstruct * load_samples ( char ** filenames,
int catindex,
int ncat,
int ext,
int next,
contextstruct * context )

Definition at line 14 of file psfexAdaptors.cc.

16{
17 /*
18 * The C version of this is called two ways:
19 * catindex == 0, ncat == ncat Read all catalogues
20 * catindex == c, ncat == 1 Read only catalogue c
21 */
22 setstruct *completeSet = reinterpret_cast<setstruct *>(filenames[catindex + 0]);
23 /*
24 * Make a new set, which may be a subset of the completeSet
25 */
26 setstruct *set = init_set(context);
27 set->fwhm = completeSet->fwhm;
28 for (int i = 0; i != completeSet->vigdim; ++i) {
29 set->vigsize[i] = completeSet->vigsize[i];
30 }
31 for (int i = 0; i != completeSet->ncontext; ++i) {
32 strcpy(set->contextname[i], completeSet->contextname[i]);
33 set->contextoffset[i] = completeSet->contextoffset[i];
34 set->contextscale[i] = completeSet->contextscale[i];
35 }
36 /*
37 * Count how many samples we'll be including
38 */
39 int nsample_keep = 0;
40 for (int i = 0; i != ncat; ++i) {
41 setstruct *s = reinterpret_cast<setstruct *>(filenames[catindex + i]);
42 for (int j = 0; j != completeSet->nsample; ++j) {
43 samplestruct const *samp = s->sample[j];
44 if (ext == ALL_EXTENSIONS || ext == samp->extindex) {
45 ++nsample_keep;
46 }
47 }
48 }
49
50 set->samples_owner = 0;
51 malloc_samples(set, nsample_keep);
52 for (int i = 0; i != ncat; ++i) {
53 setstruct *s = reinterpret_cast<setstruct *>(filenames[catindex + i]);
54 for (int j = 0; j != completeSet->nsample; ++j) {
55 samplestruct *samp = s->sample[j];
56 if (ext == ALL_EXTENSIONS || ext == samp->extindex) {
57 set->sample[set->nsample++] = samp;
58 }
59 }
60 }
61
62 return set;
63}
daf::base::PropertySet * set
Definition fits.cc:931
T strcpy(T... args)