[Python-modules-commits] [python-fisx] 01/06: Imported Upstream version 1.1.0

Frédéric-Emmanuel Picca picca at moszumanska.debian.org
Tue Aug 23 06:14:52 UTC 2016


This is an automated email from the git hooks/post-receive script.

picca pushed a commit to branch master
in repository python-fisx.

commit ea0a5486e1bcfcba79cef83a5fc835047b2b1d61
Author: Picca Frédéric-Emmanuel <picca at debian.org>
Date:   Wed Aug 17 21:09:36 2016 +0200

    Imported Upstream version 1.1.0
---
 PKG-INFO                            |     4 +-
 changelog.txt                       |    12 +
 fisx_data/KShellRatesScofieldHS.dat |   124 -
 python/cython/PyElements.pyx        |    39 +-
 python/cython/PyMath.pyx            |    10 -
 python/cython/_fisx.pyx             |    49 +-
 python/cython/default/_fisx.cpp     | 21589 +++++++++++++++++++++-------------
 python/fisx.egg-info/PKG-INFO       |     4 +-
 python/fisx.egg-info/SOURCES.txt    |     1 -
 python/fisx/DataDir.py              |    25 -
 python/fisx/tests/testEPDL97.py     |    11 +-
 setup.py                            |     4 +-
 src/fisx_elements.cpp               |    24 +-
 src/fisx_elements.h                 |     2 +-
 src/fisx_epdl97.cpp                 |     3 +-
 src/fisx_math.cpp                   |    78 -
 src/fisx_math.h                     |    14 -
 src/fisx_version.h                  |     2 +-
 src/fisx_xrf.cpp                    |   550 +-
 src/fisx_xrf.h                      |    66 +-
 20 files changed, 13586 insertions(+), 9025 deletions(-)

diff --git a/PKG-INFO b/PKG-INFO
index e3ef442..d25af4d 100644
--- a/PKG-INFO
+++ b/PKG-INFO
@@ -1,12 +1,12 @@
 Metadata-Version: 1.1
 Name: fisx
-Version: 1.0.8
+Version: 1.1.0
 Summary: Quantitative X-Ray Fluorescence Analysis Support Library
 Home-page: https://github.com/vasole/fisx
 Author: V. Armando Solé
 Author-email: sole at esrf.fr
 License: MIT
-Download-URL: https://github.com/vasole/fisx/archive/v1.0.8.tar.gz
+Download-URL: https://github.com/vasole/fisx/archive/v1.1.0.tar.gz
 Description: ====
         fisx
         ====
diff --git a/changelog.txt b/changelog.txt
index f849793..6407b4f 100644
--- a/changelog.txt
+++ b/changelog.txt
@@ -1,3 +1,15 @@
+VERSION 1.1.0
+
+Forced release to comply with PyPI.
+
+VERSION 1.0.9
+
+Allow to set a data directory from the environemnt.
+
+Get rid of unused code.
+
+Adapt for PyMca-like initialization with PyMca versions relying nn fisx data.
+
 VERSION 1.0.8
 
 Add source of the data to the data files.
diff --git a/fisx_data/KShellRatesScofieldHS.dat b/fisx_data/KShellRatesScofieldHS.dat
deleted file mode 100644
index 9dc7145..0000000
--- a/fisx_data/KShellRatesScofieldHS.dat
+++ /dev/null
@@ -1,124 +0,0 @@
-#U00
-#U01 Adaptation from table II of the reference:
-#U02
-#U03 J.H. Scofield, "Relativistic Hartree-Slater Values for 
-#U04 K and L X-ray Emission Rates", Atomic Data and Nuclear
-#U05 Data Tables 14 (1964) 121 - 137
-#U06
-#U07 The TOTAL column is taken from the reference. The individual
-#U08 shells of the reference are divided by the total in order to
-#U09 directly get probabilities and missing values are interpolated.
-#U10
-
-#S1 K x-ray emission rates
-#N 17
-#L Z  TOTAL  KL1  KL2  KL3  KM1  KM2  KM3  KM4  KM5  KN1  KN2  KN3  KN45  KO23  KO45  KP23
-1  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
-2  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
-3  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
-4  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0  0
-5  1.949e-005  9.9538e-011  0.33299  0.66701  0  0  0  0  0  0  0  0  0  0  0  0
-6  0.0001033  1.4521e-010  0.33398  0.66602  0  0  0  0  0  0  0  0  0  0  0  0
-7  0.0003305  2.4327e-010  0.33404  0.66596  0  0  0  0  0  0  0  0  0  0  0  0
-8  0.0008232  4.0816e-010  0.33431  0.66569  0  0  0  0  0  0  0  0  0  0  0  0
-9  0.001758  6.6553e-010  0.33447  0.66553  0  0  0  0  0  0  0  0  0  0  0  0
-10  0.00337  1.0534e-009  0.33472  0.66528  0  0  0  0  0  0  0  0  0  0  0  0
-11  0.005756  1.7894e-009  0.33461  0.66539  3.1619e-011  0  0  0  0  0  0  0  0  0  0  0
-12  0.00911  2.9857e-009  0.3348  0.6652  1.7673e-010  0  0  0  0  0  0  0  0  0  0  0
-13  0.013824  4.8033e-009  0.33276  0.66117  4.1305e-010  0.0020327  0.0040365  0  0  0  0  0  0  0  0  0
-14  0.020239  7.4607e-009  0.32956  0.65368  7.7078e-010  0.0056178  0.011147  0  0  0  0  0  0  0  0  0
-15  0.028752  1.1164e-008  0.3252  0.64483  1.3077e-009  0.010048  0.019929  0  0  0  0  0  0  0  0  0
-16  0.039804  1.6355e-008  0.32057  0.63486  2.0852e-009  0.014948  0.02962  0  0  0  0  0  0  0  0  0
-17  0.053952  2.3354e-008  0.31547  0.62463  3.1695e-009  0.02011  0.039795  0  0  0  0  0  0  0  0  0
-18  0.071682  3.2644e-008  0.31054  0.61382  4.6874e-009  0.025418  0.050222  0  0  0  0  0  0  0  0  0
-19  0.093274  4.5029e-008  0.30695  0.60574  7.0759e-009  0.029311  0.058001  0  0  1.7583e-010  0  0  0  0  0  0
-20  0.11939  6.1312e-008  0.30405  0.59972  1.0386e-008  0.032331  0.063908  0  0  8.1414e-010  0  0  0  0  0  0
-21  0.15004  8.2644e-008  0.30325  0.59717  1.4463e-008  0.033458  0.066116  1.053e-006  1.5529e-006  1.1397e-009  0  0  0  0  0  0
-22  0.18598  1.1023e-007  0.30272  0.59522  1.9841e-008  0.034305  0.067749  2.7637e-006  4.0649e-006  1.5324e-009  0  0  0  0  0  0
-23  0.228  1.4473e-007  0.30219  0.59385  2.6622e-008  0.034956  0.06899  5.2192e-006  7.6753e-006  2e-009  0  0  0  0  0  0
-24  0.27603  1.8875e-007  0.30251  0.59415  3.4743e-008  0.034779  0.068544  9.2745e-006  1.3549e-005  9.6368e-010  0  0  0  0  0  0
-25  0.33189  2.4285e-007  0.30221  0.59086  4.61e-008  0.036006  0.070897  1.2685e-005  1.841e-005  3.2541e-009  0  0  0  0  0  0
-26  0.39641  3.1029e-007  0.30171  0.59055  5.9282e-008  0.036301  0.071391  1.786e-005  2.5983e-005  4.0363e-009  0  0  0  0  0  0
-27  0.46901  3.9019e-007  0.3017  0.58976  7.5692e-008  0.036631  0.071854  2.4093e-005  3.5181e-005  5.0106e-009  0  0  0  0  0  0
-28  0.55147  4.896e-007  0.30137  0.58933  9.5562e-008  0.036865  0.072352  3.1552e-005  4.5877e-005  6.1109e-009  0  0  0  0  0  0
-29  0.64291  6.1129e-007  0.30207  0.58951  1.1884e-007  0.036615  0.071706  4.1375e-005  5.9729e-005  2.7998e-009  0  0  0  0  0  0
-30  0.74686  7.5382e-007  0.3018  0.58779  1.4862e-007  0.037316  0.072972  5.0478e-005  7.2972e-005  8.9575e-009  0  0  0  0  0  0
-31  0.86417  9.2227e-007  0.30121  0.58553  1.863e-007  0.038071  0.074406  6.052e-005  8.7367e-005  1.4696e-008  0.00021709  0.00041427  0  0  0  0
-32  0.99511  1.1255e-006  0.30047  0.58285  2.3012e-007  0.03879  0.075871  7.1248e-005  0.0001028  2.1204e-008  0.00063309  0.0012149  0  0  0  0
-33  1.1427  1.3565e-006  0.2993  0.58023  2.8355e-007  0.039557  0.077188  8.2702e-005  0.00011911  2.923e-008  0.0012051  0.0023174  0  0  0  0
-34  1.3049  1.6246e-006  0.29811  0.57706  3.4639e-007  0.04031  0.078703  9.495e-005  0.00013656  3.9083e-008  0.0019113  0.0036784  0  0  0  0
-35  1.487  1.9368e-006  0.29725  0.57365  4.2166e-007  0.040956  0.079894  0.00010774  0.00015468  5.1111e-008  0.0027304  0.005259  0  0  0  0
-36  1.6866  2.3004e-006  0.29585  0.57036  5.0989e-007  0.041621  0.081167  0.00012131  0.00017378  6.5811e-008  0.0036582  0.0070377  0  0  0  0
-37  1.9058  2.7233e-006  0.29489  0.56721  6.1391e-007  0.042239  0.08238  0.00013574  0.00019414  8.6578e-008  0.0044023  0.0085423  0  0  0  0
-38  2.1441  3.2089e-006  0.29384  0.56435  7.3692e-007  0.042909  0.083627  0.00015112  0.00021548  1.1287e-007  0.0050605  0.0098458  0  0  0  0
-39  2.4048  3.7716e-006  0.29316  0.5618  8.7742e-007  0.043538  0.084789  0.00016717  0.00023786  1.4263e-007  0.0055348  0.010766  2.3786e-006  0  0  0
-40  2.6879  4.4272e-006  0.29242  0.55954  1.0417e-006  0.044123  0.08594  0.00018416  0.00026154  1.7709e-007  0.0059488  0.01157  6.2502e-006  0  0  0
-41  2.994  5.1437e-006  0.29192  0.55746  1.2325e-006  0.044724  0.087076  0.00020174  0.00028558  2.1577e-007  0.0062225  0.012091  1.3861e-005  0  0  0
-42  3.3277  5.9801e-006  0.29149  0.55534  1.4545e-006  0.045257  0.088079  0.00021967  0.00031073  2.6265e-007  0.0065571  0.012712  2.1186e-005  0  0  0
-43  3.6865  6.9171e-006  0.29106  0.55337  1.7062e-006  0.045789  0.088973  0.00023871  0.00033691  3.1737e-007  0.006871  0.013319  3.0273e-005  0  0  0
-44  4.0749  8.0002e-006  0.29056  0.55142  1.9951e-006  0.046259  0.090063  0.00025841  0.00036369  3.8038e-007  0.007156  0.013865  4.1179e-005  0  0  0
-45  4.4921  9.1939e-006  0.29029  0.54963  2.3152e-006  0.046749  0.090826  0.00027893  0.00039135  4.519e-007  0.007413  0.014359  5.4073e-005  0  0  0
-46  4.9403  1.0566e-005  0.29006  0.54795  2.6922e-006  0.047204  0.091695  0.00029998  0.00041981  5.3236e-007  0.0076109  0.014675  7.1049e-005  0  0  0
-47  5.4224  1.2098e-005  0.28972  0.54606  3.1167e-006  0.047617  0.092578  0.00032181  0.00044906  6.3071e-007  0.0078931  0.015251  8.6308e-005  0  0  0
-48  5.9368  1.3829e-005  0.28955  0.54406  3.6046e-006  0.048039  0.093316  0.00034446  0.00047938  7.4619e-007  0.0082199  0.015867  0.00010224  0  0  0
-49  6.4922  1.5742e-005  0.28927  0.54219  4.1434e-006  0.048366  0.093959  0.00036752  0.00050984  8.7798e-007  0.0085179  0.016481  0.00011953  0.00019901  0  0
-50  7.0894  1.7872e-005  0.28874  0.54024  4.7535e-006  0.048805  0.094648  0.00039114  0.00054165  1.0283e-006  0.00883  0.017082  0.00013739  0.00056281  0  0
-51  7.7262  2.0256e-005  0.28837  0.53843  5.436e-006  0.049054  0.095131  0.00041547  0.00057337  1.2011e-006  0.0091248  0.017667  0.00015622  0.0010574  0  0
-52  8.3971  2.2925e-005  0.2882  0.5359  6.2165e-006  0.049422  0.095867  0.00044063  0.00060617  1.4053e-006  0.00942  0.018268  0.0001759  0.0016708  0  0
-53  9.1212  2.5863e-005  0.28779  0.53392  7.0715e-006  0.049665  0.096369  0.00046595  0.00063917  1.6226e-006  0.0097027  0.018824  0.00019603  0.0023879  0  0
-54  9.89  2.912e-005  0.28736  0.53185  8.0182e-006  0.04995  0.096866  0.00049242  0.00067341  1.8807e-006  0.0099697  0.019373  0.00021709  0.0032053  0  0
-55  10.71  3.2678e-005  0.28664  0.53032  9.0846e-006  0.050231  0.097288  0.00051912  0.00070772  2.1661e-006  0.010233  0.019896  0.00023902  0.003884  0  0
-56  11.574  3.6719e-005  0.28684  0.52789  1.0273e-005  0.050456  0.097803  0.0005469  0.00074302  2.4883e-006  0.010497  0.020433  0.00026179  0.0044754  0  0
-57  12.489  4.1158e-005  0.28666  0.52608  1.1595e-005  0.050687  0.09825  0.00057573  0.00077912  2.8586e-006  0.010754  0.020947  0.00028586  0.0049165  2.2901e-006  0
-58  13.438  4.6137e-005  0.28649  0.52536  1.3089e-005  0.051048  0.098896  0.00060722  0.00081781  3.2296e-006  0.01082  0.021037  0.00029914  0.0045541  0  0
-59  14.457  1.003e-005  0.28706  0.52363  1.472e-005  0.051325  0.09933  0.00063776  0.00085634  3.6591e-006  0.01095  0.021305  0.00031819  0.0045653  0  0
-60  15.519  5.7544e-005  0.28675  0.5226  1.6542e-005  0.051616  0.099881  0.00066952  0.0008957  4.137e-006  0.011077  0.021523  0.00033702  0.0045687  0  0
-61  16.642  6.4115e-005  0.28723  0.52097  1.8568e-005  0.051857  0.10035  0.00070184  0.00093559  4.6629e-006  0.011195  0.021752  0.00035573  0.0045668  0  0
-62  17.828  7.1346e-005  0.28718  0.51995  2.0753e-005  0.052108  0.10079  0.00073422  0.0009754  5.2444e-006  0.011302  0.021931  0.00037468  0.0045489  0  0
-63  19.069  7.9293e-005  0.28738  0.51866  2.3232e-005  0.052338  0.10127  0.00076828  0.0010163  5.8893e-006  0.011401  0.022131  0.00039437  0.0045363  0  0
-64  20.383  8.7965e-005  0.28749  0.5171  2.5904e-005  0.052544  0.10165  0.00080165  0.0010563  6.6232e-006  0.011549  0.022421  0.000418  0.0048423  2.5266e-006  0
-65  21.75  9.7563e-005  0.28781  0.51632  2.8873e-005  0.052781  0.10207  0.00083724  0.0010988  7.3793e-006  0.011582  0.022437  0.00043356  0.0044965  0  0
-66  23.184  0.00010805  0.28813  0.51501  3.2134e-005  0.053011  0.10248  0.00087302  0.0011409  8.2428e-006  0.011672  0.022602  0.00045376  0.0044729  0  0
-67  24.703  0.00011946  0.28863  0.5137  3.5704e-005  0.053191  0.10282  0.00090878  0.0011824  9.185e-006  0.011743  0.02275  0.00047362  0.0044447  0  0
-68  26.278  0.00013205  0.28883  0.5126  3.9615e-005  0.053391  0.1032  0.00094528  0.0012254  1.0225e-005  0.011835  0.022871  0.00049395  0.0044219  0  0
-69  27.928  0.00014573  0.28932  0.51132  4.3935e-005  0.053567  0.10355  0.0009829  0.0012676  1.1351e-005  0.011888  0.022988  0.00051454  0.0043971  0  0
-70  29.656  0.00016051  0.28965  0.51018  4.8624e-005  0.053749  0.10386  0.0010217  0.0013117  1.2611e-005  0.01197  0.023132  0.00053547  0.0043701  0  0
-71  31.466  0.0001767  0.28983  0.5088  5.374e-005  0.053899  0.10424  0.0010583  0.0013538  1.4015e-005  0.012045  0.023327  0.00055997  0.0046367  2.4439e-006  0
-72  33.358  0.00019455  0.29018  0.50752  5.9326e-005  0.054049  0.10432  0.0010972  0.001397  1.5558e-005  0.012141  0.023532  0.00058546  0.0048983  6.2863e-006  0
-73  35.342  0.00021363  0.29031  0.5062  6.5419e-005  0.054157  0.10469  0.0011346  0.0014374  1.726e-005  0.012252  0.02374  0.00061174  0.0051554  1.1431e-005  0
-74  37.396  0.00021847  0.29067  0.50487  7.2067e-005  0.054284  0.10482  0.0011739  0.0014815  1.912e-005  0.012354  0.02396  0.00063938  0.0054097  1.7916e-005  0
-75  39.552  0.00025738  0.29101  0.50338  7.9388e-005  0.054383  0.10518  0.0012136  0.001522  2.1136e-005  0.012439  0.02417  0.00066722  0.0056558  2.5738e-005  0
-76  41.793  0.00028186  0.29144  0.502  8.7096e-005  0.054507  0.10528  0.0012514  0.0015649  2.3377e-005  0.012538  0.024406  0.00069581  0.0058981  3.4982e-005  0
-77  44.121  0.0003087  0.2917  0.50067  9.5646e-005  0.0546  0.10562  0.0012919  0.0016069  2.5838e-005  0.012647  0.024637  0.00072528  0.0060243  5.1291e-005  0
-78  46.547  0.00033794  0.29218  0.49928  0.00010506  0.054676  0.1057  0.001332  0.0016478  2.8509e-005  0.01274  0.024857  0.00075408  0.006299  6.1229e-005  0
-79  49.076  0.00036943  0.29261  0.4978  0.00011513  0.054752  0.10596  0.0013734  0.0016892  3.1441e-005  0.012837  0.025084  0.0007845  0.0065205  7.4986e-005  0
-80  51.691  0.00040355  0.29289  0.49641  0.00012613  0.054845  0.10621  0.0014142  0.0017314  3.4648e-005  0.012923  0.025323  0.00081638  0.0067903  8.6668e-005  0
-81  54.416  0.00044068  0.2933  0.49489  0.00013819  0.05491  0.1064  0.0014555  0.0017715  3.815e-005  0.013029  0.025544  0.00084718  0.0070751  9.9419e-005  6.2114e-005
-82  57.258  0.00048063  0.29376  0.49338  0.00015107  0.054962  0.10654  0.0014985  0.0018128  4.1951e-005  0.013099  0.025761  0.00088023  0.0073527  0.0001123  0.00017343
-83  60.2  0.00052492  0.29419  0.49186  0.00016512  0.055  0.10665  0.0015399  0.0018538  4.6097e-005  0.013189  0.02598  0.00091197  0.0076412  0.00012542  0.00032459
-84  63.239  0.00057085  0.29459  0.49036  0.00018043  0.055045  0.10674  0.0015813  0.0018944  5.0601e-005  0.013267  0.026202  0.00094403  0.0079223  0.00013884  0.00051234
-85  66.41  0.00062189  0.29499  0.48878  0.00019681  0.055082  0.10691  0.0016248  0.0019334  5.5564e-005  0.013341  0.026412  0.00097726  0.0081915  0.00015224  0.00073182
-86  69.692  0.00067727  0.29544  0.48715  0.00021466  0.0551  0.10704  0.0016673  0.0019715  6.0839e-005  0.013416  0.026632  0.0010102  0.0084659  0.00016602  0.00098434
-87  73.088  0.0007361  0.29594  0.48558  0.00023396  0.055111  0.10713  0.0017089  0.0020113  6.6769e-005  0.013491  0.026844  0.0010439  0.0087292  0.00018019  0.0011931
-88  76.582  0.00080045  0.29642  0.48406  0.00025489  0.055131  0.10721  0.0017524  0.0020501  7.2994e-005  0.013554  0.027056  0.0010786  0.0089969  0.00019496  0.0013763
-89  80.213  0.00087019  0.29696  0.48247  0.00027751  0.055128  0.10734  0.0017965  0.0020882  7.9913e-005  0.013614  0.027265  0.0011133  0.0092629  0.00020982  0.0015272
-90  83.972  0.00094555  0.29748  0.48087  0.00030189  0.055113  0.10754  0.0018399  0.0021245  8.741e-005  0.013671  0.027473  0.0011468  0.009515  0.00022484  0.0016684
-91  87.81  0.0010272  0.29814  0.47944  0.00032855  0.05513  0.10762  0.0018848  0.0021626  9.5547e-005  0.013734  0.027685  0.0011821  0.0097028  0.00023528  0.001624
-92  91.782  0.0011146  0.29875  0.47798  0.00035737  0.05512  0.10776  0.0019285  0.0021998  0.00010438  0.013783  0.027881  0.001217  0.0099039  0.00024776  0.0016583
-93  95.895  0.0012097  0.29939  0.47646  0.00038792  0.055102  0.10793  0.001973  0.0022358  0.00011387  0.013828  0.028083  0.0012514  0.010094  0.00026007  0.0016873
-94  100.1  0.0013138  0.30011  0.47505  0.0004216  0.055088  0.108  0.0020181  0.0022718  0.00012428  0.013877  0.028293  0.0012868  0.01025  0.00027054  0.0016245
-95  104.45  0.0014245  0.3008  0.47351  0.00045857  0.055057  0.10818  0.0020631  0.0023072  0.00013556  0.01391  0.028481  0.0013221  0.010426  0.00028261  0.0016438
-96  108.94  0.0015449  0.30155  0.47193  0.00049754  0.055014  0.10823  0.0021076  0.0023408  0.0001477  0.013944  0.028677  0.0013568  0.010621  0.0002965  0.0017487
-97  113.56  0.0016741  0.30223  0.47043  0.00053982  0.054951  0.1084  0.0021531  0.0023742  0.00016089  0.013975  0.028867  0.0013923  0.010779  0.00030822  0.001763
-98  118.28  0.0018152  0.30309  0.46897  0.00058589  0.054903  0.10847  0.0021982  0.0024078  0.00017526  0.014001  0.029049  0.0014271  0.010906  0.00031873  0.0016824
-99  123.16  0.0019666  0.30392  0.46736  0.00063495  0.054823  0.10864  0.0022434  0.0024359  0.00019065  0.014014  0.029239  0.0014623  0.011051  0.00033047  0.0016913
-100  128.15  0.0021311  0.30472  0.46586  0.00068826  0.054749  0.1087  0.0022887  0.0024737  0.00020741  0.014031  0.029419  0.0014967  0.01119  0.00034179  0.001698
-101  133.3  0.0023106  0.30555  0.46429  0.00074643  0.054651  0.10885  0.0023331  0.0024981  0.0002258  0.014036  0.029595  0.0015311  0.011328  0.00035409  0.0017029
-102  138.56  0.0024971  0.30651  0.46268  0.00080903  0.054546  0.10891  0.0023816  0.002526  0.00024538  0.014037  0.02977  0.0015654  0.011453  0.00036518  0.0017068
-103  143.98  0.0027087  0.30733  0.46103  0.0008765  0.054416  0.10904  0.0024239  0.0025559  0.0002667  0.014029  0.029941  0.0015995  0.011599  0.00037852  0.0018058
-104  149.54  0.0029289  0.3082  0.4594  0.00094888  0.054272  0.10913  0.0024675  0.0025812  0.00028955  0.014009  0.030111  0.001633  0.011736  0.00039253  0.0019011
-105  149.54  0.0029289  0.3082  0.4594  0.00094888  0.054272  0.10913  0.0024675  0.0025812  0.00028955  0.014009  0.030111  0.001633  0.011736  0.00039253  0.0019011
-106  149.54  0.0029289  0.3082  0.4594  0.00094888  0.054272  0.10913  0.0024675  0.0025812  0.00028955  0.014009  0.030111  0.001633  0.011736  0.00039253  0.0019011
-107  149.54  0.0029289  0.3082  0.4594  0.00094888  0.054272  0.10913  0.0024675  0.0025812  0.00028955  0.014009  0.030111  0.001633  0.011736  0.00039253  0.0019011
-108  149.54  0.0029289  0.3082  0.4594  0.00094888  0.054272  0.10913  0.0024675  0.0025812  0.00028955  0.014009  0.030111  0.001633  0.011736  0.00039253  0.0019011
-109  149.54  0.0029289  0.3082  0.4594  0.00094888  0.054272  0.10913  0.0024675  0.0025812  0.00028955  0.014009  0.030111  0.001633  0.011736  0.00039253  0.0019011
diff --git a/python/cython/PyElements.pyx b/python/cython/PyElements.pyx
index 27e2b82..245e88e 100644
--- a/python/cython/PyElements.pyx
+++ b/python/cython/PyElements.pyx
@@ -38,7 +38,7 @@ from Material cimport *
 
 __doc__ = """
 
-Initialization with XCOM parameters from fisx:
+Initialization with XCOM mass attenuation cross sections:
 
 import os
 from fisx import DataDir
@@ -47,18 +47,6 @@ bindingEnergies = os.path.join(dataDir, "BindingEnergies.dat")
 xcomFile = os.path.join(dataDir, "XCOM_CrossSections.dat")
 xcom = Elements(dataDir, bindingEnergies, xcomFile)
 
-Initialization with XCOM parameters and binding energies from PyMca:
-
-import os
-from PyMca5 import PyMcaDataDir
-dataDir = PyMcaDataDir.PYMCA_DATA_DIR
-bindingEnergies = os.path.join(dataDir, "BindingEnergies.dat")
-xcomFile = os.path.join(dataDir, "XCOM_CrossSections.dat")
-# This is needed because PyMca does not have the non-radiative rates
-from fisx import DataDir
-dataDir = DataDir.FISX_DATA_DIR
-xcom = Elements(dataDir, bindingEnergies, xcomFile)
-
 """
 cdef class PyElements:
     cdef Elements *thisptr
@@ -90,6 +78,31 @@ cdef class PyElements:
         """
         import os
         try:
+            from PyMca5 import getDataFile
+        except ImportError:
+            # old fashion way with duplicated data in PyMca and in fisx
+            return self.__initializeAsPyMcaOld()
+
+        from fisx import DataDir
+        directoryName = DataDir.FISX_DATA_DIR
+        bindingEnergies = getDataFile("BindingEnergies.dat")
+        xcomFile = getDataFile("XCOM_CrossSections.dat")
+        del self.thisptr
+        self.thisptr = new Elements(toBytes(directoryName), toBytes(bindingEnergies), toBytes(xcomFile))
+        for shell in ["K", "L", "M"]:
+            shellConstantsFile = getDataFile(shell+"ShellConstants.dat")
+            self.thisptr.setShellConstantsFile(toBytes(shell),
+                                               toBytes(shellConstantsFile))
+        for shell in ["K", "L", "M"]:
+            radiativeRatesFile = getDataFile(shell+"ShellRates.dat")
+            self.thisptr.setShellRadiativeTransitionsFile(toBytes(shell), toBytes(radiativeRatesFile))
+
+    def __initializeAsPyMcaOLD(self):
+        """
+        Configure the instance to use the same set of data as PyMca.
+        """
+        import os
+        try:
             from fisx import DataDir
             directoryName = DataDir.FISX_DATA_DIR
             from PyMca5 import PyMcaDataDir
diff --git a/python/cython/PyMath.pyx b/python/cython/PyMath.pyx
index 1cbd2e0..e6a9e3d 100644
--- a/python/cython/PyMath.pyx
+++ b/python/cython/PyMath.pyx
@@ -68,13 +68,3 @@ cdef class PyMath:
         Calculate the complementary error function erfc(x)
         """
         return self.thisptr.erfc(x)
-
-    def hypermet(self, x, gaussArea, position, fwhm,
-                 shortTailArea=0.0, shortTailSlope=0.03,
-                 longTailArea=0.0, longTailSlope=1.0,
-                 stepHeight=0.0):
-        """
-        Calculate the HYPERMET function of x.
-        """
-        return self.thisptr.hypermet(x, gaussArea, position, fwhm,
-                                     shortTailArea, shortTailSlope, longTailArea, longTailSlope, stepHeight)
diff --git a/python/cython/_fisx.pyx b/python/cython/_fisx.pyx
index 6ded362..78658e2 100644
--- a/python/cython/_fisx.pyx
+++ b/python/cython/_fisx.pyx
@@ -243,7 +243,7 @@ from Material cimport *
 
 __doc__ = """
 
-Initialization with XCOM parameters from fisx:
+Initialization with XCOM mass attenuation cross sections:
 
 import os
 from fisx import DataDir
@@ -252,18 +252,6 @@ bindingEnergies = os.path.join(dataDir, "BindingEnergies.dat")
 xcomFile = os.path.join(dataDir, "XCOM_CrossSections.dat")
 xcom = Elements(dataDir, bindingEnergies, xcomFile)
 
-Initialization with XCOM parameters and binding energies from PyMca:
-
-import os
-from PyMca5 import PyMcaDataDir
-dataDir = PyMcaDataDir.PYMCA_DATA_DIR
-bindingEnergies = os.path.join(dataDir, "BindingEnergies.dat")
-xcomFile = os.path.join(dataDir, "XCOM_CrossSections.dat")
-# This is needed because PyMca does not have the non-radiative rates
-from fisx import DataDir
-dataDir = DataDir.FISX_DATA_DIR
-xcom = Elements(dataDir, bindingEnergies, xcomFile)
-
 """
 cdef class PyElements:
     cdef Elements *thisptr
@@ -295,6 +283,31 @@ cdef class PyElements:
         """
         import os
         try:
+            from PyMca5 import getDataFile
+        except ImportError:
+            # old fashion way with duplicated data in PyMca and in fisx
+            return self.__initializeAsPyMcaOld()
+
+        from fisx import DataDir
+        directoryName = DataDir.FISX_DATA_DIR
+        bindingEnergies = getDataFile("BindingEnergies.dat")
+        xcomFile = getDataFile("XCOM_CrossSections.dat")
+        del self.thisptr
+        self.thisptr = new Elements(toBytes(directoryName), toBytes(bindingEnergies), toBytes(xcomFile))
+        for shell in ["K", "L", "M"]:
+            shellConstantsFile = getDataFile(shell+"ShellConstants.dat")
+            self.thisptr.setShellConstantsFile(toBytes(shell),
+                                               toBytes(shellConstantsFile))
+        for shell in ["K", "L", "M"]:
+            radiativeRatesFile = getDataFile(shell+"ShellRates.dat")
+            self.thisptr.setShellRadiativeTransitionsFile(toBytes(shell), toBytes(radiativeRatesFile))
+
+    def __initializeAsPyMcaOLD(self):
+        """
+        Configure the instance to use the same set of data as PyMca.
+        """
+        import os
+        try:
             from fisx import DataDir
             directoryName = DataDir.FISX_DATA_DIR
             from PyMca5 import PyMcaDataDir
@@ -804,16 +817,6 @@ cdef class PyMath:
         Calculate the complementary error function erfc(x)
         """
         return self.thisptr.erfc(x)
-
-    def hypermet(self, x, gaussArea, position, fwhm,
-                 shortTailArea=0.0, shortTailSlope=0.03,
-                 longTailArea=0.0, longTailSlope=1.0,
-                 stepHeight=0.0):
-        """
-        Calculate the HYPERMET function of x.
-        """
-        return self.thisptr.hypermet(x, gaussArea, position, fwhm,
-                                     shortTailArea, shortTailSlope, longTailArea, longTailSlope, stepHeight)
 #/*##########################################################################
 #
 # The fisx library for X-Ray Fluorescence
diff --git a/python/cython/default/_fisx.cpp b/python/cython/default/_fisx.cpp
index 5a7726c..174f47c 100644
--- a/python/cython/default/_fisx.cpp
+++ b/python/cython/default/_fisx.cpp
@@ -1,25 +1,14 @@
-/* Generated by Cython 0.19.1 on Wed Apr 27 21:10:02 2016 */
+/* Generated by Cython 0.23.4 */
 
 #define PY_SSIZE_T_CLEAN
-#ifndef CYTHON_USE_PYLONG_INTERNALS
-#ifdef PYLONG_BITS_IN_DIGIT
-#define CYTHON_USE_PYLONG_INTERNALS 0
-#else
-#include "pyconfig.h"
-#ifdef PYLONG_BITS_IN_DIGIT
-#define CYTHON_USE_PYLONG_INTERNALS 1
-#else
-#define CYTHON_USE_PYLONG_INTERNALS 0
-#endif
-#endif
-#endif
 #include "Python.h"
 #ifndef Py_PYTHON_H
     #error Python headers needed to compile C extensions, please install development version of Python.
-#elif PY_VERSION_HEX < 0x02040000
-    #error Cython requires Python 2.4+.
+#elif PY_VERSION_HEX < 0x02060000 || (0x03000000 <= PY_VERSION_HEX && PY_VERSION_HEX < 0x03020000)
+    #error Cython requires Python 2.6+ or Python 3.2+.
 #else
-#include <stddef.h> /* For offsetof */
+#define CYTHON_ABI "0_23_4"
+#include <stddef.h>
 #ifndef offsetof
 #define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
 #endif
@@ -53,97 +42,72 @@
 #define CYTHON_COMPILING_IN_PYPY 0
 #define CYTHON_COMPILING_IN_CPYTHON 1
 #endif
-#if PY_VERSION_HEX < 0x02050000
-  typedef int Py_ssize_t;
-  #define PY_SSIZE_T_MAX INT_MAX
-  #define PY_SSIZE_T_MIN INT_MIN
-  #define PY_FORMAT_SIZE_T ""
-  #define CYTHON_FORMAT_SSIZE_T ""
-  #define PyInt_FromSsize_t(z) PyInt_FromLong(z)
-  #define PyInt_AsSsize_t(o)   __Pyx_PyInt_AsInt(o)
-  #define PyNumber_Index(o)    ((PyNumber_Check(o) && !PyFloat_Check(o)) ? PyNumber_Int(o) : \
-                                (PyErr_Format(PyExc_TypeError, \
-                                              "expected index value, got %.200s", Py_TYPE(o)->tp_name), \
-                                 (PyObject*)0))
-  #define __Pyx_PyIndex_Check(o) (PyNumber_Check(o) && !PyFloat_Check(o) && \
-                                  !PyComplex_Check(o))
-  #define PyIndex_Check __Pyx_PyIndex_Check
-  #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message)
-  #define __PYX_BUILD_PY_SSIZE_T "i"
-#else
-  #define __PYX_BUILD_PY_SSIZE_T "n"
-  #define CYTHON_FORMAT_SSIZE_T "z"
-  #define __Pyx_PyIndex_Check PyIndex_Check
+#if !defined(CYTHON_USE_PYLONG_INTERNALS) && CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x02070000
+#define CYTHON_USE_PYLONG_INTERNALS 1
 #endif
-#if PY_VERSION_HEX < 0x02060000
-  #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt)
-  #define Py_TYPE(ob)   (((PyObject*)(ob))->ob_type)
-  #define Py_SIZE(ob)   (((PyVarObject*)(ob))->ob_size)
-  #define PyVarObject_HEAD_INIT(type, size) \
-          PyObject_HEAD_INIT(type) size,
-  #define PyType_Modified(t)
-  typedef struct {
-     void *buf;
-     PyObject *obj;
-     Py_ssize_t len;
-     Py_ssize_t itemsize;
-     int readonly;
-     int ndim;
-     char *format;
-     Py_ssize_t *shape;
-     Py_ssize_t *strides;
-     Py_ssize_t *suboffsets;
-     void *internal;
-  } Py_buffer;
-  #define PyBUF_SIMPLE 0
-  #define PyBUF_WRITABLE 0x0001
-  #define PyBUF_FORMAT 0x0004
-  #define PyBUF_ND 0x0008
-  #define PyBUF_STRIDES (0x0010 | PyBUF_ND)
-  #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES)
-  #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES)
-  #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES)
-  #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES)
-  #define PyBUF_RECORDS (PyBUF_STRIDES | PyBUF_FORMAT | PyBUF_WRITABLE)
-  #define PyBUF_FULL (PyBUF_INDIRECT | PyBUF_FORMAT | PyBUF_WRITABLE)
-  typedef int (*getbufferproc)(PyObject *, Py_buffer *, int);
-  typedef void (*releasebufferproc)(PyObject *, Py_buffer *);
+#if CYTHON_COMPILING_IN_PYPY && PY_VERSION_HEX < 0x02070600 && !defined(Py_OptimizeFlag)
+#define Py_OptimizeFlag 0
 #endif
+#define __PYX_BUILD_PY_SSIZE_T "n"
+#define CYTHON_FORMAT_SSIZE_T "z"
 #if PY_MAJOR_VERSION < 3
   #define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
-  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) \
-          PyCode_New(a, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
+  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
+          PyCode_New(a+k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
+  #define __Pyx_DefaultClassType PyClass_Type
 #else
   #define __Pyx_BUILTIN_MODULE_NAME "builtins"
-  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos) \
+  #define __Pyx_PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)\
           PyCode_New(a, k, l, s, f, code, c, n, v, fv, cell, fn, name, fline, lnos)
+  #define __Pyx_DefaultClassType PyType_Type
 #endif
-#if PY_MAJOR_VERSION < 3 && PY_MINOR_VERSION < 6
-  #define PyUnicode_FromString(s) PyUnicode_Decode(s, strlen(s), "UTF-8", "strict")
-#endif
-#if PY_MAJOR_VERSION >= 3
+#ifndef Py_TPFLAGS_CHECKTYPES
   #define Py_TPFLAGS_CHECKTYPES 0
+#endif
+#ifndef Py_TPFLAGS_HAVE_INDEX
   #define Py_TPFLAGS_HAVE_INDEX 0
 #endif
-#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3)
+#ifndef Py_TPFLAGS_HAVE_NEWBUFFER
   #define Py_TPFLAGS_HAVE_NEWBUFFER 0
 #endif
-#if PY_VERSION_HEX < 0x02060000
-  #define Py_TPFLAGS_HAVE_VERSION_TAG 0
+#ifndef Py_TPFLAGS_HAVE_FINALIZE
+  #define Py_TPFLAGS_HAVE_FINALIZE 0
 #endif
 #if PY_VERSION_HEX > 0x03030000 && defined(PyUnicode_KIND)
   #define CYTHON_PEP393_ENABLED 1
-  #define __Pyx_PyUnicode_READY(op)       (likely(PyUnicode_IS_READY(op)) ? \
+  #define __Pyx_PyUnicode_READY(op)       (likely(PyUnicode_IS_READY(op)) ?\
                                               0 : _PyUnicode_Ready((PyObject *)(op)))
   #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_LENGTH(u)
   #define __Pyx_PyUnicode_READ_CHAR(u, i) PyUnicode_READ_CHAR(u, i)
+  #define __Pyx_PyUnicode_KIND(u)         PyUnicode_KIND(u)
+  #define __Pyx_PyUnicode_DATA(u)         PyUnicode_DATA(u)
   #define __Pyx_PyUnicode_READ(k, d, i)   PyUnicode_READ(k, d, i)
 #else
   #define CYTHON_PEP393_ENABLED 0
   #define __Pyx_PyUnicode_READY(op)       (0)
   #define __Pyx_PyUnicode_GET_LENGTH(u)   PyUnicode_GET_SIZE(u)
   #define __Pyx_PyUnicode_READ_CHAR(u, i) ((Py_UCS4)(PyUnicode_AS_UNICODE(u)[i]))
-  #define __Pyx_PyUnicode_READ(k, d, i)   ((k=k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
+  #define __Pyx_PyUnicode_KIND(u)         (sizeof(Py_UNICODE))
+  #define __Pyx_PyUnicode_DATA(u)         ((void*)PyUnicode_AS_UNICODE(u))
+  #define __Pyx_PyUnicode_READ(k, d, i)   ((void)(k), (Py_UCS4)(((Py_UNICODE*)d)[i]))
+#endif
+#if CYTHON_COMPILING_IN_PYPY
+  #define __Pyx_PyUnicode_Concat(a, b)      PyNumber_Add(a, b)
+  #define __Pyx_PyUnicode_ConcatSafe(a, b)  PyNumber_Add(a, b)
+#else
+  #define __Pyx_PyUnicode_Concat(a, b)      PyUnicode_Concat(a, b)
+  #define __Pyx_PyUnicode_ConcatSafe(a, b)  ((unlikely((a) == Py_None) || unlikely((b) == Py_None)) ?\
+      PyNumber_Add(a, b) : __Pyx_PyUnicode_Concat(a, b))
+#endif
+#if CYTHON_COMPILING_IN_PYPY && !defined(PyUnicode_Contains)
+  #define PyUnicode_Contains(u, s)  PySequence_Contains(u, s)
+#endif
+#define __Pyx_PyString_FormatSafe(a, b)   ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : __Pyx_PyString_Format(a, b))
+#define __Pyx_PyUnicode_FormatSafe(a, b)  ((unlikely((a) == Py_None)) ? PyNumber_Remainder(a, b) : PyUnicode_Format(a, b))
+#if PY_MAJOR_VERSION >= 3
+  #define __Pyx_PyString_Format(a, b)  PyUnicode_Format(a, b)
+#else
+  #define __Pyx_PyString_Format(a, b)  PyString_Format(a, b)
 #endif
 #if PY_MAJOR_VERSION >= 3
   #define PyBaseString_Type            PyUnicode_Type
@@ -152,35 +116,12 @@
   #define PyString_Check               PyUnicode_Check
   #define PyString_CheckExact          PyUnicode_CheckExact
 #endif
-#if PY_VERSION_HEX < 0x02060000
-  #define PyBytesObject                PyStringObject
-  #define PyBytes_Type                 PyString_Type
-  #define PyBytes_Check                PyString_Check
-  #define PyBytes_CheckExact           PyString_CheckExact
-  #define PyBytes_FromString           PyString_FromString
-  #define PyBytes_FromStringAndSize    PyString_FromStringAndSize
-  #define PyBytes_FromFormat           PyString_FromFormat
-  #define PyBytes_DecodeEscape         PyString_DecodeEscape
-  #define PyBytes_AsString             PyString_AsString
-  #define PyBytes_AsStringAndSize      PyString_AsStringAndSize
-  #define PyBytes_Size                 PyString_Size
-  #define PyBytes_AS_STRING            PyString_AS_STRING
-  #define PyBytes_GET_SIZE             PyString_GET_SIZE
-  #define PyBytes_Repr                 PyString_Repr
-  #define PyBytes_Concat               PyString_Concat
-  #define PyBytes_ConcatAndDel         PyString_ConcatAndDel
-#endif
 #if PY_MAJOR_VERSION >= 3
   #define __Pyx_PyBaseString_Check(obj) PyUnicode_Check(obj)
   #define __Pyx_PyBaseString_CheckExact(obj) PyUnicode_CheckExact(obj)
 #else
-  #define __Pyx_PyBaseString_Check(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj) || \
-                                         PyString_Check(obj) || PyUnicode_Check(obj))
-  #define __Pyx_PyBaseString_CheckExact(obj) (Py_TYPE(obj) == &PyBaseString_Type)
-#endif
-#if PY_VERSION_HEX < 0x02060000
-  #define PySet_Check(obj)             PyObject_TypeCheck(obj, &PySet_Type)
-  #define PyFrozenSet_Check(obj)       PyObject_TypeCheck(obj, &PyFrozenSet_Type)
+  #define __Pyx_PyBaseString_Check(obj) (PyString_Check(obj) || PyUnicode_Check(obj))
+  #define __Pyx_PyBaseString_CheckExact(obj) (PyString_CheckExact(obj) || PyUnicode_CheckExact(obj))
 #endif
 #ifndef PySet_CheckExact
   #define PySet_CheckExact(obj)        (Py_TYPE(obj) == &PySet_Type)
@@ -201,11 +142,17 @@
   #define PyInt_AsSsize_t              PyLong_AsSsize_t
   #define PyInt_AsUnsignedLongMask     PyLong_AsUnsignedLongMask
   #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
+  #define PyNumber_Int                 PyNumber_Long
 #endif
 #if PY_MAJOR_VERSION >= 3
   #define PyBoolObject                 PyLongObject
 #endif
-#if PY_VERSION_HEX < 0x03020000
+#if PY_MAJOR_VERSION >= 3 && CYTHON_COMPILING_IN_PYPY
+  #ifndef PyUnicode_InternFromString
+    #define PyUnicode_InternFromString(s) PyUnicode_FromString(s)
+  #endif
+#endif
+#if PY_VERSION_HEX < 0x030200A4
   typedef long Py_hash_t;
   #define __Pyx_PyInt_FromHash_t PyInt_FromLong
   #define __Pyx_PyInt_AsHash_t   PyInt_AsLong
@@ -213,58 +160,28 @@
   #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t
   #define __Pyx_PyInt_AsHash_t   PyInt_AsSsize_t
 #endif
-#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300)
-  #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b)
-  #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value)
-  #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b)
-#else
-  #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \
-        (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \
-        (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \
-            (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0)))
-  #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \
-        (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \
-        (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \
-            (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1)))
-  #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \
-        (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \
-        (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \
-            (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1)))
-#endif
 #if PY_MAJOR_VERSION >= 3
-  #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func))
-#endif
-#if PY_VERSION_HEX < 0x02050000
-  #define __Pyx_GetAttrString(o,n)   PyObject_GetAttrString((o),((char *)(n)))
-  #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a))
-  #define __Pyx_DelAttrString(o,n)   PyObject_DelAttrString((o),((char *)(n)))
+  #define __Pyx_PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func))
 #else
-  #define __Pyx_GetAttrString(o,n)   PyObject_GetAttrString((o),(n))
-  #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a))
-  #define __Pyx_DelAttrString(o,n)   PyObject_DelAttrString((o),(n))
+  #define __Pyx_PyMethod_New(func, self, klass) PyMethod_New(func, self, klass)
 #endif
-#if PY_VERSION_HEX < 0x02050000
-  #define __Pyx_NAMESTR(n) ((char *)(n))
-  #define __Pyx_DOCSTR(n)  ((char *)(n))
+#if PY_VERSION_HEX >= 0x030500B1
+#define __Pyx_PyAsyncMethodsStruct PyAsyncMethods
+#define __Pyx_PyType_AsAsync(obj) (Py_TYPE(obj)->tp_as_async)
+#elif CYTHON_COMPILING_IN_CPYTHON && PY_MAJOR_VERSION >= 3
+typedef struct {
+    unaryfunc am_await;
+    unaryfunc am_aiter;
+    unaryfunc am_anext;
+} __Pyx_PyAsyncMethodsStruct;
+#define __Pyx_PyType_AsAsync(obj) ((__Pyx_PyAsyncMethodsStruct*) (Py_TYPE(obj)->tp_reserved))
 #else
-  #define __Pyx_NAMESTR(n) (n)
-  #define __Pyx_DOCSTR(n)  (n)
-#endif
-#ifndef CYTHON_INLINE
-  #if defined(__GNUC__)
-    #define CYTHON_INLINE __inline__
-  #elif defined(_MSC_VER)
-    #define CYTHON_INLINE __inline
-  #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
-    #define CYTHON_INLINE inline
-  #else
-    #define CYTHON_INLINE
-  #endif
+#define __Pyx_PyType_AsAsync(obj) NULL
 #endif
 #ifndef CYTHON_RESTRICT
   #if defined(__GNUC__)
     #define CYTHON_RESTRICT __restrict__
-  #elif defined(_MSC_VER)
+  #elif defined(_MSC_VER) && _MSC_VER >= 1400
     #define CYTHON_RESTRICT __restrict
   #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
     #define CYTHON_RESTRICT restrict
@@ -272,13 +189,37 @@
     #define CYTHON_RESTRICT
   #endif
 #endif
+#define __Pyx_void_to_None(void_result) ((void)(void_result), Py_INCREF(Py_None), Py_None)
+
+#ifndef __cplusplus
+  #error "Cython files generated with the C++ option must be compiled with a C++ compiler."
+#endif
+#ifndef CYTHON_INLINE
+  #define CYTHON_INLINE inline
+#endif
+template<typename T>
+void __Pyx_call_destructor(T& x) {
+    x.~T();
+}
+template<typename T>
+class __Pyx_FakeReference {
+  public:
+    __Pyx_FakeReference() : ptr(NULL) { }
+    __Pyx_FakeReference(const T& ref) : ptr(const_cast<T*>(&ref)) { }
+    T *operator->() { return ptr; }
+    operator T&() { return *ptr; }
+  private:
+    T *ptr;
+};
+
+#if defined(WIN32) || defined(MS_WINDOWS)
+  #define _USE_MATH_DEFINES
+#endif
+#include <math.h>
 #ifdef NAN
 #define __PYX_NAN() ((float) NAN)
 #else
 static CYTHON_INLINE float __PYX_NAN() {
-  /* Initialize NaN. The sign is irrelevant, an exponent with all bits 1 and
-   a nonzero mantissa means NaN. If the first bit in the mantissa is 1, it is
-   a quiet NaN. */
   float value;
   memset(&value, 0xFF, sizeof(value));
   return value;
@@ -302,10 +243,6 @@ static CYTHON_INLINE float __PYX_NAN() {
   #endif
 #endif
 
-#if defined(WIN32) || defined(MS_WINDOWS)
-#define _USE_MATH_DEFINES
-#endif
-#include <math.h>
 #define __PYX_HAVE__fisx___fisx
 #define __PYX_HAVE_API__fisx___fisx
 #include "string.h"
@@ -350,19 +287,56 @@ static CYTHON_INLINE float __PYX_NAN() {
 #   define CYTHON_UNUSED
 # endif
 #endif
+#ifndef CYTHON_NCP_UNUSED
+# if CYTHON_COMPILING_IN_CPYTHON
+#  define CYTHON_NCP_UNUSED
+# else
+#  define CYTHON_NCP_UNUSED CYTHON_UNUSED
+# endif
+#endif
 typedef struct {PyObject **p; char *s; const Py_ssize_t n; const char* encoding;
-                const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/
+                const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry;
 
 #define __PYX_DEFAULT_STRING_ENCODING_IS_ASCII 0
 #define __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT 0
 #define __PYX_DEFAULT_STRING_ENCODING ""
 #define __Pyx_PyObject_FromString __Pyx_PyBytes_FromString
 #define __Pyx_PyObject_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
+#define __Pyx_uchar_cast(c) ((unsigned char)c)
+#define __Pyx_long_cast(x) ((long)x)
+#define __Pyx_fits_Py_ssize_t(v, type, is_signed)  (\
+    (sizeof(type) < sizeof(Py_ssize_t))  ||\
+    (sizeof(type) > sizeof(Py_ssize_t) &&\
+          likely(v < (type)PY_SSIZE_T_MAX ||\
+                 v == (type)PY_SSIZE_T_MAX)  &&\
+          (!is_signed || likely(v > (type)PY_SSIZE_T_MIN ||\
+                                v == (type)PY_SSIZE_T_MIN)))  ||\
+    (sizeof(type) == sizeof(Py_ssize_t) &&\
+          (is_signed || likely(v < (type)PY_SSIZE_T_MAX ||\
+                               v == (type)PY_SSIZE_T_MAX)))  )
+#if defined (__cplusplus) && __cplusplus >= 201103L
+    #include <cstdlib>
+    #define __Pyx_sst_abs(value) std::abs(value)
+#elif SIZEOF_INT >= SIZEOF_SIZE_T
+    #define __Pyx_sst_abs(value) abs(value)
+#elif SIZEOF_LONG >= SIZEOF_SIZE_T
+    #define __Pyx_sst_abs(value) labs(value)
+#elif defined (_MSC_VER) && defined (_M_X64)
+    #define __Pyx_sst_abs(value) _abs64(value)
+#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
+    #define __Pyx_sst_abs(value) llabs(value)
+#elif defined (__GNUC__)
+    #define __Pyx_sst_abs(value) __builtin_llabs(value)
+#else
+    #define __Pyx_sst_abs(value) ((value<0) ? -value : value)
+#endif
 static CYTHON_INLINE char* __Pyx_PyObject_AsString(PyObject*);
 static CYTHON_INLINE char* __Pyx_PyObject_AsStringAndSize(PyObject*, Py_ssize_t* length);
+#define __Pyx_PyByteArray_FromString(s) PyByteArray_FromStringAndSize((const char*)s, strlen((const char*)s))
+#define __Pyx_PyByteArray_FromStringAndSize(s, l) PyByteArray_FromStringAndSize((const char*)s, l)
 #define __Pyx_PyBytes_FromString        PyBytes_FromString
 #define __Pyx_PyBytes_FromStringAndSize PyBytes_FromStringAndSize
-static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(char*);
+static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(const char*);
 #if PY_MAJOR_VERSION < 3
     #define __Pyx_PyStr_FromString        __Pyx_PyBytes_FromString
     #define __Pyx_PyStr_FromStringAndSize __Pyx_PyBytes_FromStringAndSize
@@ -370,17 +344,19 @@ static CYTHON_INLINE PyObject* __Pyx_PyUnicode_FromString(char*);
     #define __Pyx_PyStr_FromString        __Pyx_PyUnicode_FromString
     #define __Pyx_PyStr_FromStringAndSize __Pyx_PyUnicode_FromStringAndSize
 #endif
+#define __Pyx_PyObject_AsSString(s)    ((signed char*) __Pyx_PyObject_AsString(s))
 #define __Pyx_PyObject_AsUString(s)    ((unsigned char*) __Pyx_PyObject_AsString(s))
-#define __Pyx_PyObject_FromUString(s)  __Pyx_PyObject_FromString((char*)s)
-#define __Pyx_PyBytes_FromUString(s)   __Pyx_PyBytes_FromString((char*)s)
-#define __Pyx_PyStr_FromUString(s)     __Pyx_PyStr_FromString((char*)s)
-#define __Pyx_PyUnicode_FromUString(s) __Pyx_PyUnicode_FromString((char*)s)
+#define __Pyx_PyObject_FromCString(s)  __Pyx_PyObject_FromString((const char*)s)
+#define __Pyx_PyBytes_FromCString(s)   __Pyx_PyBytes_FromString((const char*)s)
+#define __Pyx_PyByteArray_FromCString(s)   __Pyx_PyByteArray_FromString((const char*)s)
+#define __Pyx_PyStr_FromCString(s)     __Pyx_PyStr_FromString((const char*)s)
+#define __Pyx_PyUnicode_FromCString(s) __Pyx_PyUnicode_FromString((const char*)s)
 #if PY_MAJOR_VERSION < 3
 static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
 {
     const Py_UNICODE *u_end = u;
     while (*u_end++) ;
-    return u_end - u - 1;
+    return (size_t)(u_end - u - 1);
 }
 #else
 #define __Pyx_Py_UNICODE_strlen Py_UNICODE_strlen
@@ -388,13 +364,13 @@ static CYTHON_INLINE size_t __Pyx_Py_UNICODE_strlen(const Py_UNICODE *u)
 #define __Pyx_PyUnicode_FromUnicode(u)       PyUnicode_FromUnicode(u, __Pyx_Py_UNICODE_strlen(u))
 #define __Pyx_PyUnicode_FromUnicodeAndLength PyUnicode_FromUnicode
 #define __Pyx_PyUnicode_AsUnicode            PyUnicode_AsUnicode
-#define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None)
-#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False))
+#define __Pyx_NewRef(obj) (Py_INCREF(obj), obj)
+#define __Pyx_Owned_Py_None(b) __Pyx_NewRef(Py_None)
+#define __Pyx_PyBool_FromLong(b) ((b) ? __Pyx_NewRef(Py_True) : __Pyx_NewRef(Py_False))
 static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
 static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x);
 static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
 static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
-static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*);
 #if CYTHON_COMPILING_IN_CPYTHON
 #define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
 #else
@@ -403,19 +379,22 @@ static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*);
 #define __pyx_PyFloat_AsFloat(x) ((float) __pyx_PyFloat_AsDouble(x))
 #if PY_MAJOR_VERSION < 3 && __PYX_DEFAULT_STRING_ENCODING_IS_ASCII
 static int __Pyx_sys_getdefaultencoding_not_ascii;
-static int __Pyx_init_sys_getdefaultencoding_params() {
-    PyObject* sys = NULL;
+static int __Pyx_init_sys_getdefaultencoding_params(void) {
+    PyObject* sys;
     PyObject* default_encoding = NULL;
     PyObject* ascii_chars_u = NULL;
     PyObject* ascii_chars_b = NULL;
+    const char* default_encoding_c;
     sys = PyImport_ImportModule("sys");
-    if (sys == NULL) goto bad;
-    default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL);
-    if (default_encoding == NULL) goto bad;
-    if (strcmp(PyBytes_AsString(default_encoding), "ascii") == 0) {
+    if (!sys) goto bad;
+    default_encoding = PyObject_CallMethod(sys, (char*) "getdefaultencoding", NULL);
+    Py_DECREF(sys);
+    if (!default_encoding) goto bad;
+    default_encoding_c = PyBytes_AsString(default_encoding);
+    if (!default_encoding_c) goto bad;
+    if (strcmp(default_encoding_c, "ascii") == 0) {
         __Pyx_sys_getdefaultencoding_not_ascii = 0;
     } else {
-        const char* default_encoding_c = PyBytes_AS_STRING(default_encoding);
         char ascii_chars[128];
         int c;
         for (c = 0; c < 128; c++) {
@@ -423,23 +402,21 @@ static int __Pyx_init_sys_getdefaultencoding_params() {
         }
         __Pyx_sys_getdefaultencoding_not_ascii = 1;
         ascii_chars_u = PyUnicode_DecodeASCII(ascii_chars, 128, NULL);
-        if (ascii_chars_u == NULL) goto bad;
+        if (!ascii_chars_u) goto bad;
         ascii_chars_b = PyUnicode_AsEncodedString(ascii_chars_u, default_encoding_c, NULL);
-        if (ascii_chars_b == NULL || strncmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) {
+        if (!ascii_chars_b || !PyBytes_Check(ascii_chars_b) || memcmp(ascii_chars, PyBytes_AS_STRING(ascii_chars_b), 128) != 0) {
             PyErr_Format(
                 PyExc_ValueError,
-                "This module compiled with c_string_encoding=ascii, but default encoding '%s' is not a superset of ascii.",
+                "This module compiled with c_string_encoding=ascii, but default encoding '%.200s' is not a superset of ascii.",
                 default_encoding_c);
             goto bad;
         }
+        Py_DECREF(ascii_chars_u);
+        Py_DECREF(ascii_chars_b);
     }
-    Py_XDECREF(sys);
-    Py_XDECREF(default_encoding);
-    Py_XDECREF(ascii_chars_u);
-    Py_XDECREF(ascii_chars_b);
+    Py_DECREF(default_encoding);
     return 0;
 bad:
-    Py_XDECREF(sys);
     Py_XDECREF(default_encoding);
     Py_XDECREF(ascii_chars_u);
     Py_XDECREF(ascii_chars_b);
@@ -452,22 +429,23 @@ bad:
 #define __Pyx_PyUnicode_FromStringAndSize(c_str, size) PyUnicode_Decode(c_str, size, __PYX_DEFAULT_STRING_ENCODING, NULL)
 #if __PYX_DEFAULT_STRING_ENCODING_IS_DEFAULT
 static char* __PYX_DEFAULT_STRING_ENCODING;
-static int __Pyx_init_sys_getdefaultencoding_params() {
-    PyObject* sys = NULL;
+static int __Pyx_init_sys_getdefaultencoding_params(void) {
+    PyObject* sys;
     PyObject* default_encoding = NULL;
     char* default_encoding_c;
     sys = PyImport_ImportModule("sys");
-    if (sys == NULL) goto bad;
+    if (!sys) goto bad;
     default_encoding = PyObject_CallMethod(sys, (char*) (const char*) "getdefaultencoding", NULL);
-    if (default_encoding == NULL) goto bad;
-    default_encoding_c = PyBytes_AS_STRING(default_encoding);
+    Py_DECREF(sys);
+    if (!default_encoding) goto bad;
+    default_encoding_c = PyBytes_AsString(default_encoding);
+    if (!default_encoding_c) goto bad;
     __PYX_DEFAULT_STRING_ENCODING = (char*) malloc(strlen(default_encoding_c));
+    if (!__PYX_DEFAULT_STRING_ENCODING) goto bad;
     strcpy(__PYX_DEFAULT_STRING_ENCODING, default_encoding_c);
-    Py_DECREF(sys);
     Py_DECREF(default_encoding);
     return 0;
 bad:
-    Py_XDECREF(sys);
     Py_XDECREF(default_encoding);
     return -1;
 }
@@ -475,16 +453,11 @@ bad:
 #endif
 
 
-#ifdef __GNUC__
-  /* Test for GCC > 2.95 */
-  #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))
-    #define likely(x)   __builtin_expect(!!(x), 1)
-    #define unlikely(x) __builtin_expect(!!(x), 0)
-  #else /* __GNUC__ > 2 ... */
-    #define likely(x)   (x)
-    #define unlikely(x) (x)
-  #endif /* __GNUC__ > 2 ... */
-#else /* __GNUC__ */
+/* Test for GCC > 2.95 */
+#if defined(__GNUC__)     && (__GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)))
+  #define likely(x)   __builtin_expect(!!(x), 1)
+  #define unlikely(x) __builtin_expect(!!(x), 0)
+#else /* !__GNUC__ or GCC < 2.95 */
   #define likely(x)   (x)
   #define unlikely(x) (x)
 #endif /* __GNUC__ */
@@ -501,40 +474,24 @@ static const char *__pyx_filename;
 
 
 static const char *__pyx_f[] = {
-  "_fisx.pyx",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
-  "stringsource",
+  "python\\cython\\_fisx.pyx",
   "stringsource",
 };
 
 /*--- Type declarations ---*/
 struct __pyx_obj_4fisx_5_fisx_PyDetector;
-struct __pyx_obj_4fisx_5_fisx_PySimpleSpecfile;
-struct __pyx_obj_4fisx_5_fisx_PyElements;
-struct __pyx_obj_4fisx_5_fisx_PyMath;
 struct __pyx_obj_4fisx_5_fisx_PyElement;
+struct __pyx_obj_4fisx_5_fisx_PyElements;
+struct __pyx_obj_4fisx_5_fisx_PyEPDL97;
+struct __pyx_obj_4fisx_5_fisx_PyLayer;
 struct __pyx_obj_4fisx_5_fisx_PyMaterial;
+struct __pyx_obj_4fisx_5_fisx_PyMath;
 struct __pyx_obj_4fisx_5_fisx_PyShell;
 struct __pyx_obj_4fisx_5_fisx_PySimpleIni;
-struct __pyx_obj_4fisx_5_fisx_PyLayer;
+struct __pyx_obj_4fisx_5_fisx_PySimpleSpecfile;
 struct __pyx_obj_4fisx_5_fisx_PyXRF;
-struct __pyx_obj_4fisx_5_fisx_PyEPDL97;
 
-/* "C:\GIT\FISX_REFERENCE\fisx\python\cython\_fisx.pyx":41
+/* "python\cython\_fisx.pyx":41
  * from FisxCythonTools import toBytes, toBytesKeys, toBytesKeysAndValues, toString,  toStringKeys, toStringKeysAndValues, toStringList
  * 
  * cdef class PyDetector:             # <<<<<<<<<<<<<<
@@ -547,20 +504,20 @@ struct __pyx_obj_4fisx_5_fisx_PyDetector {
 };
 
 
-/* "C:\GIT\FISX_REFERENCE\fisx\python\cython\_fisx.pyx":988
- * from SimpleSpecfile cimport *
+/* "python\cython\_fisx.pyx":122
+ * from Element cimport *
  * 
- * cdef class PySimpleSpecfile:             # <<<<<<<<<<<<<<
- *     cdef SimpleSpecfile *thisptr
+ * cdef class PyElement:             # <<<<<<<<<<<<<<
+ *     cdef Element *thisptr
  * 
  */
-struct __pyx_obj_4fisx_5_fisx_PySimpleSpecfile {
+struct __pyx_obj_4fisx_5_fisx_PyElement {
   PyObject_HEAD
-  fisx::SimpleSpecfile *thisptr;
+  fisx::Element *thisptr;
 };
 
... 34191 lines suppressed ...

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/python-modules/packages/python-fisx.git



More information about the Python-modules-commits mailing list