/*
 * Retrive the tuning parameters from an XML element node
 *
 */
LWSKernelPar DividendTuningOptFileRoutines::processKernelElement(const XMLElement *E)
{
	DIVIDEND_EXIT_ERROR_ON(E == NULL, -1, "Invalid element node");

	std::string identifier = queryAttribute(E, "identifier");
	unsigned  kernelid = queryUnsignedAttribute(E, "kernelid");
	unsigned dim = queryUnsignedAttribute(E, "dim");	
	vector<LWSMacro> lwsM;

	const XMLElement *DE = E->FirstChildElement("Dim");
	while (DE)
	{
		string macroName = queryAttribute(DE, "macro");
		unsigned start = queryUnsignedAttribute(DE, "start");
		unsigned end = queryUnsignedAttribute(DE, "end");
		unsigned step = queryUnsignedAttribute(DE, "step");
		unsigned defaultv = queryUnsignedAttribute(DE, "default");

		LWSMacro a = LWSMacro(macroName, start, end, defaultv, step);
		lwsM.push_back(a);

		DE = DE->NextSiblingElement("Dim");
	}

	return LWSKernelPar(identifier, dim, lwsM, kernelid);
}
Esempio n. 2
0
inline bool hasStreamedModifier(ITypeInfo * t)   { return queryAttribute(t, streamedAtom) != NULL; }
Esempio n. 3
0
inline bool hasLinkCountedModifier(ITypeInfo * t)    { return queryAttribute(t, _linkCounted_Atom) != NULL; }