Salome HOME
commentaire
[tools/eficas.git] / Noyau / context.py
1 # coding=utf-8
2 # person_in_charge: mathieu.courtois at edf.fr
3 # ======================================================================
4 # COPYRIGHT (C) 1991 - 2012  EDF R&D                  WWW.CODE-ASTER.ORG
5 # THIS PROGRAM IS FREE SOFTWARE; YOU CAN REDISTRIBUTE IT AND/OR MODIFY
6 # IT UNDER THE TERMS OF THE GNU GENERAL PUBLIC LICENSE AS PUBLISHED BY
7 # THE FREE SOFTWARE FOUNDATION; EITHER VERSION 2 OF THE LICENSE, OR
8 # (AT YOUR OPTION) ANY LATER VERSION.
9 #
10 # THIS PROGRAM IS DISTRIBUTED IN THE HOPE THAT IT WILL BE USEFUL, BUT
11 # WITHOUT ANY WARRANTY; WITHOUT EVEN THE IMPLIED WARRANTY OF
12 # MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. SEE THE GNU
13 # GENERAL PUBLIC LICENSE FOR MORE DETAILS.
14 #
15 # YOU SHOULD HAVE RECEIVED A COPY OF THE GNU GENERAL PUBLIC LICENSE
16 # ALONG WITH THIS PROGRAM; IF NOT, WRITE TO EDF R&D CODE_ASTER,
17 #    1 AVENUE DU GENERAL DE GAULLE, 92141 CLAMART CEDEX, FRANCE.
18 #
19 #
20 # ======================================================================
21
22 from __future__ import absolute_import
23 _root = None
24 _cata = None
25 debug = 0
26
27 # Le "current step" est l'etape courante.
28 # Une macro se declare etape courante dans sa methode Build avant de construire
29 # ses etapes filles ou dans BuildExec avant de les executer.
30 # Les etapes simples le font aussi : dans Execute et BuildExec.
31 # (Build ne fait rien pour une etape)
32
33
34 def set_current_step(step):
35     """
36        Fonction qui permet de changer la valeur de l'etape courante
37     """
38     global _root
39     if _root:
40         raise Exception("Impossible d'affecter _root. Il devrait valoir None")
41     _root = step
42
43
44 def get_current_step():
45     """
46        Fonction qui permet d'obtenir la valeur de l'etape courante
47     """
48     return _root
49
50
51 def unset_current_step():
52     """
53        Fonction qui permet de remettre a None l'etape courante
54     """
55     global _root
56     _root = None
57
58
59 def set_current_cata(cata):
60     """
61        Fonction qui permet de changer l'objet catalogue courant
62     """
63     global _cata
64     if _cata:
65         raise Exception("Impossible d'affecter _cata. Il devrait valoir None")
66     _cata = cata
67
68
69 def get_current_cata():
70     """
71        Fonction qui retourne l'objet catalogue courant
72     """
73     return _cata
74
75
76 def unset_current_cata():
77     """
78        Fonction qui permet de remettre a None le catalogue courant
79     """
80     global _cata
81     _cata = None