int _ses_path_cmp(const void* v0, const void* v1);
-int __ses_path_jr(ses_path_t* path)
+int __ses_path_jr(ScfEfunction* f, ses_path_t* path)
{
if (!path)
return -EINVAL;
return -EINVAL;
}
- ses_path_t* child;
- ScfEpin* p;
- ScfEpin* p0;
- ScfEpin* p1;
- ScfEpin* cp0;
- ScfEpin* cp1;
+ ses_path_t* child;
+ ScfEcomponent* c;
+ ScfEpin* p;
+ ScfEpin* p0;
+ ScfEpin* p1;
+ ScfEpin* cp0;
+ ScfEpin* cp1;
double R;
double r;
r += p->r;
jr += p->jr;
+ if (i & 0x1) {
+ c = f->components[p->cid];
+ r += c->r;
+ jr += c->jr;
+ }
+
p->tr = r;
p->jtr = jr;
return -EINVAL;
}
- int ret = __ses_path_jr(child);
+ int ret = __ses_path_jr(f, child);
if (ret < 0)
return ret;
scf_logi("i: %ld, path->type: %d\n", i, path->type);
- int ret = __ses_path_jr(path);
+ int ret = __ses_path_jr(f, path);
if (ret < 0)
return ret;