Changeset 1313 for code/branches/console/src/core/OutputBuffer.cc
- Timestamp:
- May 17, 2008, 3:58:19 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
code/branches/console/src/core/OutputBuffer.cc
r1312 r1313 33 33 namespace orxonox 34 34 { 35 OutputBuffer& OutputBuffer::getOutputBuffer()36 {37 static OutputBuffer instance;38 return instance;39 }40 41 35 void OutputBuffer::registerListener(OutputBufferListener* listener) 42 36 { 43 this->listeners_.insert( listener);37 this->listeners_.insert(this->listeners_.end(), listener); 44 38 } 45 39 46 40 void OutputBuffer::unregisterListener(OutputBufferListener* listener) 47 41 { 48 std::set<OutputBufferListener*>::iterator it = this->listeners_.find(listener); 49 if (it != this->listeners_.end()) 50 this->listeners_.erase(it); 42 for (std::list<OutputBufferListener*>::iterator it = this->listeners_.begin(); it != this->listeners_.end(); ) 43 { 44 if ((*it) == listener) 45 this->listeners_.erase(it++); 46 else 47 ++it; 48 } 51 49 } 52 50 … … 63 61 this->stream_.flush(); 64 62 63 // Return true if this was a whole new line, ended by \n 65 64 return (!eof); 66 65 } … … 68 67 void OutputBuffer::callListeners() 69 68 { 70 for (std:: set<OutputBufferListener*>::iterator it = this->listeners_.begin(); it != this->listeners_.end(); ++it)71 (*it)-> bufferChanged();69 for (std::list<OutputBufferListener*>::iterator it = this->listeners_.begin(); it != this->listeners_.end(); ++it) 70 (*it)->outputChanged(); 72 71 } 73 72 }
Note: See TracChangeset
for help on using the changeset viewer.