| [2615] | 1 | #include "sopnamsp.h"
 | 
|---|
| [314] | 2 | #include "machdefs.h"
 | 
|---|
 | 3 | #include <stdlib.h>
 | 
|---|
 | 4 | #include <typeinfo>
 | 
|---|
| [2322] | 5 | #include <iostream>
 | 
|---|
| [314] | 6 | #include <string>
 | 
|---|
 | 7 | 
 | 
|---|
 | 8 | #include "nomstladapter.h"
 | 
|---|
 | 9 | #include "stlist.h"
 | 
|---|
 | 10 | #include "pistlist.h"
 | 
|---|
 | 11 | 
 | 
|---|
 | 12 | 
 | 
|---|
 | 13 | 
 | 
|---|
 | 14 | 
 | 
|---|
 | 15 | //-------------------------------------------------------------------------
 | 
|---|
 | 16 | // Class Adaptateur d'objet (Pour NamedObjMgr) d'objet StarList
 | 
|---|
 | 17 | //-------------------------------------------------------------------------
 | 
|---|
 | 18 | 
 | 
|---|
 | 19 | /* --Methode-- */
 | 
|---|
 | 20 | NOMAdapter_StarList::NOMAdapter_StarList(StarList* o)
 | 
|---|
 | 21 |   : NObjMgrAdapter(o)
 | 
|---|
 | 22 | {
 | 
|---|
 | 23 | mStl = o;
 | 
|---|
 | 24 | }
 | 
|---|
 | 25 | 
 | 
|---|
 | 26 | /* --Methode-- */
 | 
|---|
 | 27 | NOMAdapter_StarList::~NOMAdapter_StarList()
 | 
|---|
 | 28 | {
 | 
|---|
 | 29 | }
 | 
|---|
 | 30 | 
 | 
|---|
 | 31 | /* --Methode-- */
 | 
|---|
 | 32 | NObjMgrAdapter* NOMAdapter_StarList::Clone(AnyDataObj* o)
 | 
|---|
 | 33 | {
 | 
|---|
 | 34 | StarList* stl = dynamic_cast<StarList *>(o);
 | 
|---|
 | 35 | if (stl) return ( new NOMAdapter_StarList(stl) );
 | 
|---|
 | 36 | return ( new NObjMgrAdapter(o) );
 | 
|---|
 | 37 | }
 | 
|---|
 | 38 | 
 | 
|---|
 | 39 | 
 | 
|---|
 | 40 | /* --Methode-- */
 | 
|---|
 | 41 | void NOMAdapter_StarList::SavePPF(POutPersist& pos, string const & nom)
 | 
|---|
 | 42 | {
 | 
|---|
 | 43 | #ifdef SANS_EVOLPLANCK
 | 
|---|
 | 44 | // PEIDA-EROS L'objet est lui-meme PPersist
 | 
|---|
 | 45 | string tag = nom;  // A cause de const
 | 
|---|
 | 46 | mStl->Write(pos,0,tag);
 | 
|---|
 | 47 | #else
 | 
|---|
 | 48 | string s = typeid(*mStl).name();
 | 
|---|
 | 49 | cout << "NOMAdapter_StarList::SavePPF() - Error : Not supported for " << s << endl;
 | 
|---|
 | 50 | #endif
 | 
|---|
 | 51 | }
 | 
|---|
 | 52 | 
 | 
|---|
 | 53 | /* --Methode-- */
 | 
|---|
 | 54 | void NOMAdapter_StarList::Print(ostream& os)
 | 
|---|
 | 55 | {
 | 
|---|
 | 56 | os << (*mStl);
 | 
|---|
 | 57 | }
 | 
|---|
 | 58 | 
 | 
|---|
 | 59 | /* --Methode-- */
 | 
|---|
 | 60 | PIDrawer* NOMAdapter_StarList::GetDrawer(string & dopt)
 | 
|---|
 | 61 | {
 | 
|---|
 | 62 | return(new PIStarList(mStl, false));
 | 
|---|
 | 63 | }
 | 
|---|
 | 64 | 
 | 
|---|
 | 65 | 
 | 
|---|
 | 66 | /* --Methode-- */
 | 
|---|
| [344] | 67 | NTupleInterface* NOMAdapter_StarList::GetNTupleInterface(bool& adel)
 | 
|---|
| [314] | 68 | {
 | 
|---|
| [344] | 69 | adel = true;
 | 
|---|
| [314] | 70 | return( new NTupInt_StarList(mStl) );
 | 
|---|
 | 71 | }
 | 
|---|
 | 72 | 
 | 
|---|
 | 73 | 
 | 
|---|
 | 74 | // -------------------------------------------------------------
 | 
|---|
 | 75 | 
 | 
|---|
 | 76 | /* --Methode-- */
 | 
|---|
 | 77 | NTupInt_StarList::NTupInt_StarList(StarList* stl)
 | 
|---|
 | 78 | {
 | 
|---|
 | 79 | mStl = stl;
 | 
|---|
 | 80 | }
 | 
|---|
 | 81 | 
 | 
|---|
 | 82 | /* --Methode-- */
 | 
|---|
 | 83 | NTupInt_StarList::~NTupInt_StarList()
 | 
|---|
 | 84 | {
 | 
|---|
 | 85 | }
 | 
|---|
 | 86 | 
 | 
|---|
 | 87 | /* --Methode-- */
 | 
|---|
| [326] | 88 | uint_4 NTupInt_StarList::NbLines() const
 | 
|---|
| [314] | 89 | {
 | 
|---|
 | 90 | return(mStl->NbStars());
 | 
|---|
 | 91 | }
 | 
|---|
 | 92 | 
 | 
|---|
 | 93 | /* --Methode-- */
 | 
|---|
| [326] | 94 | uint_4 NTupInt_StarList::NbColumns() const 
 | 
|---|
| [314] | 95 | {
 | 
|---|
 | 96 | return(11);
 | 
|---|
 | 97 | }
 | 
|---|
 | 98 | 
 | 
|---|
 | 99 | /* --Methode-- */
 | 
|---|
| [326] | 100 | r_8* NTupInt_StarList::GetLineD(int n) const 
 | 
|---|
| [314] | 101 | {
 | 
|---|
 | 102 | BStar* bst = mStl->Star(n);
 | 
|---|
 | 103 | if (bst == NULL)  
 | 
|---|
 | 104 |   for(int k=0; k<11; k++)  mRet[k] = -9999.0;
 | 
|---|
 | 105 | else {
 | 
|---|
 | 106 |   mRet[0] = bst->PosX();
 | 
|---|
 | 107 |   mRet[1] = bst->PosY();
 | 
|---|
 | 108 |   mRet[2] = bst->Flux();
 | 
|---|
 | 109 |   mRet[3] = bst->Fond();
 | 
|---|
 | 110 |   mRet[4] = bst->PixMax();
 | 
|---|
 | 111 |   mRet[5] = bst->PosXRef();
 | 
|---|
 | 112 |   mRet[6] = bst->PosYRef();
 | 
|---|
 | 113 |   mRet[7] = bst->FluxRef();
 | 
|---|
 | 114 |   mRet[8] = bst->FondRef();
 | 
|---|
 | 115 |   mRet[9] = bst->PixMaxRef();
 | 
|---|
 | 116 |   mRet[10] = bst->Flags();
 | 
|---|
 | 117 |   }
 | 
|---|
 | 118 | return(mRet);
 | 
|---|
 | 119 | }
 | 
|---|
 | 120 | 
 | 
|---|
 | 121 | /* --Methode-- */
 | 
|---|
| [326] | 122 | string NTupInt_StarList::VarList_C(const char* nx) const 
 | 
|---|
| [314] | 123 | {
 | 
|---|
 | 124 | string nomx;
 | 
|---|
 | 125 | if (nx) nomx = nx;
 | 
|---|
 | 126 | else nomx = "_xstl_";
 | 
|---|
 | 127 | string vardec = "double x,y,flux,fond,pixmax; \n";
 | 
|---|
 | 128 | vardec += "double xref,yref,fluxref,fondref,pixmaxref; \n";
 | 
|---|
 | 129 | vardec += "double flags; \n"; 
 | 
|---|
 | 130 | vardec += "x = " + nomx + "[0];  y = " + nomx + "[1]; \n";
 | 
|---|
 | 131 | vardec += "flux = " + nomx + "[2];  fond = " + nomx + "[3]; \n";
 | 
|---|
 | 132 | vardec += "pixmax = " + nomx + "[4]; \n";
 | 
|---|
 | 133 | vardec += "xref = " + nomx + "[5];  yref = " + nomx + "[6]; \n";
 | 
|---|
 | 134 | vardec += "fluxref = " + nomx + "[7];  fondref = " + nomx + "[8]; \n";
 | 
|---|
 | 135 | vardec += "pixmaxref = " + nomx + "[9]; \n";
 | 
|---|
 | 136 | vardec += "flags = " + nomx + "[10]; \n";
 | 
|---|
 | 137 | return(vardec);
 | 
|---|
 | 138 | }
 | 
|---|