Changeset 487 in PSPA
- Timestamp:
- Feb 5, 2014, 11:45:11 AM (10 years ago)
- Location:
- Interface_Web/trunk/pspaWT/sources
- Files:
-
- 8 added
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
Interface_Web/trunk/pspaWT/sources/controler/include/nomdElements.h
r485 r487 2 2 #define NOMDELEMENTS_SEEN 3 3 4 5 #include <string> 6 4 #include <string> 7 5 using namespace std; 8 6 9 7 // enum typedElement {beam, RFgun, drift, cell, bend, soleno, fit, snapshot, inconnu}; 10 11 12 8 13 9 class nomdElements … … 16 12 public : 17 13 18 enum typedElement {beam, RFgun, drift, cell, bend, soleno, fit, snapshot, mpole, inconnu};14 enum typedElement {beam, RFgun, drift, cell, bend, soleno, fit, snapshot, mpole, qpole, spole, inconnu}; 19 15 20 16 private : -
Interface_Web/trunk/pspaWT/sources/controler/src/nomDeLogiciel.cc
r485 r487 2 2 3 3 nomDeLogiciel::Logiciel nomDeLogiciel::fromString( std::string s) 4 5 6 7 8 9 10 11 12 4 { 5 if (s == "parmela" ) return parmela; 6 else if ( s == "transport" ) return transport; 7 else if ( s == "generator" ) return generator; 8 else if ( s == "test" ) return test; 9 else if ( s == "madx" ) return madx; 10 else if ( s == "usersprogram" ) return usersprogram; 11 return unknownSoftware; 12 } 13 13 14 14 std::string nomDeLogiciel::toString(nomDeLogiciel::Logiciel lg) … … 44 44 } 45 45 46 47 48 49 50 51 46 nomDeLogiciel::nomDeLogiciel() 47 { 48 program_ = unknownSoftware; 49 progString_ = toString(program_); 50 setCompatiblesElements(); 51 } 52 52 53 53 nomDeLogiciel::nomDeLogiciel(const string& s) … … 70 70 } 71 71 72 73 72 void nomDeLogiciel::registerElement(nomdElements::typedElement nomdel,trivaluedBool b) 74 73 { … … 79 78 } 80 79 } 81 82 83 80 84 81 void nomDeLogiciel::setCompatiblesElements() … … 98 95 break; 99 96 } 100 97 case transport : 101 98 { 102 99 registerElement(nomdElements::beam,TBoolOk); … … 108 105 break; 109 106 } 110 111 112 113 114 107 case generator : 108 { 109 registerElement(nomdElements::RFgun,TBoolOk); 110 break; 111 } 115 112 case test : 116 113 { … … 122 119 registerElement(nomdElements::drift,TBoolOk); 123 120 registerElement(nomdElements::mpole,TBoolOk); 121 registerElement(nomdElements::qpole,TBoolOk); 122 registerElement(nomdElements::spole,TBoolOk); 124 123 break; 125 124 } … … 135 134 } 136 135 137 138 139 136 trivaluedBool nomDeLogiciel::doAcceptElement(nomdElements::typedElement typdel) 140 137 { … … 146 143 return TBoolError; 147 144 } 148 145 149 146 if (std::find(acceptedElements_.begin(),acceptedElements_.end(),typdel) != acceptedElements_.end()) { 150 147 return TBoolOk; 151 148 } 152 149 153 150 if (ignoredElements_.size() == 0) { 154 151 return TBoolError; 155 152 } 156 153 157 154 if (std::find(ignoredElements_.begin(),ignoredElements_.end(),typdel) != ignoredElements_.end()) { 158 155 return TBoolIgnore; 159 156 } 160 157 161 158 return TBoolOk; 162 159 } 163 164 165 166 160 167 161 // operators -
Interface_Web/trunk/pspaWT/sources/controler/src/nomdElements.cc
r442 r487 1 1 2 2 #include <iostream> 3 #include <cstring>4 3 #include "nomdElements.h" 5 4 … … 15 14 else if( strstr(s.c_str(),"snapshot") ) return snapshot; 16 15 else if( strstr(s.c_str(),"mpole") ) return mpole; 16 else if( strstr(s.c_str(),"qpole") ) return qpole; 17 else if( strstr(s.c_str(),"spole") ) return spole; 17 18 return inconnu; 18 19 } … … 29 30 else if( s == "snapshot" ) return snapshot; 30 31 else if( s == "mpole" ) return mpole; 32 else if( s == "qpole" ) return qpole; 33 else if( s == "spole" ) return spole; 31 34 return inconnu; 32 35 } … … 44 47 case snapshot : return "SNAPSHOT"; break; 45 48 case mpole : return "MPOLE"; break; 49 case qpole : return "QUADRUPOLE"; break; 50 case spole : return "SEXTUPOLE"; break; 46 51 default : return "UNKNOWN"; 47 52 } … … 60 65 case snapshot : return "snapshot"; 61 66 case mpole : return "mpole"; 62 default : return string(""); 67 case qpole : return "qpole"; 68 case spole : return "spole"; 69 default : return std::string(""); 63 70 } 64 71 } … … 76 83 case snapshot : return 4; 77 84 case mpole : return 3; 85 case qpole : return 3; 86 case spole : return 3; 78 87 default : return 0; 79 88 } -
Interface_Web/trunk/pspaWT/sources/controler/src/sector.cc
r483 r487 20 20 #include "elementSnapshot.h" 21 21 #include "elementMultipole.h" 22 #include "elementQuadrupole.h" 23 #include "elementSextupole.h" 22 24 23 25 sector::sector(dataManager* data, std::string name): … … 36 38 } 37 39 38 abstractElement* sector::addElementAfter(nomdElements::typedElement eType ,abstractElement* previousElement){ 40 abstractElement* sector::addElementAfter(nomdElements::typedElement eType ,abstractElement* previousElement) 41 { 39 42 40 43 // create a new abstractElement 41 44 // FIXME : To be move in an abstractFactory in the controler !! 42 45 abstractElement* currentElement = NULL; 43 switch ( eType ) { 46 switch ( eType ) 47 { 44 48 case nomdElements::RFgun : 45 49 currentElement = new elementRfgun(); … … 66 70 currentElement = new elementMultipole(); 67 71 break; 72 case nomdElements::qpole : 73 currentElement = new elementQuadrupole(); 74 break; 75 case nomdElements::spole : 76 currentElement = new elementSextupole(); 77 break; 68 78 case nomdElements::snapshot : 69 { 70 // FIXME : Snapshot a gérér 71 /* int incr = dataManager_->getPspaApplication()->getExtensionFile(); 72 incr++; 73 dataManager_->getPspaApplication()->setExtensionFile(incr); 74 */ 75 currentElement = new elementSnapshot(); 76 break; 79 { 80 // FIXME : Snapshot a gérér 81 /* int incr = dataManager_->getPspaApplication()->getExtensionFile(); 82 incr++; 83 dataManager_->getPspaApplication()->setExtensionFile(incr); 84 */ 85 currentElement = new elementSnapshot(); 86 break; 87 } 77 88 } 78 } 89 79 90 if (!currentElement) { 80 91 return NULL; 81 92 } 82 93 addElementAfter(currentElement,previousElement); 83 return currentElement; 84 94 return currentElement; 85 95 } 86 96 -
Interface_Web/trunk/pspaWT/sources/controler/src/softwareMadx.cc
r485 r487 16 16 { 17 17 nameOfSoftware_ = new nomDeLogiciel("madx"); 18 19 // registerElement(nomdElements::RFgun,TBoolOk);20 // registerElement(nomdElements::drift,TBoolOk);21 // registerElement(nomdElements::mpole,TBoolOk);22 18 } 23 19 … … 241 237 if(keyword == "drift") { 242 238 double length = atof(v.at(1).second.at(0).c_str()); 243 os << label << ":" << " drift, l=" << 0.01*length << ";" << endl;239 os << label << ":" << " drift, l=" << 0.01*length << ";" << endl; 244 240 245 241 } else if(keyword == "mpole") { … … 253 249 os <<"};" << endl; 254 250 251 } else if(keyword == "qpole") { 252 double ln = atof(v.at(1).second.at(0).c_str()); 253 double k1 = atof(v.at(1).second.at(1).c_str()); 254 os << label << ":" << " quadrupole, l=" << ln << ", k1= " << k1 << ";" << endl; 255 256 } else if(keyword == "spole") { 257 double ln = atof(v.at(1).second.at(0).c_str()); 258 double k2 = atof(v.at(1).second.at(1).c_str()); 259 os << label << ":" << " sextupole, l=" << ln << ", k2= " << k2 << ";" << endl; 260 255 261 } else { 256 262 cout << "softwareMadx::inputFormat ERROR : element type= " << keyword << " not defined" << endl; -
Interface_Web/trunk/pspaWT/sources/userInterface/include/GWt_abstractElementFactory.h
r437 r487 19 19 #include "GWt_elementSnapshot.h" 20 20 #include "GWt_elementMpole.h" 21 #include "GWt_elementQpole.h" 22 #include "GWt_elementSpole.h" 21 23 22 24 using namespace Wt; … … 67 69 inline void setMPoleEnable(bool a) { isMPoleElementEnable = a;}; 68 70 71 /* Enable the qpole element creation 72 */ 73 inline void setQPoleEnable(bool a) { isMPoleElementEnable = a;}; 74 75 /* Enable the spole element creation 76 */ 77 inline void setSPoleEnable(bool a) { isMPoleElementEnable = a;}; 78 69 79 GWt_elementDrift* createDriftElement(); 70 80 GWt_elementRfgun* createRFGunElement(); … … 76 86 GWt_elementSnapshot* createSnapshotElement(); 77 87 GWt_elementMpole* createMPoleElement(); 88 GWt_elementQpole* createQPoleElement(); 89 GWt_elementSpole* createSPoleElement(); 78 90 vector <GWt_abstractElement*> getAllElements(); 79 91 … … 89 101 bool isSnapshotElementEnable; 90 102 bool isMPoleElementEnable; 103 bool isQPoleElementEnable; 104 bool isSPoleElementEnable; 91 105 }; 92 106 #endif -
Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_abstractElementFactory.cc
r437 r487 18 18 isFitElementEnable(false), 19 19 isSnapshotElementEnable(false), 20 isMPoleElementEnable(false) 20 isMPoleElementEnable(false), 21 isQPoleElementEnable(false), 22 isSPoleElementEnable(false) 21 23 {} 22 24 … … 32 34 isSnapshotElementEnable = false; 33 35 isMPoleElementEnable = false; 36 isQPoleElementEnable = false; 37 isSPoleElementEnable = false; 34 38 } 35 39 … … 106 110 } 107 111 112 GWt_elementQpole* GWt_abstractElementFactory::createQPoleElement() 113 { 114 if (isQPoleElementEnable) { 115 return new GWt_elementQpole(); 116 } 117 return NULL; 118 } 119 120 GWt_elementSpole* GWt_abstractElementFactory::createSPoleElement() 121 { 122 if (isSPoleElementEnable) { 123 return new GWt_elementSpole(); 124 } 125 return NULL; 126 } 127 108 128 vector <GWt_abstractElement*> GWt_abstractElementFactory::getAllElements() 109 129 { … … 136 156 elems.push_back(new GWt_elementMpole()); 137 157 } 158 if (isQPoleElementEnable) { 159 elems.push_back(new GWt_elementQpole()); 160 } 161 if (isSPoleElementEnable) { 162 elems.push_back(new GWt_elementSpole()); 163 } 138 164 139 165 return elems; -
Interface_Web/trunk/pspaWT/sources/userInterface/src/GWt_elementLigneFaisceau.cc
r483 r487 69 69 gridLayout->addWidget (dropZoneRight_,0,2); 70 70 71 // add the image if present 72 71 // add the image if present 73 72 nomdElements::typedElement eType = abstractElem->getNomdElement().getElementType(); 74 73 75 74 switch ( eType ) { 75 76 76 case nomdElements::RFgun : 77 77 GWt_abstractElement_deprecated_ = new GWt_elementRfgun(this,abstractElem); … … 97 97 case nomdElements::mpole : 98 98 GWt_abstractElement_deprecated_ = new GWt_elementMpole(this,abstractElem); 99 break; 100 case nomdElements::qpole : 101 GWt_abstractElement_deprecated_ = new GWt_elementQpole(this,abstractElem); 102 break; 103 case nomdElements::spole : 104 GWt_abstractElement_deprecated_ = new GWt_elementSpole(this,abstractElem); 99 105 break; 100 106 case nomdElements::snapshot :
Note: See TracChangeset
for help on using the changeset viewer.