11.07.2014 Views

Flute acoustics: measurement, modelling and design - School of ...

Flute acoustics: measurement, modelling and design - School of ...

Flute acoustics: measurement, modelling and design - School of ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

APPENDIX B. PROGRAM LISTINGS 291<br />

if(!parseHole(doc, node, &h)) return 0;<br />

curBore = createVector();<br />

curCell = createUnitCell(h, curBore);<br />

addElement(*cells, curCell);<br />

}<br />

node = node->next;<br />

}<br />

/* Ensure flange as expected */<br />

if((*flange < 0.0) &&<br />

(*flange != -1.0)) {<br />

fprintf(stderr, "XML error: Flange is invalid.\n");<br />

return 0;<br />

}<br />

return 1;<br />

}<br />

int parseBore(xmlDocPtr doc, xmlNodePtr node, BoreSegment* s) {<br />

double radius1, radius2, length;<br />

/* Search node's children for data elements */<br />

node = node->children;<br />

while(node != NULL) {<br />

if(isXMLElement(node, RADIUS1))<br />

radius1 = getAndScaleXMLDimensionData(doc, node);<br />

if(isXMLElement(node, RADIUS2))<br />

radius2 = getAndScaleXMLDimensionData(doc, node);<br />

if(isXMLElement(node, LENGTH))<br />

length = getAndScaleXMLDimensionData(doc, node);<br />

node = node->next;<br />

}<br />

/* Ensure dimensions as expected */<br />

if((radius1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!