[root] / trunk / geom / gdml / src / TGDMLParse.cxx Repository:
ViewVC logotype

Log of /trunk/geom/gdml/src/TGDMLParse.cxx

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 48992 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Mar 28 15:26:26 2013 UTC (21 months, 3 weeks ago) by rdm
File length: 121745 byte(s)
Diff to previous 44557
From Lifeng Sun:
The attached patchset fixes a bunch of typo in the source:
0001-succes-success.patch
0002-preceed-preced.patch
0003-informations-information.patch
0004-childs-children.patch
0005-avaliable-available.patch
0006-writeable-writable.patch
0007-comand-command.patch
0008-unkown-unknown.patch
0009-wierd-weird.patch
0010-wheter-whether.patch
0011-unecessary-unnecessary.patch
0012-splitted-split.patch
0013-registerd-registered.patch
0014-recieve-receive.patch
0015-processsing-processing.patch
0016-ouput-output.patch
0017-mutiple-multiple.patch
0018-lenght-length.patch
0019-interupted-interrupted.patch
0020-independant-independent.patch
0021-inconsistant-inconsistent.patch
0022-expresion-expression.patch
0023-explicitely-explicitly.patch
0024-enviroment-environment.patch
0025-deafult-default.patch
0026-continous-continuous.patch
0027-completly-completely.patch
0028-commited-committed.patch
0029-choosen-chosen.patch
0030-backgroud-background.patch
0031-auxilliary-auxiliary.patch
0032-authentification-authentication.patch
0033-appropiate-appropriate.patch
0034-an-other-another.patch
0035-environement-environment.patch
0036-targetting-targeting.patch
0037-suppported-supported.patch
0038-paramater-parameter.patch

Revision 44557 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 5 09:25:52 2012 UTC (2 years, 7 months ago) by agheata
File length: 121744 byte(s)
Diff to previous 42308
Large chunk of coverity fixes

Revision 42308 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 29 15:56:29 2011 UTC (3 years, 1 month ago) by agheata
File length: 121604 byte(s)
Diff to previous 42245
doc fixes (A.Pytel)

Revision 42245 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 25 16:01:49 2011 UTC (3 years, 1 month ago) by agheata
File length: 121603 byte(s)
Diff to previous 41744
GDML read/write fixes (A.Pytel)

Revision 41744 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 3 10:55:33 2011 UTC (3 years, 2 months ago) by agheata
File length: 118554 byte(s)
Diff to previous 41588
New GDML writer with extended functionality (Anton Pytel)

Revision 41588 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Oct 26 10:10:54 2011 UTC (3 years, 2 months ago) by agheata
File length: 118119 byte(s)
Diff to previous 41578
Layout changes (Anton Pytel)

Revision 41578 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 25 16:36:15 2011 UTC (3 years, 2 months ago) by agheata
File length: 119968 byte(s)
Diff to previous 39336
Change return type of GetScale method to TString. Change of attributes and tags according to gdml schema (e.g. twistTrap -> twistedtrap, twist->Phitwis, ...). Change order of formula and name in creating TGeoElement.

Revision 39336 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 23 08:39:51 2011 UTC (3 years, 8 months ago) by agheata
File length: 119944 byte(s)
Diff to previous 39200
Fixed creation of mixtures made of mixtures

Revision 39200 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 16 11:59:56 2011 UTC (3 years, 8 months ago) by agheata
File length: 119665 byte(s)
Diff to previous 37869
Fixed TGeoPara lengths

Revision 37869 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 25 12:39:30 2011 UTC (3 years, 11 months ago) by agheata
File length: 119659 byte(s)
Diff to previous 37788
Fixed treatment of mixtures with elements added via number od atoms (using <composite>)

Revision 37788 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jan 17 17:44:13 2011 UTC (4 years ago) by agheata
File length: 119424 byte(s)
Diff to previous 36535
Fixed errors introduced by usage of TString::Form() and replaced error-prone const char* with TString

Revision 36535 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 8 14:41:54 2010 UTC (4 years, 2 months ago) by agheata
File length: 120022 byte(s)
Diff to previous 36084
Changed Form() to TString::Format() everywhere

Revision 36084 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 5 13:37:02 2010 UTC (4 years, 3 months ago) by agheata
File length: 117877 byte(s)
Diff to previous 36082
Fixed unused variables

Revision 36082 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Oct 5 13:08:24 2010 UTC (4 years, 3 months ago) by agheata
File length: 117979 byte(s)
Diff to previous 35680
Change default angle unit to rwad

Revision 35680 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 23 15:34:45 2010 UTC (4 years, 4 months ago) by agheata
File length: 117979 byte(s)
Diff to previous 35679
Fixed leak

Revision 35679 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 23 15:32:05 2010 UTC (4 years, 4 months ago) by agheata
File length: 117892 byte(s)
Diff to previous 35672
Leak fixed

Revision 35672 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 23 15:08:37 2010 UTC (4 years, 4 months ago) by agheata
File length: 117765 byte(s)
Diff to previous 35639
protection added, but just producing a Fatal instead of a sigsegv

Revision 35639 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 23 12:02:31 2010 UTC (4 years, 4 months ago) by agheata
File length: 117630 byte(s)
Diff to previous 35010
Fixed unused values.

Revision 35010 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Aug 25 13:15:30 2010 UTC (4 years, 5 months ago) by agheata
File length: 117650 byte(s)
Diff to previous 34899
Fixed memory leaks reported by coverity.

Revision 34899 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Aug 20 15:58:58 2010 UTC (4 years, 5 months ago) by agheata
File length: 118641 byte(s)
Diff to previous 34060
The condition if the file is not found in VolProcess should issue a Fatal.

Revision 34060 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 22 13:10:52 2010 UTC (4 years, 7 months ago) by brun
File length: 118688 byte(s)
Diff to previous 33670
Fix a compilation warning

Revision 33670 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 31 14:45:23 2010 UTC (4 years, 7 months ago) by agheata
File length: 118700 byte(s)
Diff to previous 33480
Fixed support for divisions in the GDML parser. Basically everything was wrong, including the number of divisions parameter.

Revision 33480 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed May 12 11:59:13 2010 UTC (4 years, 8 months ago) by agheata
File length: 118041 byte(s)
Diff to previous 33193
Added support to G4 ellipsoids. Fixed cone segment conversion.

Revision 33193 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 26 08:07:43 2010 UTC (4 years, 8 months ago) by agheata
File length: 117572 byte(s)
Diff to previous 32733
Fixed return value of TGDMLParse::BooSolid to return child (Astrid Munnich)

Revision 32733 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 24 16:19:00 2010 UTC (4 years, 10 months ago) by brun
File length: 117571 byte(s)
Diff to previous 32677
From Andrei:
a new development along the line of having G4-TGeo material compatibility:

So far TGeoMaterial was computing only the radiation length. The patch adds computation of interaction length for materials and mixtures, using  the G4 simplified formula. The radlen and intlen can be always set from outside as before.

Revision 32677 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Mar 18 15:27:12 2010 UTC (4 years, 10 months ago) by brun
File length: 117464 byte(s)
Diff to previous 31815
From Andrei:
adds support for reading isotopes via the GDML parser.

Revision 31815 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Dec 10 16:27:22 2009 UTC (5 years, 1 month ago) by brun
File length: 113223 byte(s)
Diff to previous 30749
From Sergei Linev:
Automatically skip comments blocks in XML files.
This also solves the problem with GDML reported at https://savannah.cern.ch/bugs/?59841

Revision 30749 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Oct 15 16:33:04 2009 UTC (5 years, 3 months ago) by brun
File length: 113162 byte(s)
Diff to previous 30745
From Matthew Strait:
This patch fixes the spelling of "function" in the root source code
and documentation, which is misspelled (sometimes as part of larger
"function"-based words) at least 152 times:

* "funciton" 48 times
* "funcion" 36 times
* "funtion" 23 times
* "fucntion" 17 times
* "functionn" 6 times
* "fuction" 6 times
* "fuunction" 4 times
* "functioin" 3 times
* "fonction" 3 times
* "funstion" twice
* "fnuction" once
* "functiom" once
* "functio" once
* "funcition" once

Revision 30745 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Oct 15 12:23:45 2009 UTC (5 years, 3 months ago) by brun
File length: 113161 byte(s)
Diff to previous 23521
From daniele.francesco.kruse@cern.ch
"Added support for the 'ellipsoid' GDML tag.
 In the solids section of the GDML file, an ellipsoid may be declared.
 Unfortunately, the ellipsoid is not supported under ROOT so,
 when the ellipsoid keyword is found, this function is called
 to convert it to a simple box with corresponding dimensions."

Revision 23521 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 24 14:49:05 2008 UTC (6 years, 9 months ago) by brun
File length: 110349 byte(s)
Diff to previous 22923
From Bertrand:
- Add a few missing #include <string>

Revision 22923 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Apr 1 12:34:14 2008 UTC (6 years, 9 months ago) by rdm
File length: 110331 byte(s)
Diff to previous 22419
move geom, geombuilder, geompainter and gdml to geom meta directory.

Revision 22419 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Mar 3 00:25:01 2008 UTC (6 years, 10 months ago) by rdm
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 110331 byte(s)
Diff to previous 21200
From Andrew Savchenko:
ROOT can not be compiled with gcc-4.3.
Some ROOT source files doesn't contain required #include directives,
for example, they use strlen(), but #include <string.h> is missed or
malloc() is used and #include <stdlib.h> is missed. 

Earlier versions of gcc allowed some headers to be included implicitly,
but issued a warning (-Wimplicit-function-declaration). Newer one,
gcc-4.3 denies such silly behaviour: all required headers must be explicitly
included. 

Attached patch fixes this. Also it fixes another issue, which disallows
ROOT to compile under gcc-4.3: C functions don't belong to namespace std,
so expressions like std::memcpy() are no longer valid and plain memcpy()
should be used instead.

Revision 21200 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Dec 5 07:51:03 2007 UTC (7 years, 1 month ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 110311 byte(s)
Diff to previous 21170
Fix coding convention

Revision 21170 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Dec 4 07:45:04 2007 UTC (7 years, 1 month ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 110311 byte(s)
Diff to previous 20976
Fix coding conventions

Revision 20976 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 22 09:11:10 2007 UTC (7 years, 2 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 110287 byte(s)
Diff to previous 20947
Fix coding conventions

Revision 20947 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 21 09:17:02 2007 UTC (7 years, 2 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 110230 byte(s)
Diff to previous 20882
From Zoltan Torzsok:
Fix for a problem with long expressions lines.

Revision 20882 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 19 11:31:26 2007 UTC (7 years, 2 months ago) by rdm
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 109909 byte(s)
Diff to previous 19826
Set property svn:eol-style LF on all source and Makefiles. This should avoid
problems with Win32 line endings ending up in the repository. All MS tools
support LF eols fine.

Revision 19826 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:56:11 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 109909 byte(s)
Diff to previous 19825
imported svn:keywords Id property

Revision 19825 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Sep 19 19:49:10 2007 UTC (7 years, 4 months ago) by rdm
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 109962 byte(s)
Diff to previous 19707
remove :$ from tag line

Revision 19707 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 28 08:22:25 2007 UTC (7 years, 4 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 109972 byte(s)
Diff to previous 19680
Fix coding conventions.

Revision 19680 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Aug 24 08:40:11 2007 UTC (7 years, 5 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 109965 byte(s)
Diff to previous 19562
From Zoltan Torzsok:
-Fix coding conventions
-TGDMLParse.cxx :: Extruded solid process:
  - scalingFactor must be processed without length unit!
  - zOrder need not to be processed with length unit!
-writer.py :: AddEltu
 The parameter names are changed from (x,y,z) to (dx,dy,dz) according to the GDML schema.

Revision 19562 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 7 07:53:05 2007 UTC (7 years, 5 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 109831 byte(s)
Diff to previous 17478
From Zoltan.Torzsok@cern.ch:
*** Using constants in GDML with ROOT ***

[ORIGINAL APPROACH]

Originally constants could not be used within mathematical expressions in ROOT.
The following example is to illustrate the problem:

<define>
	<constant name="size" value="100.0"/>
</define>

<solids>
	<box name="MyCube" x="size" y="size" z="size"/>
	<box name="MyBox" x="1.0*size" y="2.0*size" z="3.0*size"/>
</solids>

The "MyCube" solid can be parsed since it contains a constant only.
The "MyBox" solid will indicate an error message like "size" is not
recognised as an expression. This happens because in the original method
the whole expression string is searched in the constant map.
If it can be found, it is replaced with its value.
In "MyBox" the expression string for the "x" attribute is "1.0*size"
and there isnt any constant defined with the name of "1.0*size".
We can trick the parser and eliminate the mentioned error message by
adding the following constants:

<constant name="1.0*size" value="100"/>
<constant name="2.0*size" value="200"/>
<constant name="3.0*size" value="300"/>

[MY APPROACH]

I am using a find-and-replace method on the expression string.
If the name of a constant is found within the expression string,
it is replaced with the value of the constant.

This approach fails in special cases, when a constants name contains
an other constants name, like in the following:

<constant name="wi" value="100"/>
<constant name="width" value="200"/>

In this case, every occurence of "width" will look like "100dth"
so that "width" will be no longer recognised. This must be fixed.

[TEST RESULTS]

Applying my method has not got any impact on speed, even with
highly sophisticated models like "cms.gdml".


[FEATURES]

- Works with multiple constants in a single expression (tested)
- Should work with multiple *.gdml files (not tested)
- Works with constants with expressions (tested)

Example:

<constant name="size" value="100.0"/>
<constant name="width" value="2.0*size"/>
<constant name="height" value="4.0*size"/>
<constant name="depth" value="8.0*size"/>

*** Problem with rotation in boolean solids is fixed now ***

Originally, in GDML/Geant4, in a boolean composition of two solids only the second solid could be rotated.
This rotation has opposite winding compared to the rotation of the volume, so that the inverse of the rotation matrix is used.

Later the boolean solid was extended, using the "firstrotation" token, so that the first solid can be rotated too.
But in the code the matrix inversion was omitted for this rotation. By adding matrix inversion to this rotation
the problem is solved.

Revision 17478 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jan 23 15:20:15 2007 UTC (8 years ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 111090 byte(s)
Diff to previous 17141
From Ben Lloyd:
I have made some amendments to the GDML Import, and have implemented new
functionality to the python implementation for the GDML Export.

Revision 17141 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sun Dec 10 22:24:00 2006 UTC (8 years, 1 month ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 110682 byte(s)
Diff to previous 17111
Fix coding conventions

Revision 17111 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Dec 8 15:57:19 2006 UTC (8 years, 1 month ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 110677 byte(s)
Diff to previous 16983
From Ben Lloyd:
Added Support for the GDML 'file' tag. Allows Modular GDML files to be
imported

Revision 16983 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 29 17:39:04 2006 UTC (8 years, 1 month ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 100262 byte(s)
Diff to previous 16886
From Ben Lloyd:
a small bug fix.

Revision 16886 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Nov 23 07:49:44 2006 UTC (8 years, 2 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 100264 byte(s)
Diff to previous 16862
Fix coding convention violations

Revision 16862 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Nov 22 09:10:58 2006 UTC (8 years, 2 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 100220 byte(s)
Diff to previous 16856
From Ben LLoyd:
Fix coding conventions

Revision 16856 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 21 23:34:39 2006 UTC (8 years, 2 months ago) by rdm
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 98487 byte(s)
Diff to previous 16849
fix cvs indent line.

Revision 16849 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Nov 21 10:43:16 2006 UTC (8 years, 2 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 98487 byte(s)
Diff to previous 16830
Fix coding conventions

Revision 16830 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Nov 20 13:30:55 2006 UTC (8 years, 2 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 98677 byte(s)
Diff to previous 16810
From Ben LLoyd:
Fix coding conventions

Revision 16810 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Nov 17 17:49:50 2006 UTC (8 years, 2 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 92499 byte(s)
Diff to previous 16808
Remove unused statement

Revision 16808 - (view) (download) (as text) (annotate) - [select for diffs]
Added Fri Nov 17 17:40:02 2006 UTC (8 years, 2 months ago) by brun
Original Path: trunk/gdml/src/TGDMLParse.cxx
File length: 92527 byte(s)
From Ben LLoyd
New version of the GDML to ROOT import.
Use new C++ class TGDMLParse instead of Python scripts

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

Subversion Admin
ViewVC Help
Powered by ViewVC 1.0.9