|
ATLAS Offline Software
|
#include <VP1CaloReadoutSystem.h>
|
| VP1CaloReadoutSystem () |
|
| ~VP1CaloReadoutSystem () |
|
QWidget * | buildController () |
|
void | systemcreate (StoreGateSvc *detstore) |
|
void | buildPermanentSceneGraph (StoreGateSvc *detstore, SoSeparator *root) |
|
void | buildEventSceneGraph (StoreGateSvc *sg, SoSeparator *root) |
|
void | createEtaPhi () |
|
void | createHV () |
|
void | userPickedNode (SoNode *pickedNode, SoPath *pickedPath) |
|
void | userClickedOnBgd () |
|
QByteArray | saveState () |
|
void | restoreFromState (QByteArray ba) |
|
void | ensureBuildController () |
|
void | updateGUI () |
|
virtual void | systemerase () |
|
virtual void | systemuncreate () |
|
void | warnOnDisabledNotifications () const |
|
void | registerCamera (SoCamera *camera) |
|
void | registerViewer (SoQtViewer *viewer) |
|
void | registerSelectionNode (SoCooperativeSelection *) |
|
void | unregisterSelectionNode (SoCooperativeSelection *) |
|
void | setUserSelectionNotificationsEnabled (SoCooperativeSelection *sel, bool enabled) |
|
virtual void | userSelectedSingleNode (SoCooperativeSelection *, SoNode *, SoPath *) |
|
virtual void | userDeselectedSingleNode (SoCooperativeSelection *, SoNode *, SoPath *) |
|
virtual void | userChangedSelection (SoCooperativeSelection *, QSet< SoNode * >, QSet< SoPath * >) |
|
virtual void | deselectAll (SoCooperativeSelection *exception_sel=0) |
|
CamList | getCameraList () |
|
virtual QWidget * | buildExtraDisplayWidget () |
|
const QString & | name () const |
|
const QString & | information () const |
|
const QString & | contact_info () const |
|
QWidget * | controllerWidget () |
|
void | message (const QString &) const |
|
void | message (const QStringList &, const QString &addtoend="") const |
|
void | message (const QString &addtostart, const QStringList &, const QString &addtoend="") const |
|
void | messageDebug (const QString &) const |
|
void | messageDebug (const QStringList &, const QString &addtoend="") const |
|
void | messageDebug (const QString &addtostart, const QStringList &, const QString &addtoend="") const |
|
void | messageVerbose (const QString &) const |
|
void | messageVerbose (const QStringList &, const QString &addtoend="") const |
|
void | messageVerbose (const QString &addtostart, const QStringList &, const QString &addtoend="") const |
|
StoreGateSvc * | storeGate () const |
|
StoreGateSvc * | eventStore () const |
|
StoreGateSvc * | detectorStore () const |
|
ISvcLocator * | serviceLocator () const |
|
IToolSvc * | toolSvc () const |
|
State | state () const |
|
ActiveState | activeState () const |
|
Definition at line 12 of file VP1CaloReadoutSystem.h.
◆ CamList
◆ CamListItr
◆ ActiveState
◆ POSITION
◆ State
Enumerator |
---|
CONSTRUCTED | |
REFRESHED | |
ERASED | |
UNCREATED | |
Definition at line 143 of file IVP1System.h.
◆ VP1CaloReadoutSystem()
VP1CaloReadoutSystem::VP1CaloReadoutSystem |
( |
| ) |
|
◆ ~VP1CaloReadoutSystem()
VP1CaloReadoutSystem::~VP1CaloReadoutSystem |
( |
| ) |
|
◆ acceptHV
void VP1CaloReadoutSystem::acceptHV |
( |
| ) |
|
|
protectedslot |
◆ activateClickedOutside
void IVP13DSystem::activateClickedOutside |
( |
| ) |
|
|
privateslotinherited |
◆ activeState()
◆ allowUpdateGUI()
void IVP1System::allowUpdateGUI |
( |
| ) |
|
|
privateinherited |
◆ buildController()
QWidget * VP1CaloReadoutSystem::buildController |
( |
| ) |
|
|
virtual |
◆ buildEventSceneGraph()
void VP1CaloReadoutSystem::buildEventSceneGraph |
( |
StoreGateSvc * |
sg, |
|
|
SoSeparator * |
root |
|
) |
| |
|
virtual |
◆ buildExtraDisplayWidget()
virtual QWidget* IVP13DSystem::buildExtraDisplayWidget |
( |
| ) |
|
|
inlinevirtualinherited |
◆ buildPermanentSceneGraph()
void VP1CaloReadoutSystem::buildPermanentSceneGraph |
( |
StoreGateSvc * |
detstore, |
|
|
SoSeparator * |
root |
|
) |
| |
|
virtual |
Reimplemented from IVP13DSystemSimple.
Definition at line 343 of file VP1CaloReadoutSystem.cxx.
349 SoDrawStyle *drawStyle =
new SoDrawStyle();
350 drawStyle->lineWidth=2;
351 drawStyle->pointSize=3;
353 SoLightModel *lightModel =
new SoLightModel();
354 lightModel->model=SoLightModel::BASE_COLOR;
366 root->addChild(drawStyle);
367 root->addChild(lightModel);
373 SoMaterial *white =
new SoMaterial();
374 white->diffuseColor.setValue(1,1,1);
379 root->addChild(white);
410 for (
int i=0;
i<3;
i++) {
570 for (
int i=0;
i<4;
i++) {
708 while (
it.hasNext()) {
710 if (
it.value()->isChecked())
◆ channel()
◆ checkboxChanged [1/2]
void VP1CaloReadoutSystem::checkboxChanged |
( |
| ) |
|
|
protectedslot |
◆ checkboxChanged [2/2]
void VP1CaloReadoutSystem::checkboxChanged |
( |
QCheckBox * |
cb | ) |
|
|
protectedslot |
Definition at line 1634 of file VP1CaloReadoutSystem.cxx.
1647 if (swName==
"embCheckBoxHV" ||
1648 swName==
"embCheckBoxMods" ||
1649 swName==
"emecCheckBoxMods" ||
1650 swName==
"emecCheckboxHV" ||
1651 swName==
"embPresamplerCheckBoxHV" ||
1652 swName==
"embPresamplerCheckBoxMods" ||
1653 swName==
"emecPresamplerCheckBoxMods" ||
1654 swName==
"emecPresamplerCheckboxHV" ||
1655 swName==
"hecS0CheckBoxHV" ||
1656 swName==
"hecS1CheckBoxHV" ||
1657 swName==
"hecS2CheckBoxHV" ||
1658 swName==
"hecS3CheckBoxHV" ||
1659 swName==
"fcalS0CheckBoxHV" ||
1660 swName==
"fcalS1CheckBoxHV" ||
1661 swName==
"fcalS2CheckBoxHV" )
1675 sw->whichChild = SO_SWITCH_ALL;
1678 sw->whichChild = SO_SWITCH_NONE;
1680 else if (swName==
"badHVDisplayCheckBox")
1689 else if (swName==
"missingHVDisplayCheckBox")
1698 else if (swName==
"normalHVDisplayCheckBox")
◆ contact_info()
const QString & IVP1System::contact_info |
( |
| ) |
const |
|
inherited |
◆ controllerWidget()
QWidget * IVP1System::controllerWidget |
( |
| ) |
|
|
inherited |
◆ create()
◆ createEtaPhi()
void VP1CaloReadoutSystem::createEtaPhi |
( |
| ) |
|
Definition at line 1221 of file VP1CaloReadoutSystem.cxx.
1232 SoSeparator *
sep[
NPHISECTORS]= {
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1233 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1234 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1235 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator()};
1249 double zMin = cellPtr->getZMinLocal(
pos);
1250 double zMax = cellPtr->getZMaxLocal(
pos);
1251 double r = cellPtr->getRLocal(
pos);
1252 double phiMin = cellPtr->getPhiLocalLower();
1253 double phiMax = cellPtr->getPhiLocalUpper();
1256 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1257 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,zMin));
1258 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,zMin));
1259 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,zMax));
1260 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,zMax));
1261 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,zMin));
1263 SoLineSet *
ls =
new SoLineSet();
1265 ls->vertexProperty=vtxProperty;
1267 int p =
int ((cellPtr->getPhiMaxNominal() + cellPtr->getPhiMinNominal())/2.0 *
NPHISECTORS/2.0/
M_PI);
1289 SoSeparator *
sep[
NPHISECTORS]= {
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1290 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1291 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1292 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator()};
1295 for (
int i=0;
i<1024;
i++) {
1298 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1301 for (
int j=0; j<14; j++) {
1302 double xcent = absorberSection->
XCent(
i,j);
1303 double ycent = absorberSection->
YCent(
i,j);
1304 double cosU = absorberSection->
Cosu(
i,j);
1305 double sinU = absorberSection->
Sinu(
i,j);
1306 double halfLength = absorberSection->
HalfLength(
i,j);
1307 vtxProperty->vertex.set1Value(
cc++, SbVec3f(xcent, ycent, 0.0)-SbVec3f(cosU, sinU, 0)*halfLength);
1308 vtxProperty->vertex.set1Value(
cc++, SbVec3f(xcent, ycent, 0.0)+SbVec3f(cosU, sinU, 0)*halfLength);
1310 SoLineSet *
ls =
new SoLineSet();
1312 ls->vertexProperty=vtxProperty;
1335 SoSeparator *fsep =
new SoSeparator;
1337 SoTransform *soxf =
new SoTransform();
1338 soxf->translation.setValue(vFocal.x(),vFocal.y(),vFocal.z());
1339 SoSphere *sphere =
new SoSphere();
1340 sphere->radius=10.0;
1341 fsep->addChild(soxf);
1342 fsep->addChild(sphere);
1347 catch (
const std::runtime_error &
e) {
1354 SoSeparator *
sep[
NPHISECTORS]= {
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1355 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1356 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1357 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator()};
1371 double rMin = cellPtr->getRMinLocal(
pos);
1372 double rMax = cellPtr->getRMaxLocal(
pos);
1373 double z = cellPtr->getZLocal(
pos);
1374 double phiMin = cellPtr->getPhiLocalLower();
1375 double phiMax = cellPtr->getPhiLocalUpper();
1378 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1379 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
1380 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMax),rMin*
sin(phiMax) ,
z));
1381 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMax),rMax*
sin(phiMax) ,
z));
1382 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMin),rMax*
sin(phiMin) ,
z));
1383 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
1385 SoLineSet *
ls =
new SoLineSet();
1387 ls->vertexProperty=vtxProperty;
1389 int p =
int ((cellPtr->getPhiMaxNominal() + cellPtr->getPhiMinNominal())/2.0 *
NPHISECTORS/2.0/
M_PI);
1418 SoSeparator *fsep =
new SoSeparator;
1420 SoTransform *soxf =
new SoTransform();
1421 soxf->translation.setValue(vFocal.x(),vFocal.y(),vFocal.z());
1422 SoSphere *sphere =
new SoSphere();
1423 sphere->radius=10.0;
1424 fsep->addChild(soxf);
1425 fsep->addChild(sphere);
1433 SoSeparator *
sep[
NPHISECTORS]= {
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1434 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1435 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
1436 new SoSeparator(),
new SoSeparator(),
new SoSeparator(),
new SoSeparator()};
1454 double z = cellPtr->getZLocal(
pos);
1455 double rMin = cellPtr->getRMinLocalNominal(
pos);
1456 double rMax = cellPtr->getRMaxLocalNominal(
pos);
1459 double phiMin = cellPtr->getPhiLocalUpper();
1460 double phiMax = cellPtr->getPhiLocalLower();
1463 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1464 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
1465 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMax),rMin*
sin(phiMax) ,
z));
1466 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMax),rMax*
sin(phiMax) ,
z));
1467 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMin),rMax*
sin(phiMin) ,
z));
1468 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
1470 SoLineSet *
ls =
new SoLineSet();
1472 ls->vertexProperty=vtxProperty;
1475 int p =
int ((cellPtr->getPhiMaxNominal() + cellPtr->getPhiMinNominal())/2.0 *
NPHISECTORS/2.0/
M_PI);
1506 SoSeparator *
sep =
new SoSeparator();
1510 double x =
t->getX();
1511 double y =
t->getY();
1523 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1524 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
x-
dx+3,
y-
dy+3 ,
z));
1525 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
x+
dx-3,
y-
dy+3,
z));
1526 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
x+
dx-3,
y+
dy-3 ,
z));
1527 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
x-
dx+3,
y+
dy-3 ,
z));
1528 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
x-
dx+3,
y-
dy+3 ,
z));
1530 SoLineSet *
ls =
new SoLineSet();
1532 ls->vertexProperty=vtxProperty;
◆ createHV()
void VP1CaloReadoutSystem::createHV |
( |
| ) |
|
Definition at line 716 of file VP1CaloReadoutSystem.cxx.
722 SoMaterial *
red =
new SoMaterial();
723 red->diffuseColor.setValue(1,.3,.3);
726 SoMaterial *white =
new SoMaterial();
727 white->diffuseColor.setValue(1,1,1);
730 SoMaterial *
blue =
new SoMaterial();
731 blue->diffuseColor.setValue(0,0,1);
734 for (
int i=0;
i<3;
i++) {
740 for (
int i=0;
i<4;
i++) {
773 message(
"No Access To HV Information. The LArHVManager is NULL");
778 if (hvCablingKey.initialize().isFailure()) {
779 message(
"No Access To HV Information. Cannot retrieve LArHVIdMap.");
783 hvCablingKey.key()) ==
nullptr)
785 message(
"No Access To HV Information. Cannot retrieve LArHVIdMap.");
790 std::vector<const CondAttrListCollection*> attrLists;
795 if (i16Key.initialize().isFailure()) {
796 message(
"No Access To HV Information. Cannot retrieve I16.");
799 if (i8Key.initialize().isFailure()) {
800 message(
"No Access To HV Information. Cannot retrieve I8.");
804 i16Key.key()) ==
nullptr ||
806 i8Key.key()) ==
nullptr)
808 message(
"No Access To HV Information. Cannot retrieve LArHVIdMap.");
813 attrLists.push_back (*i16);
814 attrLists.push_back (*i8);
838 SoVertexProperty *vtxProperty =
new SoVertexProperty();
839 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMin)));
840 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,
r*sinh(
etaMin)));
841 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,
r*sinh(
etaMax)));
842 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMax)));
843 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMin)));
845 SoLineSet *
ls =
new SoLineSet();
847 ls->vertexProperty=vtxProperty;
855 double voltage0 = hvdata_EMB.
voltage (electrode, 0);
856 double voltage1 = hvdata_EMB.
voltage (electrode, 1);
857 double nominalVoltage =
m_clockwork->
ui.embNominalSpinBox->value();
859 bool missing = voltage0 == -99999 || voltage1 == -99999;
862 SoVertexProperty *vtxProperty =
new SoVertexProperty();
866 SoLineSet *
ls =
new SoLineSet();
868 ls->vertexProperty=vtxProperty;
873 else if (outOfTolerance) {
903 SoVertexProperty *vtxProperty =
new SoVertexProperty();
904 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMin)));
905 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,
r*sinh(
etaMin)));
906 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,
r*sinh(
etaMax)));
907 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMax)));
908 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMin)));
910 SoLineSet *
ls =
new SoLineSet();
912 ls->vertexProperty=vtxProperty;
915 double voltage0 = hvdata_EMBPS.
voltage (embMod, 0);
916 double voltage1 = hvdata_EMBPS.
voltage (embMod, 1);
917 double nominalVoltage =
m_clockwork->
ui.embPresamplerNominalSpinBox->value();
919 bool missing = voltage0 == -99999 || voltage1 == -99999;
925 else if (outOfTolerance) {
938 QSpinBox *emecSpinBoxOuter[]= {
m_clockwork->
ui.emecNominalSpinBox_1,
945 QSpinBox *emecSpinBoxInner[]= {
m_clockwork->
ui.emecNominalSpinBox_8,
949 for (
int t=0;
t<2;
t++) {
958 double z =
e==0 ? -3740:3740;
968 double rMax=fabs(
z/sinh(
etaMin));
969 double rMin=fabs(
z/sinh(
etaMax));
973 SoVertexProperty *vtxProperty =
new SoVertexProperty();
974 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
975 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMax),rMin*
sin(phiMax) ,
z));
976 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMax),rMax*
sin(phiMax) ,
z));
977 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMin),rMax*
sin(phiMin) ,
z));
978 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
981 SoLineSet *
ls =
new SoLineSet();
983 ls->vertexProperty=vtxProperty;
988 double voltage0 = hvdata_EMEC.
voltage (electrode, 0);
989 double voltage1 = hvdata_EMEC.
voltage (electrode, 1);
990 double nominalVoltage = spinBoxes[
y]->value();
992 bool missing = voltage0 == -99999 || voltage1 == -99999;
995 double rMin=fabs(
z/sinh(
etaMin));
996 double rMax=fabs(
z/sinh(
etaMax));
1000 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1001 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(electrode.
getPhi()),rMin*
sin(electrode.
getPhi()) ,
z));
1002 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(electrode.
getPhi()),rMax*
sin(electrode.
getPhi()) ,
z));
1004 SoLineSet *
ls =
new SoLineSet();
1006 ls->vertexProperty=vtxProperty;
1011 else if (outOfTolerance) {
1030 double z =
e==0 ? -3650:3650;
1038 double rMax=fabs(
z/sinh(
etaMin));
1039 double rMin=fabs(
z/sinh(
etaMax));
1043 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1044 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
1045 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMax),rMin*
sin(phiMax) ,
z));
1046 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMax),rMax*
sin(phiMax) ,
z));
1047 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMin),rMax*
sin(phiMin) ,
z));
1048 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
1051 SoLineSet *
ls =
new SoLineSet();
1053 ls->vertexProperty=vtxProperty;
1056 double voltage0 = hvdata_EMECPS.
voltage (emecMod, 0);
1057 double voltage1 = hvdata_EMECPS.
voltage (emecMod, 1);
1058 double nominalVoltage =
m_clockwork->
ui.emecPresamplerNominalSpinBox->value();
1060 bool missing = voltage0 == -99999 || voltage1 == -99999;
1065 else if (outOfTolerance) {
1087 double voltage = hvdata_HEC.
voltage (subgap);
1088 double nominalVoltage =
m_clockwork->
ui.hecNominalSpinBox->value();
1089 bool outOfTolerance = fabs(voltage-nominalVoltage) >
double (
tolerance);
1090 bool missing = voltage == -99999;
1103 double z0 = (XF*HepGeom::Point3D<double>(0,0,element->getZLocal(
HECCell::FRONT))).
z();
1104 double z1 = (XF*HepGeom::Point3D<double>(0,0,element->getZLocal(
HECCell::BACK))).
z();
1107 double z =
z0 +
i*(z1-
z0)/4;
1111 double rMin =
s==0 ? 371 : 474;
1114 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1115 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
1116 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMax),rMin*
sin(phiMax) ,
z));
1117 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMax),rMax*
sin(phiMax) ,
z));
1118 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMin),rMax*
sin(phiMin) ,
z));
1119 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
1121 SoLineSet *
ls =
new SoLineSet();
1123 ls->vertexProperty=vtxProperty;
1127 else if (outOfTolerance) {
1149 double voltage = hvdata_FCAL.
voltage (fcalLine);
1156 const QSpinBox *spinBox=fcalSpin[
s];
1157 double nominalVoltage =
double (spinBox->value());
1159 bool outOfTolerance = fabs(voltage-nominalVoltage) >
double(
tolerance);
1160 bool missing = voltage == -99999;
1174 SoSeparator *
sep =
new SoSeparator();
1177 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1191 for (
unsigned int p=0;
p<(*t).getNumTubes();
p++) {
1194 if (&Line==&fcalLine) {
1195 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
T->getXLocal(),
T->getYLocal(),
z));
1199 SoPointSet *ps =
new SoPointSet();
1201 ps->vertexProperty=vtxProperty;
1206 else if (outOfTolerance) {
◆ deleteController()
void IVP1System::deleteController |
( |
| ) |
|
|
privateinherited |
◆ deselectAll()
Reimplemented in VP1PrepRawDataSystem.
Definition at line 331 of file IVP13DSystem.cxx.
335 if (
it->second!=
this)
337 if (
it->first!=exception_sel) {
338 if (
it->first->policy.getValue()!=SoCooperativeSelection::SINGLE) {
340 it->first->deselectAll();
343 if (
it->first->getList()->getLength()==1) {
345 SoPath *
path =
static_cast<SoPath*
>(
it->first->getList()->get(0));
347 it->first->deselectAll();
◆ detectorStore()
◆ disallowUpdateGUI()
void IVP1System::disallowUpdateGUI |
( |
| ) |
|
|
privateinherited |
◆ enabledPhiSectorsChanged
void VP1CaloReadoutSystem::enabledPhiSectorsChanged |
( |
| ) |
|
|
protectedslot |
Definition at line 315 of file VP1CaloReadoutSystem.cxx.
321 QList<int> justEnabledPhiSectors;
322 QList<int> justDisabledPhiSectors;
325 if (currentstate!=
v[iphi]) {
327 justDisabledPhiSectors << iphi;
329 justEnabledPhiSectors << iphi;
333 for (
int iphi : justDisabledPhiSectors)
335 for (
int iphi : justEnabledPhiSectors)
◆ ensureBuildController()
void IVP13DSystemSimple::ensureBuildController |
( |
| ) |
|
|
inherited |
◆ erase()
void IVP13DSystemSimple::erase |
( |
| ) |
|
|
privatevirtualinherited |
◆ eventStore()
◆ getCameraList()
std::set< SoCamera * > IVP13DSystem::getCameraList |
( |
| ) |
|
|
inherited |
Definition at line 395 of file IVP13DSystem.cxx.
400 SoCamera*cam = (*it)->getCamera();
402 cameralist.insert(cam);
◆ getSceneGraph()
SoSeparator * IVP13DSystemSimple::getSceneGraph |
( |
| ) |
const |
|
privatevirtualinherited |
◆ inactiveSystemTurnedActive
void IVP1System::inactiveSystemTurnedActive |
( |
| ) |
|
|
signalinherited |
◆ information()
const QString & IVP1System::information |
( |
| ) |
const |
|
inherited |
◆ isRefreshing()
bool IVP1System::isRefreshing |
( |
| ) |
|
|
privateinherited |
◆ itemFromSystemSelected
void IVP13DSystem::itemFromSystemSelected |
( |
| ) |
|
|
signalinherited |
◆ message() [1/3]
void IVP1System::message |
( |
const QString & |
str | ) |
const |
|
inherited |
◆ message() [2/3]
void IVP1System::message |
( |
const QString & |
addtostart, |
|
|
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 400 of file IVP1System.cxx.
402 if (addtostart.isEmpty()) {
406 if (addtoend.isEmpty()) {
◆ message() [3/3]
void IVP1System::message |
( |
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
◆ messageDebug() [1/3]
void IVP1System::messageDebug |
( |
const QString & |
str | ) |
const |
|
inherited |
◆ messageDebug() [2/3]
void IVP1System::messageDebug |
( |
const QString & |
addtostart, |
|
|
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 416 of file IVP1System.cxx.
418 if (addtostart.isEmpty()) {
422 if (addtoend.isEmpty()) {
◆ messageDebug() [3/3]
void IVP1System::messageDebug |
( |
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
◆ messageVerbose() [1/3]
void IVP1System::messageVerbose |
( |
const QString & |
str | ) |
const |
|
inherited |
◆ messageVerbose() [2/3]
void IVP1System::messageVerbose |
( |
const QString & |
addtostart, |
|
|
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
Definition at line 432 of file IVP1System.cxx.
436 if (addtostart.isEmpty()) {
440 if (addtoend.isEmpty()) {
◆ messageVerbose() [3/3]
void IVP1System::messageVerbose |
( |
const QStringList & |
l, |
|
|
const QString & |
addtoend = "" |
|
) |
| const |
|
inherited |
◆ name()
const QString & IVP1System::name |
( |
| ) |
const |
|
inherited |
◆ needErase
void IVP1System::needErase |
( |
| ) |
|
|
signalinherited |
◆ phiSectorTurnoff
void VP1CaloReadoutSystem::phiSectorTurnoff |
( |
int |
p | ) |
|
|
protectedslot |
◆ phiSectorTurnon
void VP1CaloReadoutSystem::phiSectorTurnon |
( |
int |
p | ) |
|
|
protectedslot |
◆ positionOptionChanged
void VP1CaloReadoutSystem::positionOptionChanged |
( |
| ) |
|
|
protectedslot |
◆ refresh()
void IVP13DSystemSimple::refresh |
( |
StoreGateSvc * |
storegate | ) |
|
|
privatevirtualinherited |
◆ registerCamera()
void IVP13DSystem::registerCamera |
( |
SoCamera * |
camera | ) |
|
|
inherited |
◆ registerController()
void IVP1System::registerController |
( |
QWidget * |
w | ) |
|
|
protectedinherited |
Definition at line 224 of file IVP1System.cxx.
231 messageVerbose(
"registerController w!=0 = "+QString(
w!=0?
"true":
"false"));
234 message(
"ERROR: Please don't register controllers after create().");
236 message(
"ERROR: Please only register controllers in CONSTRUCTED state.");
238 message(
"ERROR: Attempt to register null controller.");
242 message(
"ERROR: Attempt to register controller twice.");
◆ registerSelectionNode()
Definition at line 257 of file IVP13DSystem.cxx.
260 message(
"registerSelectionNode Error: NULL selection pointer!");
264 message(
"registerSelectionNode Error: Trying to register selection node more than once!");
◆ registerViewer()
void IVP13DSystem::registerViewer |
( |
SoQtViewer * |
viewer | ) |
|
|
inherited |
◆ restoreFromState()
void VP1CaloReadoutSystem::restoreFromState |
( |
QByteArray |
ba | ) |
|
|
virtual |
Reimplemented from IVP1System.
Definition at line 2479 of file VP1CaloReadoutSystem.cxx.
2482 if (
state.version()==0) {
2483 message(
"Warning: State data in .vp1 file has obsolete format - ignoring!");
2487 message(
"Warning: State data in .vp1 file is in wrong format - ignoring!");
2494 QMap<QString,bool> checkboxstate(
state.restore<QMap<QString,bool> >());
2496 while (
it.hasNext()) {
2498 state.widgetHandled(
it.value());
2499 if (checkboxstate.contains(
it.key())) {
2500 bool checked = checkboxstate.value(
it.key());
2501 if (
it.value()->isChecked()!=checked)
2502 it.value()->setChecked(checked);
2506 if (
state.version()<=2) {
2507 state.ignoreObsoletePhiSectionWidgetState();
2537 if (
state.version()>=2)
◆ saveState()
QByteArray VP1CaloReadoutSystem::saveState |
( |
| ) |
|
|
virtual |
◆ serviceLocator()
ISvcLocator * IVP1System::serviceLocator |
( |
| ) |
const |
|
inherited |
◆ setActiveState()
◆ setCanRegisterController()
void IVP1System::setCanRegisterController |
( |
const bool & |
c | ) |
|
|
privateinherited |
◆ setChannel()
◆ setGeomSelectable
void VP1CaloReadoutSystem::setGeomSelectable |
( |
bool |
flag | ) |
|
|
protectedslot |
◆ setRefreshing()
void IVP1System::setRefreshing |
( |
const bool & |
b | ) |
|
|
privateinherited |
◆ setState()
◆ setUserSelectionNotificationsEnabled()
Definition at line 310 of file IVP13DSystem.cxx.
313 message(
"setUserSelectionNotificationsEnabled Error: NULL selection pointer!");
317 message(
"setUserSelectionNotificationsEnabled Error: Called for selection which was never registered!");
◆ state()
◆ storeGate()
◆ str() [1/30]
◆ str() [2/30]
static QString VP1String::str |
( |
const bool |
b | ) |
|
|
inlinestaticinherited |
Definition at line 53 of file VP1String.h.
53 {
return b?
"True":
"False"; }
◆ str() [3/30]
static QString VP1String::str |
( |
const char * |
c | ) |
|
|
inlinestaticinherited |
◆ str() [4/30]
static QString VP1String::str |
( |
const double & |
d | ) |
|
|
inlinestaticinherited |
◆ str() [5/30]
static QString VP1String::str |
( |
const float & |
f | ) |
|
|
inlinestaticinherited |
◆ str() [6/30]
◆ str() [7/30]
QString VP1String::str |
( |
const QColor & |
c | ) |
|
|
staticinherited |
Definition at line 30 of file VP1String.cxx.
32 return c.isValid() ?
c.name() :
"Invalid";
◆ str() [8/30]
template<class T >
static QString VP1String::str |
( |
const QFlags< T > & |
f | ) |
|
|
inlinestaticinherited |
◆ str() [9/30]
template<class T >
static QString VP1String::str |
( |
const QList< T > & |
t | ) |
|
|
inlinestaticinherited |
◆ str() [10/30]
static QString VP1String::str |
( |
const QString & |
s | ) |
|
|
inlinestaticinherited |
◆ str() [11/30]
QString VP1String::str |
( |
const SbColor & |
c | ) |
|
|
staticinherited |
◆ str() [12/30]
QString VP1String::str |
( |
const SbVec2d & |
v | ) |
|
|
staticinherited |
◆ str() [13/30]
QString VP1String::str |
( |
const SbVec2f & |
v | ) |
|
|
staticinherited |
◆ str() [14/30]
QString VP1String::str |
( |
const SbVec2s & |
v | ) |
|
|
staticinherited |
◆ str() [15/30]
QString VP1String::str |
( |
const SbVec3d & |
v | ) |
|
|
staticinherited |
◆ str() [16/30]
QString VP1String::str |
( |
const SbVec3f & |
v | ) |
|
|
staticinherited |
◆ str() [17/30]
QString VP1String::str |
( |
const SbVec3s & |
v | ) |
|
|
staticinherited |
◆ str() [18/30]
QString VP1String::str |
( |
const SbVec4d & |
v | ) |
|
|
staticinherited |
◆ str() [19/30]
QString VP1String::str |
( |
const SbVec4f & |
v | ) |
|
|
staticinherited |
◆ str() [20/30]
template<class T >
static QString VP1String::str |
( |
const T * |
t | ) |
|
|
inlinestaticinherited |
Definition at line 87 of file VP1String.h.
87 {
return str(
static_cast<const void*
>(
t)); }
◆ str() [21/30]
QString VP1String::str |
( |
const void * |
p | ) |
|
|
staticinherited |
Definition at line 48 of file VP1String.cxx.
54 return QString (
s.str().c_str());
◆ str() [22/30]
◆ str() [23/30]
static QString VP1String::str |
( |
int |
n | ) |
|
|
inlinestaticinherited |
◆ str() [24/30]
static QString VP1String::str |
( |
long |
n | ) |
|
|
inlinestaticinherited |
◆ str() [25/30]
static QString VP1String::str |
( |
qlonglong |
n | ) |
|
|
inlinestaticinherited |
◆ str() [26/30]
static QString VP1String::str |
( |
qulonglong |
n | ) |
|
|
inlinestaticinherited |
◆ str() [27/30]
static QString VP1String::str |
( |
short int |
n | ) |
|
|
inlinestaticinherited |
◆ str() [28/30]
static QString VP1String::str |
( |
uint |
n | ) |
|
|
inlinestaticinherited |
◆ str() [29/30]
static QString VP1String::str |
( |
ulong |
n | ) |
|
|
inlinestaticinherited |
◆ str() [30/30]
static QString VP1String::str |
( |
unsigned short int |
n | ) |
|
|
inlinestaticinherited |
◆ sysmessage
void IVP1System::sysmessage |
( |
QString |
| ) |
const |
|
signalinherited |
◆ systemcreate()
void VP1CaloReadoutSystem::systemcreate |
( |
StoreGateSvc * |
detstore | ) |
|
|
virtual |
◆ systemerase()
void IVP13DSystemSimple::systemerase |
( |
| ) |
|
|
virtualinherited |
◆ systemuncreate()
void IVP13DSystemSimple::systemuncreate |
( |
| ) |
|
|
virtualinherited |
◆ toolSvc()
IToolSvc * IVP1System::toolSvc |
( |
| ) |
const |
|
inherited |
◆ uncreate()
void IVP13DSystemSimple::uncreate |
( |
| ) |
|
|
privatevirtualinherited |
◆ unregisterSelectionNode()
Definition at line 281 of file IVP13DSystem.cxx.
284 message(
"unregisterSelectionNode Error: NULL selection pointer!");
288 message(
"registerSelectionNode Error: Trying to unregister unknown selection node!");
◆ updateGUI()
void IVP13DSystemSimple::updateGUI |
( |
| ) |
|
|
inlineinherited |
◆ userChangedSelection()
◆ userClickedOnBgd()
void VP1CaloReadoutSystem::userClickedOnBgd |
( |
| ) |
|
|
virtual |
◆ userDeselectedSingleNode()
◆ userPickedNode()
void VP1CaloReadoutSystem::userPickedNode |
( |
SoNode * |
pickedNode, |
|
|
SoPath * |
pickedPath |
|
) |
| |
|
virtual |
Reimplemented from IVP13DSystemSimple.
Definition at line 1720 of file VP1CaloReadoutSystem.cxx.
1726 SoPickStyle *pickStyle =
new SoPickStyle();
1727 pickStyle->style=SoPickStyleElement::UNPICKABLE;
1731 std::ostringstream indexStream, etaBoundaryStream, phiBoundaryStream;
1735 std::map < SoNode *, const EMBHVElectrode*>::const_iterator
p =
m_clockwork->
EMBHVMap.find(mySelectedNode);
1743 std::ostringstream outstream;
1744 outstream <<
"Side: " <<
module.getSideIndex()
1745 <<
" Eta: " <<
module.getEtaIndex()
1746 <<
" Phi: " <<
module.getPhiIndex()
1747 <<
" Sector: " <<
module.getSectorIndex()
1749 <<
" Voltages: " << hvdata.
voltage (electrode, 0)
1750 <<
"/" << hvdata.
voltage (electrode, 1)
1751 <<
"; currents: " << hvdata.
current (electrode, 0)
1752 <<
"/" << hvdata.
current (electrode, 1);
1753 message (outstream.str().c_str());
1758 std::map < SoNode *, const EMECHVElectrode*>::const_iterator
p =
m_clockwork->
EMECHVMap.find(mySelectedNode);
1766 std::ostringstream outstream;
1767 outstream <<
"Side: " <<
module.getSideIndex()
1768 <<
" Wheel: " <<
module.getWheelIndex()
1769 <<
" Eta: " <<
module.getEtaIndex()
1770 <<
" Phi: " <<
module.getPhiIndex()
1771 <<
" Sector: " <<
module.getSectorIndex()
1773 <<
"Voltages: " << hvdata.
voltage (electrode, 0)
1774 <<
"/" << hvdata.
voltage (electrode, 1)
1775 <<
"; currents: " << hvdata.
current (electrode, 0)
1776 <<
"/" << hvdata.
current (electrode, 1);
1777 message (outstream.str().c_str());
1783 std::map < SoNode *, const HECHVSubgap*>::const_iterator
p =
m_clockwork->
HECHVMap.find(mySelectedNode);
1791 std::ostringstream outstream;
1792 outstream <<
"Side: " <<
module.getSideIndex()
1793 <<
" Phi: " <<
module.getPhiIndex()
1794 <<
" Sampling: " <<
module.getSamplingIndex()
1796 <<
"Voltage: " << hvdata.
voltage (subgap)
1797 <<
"; current: " << hvdata.
current (subgap);
1798 message (outstream.str().c_str());
1803 std::map < SoNode *, const FCALHVLine*>::const_iterator
p =
m_clockwork->
FCALHVMap.find(mySelectedNode);
1811 std::ostringstream outstream;
1812 outstream <<
"Side: " <<
module.getSideIndex()
1813 <<
" Sector: " <<
module.getSectorIndex()
1814 <<
" Sampling: " <<
module.getSamplingIndex()
1815 <<
" Line: " <<
line.getLineIndex()
1818 message (outstream.str().c_str());
1824 std::map < SoNode *, const FCALTile *>::const_iterator
p =
m_clockwork->
TileMap.find(mySelectedNode);
1827 const FCALTile *element = (*p).second;
1828 indexStream <<
"Element selected has identifier of " << element->
identify() << std::endl;
1829 indexStream <<
"I index of " << element->
getIndexI() << std::endl;
1830 indexStream <<
"J index of " << element->
getIndexJ() << std::endl;
1832 std::ostringstream highVoltageStream;
1833 highVoltageStream <<
"There are " << element->
getNumHVLines() <<
" high voltage lines. Status: " << std::endl;
1834 message(highVoltageStream.str().c_str());
1848 std::ostringstream highVoltageStream;
1850 highVoltageStream <<
i <<
' ' << hvdata.
voltage (*element->
getHVLine(
i)) << std::endl;
1852 message(highVoltageStream.str().c_str());
1868 SoSeparator *
sep =
new SoSeparator();
1879 SoMaterial *white =
new SoMaterial();
1880 white->diffuseColor.setValue(1.00,1.00, 1.00);
1882 SoDrawStyle *drawStyle =
new SoDrawStyle();
1883 drawStyle->lineWidth=3;
1884 drawStyle->pointSize=3;
1886 SoLightModel *lm =
new SoLightModel();
1887 lm->model=SoLightModel::BASE_COLOR;
1888 sep->addChild(white);
1889 sep->addChild(drawStyle);
1894 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1896 if (((*f).getHVLine(0) && (*f).getHVLine(0)==element->
getHVLine(0)) ||
1897 ((*f).getHVLine(1) && (*f).getHVLine(1)==element->
getHVLine(1)) ||
1898 ((*f).getHVLine(2) && (*f).getHVLine(2)==element->
getHVLine(2)) ||
1899 ((*f).getHVLine(3) && (*f).getHVLine(3)==element->
getHVLine(3)) ) {
1900 for (
unsigned int i=0;
i<(*f).getNumTubes();
i++) {
1902 vtxProperty->vertex.set1Value(
cc++, SbVec3f(myTube->getXLocal(),myTube->getYLocal(),
z));
1906 SoPointSet *ps =
new SoPointSet();
1908 ps->vertexProperty=vtxProperty;
1917 SoSeparator *
sep =
new SoSeparator();
1928 SoMaterial *white =
new SoMaterial();
1929 white->diffuseColor.setValue(1.00,1.00, 1.00);
1931 SoDrawStyle *drawStyle =
new SoDrawStyle();
1932 drawStyle->lineWidth=3;
1933 drawStyle->pointSize=3;
1935 SoLightModel *lm =
new SoLightModel();
1936 lm->model=SoLightModel::BASE_COLOR;
1937 sep->addChild(white);
1938 sep->addChild(drawStyle);
1943 SoVertexProperty *vtxProperty =
new SoVertexProperty();
1946 vtxProperty->vertex.set1Value(
cc++, SbVec3f(myTube->getXLocal(),myTube->getYLocal(),
z));
1948 SoPointSet *ps =
new SoPointSet();
1950 ps->vertexProperty=vtxProperty;
1960 std::map < SoNode *, HECCellConstLink>::const_iterator
p =
m_clockwork->
HECMap.find(mySelectedNode);
1964 indexStream <<
"Sampling Region,Eta,Phi indices of " << element->getSamplingIndex() <<
"," << element->getRegionIndex() <<
"," << element->getEtaIndex() <<
"," << element->getPhiIndex() << std::endl;
1965 phiBoundaryStream <<
"Phi min & max (CLHEP::deg) =" << element->getPhiLocalLower()*180/
M_PI <<
" " << element->getPhiLocalUpper()*180/
M_PI << std::endl;
1966 etaBoundaryStream <<
"Eta Min and Max " << element->getEtaMinNominal() <<
"," << element->getEtaMaxNominal() << std::endl;
1968 std::ostringstream highVoltageStream;
1969 highVoltageStream <<
"There are " << element->getNumSubgaps() <<
" subgaps. Status: " << std::endl;
1970 message (highVoltageStream.str().c_str());
1972 std::set<const HECHVModule*> modSet;
1973 if (element->getNumSubgaps() > 0) {
1978 for (
unsigned int i=0;
i<element->getNumSubgaps();
i++) {
1980 std::ostringstream highVoltageStream;
1981 highVoltageStream <<
i <<
" Status " << hvdata.
hvOn (element->getSubgap(
i))
1982 <<
" voltage: " << hvdata.
voltage (element->getSubgap(
i))
1983 <<
" current: " << hvdata.
current (element->getSubgap(
i))
1985 message(highVoltageStream.str().c_str());
1992 if (!
m_clockwork->
ui.highVoltageCheckBox->isChecked())
continue;
1994 SoSeparator *
sep =
new SoSeparator();
1996 SoMaterial *white =
new SoMaterial();
1997 white->diffuseColor.setValue(1.00,1.00, 1.00);
1999 SoDrawStyle *drawStyle =
new SoDrawStyle();
2000 drawStyle->lineWidth=3;
2001 drawStyle->pointSize=3;
2003 SoLightModel *lm =
new SoLightModel();
2004 lm->model=SoLightModel::BASE_COLOR;
2016 double z = (XF*HepGeom::Point3D<double>(0,0,element->getZLocal(
HECCell::FRONT))).
z();
2018 double phiMin =
module.getPhiMin();
2019 double phiMax =
module.getPhiMax();
2023 double rMin=element->getSamplingIndex()==0 ? 371 : 474;
2025 sep->addChild(white);
2026 sep->addChild(drawStyle);
2028 if (modSet.find(&
module)==modSet.end()) {
2031 SoVertexProperty *vtxProperty =
new SoVertexProperty();
2032 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
2033 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMax),rMin*
sin(phiMax) ,
z));
2034 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMax),rMax*
sin(phiMax) ,
z));
2035 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMin),rMax*
sin(phiMin) ,
z));
2036 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
2039 SoLineSet *
ls =
new SoLineSet();
2041 ls->vertexProperty=vtxProperty;
2051 std::map < SoNode *, EMECCellConstLink>::const_iterator
p =
m_clockwork->
EMECMap.find(mySelectedNode);
2055 indexStream<<
"Sampling Region,Eta,Phi indices of " << element->getSamplingIndex() <<
"," << element->getRegionIndex() <<
"," << element->getEtaIndex() <<
"," << element->getPhiIndex() << std::endl;
2056 etaBoundaryStream <<
"Eta Min and Max " << element->getEtaMin() <<
"," << element->getEtaMax() << std::endl;
2057 phiBoundaryStream <<
"Phi min & max (CLHEP::deg) =" << element->getPhiLocalLower()*180/
M_PI <<
" " << element->getPhiLocalUpper()*180/
M_PI << std::endl;
2060 if (element->getSamplingIndex()==0) {
2067 std::ostringstream highVoltageStream;
2068 highVoltageStream <<
"Presampler cell. HV Status: " <<
'\n';
2069 message(highVoltageStream.str().c_str());
2070 highVoltageStream <<
"Status: "
2076 message(highVoltageStream.str().c_str());
2079 SoSeparator *
sep =
new SoSeparator();
2081 SoMaterial *white =
new SoMaterial();
2082 white->diffuseColor.setValue(1.00,1.00, 1.00);
2084 SoDrawStyle *drawStyle =
new SoDrawStyle();
2085 drawStyle->lineWidth=3;
2086 drawStyle->pointSize=3;
2088 SoLightModel *lm =
new SoLightModel();
2089 lm->model=SoLightModel::BASE_COLOR;
2097 double z = (element->getZLocal(
pos)+
2098 element->getDescriptor()->getManager()->getFocalToRef() +
2099 element->getDescriptor()->getManager()->getRefToActive())* (element->getEndcapIndex()==0 ? -1:1);
2100 double phiMin =
module.getPhiMin();
2101 double phiMax =
module.getPhiMax();
2106 double rMax=fabs(
z/sinh(
etaMin));
2107 double rMin=fabs(
z/sinh(
etaMax));
2109 sep->addChild(white);
2110 sep->addChild(drawStyle);
2113 SoVertexProperty *vtxProperty =
new SoVertexProperty();
2114 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
2115 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMax),rMin*
sin(phiMax) ,
z));
2116 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMax),rMax*
sin(phiMax) ,
z));
2117 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMin),rMax*
sin(phiMin) ,
z));
2118 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
2121 SoLineSet *
ls =
new SoLineSet();
2123 ls->vertexProperty=vtxProperty;
2131 std::ostringstream highVoltageStream;
2132 highVoltageStream <<
"There are " << element->getNumElectrodes() <<
" electrodes. Status: " << std::endl;
2133 message(highVoltageStream.str().c_str());
2135 std::set<const EMECHVModule*> modSet;
2136 if (element->getNumElectrodes() > 0) {
2137 for (
unsigned int i=0;
i<element->getNumElectrodes();
i++) {
2145 std::ostringstream highVoltageStream;
2146 highVoltageStream <<
i <<
' '
2147 << element->getElectrode(
i).getElectrodeIndex() <<
") status: "
2148 << hvdata.
hvOn(element->getElectrode(
i),0) <<
' '
2149 << hvdata.
hvOn(element->getElectrode(
i),1) << std::endl;
2150 message(highVoltageStream.str().c_str());
2153 std::ostringstream highVoltageStream;
2154 highVoltageStream <<
i <<
'('
2155 << element->getElectrode(
i).getElectrodeIndex() <<
") voltage: "
2156 << hvdata.
voltage(element->getElectrode(
i),0) <<
' '
2157 << hvdata.
voltage(element->getElectrode(
i),1) << std::endl;
2158 message(highVoltageStream.str().c_str());
2161 std::ostringstream highVoltageStream;
2162 highVoltageStream <<
i <<
'(' << element->getElectrode(
i).getElectrodeIndex() <<
") currents: "
2163 << hvdata.
current(element->getElectrode(
i),0) <<
' '
2164 << hvdata.
current(element->getElectrode(
i),1) << std::endl;
2165 message(highVoltageStream.str().c_str());
2173 if (!
m_clockwork->
ui.highVoltageCheckBox->isChecked())
continue;
2175 SoSeparator *
sep =
new SoSeparator();
2177 SoMaterial *white =
new SoMaterial();
2178 white->diffuseColor.setValue(1.00,1.00, 1.00);
2180 SoDrawStyle *drawStyle =
new SoDrawStyle();
2181 drawStyle->lineWidth=3;
2182 drawStyle->pointSize=3;
2184 SoLightModel *lm =
new SoLightModel();
2185 lm->model=SoLightModel::BASE_COLOR;
2193 double z = (element->getZLocal(
pos)+
2194 element->getDescriptor()->getManager()->getFocalToRef() +
2195 element->getDescriptor()->getManager()->getRefToActive())* (element->getEndcapIndex()==0 ? -1:1);
2196 double phiMin =
module.getPhiMin();
2197 double phiMax =
module.getPhiMax();
2202 double rMax=fabs(
z/sinh(
etaMin));
2203 double rMin=fabs(
z/sinh(
etaMax));
2205 sep->addChild(white);
2206 sep->addChild(drawStyle);
2208 if (modSet.find(&
module)==modSet.end()) {
2211 SoVertexProperty *vtxProperty =
new SoVertexProperty();
2212 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
2213 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMax),rMin*
sin(phiMax) ,
z));
2214 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMax),rMax*
sin(phiMax) ,
z));
2215 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(phiMin),rMax*
sin(phiMin) ,
z));
2216 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(phiMin),rMin*
sin(phiMin) ,
z));
2219 SoLineSet *
ls =
new SoLineSet();
2221 ls->vertexProperty=vtxProperty;
2227 SoVertexProperty *vtxProperty =
new SoVertexProperty();
2228 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMin*
cos(element->getElectrode(
i).getPhi()),rMin*
sin(element->getElectrode(
i).getPhi()) ,
z));
2229 vtxProperty->vertex.set1Value(
cc++, SbVec3f(rMax*
cos(element->getElectrode(
i).getPhi()),rMax*
sin(element->getElectrode(
i).getPhi()) ,
z));
2230 SoLineSet *
ls =
new SoLineSet();
2232 ls->vertexProperty=vtxProperty;
2246 std::map < SoNode *, EMBCellConstLink>::const_iterator
p =
m_clockwork->
EMBMap.find(mySelectedNode);
2251 indexStream<<
"Sampling Region,Eta,Phi indices of " << element->getSamplingIndex() <<
"," << element->getRegionIndex() <<
"," << element->getEtaIndex() <<
"," << element->getPhiIndex() << std::endl;
2252 etaBoundaryStream<<
"Eta Min and Max " << element->getEtaMin() <<
"," << element->getEtaMax() << std::endl;
2253 phiBoundaryStream<<
"Phi min & max (CLHEP::deg) =" << element->getPhiLocalLower()*180/
M_PI <<
" " << element->getPhiLocalUpper()*180/
M_PI <<
'\n';
2256 if (element->getSamplingIndex()==0) {
2262 std::ostringstream highVoltageStream;
2263 highVoltageStream <<
"Presampler cell. HV Status: " <<
'\n';
2264 message(highVoltageStream.str().c_str());
2265 highVoltageStream <<
"Status: "
2268 highVoltageStream <<
"Current: "
2271 highVoltageStream <<
"Voltage: "
2275 message(highVoltageStream.str().c_str());
2277 SoSeparator *
sep =
new SoSeparator();
2279 SoMaterial *white =
new SoMaterial();
2280 white->diffuseColor.setValue(1.00,1.00, 1.00);
2282 SoDrawStyle *drawStyle =
new SoDrawStyle();
2283 drawStyle->lineWidth=3;
2284 drawStyle->pointSize=3;
2286 SoLightModel *lm =
new SoLightModel();
2287 lm->model=SoLightModel::BASE_COLOR;
2295 double r = element->getRLocal(
pos);
2296 double phiMin =
module.getPhiMin();
2297 double phiMax =
module.getPhiMax();
2300 sep->addChild(white);
2301 sep->addChild(drawStyle);
2307 SoVertexProperty *vtxProperty =
new SoVertexProperty();
2308 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMin)));
2309 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,
r*sinh(
etaMin)));
2310 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,
r*sinh(
etaMax)));
2311 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMax)));
2312 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMin)));
2314 SoLineSet *
ls =
new SoLineSet();
2316 ls->vertexProperty=vtxProperty;
2322 std::ostringstream highVoltageStream;
2323 highVoltageStream <<
"There are " << element->getNumElectrodes() <<
" electrodes. Status: " <<
'\n';
2324 message(highVoltageStream.str().c_str());
2325 std::set<const EMBHVModule*> modSet;
2326 if (element->getNumElectrodes() > 0) {
2331 for (
unsigned int i=0;
i<element->getNumElectrodes();
i++) {
2332 highVoltageStream <<
i <<
"Status: " << element->getElectrode(
i).getElectrodeIndex() <<
' '
2333 << hvdata.
hvOn (element->getElectrode(
i), 0) <<
' '
2334 << hvdata.
hvOn (element->getElectrode(
i), 1) <<
'\n';
2335 highVoltageStream <<
i <<
"Current: "
2336 << element->getElectrode(
i).getElectrodeIndex() <<
' '
2337 << hvdata.
current (element->getElectrode(
i), 0) <<
' '
2338 << hvdata.
current (element->getElectrode(
i), 1) <<
'\n';
2339 highVoltageStream <<
i <<
"Voltage: " << element->getElectrode(
i).getElectrodeIndex() <<
' '
2340 << hvdata.
voltage (element->getElectrode(
i), 0) <<
' '
2341 << hvdata.
voltage (element->getElectrode(
i), 1) <<
'\n';
2342 message(highVoltageStream.str().c_str());
2348 if (!
m_clockwork->
ui.highVoltageCheckBox->isChecked())
continue;
2350 SoSeparator *
sep =
new SoSeparator();
2352 SoMaterial *white =
new SoMaterial();
2353 white->diffuseColor.setValue(1.00,1.00, 1.00);
2355 SoDrawStyle *drawStyle =
new SoDrawStyle();
2356 drawStyle->lineWidth=3;
2357 drawStyle->pointSize=3;
2359 SoLightModel *lm =
new SoLightModel();
2360 lm->model=SoLightModel::BASE_COLOR;
2368 double r = element->getRLocal(
pos);
2369 double phiMin =
module.getPhiMin();
2370 double phiMax =
module.getPhiMax();
2373 sep->addChild(white);
2374 sep->addChild(drawStyle);
2377 if (modSet.find(&
module)==modSet.end()) {
2383 SoVertexProperty *vtxProperty =
new SoVertexProperty();
2384 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMin)));
2385 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,
r*sinh(
etaMin)));
2386 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMax),
r*
sin(phiMax) ,
r*sinh(
etaMax)));
2387 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMax)));
2388 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(phiMin),
r*
sin(phiMin) ,
r*sinh(
etaMin)));
2390 SoLineSet *
ls =
new SoLineSet();
2392 ls->vertexProperty=vtxProperty;
2398 SoVertexProperty *vtxProperty =
new SoVertexProperty();
2399 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(element->getElectrode(
i).getPhi()),
r*
sin(element->getElectrode(
i).getPhi()) ,
r*sinh(
etaMin)));
2400 vtxProperty->vertex.set1Value(
cc++, SbVec3f(
r*
cos(element->getElectrode(
i).getPhi()),
r*
sin(element->getElectrode(
i).getPhi()) ,
r*sinh(
etaMax)));
2402 SoLineSet *
ls =
new SoLineSet();
2404 ls->vertexProperty=vtxProperty;
2418 message(etaBoundaryStream.str().c_str());
2421 message(phiBoundaryStream.str().c_str());
2424 message(indexStream.str().c_str());
◆ userSelectedSingleNode()
◆ verbose()
static bool IVP1System::verbose |
( |
| ) |
|
|
inlinestaticinherited |
◆ warnOnDisabledNotifications()
void IVP13DSystemSimple::warnOnDisabledNotifications |
( |
| ) |
const |
|
inherited |
Definition at line 221 of file IVP13DSystemSimple.cxx.
223 QList<SoNode*> nodesR;
224 QList<SoNode*> nodesE;
227 if (!nodesR.isEmpty()) {
228 message(
"WARNING: Found "+
str(nodesR.count())+
" node"+QString(nodesR.count()>1?
"s":0)+
" with disabled notifications in permanent scenegraph:");
229 for (SoNode *
node : nodesR)
230 message(
" => Node ("+
str(
node)+
") of type "+QString(
node->getTypeId().getName().getString())+
", named "+QString(
node->getName().getString()));
232 if (!nodesE.isEmpty()) {
233 message(
"WARNING: Found "+
str(nodesE.count())+
" node"+QString(nodesE.count()>1?
"s":0)+
" with disabled notifications in event scenegraph:");
234 for (SoNode *
node : nodesE)
235 message(
" => Node ("+
str(
node)+
") of type "+QString(
node->getTypeId().getName().getString())+
", named "+QString(
node->getName().getString()));
◆ m_clockwork
◆ m_d
Imp* IVP13DSystemSimple::m_d |
|
privateinherited |
◆ s_vp1verbose
The documentation for this class was generated from the following files:
FCALHVData getData(const LArHVIdMapping &hvIdMapping, const std::vector< const CondAttrListCollection * > &attrLists) const
def retrieve(aClass, aKey=None)
JetConstituentVector::iterator iterator
virtual void systemuncreate()
bool hvOn(const EMBHVElectrode &electrode, const int &iGap) const
std::map< SoNode *, EMBCellConstLink > EMBMap
SoSwitch * fcalNormalSwitch[3]
This class provides direct access to information on the HV electrodes within the EMEC....
unsigned int getNumTubes() const
Gets the number of tubes in the tile.
SoSwitch * embSubSwitch[4][NPHISECTORS]
unsigned int beginEtaIndex() const
QMap< QCheckBox *, QString > checkBoxNamesMap
unsigned int beginEtaIndex() const
Returns the first eta index in the region.
bool hvOn(const EMECHVElectrode &electrode, const int &iGap) const
const QString contact_info
SoSeparator * embPreBadSep
static unsigned int endSideIndex()
static std::map< SoCooperativeSelection *, IVP13DSystem * > selection2system
Describes one HV Module within the HEC.
const EMECPresamplerHVManager & getEMECPresamplerHVManager() const
static unsigned int beginSideIndex()
SoSwitch * emecPreNormalSwitch
A manager class providing access to readout geometry information for the forward calorimeter.
GeoIntrusivePtr< const HECCell > HECCellConstLink
@Class: HECCellConstLink
SoSeparator * emecPreModsSeparator
SoSeparator * emecPreMissingSep
const EMECHVModule & getHVModule(unsigned int iSide, unsigned int iEta, unsigned int iPhi, unsigned int iSector) const
const EMECHVManager & getManager() const
QMap< QString, SoSwitch * > switchMap
path
python interpreter configuration --------------------------------------—
Record of All Electrode Straight Pieces.
Smart Pointer to EMEC Cells. This reference counted link allocates on demand. It audits the total poi...
static unsigned int beginSideIndex()
static void made_selection(void *userdata, SoPath *path)
double current(const EMECPresamplerHVModule &module, const int &iGap) const
std::vector< Identifier > ID
std::string find(const std::string &s)
return a remapped string
double voltage(const EMECPresamplerHVModule &module, const int &iGap) const
IVP13DSystemSimple(const QString &name, const QString &information, const QString &contact_info)
std::vector< const FCALModule * >::const_iterator ConstIterator
std::set< SoQtViewer * > viewers
virtual QWidget * buildController()
void serialise(const std::vector< const IRoiDescriptor * > &rois, roiserial_type &s)
serialise an entire vector of IRoiDescriptors
static unsigned int endSideIndex()
A manager class providing access to readout geometry information for the electromagnetic endcap calor...
SoSwitch * hecBadSwitch[4]
unsigned int endPhiIndex() const
static unsigned int beginPhiIndex()
unsigned int beginPhiIndex() const
returns the first phi index in the region.
SoSwitch * embPreBadSwitch
static unsigned int beginSideIndex()
SoSeparator * emecSeparator[4]
SoSwitch * embMissingSwitch
SoSwitch * embPreHVSwitch
std::map< SoNode *, HECCellConstLink > HECMap
SoSeparator * emecSubSep[4][NPHISECTORS]
const EMECHVElectrode & getElectrode(unsigned int iElectrode) const
const Amg::Transform3D & getAbsoluteTransform(const GeoAlignmentStore *alignStore=nullptr) const
Returns the absolute transform of this element.
SoSeparator * hecMissingSep[4]
FCALModule::ConstIterator endTiles() const
Iteration over FCAL Tiles.
SoSwitch * emecNormalSwitch
EMECPresamplerHVData getData(const LArHVIdMapping &hvIdMapping, const std::vector< const CondAttrListCollection * > &attrLists) const
const double & Sinu(int stackid, int cellid) const
HECHVData getData(const LArHVIdMapping &hvIdMapping, const std::vector< const CondAttrListCollection * > &attrLists) const
int getIndexI() const
Returns the index "i" of the tile.
EMECHVData getData(const LArHVIdMapping &hvIdMapping, const std::vector< const CondAttrListCollection * > &attrLists) const
double voltage(const FCALHVLine &line) const
double voltage(const EMECHVElectrode &electrode, const int &iGap) const
unsigned int endSectorIndex() const
SoSeparator * hecSubSep[4][NPHISECTORS]
unsigned int endEtaIndex() const
SoSeparator * emecHVSeparator
unsigned int getSamplingIndex() const
Returns the Sampling Layer Index.
unsigned int beginPhiIndex() const
returns the first phi index in the region.
void inactiveSystemTurnedActive()
unsigned int beginEtaIndex() const
returns the first eta index in the region.
static const EMBDetectorManager * embDetMgr()
std::map< SoNode *, EMECCellConstLink > EMECMap
SoSwitch * embPreMissingSwitch
unsigned int endPhiIndex() const
unsigned int endPhiIndex() const
SoSeparator * embSeparator[4]
unsigned int beginEtaIndex() const
returns the first eta index in the region.
static void clickedoutside(void *userdata, SoCooperativeSelection *sel)
const HECHVManager & getManager() const
static unsigned int beginSectorIndex()
double current(const EMBHVElectrode &electrode, const int &iGap) const
const FCALHVModule & getHVModule(unsigned int iSide, unsigned int iSector, unsigned int iSampling) const
SoSeparator * emecModsSeparator
const Amg::Transform3D & getAbsoluteTransform(const GeoAlignmentStore *alignStore=nullptr) const
Returns the absolute transform of this element.
static QString str(const QString &s)
unsigned int beginPhiIndex() const
SoSwitch * emecPreBadSwitch
SoSeparator * embPreModsSeparator
virtual void buildPermanentSceneGraph(StoreGateSvc *detstore, SoSeparator *root)
const EMECPresamplerHVModule & getHVModule(unsigned int iSide, unsigned int iPhi) const
static unsigned int beginSideIndex()
unsigned int endEtaIndex() const
static const HECDetectorManager * hecDetMgr()
GeoIntrusivePtr< const EMBCell > EMBCellConstLink
SoSeparator * fcalSeparator[3]
static const bool s_vp1verbose
SoSwitch * embNormalSwitch
HepGeom::Point3D< double > getFocalPointPos() const
Returns the position of the focal point of the EMEC.
const double & YCent(int stackid, int cellid) const
const EMBHVManager & getEMBHVManager() const
unsigned int beginPhiIndex() const
Returns the first phi index in the region.
virtual QByteArray saveState()
const EMBHVModule & getHVModule(unsigned int iSide, unsigned int iEta, unsigned int iPhi, unsigned int iSector) const
unsigned int beginEtaIndex() const
static const FCALDetectorManager * fcalDetMgr()
SoSeparator * embPreHVSeparator
SoMaterial * emecMaterial
SoCooperativeSelection * root
SoSwitch * embPreModsSwitch
This class provides direct access to information on the HV electrodes within the barrels....
unsigned int beginPhiIndex() const
virtual void buildEventSceneGraph(StoreGateSvc *sg, SoSeparator *root)=0
A tile of the forward calorimeter readout geometry.
unsigned int getNumElectrodes() const
bool hvOn(const EMECPresamplerHVModule &module, const int &iGap) const
A manager class providing access to readout geometry information for the electromagnetic barrel calor...
const EMBHVManager & getManager() const
SoSwitch * hecNormalSwitch[4]
static const EMECDetectorManager * emecDetMgr()
void setGeomSelectable(bool)
static unsigned int endSideIndex()
static void ensureInit(IVP1System *)
const EMECHVManager & getEMECHVManager(IOType IO) const
static const char * prefix_msg()
std::map< SoNode *, const EMBHVElectrode * > EMBHVMap
double current(const EMBPresamplerHVModule &module, const int &iGap) const
SoSwitch * hecSubSwitch[4][NPHISECTORS]
const QString information
static void start_changeselection(void *userdata, SoSelection *sel)
std::map< SoNode *, const FCALHVLine * > FCALHVMap
static unsigned int getNumHVLines()
double voltage(const EMBHVElectrode &electrode, const int &iGap) const
std::vector< FCALTile >::const_iterator ConstIterator
Description of a region of homogenous granularity in the hadronic endcap calorimeter.
SoSwitch * fcalMissingSwitch[3]
unsigned int getElectrodeIndex() const
const HECHVSubgap & getSubgap(unsigned int iElectrode) const
double getFullDepthZ(const FCALTile &) const
Gets Tile (full) Depth.
const FCALHVManager & getFCALHVManager() const
virtual void systemerase()
double current(const EMECHVElectrode &electrode, const int &iGap) const
void enabledPhiSectorsChanged()
Eigen::Affine3d Transform3D
void phiSectorTurnon(int)
SoSeparator * hecHVSeparator[4]
Default, invalid implementation of ClassID_traits.
double voltage(const HECHVSubgap &subgap) const
static unsigned int endSamplingIndex()
SoSeparator * fcalMissingSep[3]
SoSwitch * emecPreHVSwitch
const Amg::Transform3D & getAbsoluteTransform(const GeoAlignmentStore *alignStore=nullptr) const
Returns the absolute transform of this element.
SoSeparator * emecPreNormalSep
SoSeparator * embSubSep[4][NPHISECTORS]
SoSeparator * accordionSubSep[NPHISECTORS]
double getFullWidthX(const FCALTile &tile) const
Gets Tile Full Width in X.
QVector< bool > currentlyEnabledPhiSectors
const FCALModule * getModule() const
Get the Module.
double current(const HECHVSubgap &subgap) const
bool hvOn(const EMBPresamplerHVModule &module, const int &iGap) const
SoSeparator * embPreMissingSep
virtual void systemcreate(StoreGateSvc *detstore)
void ensureBuildController()
SoSeparator * fcalBadSep[3]
SoSwitch * emecMissingSwitch
std::map< SoNode *, const HECHVSubgap * > HECHVMap
unsigned int endEtaIndex() const
double current(const FCALHVLine &line) const
StoreGateSvc * eventStore() const
const HECHVModule & getModule() const
EMBPresamplerHVData getData(const LArHVIdMapping &hvIdMapping, const std::vector< const CondAttrListCollection * > &attrLists) const
A manager class providing access to readout geometry information for the hadronic endcap calorimeter.
SoSeparator * emecMissingSep
void sysmessage(QString) const
SoSeparator * emecNormalSep
SoSeparator * embMissingSep
static unsigned int getNumHVLines()
Get num hvlines.
const double & Cosu(int stackid, int cellid) const
static unsigned int getNumSubgaps()
FCALModule::Module getModuleIndex() const
Returns the Module (1,2, or 3)
static ISvcLocator * serviceLocator()
unsigned int getSubgapIndex() const
SoSeparator * embModsSeparator
void phiSectorTurnoff(int)
GeoIntrusivePtr< const FCALTube > FCALTubeConstLink
static StoreGateSvc * eventStore()
const Amg::Transform3D & getAbsoluteTransform(const GeoAlignmentStore *alignStore=nullptr) const
Returns the absolute transform of this element.
static QColor sbcol2qcol(const SbColor &)
unsigned int beginPhiIndex() const
unsigned int getNumElectrodes() const
std::set< SoCamera * > staticcameras
const EMBHVModule & getModule() const
SoSwitch * hecFocalSwitch
double voltage(const EMBPresamplerHVModule &module, const int &iGap) const
void positionOptionChanged()
void messageDebug(const QString &) const
StoreGateSvc * detectorStore() const
SoMaterial * fcalMaterial
SoSwitch * hecHVSwitch[4]
static IToolSvc * toolSvc()
#define INSERTCHECKBOX(checkboxname)
SoSwitch * embPreNormalSwitch
void getNodesWithDisabledNotifications(SoGroup *, QList< SoNode * > &) const
unsigned int getSamplingIndex() const
Returns the Sampling Layer Index.
static const char * prefix_debug()
This class provides direct access to information on the HV electrodes within the barrels....
static unsigned int endSideIndex()
EMBCellConstLink getEMBCell(unsigned int ieta, unsigned int iphi) const
Access to Cells.
SoSeparator * hecNormalSep[4]
const EMECHVModule & getModule() const
void registerController(QWidget *)
unsigned int beginEtaIndex() const
SoSeparator * emecPreBadSep
const FCALHVLine & getHVLine(unsigned int iLine) const
static unsigned int beginSideIndex()
FCALModule::Endcap getEndcapIndex() const
Returns the side (O=Negative, 1=Positive)
FCALDetectorManager::ConstIterator beginFCAL() const
Iterate over FCAL Modules.
int getIndexJ() const
Returns the index "J" of the tile.
SoSeparator * hecSeparator[4]
static unsigned int endSamplingIndex()
This class provides direct access to information on the HV electrodes within the barrels....
static unsigned int beginSectorIndex(unsigned int iSampling)
SoSwitch * emecPreMissingSwitch
static const char * prefix_verbose()
bool hvOn(const HECHVSubgap &subgap) const
SoSeparator * hecBadSep[4]
This class provides access to the High Voltage throughout the LAr. High voltage conditions can also b...
EMECCellConstLink getEMECCell(unsigned int ieta, unsigned int iphi) const
Access to Cells.
static void made_deselection(void *userdata, SoPath *path)
SoSwitch * emecSubSwitch[4][NPHISECTORS]
const HECHVManager & getHECHVManager() const
double getFullWidthY(const FCALTile &tile) const
Gets Tile Full Width in Y.
SoSwitch * fcalBadSwitch[3]
SoSeparator * embPreNormalSep
SoSeparator * fcalNormalSep[3]
FCALDetectorManager::ConstIterator endFCAL() const
Iterate over FCAL Modules.
IVP1ChannelWidget * channel
void warnOnDisabledNotifications() const
Ui::CaloReadoutSystemControllerForm ui
const FCALHVLine * getHVLine(unsigned int i) const
Get hvline.
static unsigned int endPhiIndex()
unsigned int beginPhiIndex() const
SoSwitch * embAccViewSwitch
std::vector< const EMBDetectorRegion * >::const_iterator DetectorRegionConstIterator
const double & HalfLength(int stackid, int cellid) const
QSet< SoCooperativeSelection * > selectionsWithDisabledNotifications
HepGeom::Transform3D EigenTransformToCLHEP(const Amg::Transform3D &eigenTransf)
Converts an Eigen-based Amg::Transform3D into a CLHEP-based HepGeom::Transform3D.
HECCellConstLink getHECCell(unsigned int ieta, unsigned int iphi) const
Retrieve a cell with eta index and phi index.
const GeoStraightAccSection * getAbsorberSections() const
Absorber position details:
unsigned int getElectrodeIndex() const
SoSwitch * emecModsSwitch
static unsigned int endSectorIndex(unsigned int iSampling)
SoSeparator * fcalSubSep[3]
QMap< QString, QCheckBox * > checkBoxMap
static void finished_changeselection(void *userdata, SoSelection *sel)
Describes one HV Module within the EMEc Presampler.
const double & XCent(int stackid, int cellid) const
std::vector< const HECDetectorRegion * >::const_iterator DetectorRegionConstIterator
const EMBHVElectrode & getElectrode(unsigned int iElectrode) const
Describes one HV Module within the FCAL.
unsigned int beginSectorIndex() const
virtual void userClickedOnBgd()
static unsigned int beginSideIndex()
static unsigned int beginSamplingIndex()
EMBHVData getData(const LArHVIdMapping &hvIdMapping, const std::vector< const CondAttrListCollection * > &attrLists) const
static unsigned int endSectorIndex()
unsigned int endPhiIndex() const
const HECDetectorRegion * getDetectorRegion(unsigned int endcap, unsigned int sampling, unsigned int region) const
Random Access to detector regions.
SoSeparator * embHVSeparator
This class provides direct access to information on the HV electrodes within the EMEC....
FCALTubeConstLink getTube(unsigned int i) const
Get a tube.
bool clickedoutsideScheduled
bool canregistercontroller
Describes one HV Module within the EMB.
static unsigned int endSideIndex()
SoSwitch * emecFocalSwitch
static StoreGateSvc * detectorStore()
const EMBPresamplerHVModule & getHVModule(unsigned int iSide, unsigned int iEta, unsigned int iPhi) const
HepGeom::Point3D< double > getFocalPointPos() const
Returns the position of the focal point of the HEC.
SoSeparator * emecPreHVSeparator
setScale setgFexType iEta
SoSwitch * hecMissingSwitch[4]
This class provides direct access to information on the HV electrodes within the barrels....
SoSeparator * volatileSeparator
SoSwitch * emecPreModsSwitch
static SoTransform * toSoTransform(const HepGeom::Transform3D &, SoTransform *t=0)
SoMaterial * embAccMaterial
FCALModule::ConstIterator beginTiles() const
Iteration over FCAL Tiles.
unsigned int identify() const
Returns the identifier of this tile (convention: comes from the FCAL Channel Map).
SoSwitch * accordionSubSwitch[NPHISECTORS]
std::map< SoNode *, const FCALTile * > TileMap
void message(const QString &) const
unsigned int getSamplingIndex() const
Returns the Sampling Layer Index (0-3)
virtual void deselectAll(SoCooperativeSelection *exception_sel=0)
std::vector< const EMECDetectorRegion * >::const_iterator DetectorRegionConstIterator
const HECHVModule & getHVModule(unsigned int iSide, unsigned int iPhi, unsigned int iSampling) const
void messageVerbose(const QString &) const
Describes one HV Module within the EMB Presampler.
static unsigned int beginSamplingIndex()
VP1CaloReadoutSystem::POSITION pos
static unsigned int endSideIndex()
SoSeparator * embNormalSep
QWidget * controllerWidget()
SoSeparator * fcalHVSeparator[3]
virtual void restoreFromState(QByteArray)
const EMBPresamplerHVManager & getEMBPresamplerHVManager() const
std::map< SoNode *, const EMECHVElectrode * > EMECHVMap
SoSwitch * fcalHVSwitch[3]