19 #ifdef PERFTOOL_GEO_TABLE
20 #include <google/profiler.h>
29 #include "TGeoVolume.h"
30 #include "TGeoMatrix.h"
31 #include "TGeoShape.h"
33 #include "TGeoMatrix.h"
34 #include "TVirtualX.h"
37 #include "boost/lexical_cast.hpp"
44 gval.fMask = kGCForeground | kGCBackground | kGCStipple | kGCFillStyle | kGCGraphicsExposures;
45 gval.fStipple = gClient->GetResourcePool()->GetCheckeredBitmap();
46 gval.fGraphicsExposures = kFALSE;
47 gval.fBackground = gVirtualX->GetPixel(kGray);
48 m_colorContext = gClient->GetResourcePool()->GetGCPool()->GetGC(&gval, kTRUE);
52 gClient->GetResourcePool()->GetGCPool()->FreeGC(m_colorContext->GetGC());
56 m_color = gVirtualX->GetPixel(
c);
61 Drawable_t iID,
int iX,
int iY,
unsigned int iWidth,
unsigned int iHeight) {
67 m_colorContext->SetFillStyle(kFillSolid);
68 Pixel_t baq = m_colorContext->GetForeground();
69 m_colorContext->SetForeground(m_color);
70 gVirtualX->FillRectangle(iID, m_colorContext->GetGC(), iX, iY, iWidth, iHeight);
73 m_colorContext->SetFillStyle(kFillOpaqueStippled);
74 gVirtualX->FillRectangle(iID, m_colorContext->GetGC(), iX, iY, iWidth, iHeight);
76 m_colorContext->SetForeground(baq);
93 gval.fMask = kGCForeground | kGCBackground | kGCStipple | kGCFillStyle | kGCGraphicsExposures;
94 gval.fForeground = gVirtualX->GetPixel(kGray);
95 gval.fBackground = gVirtualX->GetPixel(kWhite);
96 gval.fFillStyle = kFillOpaqueStippled;
97 gval.fStipple = gClient->GetResourcePool()->GetCheckeredBitmap();
98 gval.fGraphicsExposures = kFALSE;
111 std::vector<std::string> returnValue;
114 returnValue.push_back(
"Name");
115 returnValue.push_back(
"Color");
116 returnValue.push_back(
"Opcty");
117 returnValue.push_back(
"RnrSelf");
118 returnValue.push_back(
"RnrChildren");
119 returnValue.push_back(
"Material");
147 if (xPos > off && xPos < (off + 20)) {
164 int pIdx =
data.m_parent;
168 mtx.MultiplyLeft(
m_entries.at(pIdx).m_node->GetMatrix());
173 mtx.Multiply(
data.m_node->GetMatrix());
193 std::vector<std::string> relPath;
200 size_t ns = relPath.size();
201 for (
size_t i = 1;
i < ns; ++
i) {
203 path += relPath[ns -
i - 1];
227 using boost::bad_lexical_cast;
228 using boost::lexical_cast;
230 int t = lexical_cast<int>(
m_editor->GetText());
231 if (
t > 100 ||
t < 0) {
238 }
catch (bad_lexical_cast&) {
239 fwLog(
fwlog::kError) <<
"Bad Lexical cast. Transparency must be set in procentage [0-100].";
265 TGeoNode* parentNode =
m_entries[selectedIdx].m_node;
266 int nD = parentNode->GetNdaughters();
268 for (
int n = 0;
n != nD; ++
n) {
269 int idx = selectedIdx + 1 +
n + dOff;
291 TGeoNode* parentNode = nInfo.
m_node;
292 int nD = parentNode->GetNdaughters();
294 for (
int n = 0;
n != nD; ++
n) {
295 int idx = selectedIdx + 1 +
n + dOff;
298 data.copyColorTransparency(nInfo);
312 bool foundParent =
false;
315 int pidx =
data.m_parent;
322 if (pidx == topNodeIdx) {