#%AttributeInteger interface(creation/saving/restoring)%
#%Methods : FindOrCreateAttribute , Value, SaveAs, SetValue, FindComponent, FindAttribute, Open%

#      create  AttributeInteger      
#=================================
A = batchmode_geompy.myBuilder.FindOrCreateAttribute(batchmode_geompy.father, "AttributeInteger")
if A == None :
        raise  RuntimeError, "Can't create AttributeInteger attribute"
A = A._narrow(SALOMEDS.AttributeInteger)
A.SetValue(1000000)

if A.Value() != 1000000:
        raise  RuntimeError, "Error : wrong value of  AttributeInteger"

#   save and restore the study
#=================================
str= os.getenv("TmpDir")
if str == None:
        str = "/tmp"
# ... save ...
batchmode_geompy.myStudyManager.SaveAs(str+"/test.hdf", batchmode_geompy.myStudy)
# ... open ...
openedStudy= batchmode_geompy.myStudyManager.Open(str+"/test.hdf");

if openedStudy == None:
        raise  RuntimeError, "Can't open saved study!"


father = openedStudy.FindComponent("GEOM")
if father is None:
         raise  RuntimeError, "Geom component is not found!  Wrong study is opened." 

#     find AttributeInteger
#================================
res,A=father.FindAttribute("AttributeInteger")
if res == 0  or A == None:
        raise  RuntimeError, "Error:  not found AttributeInteger"
A = A._narrow(SALOMEDS.AttributeInteger)
if A.Value() != 1000000:
        raise  RuntimeError, "Error : wrong value of  AttributeInteger after study restoring"