EXPORT int create_collector(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(collector_class); if (*obj!=NULL) { struct collector *my = OBJECTDATA(*obj,struct collector); last_collector = *obj; gl_set_parent(*obj,parent); strcpy(my->file,""); strcpy(my->filetype,"txt"); strcpy(my->delim,","); strcpy(my->property,"(undefined)"); strcpy(my->group,""); my->interval = TS_NEVER; /* transients only */ my->dInterval = -1.0; my->last.ts = -1; strcpy(my->last.value,""); my->limit = 0; my->samples = 0; my->status = TS_INIT; my->trigger[0]='\0'; my->format = 0; my->aggr = NULL; return 1; } return 0; }
/// Create a climate object EXPORT int create_climate(OBJECT **obj, ///< a pointer to the OBJECT* OBJECT *parent) ///< a pointer to the parent OBJECT { int rv = 0; try { *obj = gl_create_object(climate::oclass); if (*obj!=NULL) { climate *my = OBJECTDATA(*obj,climate); gl_set_parent(*obj,parent); my->create(); rv = 1; } else rv = 0; } catch(char *msg) { gl_error("climate::create exception caught: %s", msg); rv = 0; } catch(const char *msg) { gl_error("climate::create exception caught: %s", msg); rv = 0; } catch (...) { gl_error("climate::create exception caught: no info"); rv = 0; } return rv; }
EXPORT int create_player(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(player_class); if (*obj!=NULL) { struct player *my = OBJECTDATA(*obj,struct player); last_player = *obj; gl_set_parent(*obj,parent); strcpy(my->file,""); strcpy(my->filetype,"txt"); strcpy(my->mode, "file"); strcpy(my->property,"(undefined)"); my->next.ts = TS_ZERO; strcpy(my->next.value,""); my->loopnum = 0; my->loop = 0; my->status = TS_INIT; my->target = gl_get_property(*obj,my->property,NULL); my->delta_track.ns = 0; my->delta_track.ts = TS_NEVER; my->delta_track.value[0] = '\0'; return 1; } return 0; }
extern "C" int64 create_test(OBJECT **obj, OBJECT *parent) { if ((*obj=gl_create_object(myclass))==NULL) return 0; if ( parent ) gl_set_parent(*obj,parent); return 1; }
EXPORT int create_java(OBJECT **obj, OBJECT *parent) { JNIEnv *jnienv = (JNIEnv *)getvar("jnienv", NULL, NULL); char *classname = (*obj) ? (*obj)->name : "ERROR_NO_CLASSNAME"; jclass cls = jnienv->FindClass(classname); if(cls == NULL) { gl_error("create_java: unable to find %s.class", classname); return 0; } jmethodID cfunc = jnienv->GetStaticMethodID(cls, "create", "(J)J"); if(cfunc == NULL) { gl_error("create_java: unable to find long %s.create(long)", classname); return 0; } int64 rv = jnienv->CallStaticLongMethod(cls, cfunc, (int64)parent); if(rv == 0) { gl_error("create_java: %s.create() failed", classname); GL_THROW("%s.create() failed", classname); } if (jnienv->ExceptionOccurred()) { jnienv->ExceptionDescribe(); } *obj = (OBJECT *)rv; gl_set_parent(*obj, parent); return 1; }
EXPORT int create_waterheater(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(waterheater::oclass); if (*obj!=NULL) { waterheater *my = OBJECTDATA(*obj,waterheater);; gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_capbank(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(capbank_class); if (*obj!=NULL) { capbank *my = OBJECTDATA(*obj,capbank); gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_schedule(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(schedule::oclass); if (*obj!=NULL) { schedule *my = OBJECTDATA(*obj,schedule); gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_plugload(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(plugload::oclass); if (*obj!=NULL) { plugload *my = OBJECTDATA(*obj,plugload);; gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_house_a(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(house::oclass); if (*obj!=NULL) { house *my = OBJECTDATA(*obj,house);; gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_fuse(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(fuse_class); if (*obj!=NULL) { fuse *my = OBJECTDATA(*obj,fuse); gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_dishwasher(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(dishwasher::oclass); if (*obj!=NULL) { dishwasher *my = OBJECTDATA(*obj,dishwasher); gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_transformer(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(transformer_class); if (*obj!=NULL) { transformer *my = OBJECTDATA(*obj,transformer); gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_regulator(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(regulator_class); if (*obj!=NULL) { regulator *my = OBJECTDATA(*obj,regulator); gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_node(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(node_class); if (*obj!=NULL) { last_node = *obj; node *my = OBJECTDATA(*obj,node); gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_link(OBJECT **obj, OBJECT *parent) { *obj = gl_create_object(link_class); if (*obj!=NULL) { last_link = *obj; link *my = OBJECTDATA(*obj,link); gl_set_parent(*obj,parent); my->create(); return 1; } return 0; }
EXPORT int create_range(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(range::oclass); if (*obj!=NULL) { range *my = OBJECTDATA(*obj,range);; gl_set_parent(*obj,parent); my->create(); return 1; } return 0; } CREATE_CATCHALL(range); }
EXPORT int create_metrics(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(metrics::oclass); if (*obj!=NULL) { metrics *my = OBJECTDATA(*obj,metrics); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(metrics); }
EXPORT int create_solar_service(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(solar_service::oclass); if (*obj!=NULL) { solar_service *my = OBJECTDATA(*obj,solar_service); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(solar_service); }
/** * REQUIRED: allocate and initialize an object. * * @param obj a pointer to a pointer of the last object in the list * @param parent a pointer to the parent of this object * @return 1 for a successfully created object, 0 for error */ EXPORT int create_triplex_load(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(triplex_load::oclass); if (*obj!=NULL) { triplex_load *my = OBJECTDATA(*obj,triplex_load); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(triplex_load); }
/** * REQUIRED: allocate and initialize an object. * * @param obj a pointer to a pointer of the last object in the list * @param parent a pointer to the parent of this object * @return 1 for a successfully created object, 0 for error */ EXPORT int create_powerflow_library(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(powerflow_library::oclass); if (*obj!=NULL) { powerflow_library *my = OBJECTDATA(*obj,powerflow_library); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(powerflow_library); }
EXPORT int create_series_reactor(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(series_reactor::oclass); if (*obj!=NULL) { series_reactor *my = OBJECTDATA(*obj,series_reactor); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(series_reactor); }
EXPORT int create_substation(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(substation::oclass); if (*obj!=NULL) { substation *my = OBJECTDATA(*obj,substation); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(substation); }
EXPORT int create_windturb_dg(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(windturb_dg::oclass); if (*obj!=NULL) { windturb_dg *my = OBJECTDATA(*obj,windturb_dg); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(windturb_dg); }
/** * REQUIRED: allocate and initialize an object. * * @param obj a pointer to a pointer of the last object in the list * @param parent a pointer to the parent of this object * @return 1 for a successfully created object, 0 for error */ EXPORT int create_voltdump(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(voltdump::oclass); if (*obj!=NULL) { voltdump *my = OBJECTDATA(*obj,voltdump); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(voltdump); }
/** * REQUIRED: allocate and initialize an object. * * @param obj a pointer to a pointer of the last object in the list * @param parent a pointer to the parent of this object * @return 1 for a successfully created object, 0 for error */ EXPORT int create_relay(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(relay::oclass); if (*obj!=NULL) { relay *my = OBJECTDATA(*obj,relay); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(relay); }
EXPORT int create_microturbine(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(microturbine::oclass); if (*obj!=NULL) { microturbine *my = OBJECTDATA(*obj,microturbine); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(microturbine); }
EXPORT int create_inverter(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(inverter::oclass); if (*obj!=NULL) { inverter *my = OBJECTDATA(*obj,inverter); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(inverter); }
EXPORT int create_switch(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(switch_object::oclass); if (*obj!=NULL) { switch_object *my = OBJECTDATA(*obj,switch_object); gl_set_parent(*obj,parent); return my->create(); } else return 0; } CREATE_CATCHALL(switch); }
EXPORT int create_ZIPload(OBJECT **obj, OBJECT *parent) { try { *obj = gl_create_object(ZIPload::oclass); if (*obj!=NULL) { ZIPload *my = OBJECTDATA(*obj,ZIPload);; gl_set_parent(*obj,parent); my->create(); return 1; } else return 0; } CREATE_CATCHALL(ZIPload); }