-
Notifications
You must be signed in to change notification settings - Fork 445
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Porting latest ITSU geometry from AliRoot v2 to O2 #383
Changes from 2 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -26,12 +26,12 @@ namespace o2 { namespace ITSMFT { class Point; }} // lines 22-22 | |
namespace o2 { namespace ITS { class GeometryHandler; }} | ||
namespace o2 { namespace ITS { class MisalignmentParameter; }} | ||
namespace o2 { namespace ITS { class GeometryTGeo; }} | ||
namespace o2 { namespace ITS { class V1Layer; }} // lines 23-23 | ||
namespace o2 { namespace ITS { class V3Layer; }} // lines 23-23 | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. what does the comment actually mean? If it is where in the code the class is used, it is quickly going to be out of sync. And it is probably already There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I apologize for my lack of experience: could you please suggest me what I should improve here ? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I think @matthiasrichter is referring to the comments There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. ops, sorry, I thought something more C++ in-deep :) |
||
|
||
namespace o2 { | ||
namespace ITS { | ||
|
||
class V1Layer; | ||
class V3Layer; | ||
|
||
class Detector : public o2::Base::Detector | ||
{ | ||
|
@@ -40,14 +40,16 @@ class Detector : public o2::Base::Detector | |
enum Model | ||
{ | ||
kIBModelDummy = 0, | ||
kIBModel0 = 1, | ||
kIBModel1 = 2, | ||
kIBModel21 = 3, | ||
kIBModel22 = 4, | ||
kIBModel3 = 5, | ||
kOBModelDummy = 6, | ||
kOBModel0 = 7, | ||
kOBModel1 = 8 | ||
kIBModel0 = 1, | ||
kIBModel1 = 2, | ||
kIBModel21 = 3, | ||
kIBModel22 = 4, | ||
kIBModel3 = 5, | ||
kIBModel4 = 10, | ||
kOBModelDummy = 6, | ||
kOBModel0 = 7, | ||
kOBModel1 = 8, | ||
kOBModel2 = 9 | ||
}; | ||
|
||
/// Name : Detector Name | ||
|
@@ -277,7 +279,7 @@ class Detector : public o2::Base::Detector | |
Double_t *mLayerZLength; //! Vector of layer length along Z | ||
Int_t *mStavePerLayer; //! Vector of number of staves per layer | ||
Int_t *mUnitPerStave; //! Vector of number of "units" per stave | ||
Double_t *mStaveThickness; //! Vector of stave thicknesses | ||
Double_t *mChipThickness; //! Vector of chip thicknesses | ||
Double_t *mStaveWidth; //! Vector of stave width (only used for turbo) | ||
Double_t *mStaveTilt; //! Vector of stave tilt (only used for turbo) | ||
Double_t *mDetectorThickness; //! Vector of detector thicknesses | ||
|
@@ -306,7 +308,7 @@ class Detector : public o2::Base::Detector | |
GeometryHandler *mGeometryHandler; | ||
MisalignmentParameter *mMisalignmentParameter; | ||
|
||
V1Layer **mGeometry; //! Geometry | ||
V3Layer **mGeometry; //! Geometry | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. would it be feasible to use stl containers here? Is there any strong reason to stay with There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I apologize for my lack of experience: could you please suggest me what I should improve here ? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Probably you want to express something like array of V3Layers. So, I am wondering if we could use something like There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @sawenzel I agree with you, Sandro... Doing it in a clean way may take quite some additional time. The changes would be important from the code maintenance point of view, and at the end, they would still result in the same "geometry tree". So, I think, we should do it in a separate (maybe not even immediately next) PR. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. So if I understand correctly, this can be left as it is for the time being, and then I'll produce an updated version of the code using the proper STL coding and submit a second pull request: am I right ? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @mario6829 Hi Mario. I would say, yes, let's do these STL-related changes in a separate, self-consistent PR. |
||
Model mStaveModelInnerBarrel; //! The stave model for the Inner Barrel | ||
Model mStaveModelOuterBarrel; //! The stave model for the Outer Barrel | ||
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If V1Layer is not used anymore, consider removing the file completely.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@sawenzel There was kind of an additional consideration (Ruben might know it better)...
At some point, we may be asked to do simulations for so called "super-upgrade". Because they are much less detailed, the old geometry classes (like V1Layer) are more easy to adapt for the super-upgrade purposes. So, I would keep the old stuff in the repository.
However, true, we my consider removing the references to these classes from the CMakeLists, LinkDefs, etc. For the moment at least.