Compiler warning fixes for the same point cache things Joshua tried to fix earlier, don't know why I didn't notice these before.

This commit is contained in:
2011-01-10 02:40:24 +00:00
parent 83806d4042
commit d9c6f51ee2
4 changed files with 38 additions and 29 deletions

View File

@@ -32,7 +32,6 @@
#include "DNA_ID.h"
#include "DNA_object_force.h"
#include "DNA_boid_types.h"
#include "DNA_particle_types.h"
#include <stdio.h> /* for FILE */
/* Point cache clearing option, for BKE_ptcache_id_clear, before
@@ -100,27 +99,6 @@ typedef struct PTCacheData {
struct BoidData boids;
} PTCacheData;
static char *ptcache_datastruct[] = {
"", // BPHYS_DATA_INDEX
"", // BPHYS_DATA_LOCATION
"", // BPHYS_DATA_VELOCITY
"", // BPHYS_DATA_ROTATION
"", // BPHYS_DATA_AVELOCITY / BPHYS_DATA_XCONST */
"", // BPHYS_DATA_SIZE:
"", // BPHYS_DATA_TIMES:
"BoidData" // case BPHYS_DATA_BOIDS:
};
static char *ptcache_extra_datastruct[] = {
"",
"ParticleSpring"
};
static int ptcache_extra_datasize[] = {
0,
sizeof(ParticleSpring)
};
typedef struct PTCacheFile {
FILE *fp;

View File

@@ -97,7 +97,7 @@
/* could be made into a pointcache option */
#define DURIAN_POINTCACHE_LIB_OK 1
int ptcache_data_size[] = {
static int ptcache_data_size[] = {
sizeof(unsigned int), // BPHYS_DATA_INDEX
3 * sizeof(float), // BPHYS_DATA_LOCATION
3 * sizeof(float), // BPHYS_DATA_VELOCITY
@@ -108,6 +108,11 @@ int ptcache_data_size[] = {
sizeof(BoidData) // case BPHYS_DATA_BOIDS
};
static int ptcache_extra_datasize[] = {
0,
sizeof(ParticleSpring)
};
/* forward declerations */
static int ptcache_file_compressed_read(PTCacheFile *pf, unsigned char *result, unsigned int len);
static int ptcache_file_compressed_write(PTCacheFile *pf, unsigned char *in, unsigned int in_len, unsigned char *out, int mode);

View File

@@ -2924,7 +2924,17 @@ static void direct_link_material(FileData *fd, Material *ma)
}
/* ************ READ PARTICLE SETTINGS ***************** */
/* update this also to writefile.c */
static char *ptcache_data_struct[] = {
"", // BPHYS_DATA_INDEX
"", // BPHYS_DATA_LOCATION
"", // BPHYS_DATA_VELOCITY
"", // BPHYS_DATA_ROTATION
"", // BPHYS_DATA_AVELOCITY / BPHYS_DATA_XCONST */
"", // BPHYS_DATA_SIZE:
"", // BPHYS_DATA_TIMES:
"BoidData" // case BPHYS_DATA_BOIDS:
};
static void direct_link_pointcache(FileData *fd, PointCache *cache)
{
if((cache->flag & PTCACHE_DISK_CACHE)==0) {
@@ -2941,7 +2951,7 @@ static void direct_link_pointcache(FileData *fd, PointCache *cache)
pm->data[i] = newdataadr(fd, pm->data[i]);
/* the cache saves non-struct data without DNA */
if(pm->data[i] && strcmp(ptcache_datastruct[i], "")==0 && (fd->flags & FD_FLAGS_SWITCH_ENDIAN)) {
if(pm->data[i] && strcmp(ptcache_data_struct[i], "")==0 && (fd->flags & FD_FLAGS_SWITCH_ENDIAN)) {
int j, tot= (BKE_ptcache_data_size (i) * pm->totpoint)/4; /* data_size returns bytes */
int *poin= pm->data[i];

View File

@@ -768,6 +768,22 @@ static void write_boid_state(WriteData *wd, BoidState *state)
//for(; cond; cond=cond->next)
// writestruct(wd, DATA, "BoidCondition", 1, cond);
}
/* update this also to readfile.c */
static char *ptcache_data_struct[] = {
"", // BPHYS_DATA_INDEX
"", // BPHYS_DATA_LOCATION
"", // BPHYS_DATA_VELOCITY
"", // BPHYS_DATA_ROTATION
"", // BPHYS_DATA_AVELOCITY / BPHYS_DATA_XCONST */
"", // BPHYS_DATA_SIZE:
"", // BPHYS_DATA_TIMES:
"BoidData" // case BPHYS_DATA_BOIDS:
};
static char *ptcache_extra_struct[] = {
"",
"ParticleSpring"
};
static void write_pointcaches(WriteData *wd, ListBase *ptcaches)
{
PointCache *cache = ptcaches->first;
@@ -786,18 +802,18 @@ static void write_pointcaches(WriteData *wd, ListBase *ptcaches)
for(i=0; i<BPHYS_TOT_DATA; i++) {
if(pm->data[i] && pm->data_types & (1<<i)) {
if(strcmp(ptcache_datastruct[i], "")==0)
if(strcmp(ptcache_data_struct[i], "")==0)
writedata(wd, DATA, MEM_allocN_len(pm->data[i]), pm->data[i]);
else
writestruct(wd, DATA, ptcache_datastruct[i], pm->totpoint, pm->data[i]);
writestruct(wd, DATA, ptcache_data_struct[i], pm->totpoint, pm->data[i]);
}
}
for(; extra; extra=extra->next) {
if(strcmp(ptcache_extra_datastruct[extra->type], "")==0)
if(strcmp(ptcache_extra_struct[extra->type], "")==0)
continue;
writestruct(wd, DATA, "PTCacheExtra", 1, extra);
writestruct(wd, DATA, ptcache_extra_datastruct[extra->type], extra->totdata, extra->data);
writestruct(wd, DATA, ptcache_extra_struct[extra->type], extra->totdata, extra->data);
}
}
}