Lines Matching refs:mt
67 struct mystate *mt; in StartElement() local
72 mt = userData; in StartElement()
73 mt->level++; in StartElement()
74 mt->sbuf[mt->level] = sbuf_new_auto(); in StartElement()
80 mt->nident++; in StartElement()
85 mt->level + 1, mt->level + 1, "", in StartElement()
88 if (!strcmp(name, "class") && mt->class == NULL) { in StartElement()
89 mt->class = calloc(1, sizeof *mt->class); in StartElement()
90 if (mt->class == NULL) { in StartElement()
91 mt->error = errno; in StartElement()
92 XML_StopParser(mt->parser, 0); in StartElement()
97 mt->class->lg_id = id; in StartElement()
98 LIST_INSERT_HEAD(&mt->mesh->lg_class, mt->class, lg_class); in StartElement()
99 LIST_INIT(&mt->class->lg_geom); in StartElement()
100 LIST_INIT(&mt->class->lg_config); in StartElement()
103 if (!strcmp(name, "geom") && mt->geom == NULL) { in StartElement()
104 mt->geom = calloc(1, sizeof *mt->geom); in StartElement()
105 if (mt->geom == NULL) { in StartElement()
106 mt->error = errno; in StartElement()
107 XML_StopParser(mt->parser, 0); in StartElement()
112 mt->geom->lg_id = id; in StartElement()
113 LIST_INSERT_HEAD(&mt->class->lg_geom, mt->geom, lg_geom); in StartElement()
114 LIST_INIT(&mt->geom->lg_provider); in StartElement()
115 LIST_INIT(&mt->geom->lg_consumer); in StartElement()
116 LIST_INIT(&mt->geom->lg_config); in StartElement()
119 if (!strcmp(name, "class") && mt->geom != NULL) { in StartElement()
120 mt->geom->lg_class = ref; in StartElement()
123 if (!strcmp(name, "consumer") && mt->consumer == NULL) { in StartElement()
124 mt->consumer = calloc(1, sizeof *mt->consumer); in StartElement()
125 if (mt->consumer == NULL) { in StartElement()
126 mt->error = errno; in StartElement()
127 XML_StopParser(mt->parser, 0); in StartElement()
132 mt->consumer->lg_id = id; in StartElement()
133 LIST_INSERT_HEAD(&mt->geom->lg_consumer, mt->consumer, in StartElement()
135 LIST_INIT(&mt->consumer->lg_config); in StartElement()
138 if (!strcmp(name, "geom") && mt->consumer != NULL) { in StartElement()
139 mt->consumer->lg_geom = ref; in StartElement()
142 if (!strcmp(name, "provider") && mt->consumer != NULL) { in StartElement()
143 mt->consumer->lg_provider = ref; in StartElement()
146 if (!strcmp(name, "provider") && mt->provider == NULL) { in StartElement()
147 mt->provider = calloc(1, sizeof *mt->provider); in StartElement()
148 if (mt->provider == NULL) { in StartElement()
149 mt->error = errno; in StartElement()
150 XML_StopParser(mt->parser, 0); in StartElement()
155 mt->provider->lg_id = id; in StartElement()
156 LIST_INSERT_HEAD(&mt->geom->lg_provider, mt->provider, in StartElement()
158 LIST_INIT(&mt->provider->lg_consumers); in StartElement()
159 LIST_INIT(&mt->provider->lg_config); in StartElement()
162 if (!strcmp(name, "geom") && mt->provider != NULL) { in StartElement()
163 mt->provider->lg_geom = ref; in StartElement()
167 if (mt->provider != NULL) { in StartElement()
168 mt->config = &mt->provider->lg_config; in StartElement()
171 if (mt->consumer != NULL) { in StartElement()
172 mt->config = &mt->consumer->lg_config; in StartElement()
175 if (mt->geom != NULL) { in StartElement()
176 mt->config = &mt->geom->lg_config; in StartElement()
179 if (mt->class != NULL) { in StartElement()
180 mt->config = &mt->class->lg_config; in StartElement()
189 struct mystate *mt; in EndElement() local
194 mt = userData; in EndElement()
196 if (sbuf_finish(mt->sbuf[mt->level]) == 0) in EndElement()
197 p = strdup(sbuf_data(mt->sbuf[mt->level])); in EndElement()
198 sbuf_delete(mt->sbuf[mt->level]); in EndElement()
199 mt->sbuf[mt->level] = NULL; in EndElement()
200 mt->level--; in EndElement()
202 mt->error = errno; in EndElement()
203 XML_StopParser(mt->parser, 0); in EndElement()
214 if (mt->provider != NULL) { in EndElement()
215 mt->provider->lg_name = p; in EndElement()
217 } else if (mt->geom != NULL) { in EndElement()
218 mt->geom->lg_name = p; in EndElement()
220 } else if (mt->class != NULL) { in EndElement()
221 mt->class->lg_name = p; in EndElement()
225 if (!strcmp(name, "rank") && mt->geom != NULL) { in EndElement()
226 mt->geom->lg_rank = strtoul(p, NULL, 0); in EndElement()
230 if (!strcmp(name, "mode") && mt->provider != NULL) { in EndElement()
231 mt->provider->lg_mode = p; in EndElement()
234 if (!strcmp(name, "mode") && mt->consumer != NULL) { in EndElement()
235 mt->consumer->lg_mode = p; in EndElement()
238 if (!strcmp(name, "mediasize") && mt->provider != NULL) { in EndElement()
239 mt->provider->lg_mediasize = strtoumax(p, NULL, 0); in EndElement()
243 if (!strcmp(name, "sectorsize") && mt->provider != NULL) { in EndElement()
244 mt->provider->lg_sectorsize = strtoul(p, NULL, 0); in EndElement()
248 if (!strcmp(name, "stripesize") && mt->provider != NULL) { in EndElement()
249 mt->provider->lg_stripesize = strtoumax(p, NULL, 0); in EndElement()
253 if (!strcmp(name, "stripeoffset") && mt->provider != NULL) { in EndElement()
254 mt->provider->lg_stripeoffset = strtoumax(p, NULL, 0); in EndElement()
260 mt->config = NULL; in EndElement()
265 if (mt->config != NULL || (!strcmp(name, "wither") && in EndElement()
266 (mt->provider != NULL || mt->geom != NULL))) { in EndElement()
267 if (mt->config != NULL) in EndElement()
268 c = mt->config; in EndElement()
269 else if (mt->provider != NULL) in EndElement()
270 c = &mt->provider->lg_config; in EndElement()
272 c = &mt->geom->lg_config; in EndElement()
275 mt->error = errno; in EndElement()
276 XML_StopParser(mt->parser, 0); in EndElement()
284 mt->error = errno; in EndElement()
285 XML_StopParser(mt->parser, 0); in EndElement()
304 if (!strcmp(name, "consumer") && mt->consumer != NULL) { in EndElement()
305 mt->consumer = NULL; in EndElement()
308 if (!strcmp(name, "provider") && mt->provider != NULL) { in EndElement()
309 mt->provider = NULL; in EndElement()
312 if (!strcmp(name, "geom") && mt->consumer != NULL) { in EndElement()
315 if (!strcmp(name, "geom") && mt->provider != NULL) { in EndElement()
318 if (!strcmp(name, "geom") && mt->geom != NULL) { in EndElement()
319 mt->geom = NULL; in EndElement()
322 if (!strcmp(name, "class") && mt->geom != NULL) { in EndElement()
325 if (!strcmp(name, "class") && mt->class != NULL) { in EndElement()
326 mt->class = NULL; in EndElement()
334 struct mystate *mt; in CharData() local
337 mt = userData; in CharData()
346 sbuf_bcat(mt->sbuf[mt->level], b, e - b + 1); in CharData()
375 struct mystate *mt; in geom_xml2tree() local
387 mt = calloc(1, sizeof *mt); in geom_xml2tree()
388 if (mt == NULL) { in geom_xml2tree()
392 mt->mesh = gmp; in geom_xml2tree()
393 mt->parser = parser; in geom_xml2tree()
395 XML_SetUserData(parser, mt); in geom_xml2tree()
399 if (mt->error != 0) in geom_xml2tree()
400 error = mt->error; in geom_xml2tree()
407 free(mt); in geom_xml2tree()
410 gmp->lg_ident = calloc(mt->nident + 1, sizeof(*gmp->lg_ident)); in geom_xml2tree()
411 free(mt); in geom_xml2tree()