Alembic: use typedefs to make it easier to handle maps/vectors
This commit is contained in:
@@ -154,13 +154,16 @@ AbcExporter::AbcExporter(Scene *scene, const char *filename, ExportSettings &set
|
|||||||
|
|
||||||
AbcExporter::~AbcExporter()
|
AbcExporter::~AbcExporter()
|
||||||
{
|
{
|
||||||
std::map<std::string, AbcTransformWriter*>::iterator it, e;
|
/* Free xforms map */
|
||||||
for (it = m_xforms.begin(), e = m_xforms.end(); it != e; ++it) {
|
m_xforms_type::iterator it_x, e_x;
|
||||||
delete it->second;
|
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) {
|
/* Free shapes vector */
|
||||||
delete m_shapes[i];
|
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;
|
delete m_writer;
|
||||||
@@ -314,8 +317,9 @@ void AbcExporter::operator()(Main *bmain, float &progress, bool &was_canceled)
|
|||||||
setCurrentFrame(bmain, frame - m_settings.frame_start);
|
setCurrentFrame(bmain, frame - m_settings.frame_start);
|
||||||
|
|
||||||
if (shape_frames.count(frame) != 0) {
|
if (shape_frames.count(frame) != 0) {
|
||||||
for (int i = 0, e = m_shapes.size(); i != e; ++i) {
|
m_shapes_type::iterator xit, xe;
|
||||||
m_shapes[i]->write();
|
for (xit = m_shapes.begin(), xe = m_shapes.end(); xit != xe; ++xit) {
|
||||||
|
(*xit)->write();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -323,7 +327,7 @@ void AbcExporter::operator()(Main *bmain, float &progress, bool &was_canceled)
|
|||||||
continue;
|
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) {
|
for (xit = m_xforms.begin(), xe = m_xforms.end(); xit != xe; ++xit) {
|
||||||
xit->second->write();
|
xit->second->write();
|
||||||
}
|
}
|
||||||
|
@@ -89,8 +89,12 @@ class AbcExporter {
|
|||||||
|
|
||||||
ArchiveWriter *m_writer;
|
ArchiveWriter *m_writer;
|
||||||
|
|
||||||
std::map<std::string, AbcTransformWriter *> m_xforms;
|
/* mapping from name to transform writer */
|
||||||
std::vector<AbcObjectWriter *> m_shapes;
|
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:
|
public:
|
||||||
AbcExporter(Scene *scene, const char *filename, ExportSettings &settings);
|
AbcExporter(Scene *scene, const char *filename, ExportSettings &settings);
|
||||||
|
Reference in New Issue
Block a user