Loader
TODO - Incomplete -
What is the responsibility of the GridLAB-D™ loader?
Documentation of the internal object model in memory?
Overview of new JSON format as necessary.
Synopsis
module /class.h
#include "gridlabd.h"
class class : public gld_object
{
// ...
public:
int class ::method(PROPERTY *prop, char *value);
// ...
}
module /class.cpp
EXPORT_LOADMETHOD(class ,method);
class ::class(MODULE *module)
{
// ...
if ( !gl_publish_loadmethod(oclass,"method ",loadmethod_class_method) )
throw "module /class ::class(MODULE*): unable to publish method method";
// ...
}
int class ::method(char *value)
{
// parse value
// return 0 on failure
// return 1 on success
return 0;
}
Description
Whenever the loader encounters a property name that is defined as a load method, it's value is dispatched to the load methods defined in the associated class. These properties are called pseudo-properties and can occur more than once in any given object.
Return value
The notifier returns 0 if the pseudo-property value is not parsed successfully and 1 if it is parsed successfully.
History
Load methods were introduced in ticket 797 and deployed in Jojoba (Version 3.2).