| [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-- */ | 
|---|
| [2975] | 54 | void NOMAdapter_StarList::Print(ostream& os, int) | 
|---|
| [314] | 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 | } | 
|---|