Changeset 3172 in Sophya for trunk/SophyaLib/BaseTools


Ignore:
Timestamp:
Feb 5, 2007, 10:02:52 AM (19 years ago)
Author:
ansari
Message:

Correction bug ds swsegdb.h (non ecriture buffer avec 1 seul buffer-relu) + ajout methode NDataBlock::RenewObjId() pour re-ecriture PPF , Reza 05/02/2007

Location:
trunk/SophyaLib/BaseTools
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaLib/BaseTools/ndatablock.h

    r2657 r3172  
    8888  void Realloc(size_t nnew,bool force=false);
    8989 
     90  //! Calls Delete() to set the size to zero (The memory is freed if last referenced structure)
     91  inline void Dealloc() { Delete(); }
     92
    9093  // Informations pointeur/data
    9194  //! Return pointer on data structure.
     
    146149  NDataBlock<T> Div(const NDataBlock<T>& b) const;
    147150
     151  //! Return thye associated object Id (or DataRef Id)
    148152  inline uint_8 DRefId() { return mSRef->dsid; }
     153  //! assign a new object Id (or DataRef Id) - useful for PPF write operations
     154  inline void RenewDRefId() { mSRef->dsid = AnyDataObj::getUniqueId(); }
     155  //! assign a new object Id (or DataRef Id) - useful for PPF write operations
     156  inline void RenewObjId() { mSRef->dsid = AnyDataObj::getUniqueId(); }
     157 
    149158
    150159protected:
  • trunk/SophyaLib/BaseTools/sophyainit.cc

    r3016 r3172  
    2626int SophyaInitiator::FgInit = 0;
    2727// Module version number - 2.0 , Jul 2006
    28 #define MOD_VERS   2.0
     28// Module version number - 2.02 , Fev07 Ajout NDataBlock::RenewObjId()
     29#define MOD_VERS   2.02
    2930
    3031// Pour garder la liste des modules et leurs numeros de version
  • trunk/SophyaLib/BaseTools/sversion.h

    r3170 r3172  
    33
    44#define SOPHYA_VERSION   2.1
    5 #define SOPHYA_REVISION  10
     5#define SOPHYA_REVISION  20
    66#define SOPHYA_TAG       "V_Jan2007"
    77
  • trunk/SophyaLib/BaseTools/swsegdb.h

    r2863 r3172  
    140140  virtual T const * GetCstSegment(size_t k) const
    141141  {
    142     getSeg(k);
    143     mSRef->fgcstbuff = true;
     142    if (getSeg(k))  mSRef->fgcstbuff = true;
    144143    return mSRef->buff;
    145144  }
     
    188187    mSRef = NULL; 
    189188  }
    190   void getSeg(size_t k) const
    191   {
    192     if (k == mSRef->bidx)  return ;
     189  bool getSeg(size_t k) const
     190  {
     191    if (k == mSRef->bidx)  return false;
    193192    if ((mSRef->bidx >= 0) && !mSRef->fgcstbuff) {
    194193      int_8 nswp = mSRef->swapper->WriteToSwap(mSRef->buff, mSRef->segsize, mSRef->bidx,
     
    199198    if (mSRef->fgwp[k])
    200199      mSRef->swapper->ReadFromSwap(k, mSRef->swp[k], mSRef->buff, mSRef->segsize);
    201     else { delete[] mSRef->buff;  mSRef->buff = new T[mSRef->segsize]; } 
     200    //DEL-02022007    else { delete[] mSRef->buff;  mSRef->buff = new T[mSRef->segsize]; } 
    202201    mSRef->bidx = k;
    203     return;
     202    return true;
    204203  }
    205204
Note: See TracChangeset for help on using the changeset viewer.