Ignore:
Timestamp:
09/16/02 10:37:50 (22 years ago)
Author:
tbretz
Message:
*** empty log message ***
Location:
trunk/MagicSoft/Mars/mbase
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/MagicSoft/Mars/mbase/MEvtLoop.h

    r1487 r1526  
    3030    Bool_t HasDuplicateNames(const TString txt) const;
    3131    Bool_t HasDuplicateNames(TObjArray &arr, const TString txt) const;
     32
     33    void StreamPrimitive(ofstream &out) const;
    3234
    3335public:
  • trunk/MagicSoft/Mars/mbase/MParContainer.cc

    r1487 r1526  
    348348{
    349349    TClass *cls = IsA()->GetBaseDataMember(name);
    350     if (!cls)
     350    if (cls)
    351351    {
    352         *fLog << err << "'" << name << "' is neither a member of ";
    353         *fLog << GetDescriptor() << " nor one of its base classes." << endl;
    354         return NULL;
     352        TDataMember *member = cls->GetDataMember(name);
     353        if (!member)
     354        {
     355            *fLog << err << "Datamember '" << name << "' not in " << GetDescriptor() << endl;
     356            return NULL;
     357        }
     358
     359        TMethodCall *call = member->GetterMethod();
     360        if (call)
     361            return call;
    355362    }
    356363
    357     TDataMember *member = cls->GetDataMember(name);
    358     if (!member)
    359     {
    360         *fLog << err << "Datamember '" << name << "' not in " << GetDescriptor() << endl;
    361         return NULL;
    362     }
    363 
    364     TMethodCall *call = member->GetterMethod();
    365     if (!call)
    366     {
    367         *fLog << err << "Sorry, no getter method found for " << name << endl;
    368         return NULL;
    369     }
    370 
    371     return call;
     364    *fLog << warn << "No standard access for '" << name << "' in ";
     365    *fLog << GetDescriptor() << " or one of its base classes." << endl;
     366
     367    TMethodCall *call = NULL;
     368
     369    *fLog << warn << "Trying to find MethodCall '" << IsA()->GetName();
     370    *fLog << "::Get" << name << "' instead <LEAKS MEMORY>" << endl;
     371    call = new TMethodCall(IsA(), (TString)"Get"+name, "");
     372    if (call->GetMethod())
     373        return call;
     374
     375    delete call;
     376
     377    *fLog << warn << "Trying to find MethodCall '" << IsA()->GetName();
     378    *fLog << "::" << name << "' instead <LEAKS MEMORY>" << endl;
     379    call = new TMethodCall(IsA(), name, "");
     380    if (call->GetMethod())
     381        return call;
     382
     383    delete call;
     384
     385    *fLog << err << "Sorry, no getter method found for " << name << endl;
     386    return NULL;
    372387}
    373388
Note: See TracChangeset for help on using the changeset viewer.