[Bf-blender-cvs] [1e068284c5] temp-sybren-alembic: Alembic: use typedefs to make it easier to handle maps/vectors

Sybren A. Stüvel noreply at git.blender.org
Fri Feb 24 17:06:06 CET 2017


Commit: 1e068284c57b26cc24e0c22df8a41e71aa9efa70
Author: Sybren A. Stüvel
Date:   Tue Feb 21 15:02:17 2017 +0100
Branches: temp-sybren-alembic
https://developer.blender.org/rB1e068284c57b26cc24e0c22df8a41e71aa9efa70

Alembic: use typedefs to make it easier to handle maps/vectors

===================================================================

M	source/blender/alembic/intern/abc_exporter.cc
M	source/blender/alembic/intern/abc_exporter.h

===================================================================

diff --git a/source/blender/alembic/intern/abc_exporter.cc b/source/blender/alembic/intern/abc_exporter.cc
index 7b099bdf25..89d77d94d6 100644
--- a/source/blender/alembic/intern/abc_exporter.cc
+++ b/source/blender/alembic/intern/abc_exporter.cc
@@ -153,13 +153,16 @@ AbcExporter::AbcExporter(Scene *scene, const char *filename, ExportSettings &set
 
 AbcExporter::~AbcExporter()
 {
-	std::map<std::string, AbcTransformWriter*>::iterator it, e;
-	for (it = m_xforms.begin(), e = m_xforms.end(); it != e; ++it) {
-		delete it->second;
+	/* Free xforms map */
+	m_xforms_type::iterator it_x, e_x;
+	for (it_x = m_xforms.begin(), e_x = m_xforms.end(); it_x != e_x; ++it_x) {
+		delete it_x->second;
 	}
 
-	for (int i = 0, e = m_shapes.size(); i != e; ++i) {
-		delete m_shapes[i];
+	/* Free shapes vector */
+	m_shapes_type::iterator it_s, e_s;
+	for (it_s = m_shapes.begin(), e_s = m_shapes.end(); it_s != e_s; ++it_s) {
+		delete *it_s;
 	}
 
 	delete m_writer;
@@ -313,8 +316,9 @@ void AbcExporter::operator()(Main *bmain, float &progress, bool &was_canceled)
 		setCurrentFrame(bmain, frame - m_settings.frame_start);
 
 		if (shape_frames.count(frame) != 0) {
-			for (int i = 0, e = m_shapes.size(); i != e; ++i) {
-				m_shapes[i]->write();
+			m_shapes_type::iterator xit, xe;
+			for (xit = m_shapes.begin(), xe = m_shapes.end(); xit != xe; ++xit) {
+				(*xit)->write();
 			}
 		}
 
@@ -322,7 +326,7 @@ void AbcExporter::operator()(Main *bmain, float &progress, bool &was_canceled)
 			continue;
 		}
 
-		std::map<std::string, AbcTransformWriter *>::iterator xit, xe;
+		m_xforms_type::iterator xit, xe;
 		for (xit = m_xforms.begin(), xe = m_xforms.end(); xit != xe; ++xit) {
 			xit->second->write();
 		}
diff --git a/source/blender/alembic/intern/abc_exporter.h b/source/blender/alembic/intern/abc_exporter.h
index 6848eda9ad..0249bbf853 100644
--- a/source/blender/alembic/intern/abc_exporter.h
+++ b/source/blender/alembic/intern/abc_exporter.h
@@ -86,8 +86,12 @@ class AbcExporter {
 
 	ArchiveWriter *m_writer;
 
-	std::map<std::string, AbcTransformWriter *> m_xforms;
-	std::vector<AbcObjectWriter *> m_shapes;
+	/* mapping from name to transform writer */
+	typedef std::map<std::string, AbcTransformWriter *> m_xforms_type;
+	m_xforms_type m_xforms;
+
+	typedef std::vector<AbcObjectWriter *> m_shapes_type;
+	m_shapes_type m_shapes;
 
 public:
 	AbcExporter(Scene *scene, const char *filename, ExportSettings &settings);




More information about the Bf-blender-cvs mailing list