version 1.26, 2014/09/30 11:04:31
|
version 1.27, 2014/11/13 01:47:06
|
|
|
(SCMBUserPropertyElement*) | (SCMBUserPropertyElement*) |
&(inst.base[inst.hdr->userPropertyElement.start]); | &(inst.base[inst.hdr->userPropertyElement.start]); |
| |
XCOUT << "inst.hdr->userPropertyElement.start address " |
|
<< pElement << " relative " |
|
<< inst.hdr->userPropertyElement.start |
|
<< " number of user properties " << inst.hdr->numberUserProperties |
|
<< endl; |
|
|
|
// calculate the index within the user defined properties | // calculate the index within the user defined properties |
// based on numberProperties in instance. This should | // based on numberProperties in instance. This should |
// be verified against numberUserProperties | // be verified against numberUserProperties |
|
|
{ | { |
SCMBUnion* u = (SCMBUnion*)&(base[start]); | SCMBUnion* u = (SCMBUnion*)&(base[start]); |
| |
XCOUT << "_resolveSCMBUnion Enter. Union at " << u |
|
<< " isArray " << boolToString(isArray) |
|
<< " type " << cimTypeToString(type) |
|
<< " start " << start |
|
<< endl; |
|
SCMBUnion* av = 0; | SCMBUnion* av = 0; |
| |
if (isArray) | if (isArray) |
|
|
node = 0; | node = 0; |
| |
Uint64 elementStart = inst.hdr->userPropertyElement.start; | Uint64 elementStart = inst.hdr->userPropertyElement.start; |
XCOUT << "inst.hdr->userPropertyElement.start " |
|
<< elementStart << endl; |
|
| |
while (elementStart != 0) | while (elementStart != 0) |
{ | { |
SCMBUserPropertyElement* pElement = | SCMBUserPropertyElement* pElement = |
(SCMBUserPropertyElement*)&(inst.base[elementStart]); | (SCMBUserPropertyElement*)&(inst.base[elementStart]); |
| |
XCOUT << "SCMBUserPropertyElement get at " |
|
<< static_cast<void*>(pElement) |
|
<< " node " << node << endl; |
|
|
|
if (_equalNoCaseUTF8Strings( | if (_equalNoCaseUTF8Strings( |
pElement->name,inst.base,name,len)) | pElement->name,inst.base,name,len)) |
{ | { |