// File: TDF_Transaction.cxx // ------------------- // Author: DAUTRY Philippe // // Copyright: Matra Datavision 1997 // Version: 0.0 // History: Version Date Purpose // 0.0 Oct 1 1997 Creation #include #undef DEB_TRANSACTION #ifdef DEB #define DEB_TRANSACTION #endif #undef DEB_TRANSACTION_DUMP #include //======================================================================= //function : TDF_Transaction //purpose : //======================================================================= TDF_Transaction::TDF_Transaction (const TCollection_AsciiString& aName) : myUntilTransaction(0), myName(aName) {} //======================================================================= //function : TDF_Transaction //purpose : Private copy constructor. //======================================================================= TDF_Transaction::TDF_Transaction(const TDF_Transaction& aTrans) {} //======================================================================= //function : TDF_Transaction //purpose : //======================================================================= TDF_Transaction::TDF_Transaction (const Handle(TDF_Data)& aDF, const TCollection_AsciiString& aName) : myDF(aDF), myUntilTransaction(0), myName(aName) {} //======================================================================= //function : Initialize //purpose : Initializes a transaction ready to be opened. //======================================================================= void TDF_Transaction::Initialize(const Handle(TDF_Data)& aDF) { if (IsOpen()) myDF->AbortUntilTransaction(myUntilTransaction); myDF = aDF; myUntilTransaction = 0; } //======================================================================= //function : Open //purpose : //======================================================================= Standard_Integer TDF_Transaction::Open() { #ifdef DEB_TRANSACTION cout<<"Transaction "<Transaction()+1<OpenTransaction(); } //======================================================================= //function : Commit //purpose : //======================================================================= Handle(TDF_Delta) TDF_Transaction::Commit(const Standard_Boolean withDelta) { #ifdef DEB_TRANSACTION cout<<"Transaction "<Transaction()<<" until #"<Transaction()<CommitUntilTransaction(until, withDelta); #ifdef DEB_TRANSACTION_DUMP cout<<"DF after commit"<Transaction()<<" until #"<Transaction()<AbortUntilTransaction(myUntilTransaction); myUntilTransaction = 0; #ifdef DEB_TRANSACTION_DUMP cout<<"DF after abort"<