Browse Source

Add `pop_back()`, `back()` and avoid `delete` in `erase()` method

master
Krisjanis Rijnieks 10 years ago
parent
commit
7c6912dc2a
  1. 9
      src/Surfaces/SurfaceStack.cpp
  2. 2
      src/Surfaces/SurfaceStack.h

9
src/Surfaces/SurfaceStack.cpp

@ -9,8 +9,11 @@ void SurfaceStack::push_back(BaseSurface * s){
_surfaces.push_back(s);
}
void SurfaceStack::pop_back(){
_surfaces.pop_back();
}
void SurfaceStack::erase(int i){
delete _surfaces[i];
_surfaces.erase(_surfaces.begin() + i);
}
@ -35,5 +38,9 @@ BaseSurface * SurfaceStack::operator[](int i){
return _surfaces[i];
}
BaseSurface * SurfaceStack::back(){
return _surfaces.back();
}
} // namespace piMapper
} // namespace ofx

2
src/Surfaces/SurfaceStack.h

@ -12,6 +12,7 @@ class SurfaceStack {
SurfaceStack();
void push_back(BaseSurface * s);
void pop_back();
void erase(int i);
void swap(int a, int b);
void draw();
@ -19,6 +20,7 @@ class SurfaceStack {
int size();
BaseSurface * operator[](int i);
BaseSurface * back();
private:
vector<BaseSurface *> _surfaces;

Loading…
Cancel
Save