diff options
author | Vincent Richard <[email protected]> | 2005-07-12 22:28:02 +0000 |
---|---|---|
committer | Vincent Richard <[email protected]> | 2005-07-12 22:28:02 +0000 |
commit | 681297e10b666e13cc463f6fbb16236f36c3266c (patch) | |
tree | 5d2392e2283232ed3475cd9c69e22897b03e8a97 /src/encoderFactory.cpp | |
parent | Added contentHandler::extractRaw(). (diff) | |
download | vmime-681297e10b666e13cc463f6fbb16236f36c3266c.tar.gz vmime-681297e10b666e13cc463f6fbb16236f36c3266c.zip |
Reference counting and smart pointers.
Diffstat (limited to 'src/encoderFactory.cpp')
-rw-r--r-- | src/encoderFactory.cpp | 19 |
1 files changed, 7 insertions, 12 deletions
diff --git a/src/encoderFactory.cpp b/src/encoderFactory.cpp index 055dcecf..bd4227bf 100644 --- a/src/encoderFactory.cpp +++ b/src/encoderFactory.cpp @@ -46,11 +46,6 @@ encoderFactory::encoderFactory() encoderFactory::~encoderFactory() { - for (std::vector <registeredEncoder*>::const_iterator it = m_encoders.begin() ; - it != m_encoders.end() ; ++it) - { - delete (*it); - } } @@ -61,17 +56,17 @@ encoderFactory* encoderFactory::getInstance() } -encoder* encoderFactory::create(const string& name) +ref <encoder> encoderFactory::create(const string& name) { return (getEncoderByName(name)->create()); } -const encoderFactory::registeredEncoder* encoderFactory::getEncoderByName(const string& name) const +const ref <const encoderFactory::registeredEncoder> encoderFactory::getEncoderByName(const string& name) const { const string lcName(utility::stringUtils::toLower(name)); - for (std::vector <registeredEncoder*>::const_iterator it = m_encoders.begin() ; + for (std::vector <ref <registeredEncoder> >::const_iterator it = m_encoders.begin() ; it != m_encoders.end() ; ++it) { if ((*it)->getName() == lcName) @@ -88,17 +83,17 @@ const int encoderFactory::getEncoderCount() const } -const encoderFactory::registeredEncoder* encoderFactory::getEncoderAt(const int pos) const +const ref <const encoderFactory::registeredEncoder> encoderFactory::getEncoderAt(const int pos) const { return (m_encoders[pos]); } -const std::vector <const encoderFactory::registeredEncoder*> encoderFactory::getEncoderList() const +const std::vector <ref <const encoderFactory::registeredEncoder> > encoderFactory::getEncoderList() const { - std::vector <const registeredEncoder*> res; + std::vector <ref <const registeredEncoder> > res; - for (std::vector <registeredEncoder*>::const_iterator it = m_encoders.begin() ; + for (std::vector <ref <registeredEncoder> >::const_iterator it = m_encoders.begin() ; it != m_encoders.end() ; ++it) { res.push_back(*it); |