[Bf-blender-cvs] [bc56a37] gooseberry: Fix for remaining PointCache references in the alembic code.
Lukas Tönne
noreply at git.blender.org
Mon Mar 23 13:00:33 CET 2015
Commit: bc56a3797e6aba227199894d29dd8931374a3afe
Author: Lukas Tönne
Date: Fri Feb 20 13:56:13 2015 +0100
Branches: gooseberry
https://developer.blender.org/rBbc56a3797e6aba227199894d29dd8931374a3afe
Fix for remaining PointCache references in the alembic code.
Now, for the time being, uses a simple relative "//blendcache/" folder
path again. This will be adressed later.
===================================================================
M build_files/cmake/macros.cmake
M source/blender/pointcache/alembic/abc_cloth.cpp
M source/blender/pointcache/alembic/abc_dynamicpaint.cpp
M source/blender/pointcache/alembic/abc_mesh.cpp
M source/blender/pointcache/alembic/abc_particles.cpp
M source/blender/pointcache/alembic/abc_reader.cpp
M source/blender/pointcache/alembic/abc_reader.h
M source/blender/pointcache/alembic/abc_rigidbody.cpp
M source/blender/pointcache/alembic/abc_smoke.cpp
M source/blender/pointcache/alembic/abc_softbody.cpp
M source/blender/pointcache/alembic/abc_writer.cpp
M source/blender/pointcache/alembic/abc_writer.h
M source/blender/pointcache/util/util_path.cpp
M source/blender/pointcache/util/util_path.h
===================================================================
diff --git a/build_files/cmake/macros.cmake b/build_files/cmake/macros.cmake
index fa29ba3..ed2771e 100644
--- a/build_files/cmake/macros.cmake
+++ b/build_files/cmake/macros.cmake
@@ -568,6 +568,7 @@ macro(SETUP_BLENDER_SORTED_LIBS)
bf_blenfont
bf_pointcache
bf_pointcache_alembic
+ bf_pointcache
bf_intern_audaspace
bf_intern_mikktspace
bf_intern_dualcon
diff --git a/source/blender/pointcache/alembic/abc_cloth.cpp b/source/blender/pointcache/alembic/abc_cloth.cpp
index 67fd42e..2a964f9 100644
--- a/source/blender/pointcache/alembic/abc_cloth.cpp
+++ b/source/blender/pointcache/alembic/abc_cloth.cpp
@@ -17,8 +17,8 @@
*/
#include "alembic.h"
-
#include "abc_cloth.h"
+#include "util_path.h"
extern "C" {
#include "BLI_math.h"
@@ -39,7 +39,7 @@ using namespace AbcGeom;
AbcClothWriter::AbcClothWriter(Scene *scene, Object *ob, ClothModifierData *clmd) :
ClothWriter(scene, ob, clmd, &m_archive),
- m_archive(scene, &ob->id, clmd->point_cache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
set_error_handler(new ModifierErrorHandler(&clmd->modifier));
@@ -130,7 +130,7 @@ void AbcClothWriter::write_sample()
AbcClothReader::AbcClothReader(Scene *scene, Object *ob, ClothModifierData *clmd) :
ClothReader(scene, ob, clmd, &m_archive),
- m_archive(scene, &ob->id, clmd->point_cache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
set_error_handler(new ModifierErrorHandler(&clmd->modifier));
diff --git a/source/blender/pointcache/alembic/abc_dynamicpaint.cpp b/source/blender/pointcache/alembic/abc_dynamicpaint.cpp
index 49ae62b..dd36ca5 100644
--- a/source/blender/pointcache/alembic/abc_dynamicpaint.cpp
+++ b/source/blender/pointcache/alembic/abc_dynamicpaint.cpp
@@ -17,8 +17,8 @@
*/
#include "alembic.h"
-
#include "abc_dynamicpaint.h"
+#include "util_path.h"
extern "C" {
#include "DNA_object_types.h"
@@ -34,7 +34,7 @@ using namespace AbcGeom;
AbcDynamicPaintWriter::AbcDynamicPaintWriter(Scene *scene, Object *ob, DynamicPaintSurface *surface) :
DynamicPaintWriter(scene, ob, surface, &m_archive),
- m_archive(scene, &ob->id, surface->pointcache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
if (m_archive.archive) {
}
@@ -53,7 +53,7 @@ void AbcDynamicPaintWriter::write_sample()
AbcDynamicPaintReader::AbcDynamicPaintReader(Scene *scene, Object *ob, DynamicPaintSurface *surface) :
DynamicPaintReader(scene, ob, surface, &m_archive),
- m_archive(scene, &ob->id, surface->pointcache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
if (m_archive.archive.valid()) {
IObject root = m_archive.archive.getTop();
diff --git a/source/blender/pointcache/alembic/abc_mesh.cpp b/source/blender/pointcache/alembic/abc_mesh.cpp
index 8183087..8c6c789 100644
--- a/source/blender/pointcache/alembic/abc_mesh.cpp
+++ b/source/blender/pointcache/alembic/abc_mesh.cpp
@@ -17,8 +17,8 @@
*/
#include "alembic.h"
-
#include "abc_mesh.h"
+#include "util_path.h"
extern "C" {
#include "BLI_math.h"
@@ -46,7 +46,7 @@ using namespace AbcGeom;
AbcPointCacheWriter::AbcPointCacheWriter(Scene *scene, Object *ob, PointCacheModifierData *pcmd) :
PointCacheWriter(scene, ob, pcmd, &m_archive),
- m_archive(scene, &ob->id, pcmd->point_cache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
set_error_handler(new ModifierErrorHandler(&pcmd->modifier));
@@ -297,7 +297,7 @@ void AbcPointCacheWriter::write_sample()
AbcPointCacheReader::AbcPointCacheReader(Scene *scene, Object *ob, PointCacheModifierData *pcmd) :
PointCacheReader(scene, ob, pcmd, &m_archive),
- m_archive(scene, &ob->id, pcmd->point_cache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
set_error_handler(new ModifierErrorHandler(&pcmd->modifier));
diff --git a/source/blender/pointcache/alembic/abc_particles.cpp b/source/blender/pointcache/alembic/abc_particles.cpp
index 1c4f721..5458af0 100644
--- a/source/blender/pointcache/alembic/abc_particles.cpp
+++ b/source/blender/pointcache/alembic/abc_particles.cpp
@@ -20,6 +20,7 @@
#include "abc_cloth.h"
#include "abc_particles.h"
+#include "util_path.h"
extern "C" {
#include "BLI_math.h"
@@ -39,7 +40,7 @@ using namespace AbcGeom;
AbcParticlesWriter::AbcParticlesWriter(Scene *scene, Object *ob, ParticleSystem *psys) :
ParticlesWriter(scene, ob, psys, &m_archive),
- m_archive(scene, &ob->id, psys->pointcache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
if (m_archive.archive) {
OObject root = m_archive.archive.getTop();
@@ -83,7 +84,7 @@ void AbcParticlesWriter::write_sample()
AbcParticlesReader::AbcParticlesReader(Scene *scene, Object *ob, ParticleSystem *psys) :
ParticlesReader(scene, ob, psys, &m_archive),
- m_archive(scene, &ob->id, psys->pointcache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
if (m_archive.archive.valid()) {
IObject root = m_archive.archive.getTop();
@@ -346,7 +347,7 @@ AbcParticlePathsReader::AbcParticlePathsReader(Scene *scene, Object *ob, Particl
m_pathcache(pathcache),
m_totpath(totpath),
m_suffix(suffix),
- m_archive(scene, &ob->id, psys->pointcache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &ob->id, ob->id.lib), m_error_handler)
{
if (m_archive.archive.valid()) {
IObject root = m_archive.archive.getTop();
@@ -490,6 +491,7 @@ AbcParticlesCombinedWriter::AbcParticlesCombinedWriter(Scene *scene, Object *ob,
archive = m_particles_writer->archive();
}
+#if 0
if (psys->flag & PSYS_CACHE_PATHS) {
if (psys->pathcache) {
m_parent_paths_writer = new AbcParticlePathsWriter(scene, ob, psys, &psys->pathcache, &psys->totpart, "__parent_paths");
@@ -500,6 +502,7 @@ AbcParticlesCombinedWriter::AbcParticlesCombinedWriter(Scene *scene, Object *ob,
m_child_paths_writer->set_archive(archive);
}
}
+#endif
}
AbcParticlesCombinedWriter::~AbcParticlesCombinedWriter()
diff --git a/source/blender/pointcache/alembic/abc_reader.cpp b/source/blender/pointcache/alembic/abc_reader.cpp
index c9f88fa..19c9e96 100644
--- a/source/blender/pointcache/alembic/abc_reader.cpp
+++ b/source/blender/pointcache/alembic/abc_reader.cpp
@@ -21,13 +21,9 @@
#include "abc_reader.h"
-#include "util_path.h"
#include "util_error_handler.h"
extern "C" {
-#include "BLI_fileops.h"
-
-#include "DNA_pointcache_types.h"
#include "DNA_scene_types.h"
}
@@ -35,16 +31,13 @@ namespace PTC {
using namespace Abc;
-AbcReaderArchive::AbcReaderArchive(Scene *scene, ID *id, PointCache *cache, ErrorHandler *error_handler) :
+AbcReaderArchive::AbcReaderArchive(Scene *scene, const std::string &filename, ErrorHandler *error_handler) :
FrameMapper(scene),
m_error_handler(error_handler)
{
- std::string filename;
- if (ptc_archive_path(cache->cachelib, filename, id->lib)) {
- PTC_SAFE_CALL_BEGIN
- archive = IArchive(AbcCoreHDF5::ReadArchive(), filename, Abc::ErrorHandler::kThrowPolicy);
- PTC_SAFE_CALL_END_HANDLER(m_error_handler)
- }
+ PTC_SAFE_CALL_BEGIN
+ archive = IArchive(AbcCoreHDF5::ReadArchive(), filename, Abc::ErrorHandler::kThrowPolicy);
+ PTC_SAFE_CALL_END_HANDLER(m_error_handler)
}
AbcReaderArchive::~AbcReaderArchive()
diff --git a/source/blender/pointcache/alembic/abc_reader.h b/source/blender/pointcache/alembic/abc_reader.h
index ff43425..1f3e372 100644
--- a/source/blender/pointcache/alembic/abc_reader.h
+++ b/source/blender/pointcache/alembic/abc_reader.h
@@ -31,8 +31,6 @@
#include "util_error_handler.h"
#include "util_types.h"
-struct ID;
-struct PointCache;
struct Scene;
namespace PTC {
@@ -41,7 +39,7 @@ using namespace Alembic;
class AbcReaderArchive : public ReaderArchive, public FrameMapper {
public:
- AbcReaderArchive(Scene *scene, ID *id, PointCache *cache, ErrorHandler *error_handler);
+ AbcReaderArchive(Scene *scene, const std::string &filename, ErrorHandler *error_handler);
virtual ~AbcReaderArchive();
bool get_frame_range(int &start_frame, int &end_frame);
diff --git a/source/blender/pointcache/alembic/abc_rigidbody.cpp b/source/blender/pointcache/alembic/abc_rigidbody.cpp
index 8f9f711..0271c98 100644
--- a/source/blender/pointcache/alembic/abc_rigidbody.cpp
+++ b/source/blender/pointcache/alembic/abc_rigidbody.cpp
@@ -17,8 +17,8 @@
*/
#include "alembic.h"
-
#include "abc_rigidbody.h"
+#include "util_path.h"
extern "C" {
#include "DNA_scene_types.h"
@@ -34,7 +34,7 @@ using namespace AbcGeom;
AbcRigidBodyWriter::AbcRigidBodyWriter(Scene *scene, RigidBodyWorld *rbw) :
RigidBodyWriter(scene, rbw, &m_archive),
- m_archive(scene, &scene->id, rbw->pointcache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &scene->id, scene->id.lib), m_error_handler)
{
if (m_archive.archive) {
}
@@ -53,7 +53,7 @@ void AbcRigidBodyWriter::write_sample()
AbcRigidBodyReader::AbcRigidBodyReader(Scene *scene, RigidBodyWorld *rbw) :
RigidBodyReader(scene, rbw, &m_archive),
- m_archive(scene, &scene->id, rbw->pointcache, m_error_handler)
+ m_archive(scene, ptc_archive_path("//blendcache/", &scene->id, scene->id.lib), m_error_handler)
{
if (m_archive.archive.valid()) {
}
diff --git a/source/blender/pointcache/alembic/abc_smoke.cpp b/source/blender/pointcache/alembic/abc_smoke.cpp
index c03f18b..6b4faad 100644
--- a/source/blender/pointcache/alembic/abc_smoke.cpp
+++ b/source/blender/pointcache/alembic/abc_smoke.cpp
@@ -17,8 +17,8 @@
*/
#include "alembic.h"
-
#include "abc_smoke.h"
+#include "util_path.h"
extern "C" {
#include "DNA_object_types.h"
@@ -34,7 +34,7 @@ using namespace AbcGeom;
AbcSmokeWriter::AbcSmokeWriter(Scene *scene, Object *ob, SmokeDomainSettings *domain) :
SmokeWriter(scene, ob, domain, &m_archive),
-
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list