Skip to content
Snippets Groups Projects
Commit 44d527c0 authored by Wuttke, Joachim's avatar Wuttke, Joachim
Browse files

mem_del( k ) for low-level, fine-tuned deletion;

mfj= now works
parent b780b07c
No related branches found
No related tags found
No related merge requests found
== BUGS ==
- repair FilMerge; delete mode = overwrite
- coord name algebra
- darker colors in gnuplot
......
......@@ -343,7 +343,7 @@ void NManip::PtsAvgeEq(void)
}
fout->V.push_back( sout );
}
NOlm::mem_store( fout );
NOlm::mem_store( fout, fiter.k() );
}
}
......@@ -924,6 +924,8 @@ void NManip::ScaBreak()
} while ( ++j<fin->nJ() && fin->z(j,0)==zval );
NOlm::mem_store( fout );
}
if( NOlm::overwrite )
NOlm::mem_del( fiter.k() );
}
}
......@@ -1068,6 +1070,8 @@ void NManip::FilMerge( const string& opts )
}
NOlm::mem_store( fout );
if( NOlm::overwrite )
NOlm::mem_del();
}
......
......@@ -248,16 +248,19 @@ namespace NOlm {
namespace NOlm {
//! Store file in online memory.
//! Store file f in online memory.
//! Argument k is used only when NOlm::overwrite is on;
//! it is either the file number of the file to be overwritten,
//! or -1 to forbid overwriting.
void mem_store( POlo f, int k )
{
if( overwrite && k!=-1 ){
// replace input file
// replace file k
if( k>=MOM.size() )
throw "BUG: inconsistent k in OlfAdd";
throw "BUG: cannot overwrite inexistent file";
MOM[k] = f;
} else {
// append at end of online memory
// append at end of online memory
MOM.push_back( f );
FSelNew.append( MOM.size()-1 );
}
......@@ -280,6 +283,12 @@ namespace NOlm {
FSel.clear();
}
//! Remove file k from online memory.
void mem_del( int k )
{
MOM.erase(MOM.begin()+k);
}
//! Append copy of selected files to online memory.
void mem_copy()
{
......
......@@ -17,6 +17,7 @@ namespace NOlm {
void mem_store( POld old, int k=-1 );
void mem_store( POlc olc, int k=-1 );
void mem_del();
void mem_del( int k );
void mem_xchange();
void mem_copy();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment