Event records saved as XML using HFileXML
Code: "io_hfileXML.py". Programming language: Python DMelt Version 1. Last modified: 12/11/2015. License: Pro
https://datamelt.org/code/cache/io_hfileXML_8274.py
To run this script using the DMelt IDE, copy the above URL link to the menu [File]→[Read script from URL] of the DMelt IDE.


 
from jhplot  import *
from jhplot.io import *
import os.path

# make an event in the form of a list (string, P0D,histogram)
def makeEvent(entry):
    event=[]
    label="Event="+str(i)
    p=P0D(label)
    p.randomUniform(10,0,1)
    h=H1D(label,10,-1,1)
    h.fill(i)
    event.append(label) 
    event.append(p)
    event.append(h)
    return event

file="output.xml"
f=HFileXML(file,"w")

# write to a XML file
Events=1000
for i in range(Events):
       event=makeEvent(i)
       if (i%100 == 0):  
           print event[0]+" size=",os.path.getsize(file)           
       f.write(event)
f.close()


# read all the entries back
f=HFileXML(file)
while(1):
       event=f.read()
       if event == None: 
                   print "End of events"
                   break
       print event[0]
       p=event[1]
       h=event[2]
       # print p.toString()
       # print h.toString()
f.close()

Ads help maintain this website.