Merge branch 'master' into blender2.8
This commit is contained in:
@@ -421,7 +421,7 @@ void AbcExporter::exploreTransform(Base *ob_base, Object *parent, Object *dupliO
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AbcTransformWriter * AbcExporter::createTransformWriter(Object *ob, Object *parent, Object *dupliObParent)
|
AbcTransformWriter *AbcExporter::createTransformWriter(Object *ob, Object *parent, Object *dupliObParent)
|
||||||
{
|
{
|
||||||
/* An object should not be its own parent, or we'll get infinite loops. */
|
/* An object should not be its own parent, or we'll get infinite loops. */
|
||||||
BLI_assert(ob != parent);
|
BLI_assert(ob != parent);
|
||||||
|
@@ -116,7 +116,7 @@ private:
|
|||||||
Alembic::Abc::TimeSamplingPtr createTimeSampling(double step);
|
Alembic::Abc::TimeSamplingPtr createTimeSampling(double step);
|
||||||
|
|
||||||
void createTransformWritersHierarchy();
|
void createTransformWritersHierarchy();
|
||||||
AbcTransformWriter * createTransformWriter(Object *ob, Object *parent, Object *dupliObParent);
|
AbcTransformWriter *createTransformWriter(Object *ob, Object *parent, Object *dupliObParent);
|
||||||
void exploreTransform(Base *ob_base, Object *parent, Object *dupliObParent);
|
void exploreTransform(Base *ob_base, Object *parent, Object *dupliObParent);
|
||||||
void exploreObject(Base *ob_base, Object *dupliObParent);
|
void exploreObject(Base *ob_base, Object *dupliObParent);
|
||||||
void createShapeWriters();
|
void createShapeWriters();
|
||||||
|
@@ -133,7 +133,7 @@ void AbcHairWriter::write_hair_sample(Mesh *mesh,
|
|||||||
m_uv_warning_shown = true;
|
m_uv_warning_shown = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
ParticleData * pa = m_psys->particles;
|
ParticleData *pa = m_psys->particles;
|
||||||
int k;
|
int k;
|
||||||
|
|
||||||
ParticleCacheKey **cache = m_psys->pathcache;
|
ParticleCacheKey **cache = m_psys->pathcache;
|
||||||
|
@@ -67,7 +67,7 @@ struct ViewLayer;
|
|||||||
|
|
||||||
#define PARTICLE_COLLISION_MAX_COLLISIONS 10
|
#define PARTICLE_COLLISION_MAX_COLLISIONS 10
|
||||||
|
|
||||||
#define PARTICLE_P ParticleData * pa; int p
|
#define PARTICLE_P ParticleData *pa; int p
|
||||||
#define LOOP_PARTICLES for (p = 0, pa = psys->particles; p < psys->totpart; p++, pa++)
|
#define LOOP_PARTICLES for (p = 0, pa = psys->particles; p < psys->totpart; p++, pa++)
|
||||||
#define LOOP_EXISTING_PARTICLES for (p = 0, pa = psys->particles; p < psys->totpart; p++, pa++) if (!(pa->flag & PARS_UNEXIST))
|
#define LOOP_EXISTING_PARTICLES for (p = 0, pa = psys->particles; p < psys->totpart; p++, pa++) if (!(pa->flag & PARS_UNEXIST))
|
||||||
#define LOOP_SHOWN_PARTICLES for (p = 0, pa = psys->particles; p < psys->totpart; p++, pa++) if (!(pa->flag & (PARS_UNEXIST | PARS_NO_DISP)))
|
#define LOOP_SHOWN_PARTICLES for (p = 0, pa = psys->particles; p < psys->totpart; p++, pa++) if (!(pa->flag & (PARS_UNEXIST | PARS_NO_DISP)))
|
||||||
@@ -75,7 +75,7 @@ struct ViewLayer;
|
|||||||
#define LOOP_DYNAMIC_PARTICLES for (p = 0; p < psys->totpart; p++) if ((pa = psys->particles + p)->state.time > 0.0f)
|
#define LOOP_DYNAMIC_PARTICLES for (p = 0; p < psys->totpart; p++) if ((pa = psys->particles + p)->state.time > 0.0f)
|
||||||
|
|
||||||
/* fast but sure way to get the modifier*/
|
/* fast but sure way to get the modifier*/
|
||||||
#define PARTICLE_PSMD ParticleSystemModifierData * psmd = sim->psmd ? sim->psmd : psys_get_modifier(sim->ob, sim->psys)
|
#define PARTICLE_PSMD ParticleSystemModifierData *psmd = sim->psmd ? sim->psmd : psys_get_modifier(sim->ob, sim->psys)
|
||||||
|
|
||||||
/* common stuff that many particle functions need */
|
/* common stuff that many particle functions need */
|
||||||
typedef struct ParticleSimulationData {
|
typedef struct ParticleSimulationData {
|
||||||
|
@@ -1059,9 +1059,10 @@ static void armature_bbone_defmats_cb(void *userdata, Link *iter, int index)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void armature_deform_verts(Object *armOb, Object *target, const Mesh * mesh, float (*vertexCos)[3],
|
void armature_deform_verts(
|
||||||
float (*defMats)[3][3], int numVerts, int deformflag,
|
Object *armOb, Object *target, const Mesh *mesh, float (*vertexCos)[3],
|
||||||
float (*prevCos)[3], const char *defgrp_name, bGPDstroke *gps)
|
float (*defMats)[3][3], int numVerts, int deformflag,
|
||||||
|
float (*prevCos)[3], const char *defgrp_name, bGPDstroke *gps)
|
||||||
{
|
{
|
||||||
bPoseChanDeform *pdef_info_array;
|
bPoseChanDeform *pdef_info_array;
|
||||||
bPoseChanDeform *pdef_info = NULL;
|
bPoseChanDeform *pdef_info = NULL;
|
||||||
|
@@ -85,7 +85,7 @@ void readBitmapFontVersion0(ImBuf *ibuf, unsigned char *rect, int step)
|
|||||||
{
|
{
|
||||||
int glyphcount, bytes, i, index, linelength, ysize;
|
int glyphcount, bytes, i, index, linelength, ysize;
|
||||||
unsigned char *buffer;
|
unsigned char *buffer;
|
||||||
bmFont * bmfont;
|
bmFont *bmfont;
|
||||||
|
|
||||||
linelength = ibuf->x * step;
|
linelength = ibuf->x * step;
|
||||||
|
|
||||||
|
@@ -686,7 +686,7 @@ static Mesh *mesh_new_nomain_from_template_ex(
|
|||||||
return me_dst;
|
return me_dst;
|
||||||
}
|
}
|
||||||
|
|
||||||
Mesh * BKE_mesh_new_nomain_from_template(
|
Mesh *BKE_mesh_new_nomain_from_template(
|
||||||
const Mesh *me_src,
|
const Mesh *me_src,
|
||||||
int verts_len, int edges_len, int tessface_len,
|
int verts_len, int edges_len, int tessface_len,
|
||||||
int loops_len, int polys_len)
|
int loops_len, int polys_len)
|
||||||
|
@@ -181,11 +181,12 @@ public:
|
|||||||
// prerequisites:
|
// prerequisites:
|
||||||
// animlist_map - map animlist id -> animlist
|
// animlist_map - map animlist id -> animlist
|
||||||
// curve_map - map anim id -> curve(s)
|
// curve_map - map anim id -> curve(s)
|
||||||
Object * translate_animation_OLD(Main *bmain, COLLADAFW::Node *node,
|
Object *translate_animation_OLD(
|
||||||
std::map<COLLADAFW::UniqueId, Object*>& object_map,
|
Main *bmain, COLLADAFW::Node *node,
|
||||||
std::map<COLLADAFW::UniqueId, COLLADAFW::Node*>& root_map,
|
std::map<COLLADAFW::UniqueId, Object*>& object_map,
|
||||||
COLLADAFW::Transformation::TransformationType tm_type,
|
std::map<COLLADAFW::UniqueId, COLLADAFW::Node*>& root_map,
|
||||||
Object *par_job = NULL);
|
COLLADAFW::Transformation::TransformationType tm_type,
|
||||||
|
Object *par_job = NULL);
|
||||||
|
|
||||||
void find_frames( std::vector<float>* frames, std::vector<FCurve*>* curves );
|
void find_frames( std::vector<float>* frames, std::vector<FCurve*>* curves );
|
||||||
void find_frames_old( std::vector<float>* frames, COLLADAFW::Node * node, COLLADAFW::Transformation::TransformationType tm_type );
|
void find_frames_old( std::vector<float>* frames, COLLADAFW::Node * node, COLLADAFW::Transformation::TransformationType tm_type );
|
||||||
|
@@ -69,7 +69,7 @@ void ArmatureExporter::add_armature_bones(bContext *C, Depsgraph *depsgraph, Obj
|
|||||||
Main *bmain = CTX_data_main(C);
|
Main *bmain = CTX_data_main(C);
|
||||||
// write bone nodes
|
// write bone nodes
|
||||||
|
|
||||||
bArmature * armature = (bArmature *)ob_arm->data;
|
bArmature *armature = (bArmature *)ob_arm->data;
|
||||||
bool is_edited = armature->edbo != NULL;
|
bool is_edited = armature->edbo != NULL;
|
||||||
|
|
||||||
if (!is_edited)
|
if (!is_edited)
|
||||||
|
@@ -463,11 +463,11 @@ void ArmatureImporter::create_armature_bones(Main *bmain, std::vector<Object *>
|
|||||||
if (!ob_arm)
|
if (!ob_arm)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
bArmature * armature = (bArmature *)ob_arm->data;
|
bArmature *armature = (bArmature *)ob_arm->data;
|
||||||
if (!armature)
|
if (!armature)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
char * bone_name = (char *)bc_get_joint_name(*ri);
|
char *bone_name = (char *)bc_get_joint_name(*ri);
|
||||||
Bone *bone = BKE_armature_find_bone_name(armature, bone_name);
|
Bone *bone = BKE_armature_find_bone_name(armature, bone_name);
|
||||||
if (bone) {
|
if (bone) {
|
||||||
fprintf(stderr, "Reuse of child bone [%s] as root bone in same Armature is not supported.\n", bone_name);
|
fprintf(stderr, "Reuse of child bone [%s] as root bone in same Armature is not supported.\n", bone_name);
|
||||||
@@ -592,7 +592,7 @@ Object *ArmatureImporter::create_armature_bones(Main *bmain, SkinInfo& skin)
|
|||||||
}
|
}
|
||||||
|
|
||||||
// enter armature edit mode
|
// enter armature edit mode
|
||||||
bArmature * armature = (bArmature *)ob_arm->data;
|
bArmature *armature = (bArmature *)ob_arm->data;
|
||||||
ED_armature_to_edit(armature);
|
ED_armature_to_edit(armature);
|
||||||
|
|
||||||
totbone = 0;
|
totbone = 0;
|
||||||
|
@@ -403,7 +403,7 @@ void ControllerExporter::add_weight_extras(Key *key)
|
|||||||
// can also try the base element and param alternative
|
// can also try the base element and param alternative
|
||||||
COLLADASW::BaseExtraTechnique extra;
|
COLLADASW::BaseExtraTechnique extra;
|
||||||
|
|
||||||
KeyBlock * kb = (KeyBlock *)key->block.first;
|
KeyBlock *kb = (KeyBlock *)key->block.first;
|
||||||
//skip the basis
|
//skip the basis
|
||||||
kb = kb->next;
|
kb = kb->next;
|
||||||
for (; kb; kb = kb->next) {
|
for (; kb; kb = kb->next) {
|
||||||
|
@@ -151,9 +151,9 @@ void GeometryExporter::operator()(Object *ob)
|
|||||||
closeGeometry();
|
closeGeometry();
|
||||||
|
|
||||||
if (this->export_settings->include_shapekeys) {
|
if (this->export_settings->include_shapekeys) {
|
||||||
Key * key = BKE_key_from_object(ob);
|
Key *key = BKE_key_from_object(ob);
|
||||||
if (key) {
|
if (key) {
|
||||||
KeyBlock * kb = (KeyBlock *)key->block.first;
|
KeyBlock *kb = (KeyBlock *)key->block.first;
|
||||||
//skip the basis
|
//skip the basis
|
||||||
kb = kb->next;
|
kb = kb->next;
|
||||||
for (; kb; kb = kb->next) {
|
for (; kb; kb = kb->next) {
|
||||||
|
@@ -128,7 +128,7 @@ private:
|
|||||||
|
|
||||||
const ExportSettings *export_settings;
|
const ExportSettings *export_settings;
|
||||||
|
|
||||||
Mesh * get_mesh(Scene *sce, Object *ob, int apply_modifiers);
|
Mesh *get_mesh(Scene *sce, Object *ob, int apply_modifiers);
|
||||||
};
|
};
|
||||||
|
|
||||||
struct GeometryFunctor {
|
struct GeometryFunctor {
|
||||||
|
@@ -610,7 +610,7 @@ inline bool isInteger(const std::string & s)
|
|||||||
{
|
{
|
||||||
if (s.empty() || ((!isdigit(s[0])) && (s[0] != '-') && (s[0] != '+'))) return false;
|
if (s.empty() || ((!isdigit(s[0])) && (s[0] != '-') && (s[0] != '+'))) return false;
|
||||||
|
|
||||||
char * p;
|
char *p;
|
||||||
strtol(s.c_str(), &p, 10);
|
strtol(s.c_str(), &p, 10);
|
||||||
|
|
||||||
return (*p == 0);
|
return (*p == 0);
|
||||||
|
@@ -171,7 +171,7 @@ bool NodeOperation::determineDependingAreaOfInterest(rcti *input, ReadBufferOper
|
|||||||
rcti tempOutput;
|
rcti tempOutput;
|
||||||
bool first = true;
|
bool first = true;
|
||||||
for (int i = 0; i < getNumberOfInputSockets(); i ++) {
|
for (int i = 0; i < getNumberOfInputSockets(); i ++) {
|
||||||
NodeOperation * inputOperation = this->getInputOperation(i);
|
NodeOperation *inputOperation = this->getInputOperation(i);
|
||||||
if (inputOperation && inputOperation->determineDependingAreaOfInterest(input, readOperation, &tempOutput)) {
|
if (inputOperation && inputOperation->determineDependingAreaOfInterest(input, readOperation, &tempOutput)) {
|
||||||
if (first) {
|
if (first) {
|
||||||
output->xmin = tempOutput.xmin;
|
output->xmin = tempOutput.xmin;
|
||||||
|
@@ -288,7 +288,7 @@ void InverseSearchRadiusOperation::initExecution()
|
|||||||
|
|
||||||
void *InverseSearchRadiusOperation::initializeTileData(rcti *rect)
|
void *InverseSearchRadiusOperation::initializeTileData(rcti *rect)
|
||||||
{
|
{
|
||||||
MemoryBuffer * data = new MemoryBuffer(COM_DT_COLOR, rect);
|
MemoryBuffer *data = new MemoryBuffer(COM_DT_COLOR, rect);
|
||||||
float *buffer = data->getBuffer();
|
float *buffer = data->getBuffer();
|
||||||
int x, y;
|
int x, y;
|
||||||
int width = this->m_inputRadius->getWidth();
|
int width = this->m_inputRadius->getWidth();
|
||||||
|
@@ -1281,7 +1281,7 @@ static void drw_engines_enable(ViewLayer *view_layer, RenderEngineType *engine_t
|
|||||||
{
|
{
|
||||||
Object *obact = OBACT(view_layer);
|
Object *obact = OBACT(view_layer);
|
||||||
const int mode = CTX_data_mode_enum_ex(DST.draw_ctx.object_edit, obact, DST.draw_ctx.object_mode);
|
const int mode = CTX_data_mode_enum_ex(DST.draw_ctx.object_edit, obact, DST.draw_ctx.object_mode);
|
||||||
View3D * v3d = DST.draw_ctx.v3d;
|
View3D *v3d = DST.draw_ctx.v3d;
|
||||||
const int drawtype = v3d->shading.type;
|
const int drawtype = v3d->shading.type;
|
||||||
const bool use_xray = XRAY_ENABLED(v3d);
|
const bool use_xray = XRAY_ENABLED(v3d);
|
||||||
|
|
||||||
|
@@ -88,7 +88,7 @@ extern struct GlobalsUboStorage ts; /* draw_common.c */
|
|||||||
/* Functions */
|
/* Functions */
|
||||||
static void overlay_engine_init(void *vedata)
|
static void overlay_engine_init(void *vedata)
|
||||||
{
|
{
|
||||||
OVERLAY_Data * data = (OVERLAY_Data *)vedata;
|
OVERLAY_Data *data = vedata;
|
||||||
OVERLAY_StorageList *stl = data->stl;
|
OVERLAY_StorageList *stl = data->stl;
|
||||||
|
|
||||||
if (!stl->g_data) {
|
if (!stl->g_data) {
|
||||||
@@ -149,7 +149,7 @@ static void overlay_engine_init(void *vedata)
|
|||||||
|
|
||||||
static void overlay_cache_init(void *vedata)
|
static void overlay_cache_init(void *vedata)
|
||||||
{
|
{
|
||||||
OVERLAY_Data * data = (OVERLAY_Data *)vedata;
|
OVERLAY_Data *data = vedata;
|
||||||
OVERLAY_PassList *psl = data->psl;
|
OVERLAY_PassList *psl = data->psl;
|
||||||
OVERLAY_StorageList *stl = data->stl;
|
OVERLAY_StorageList *stl = data->stl;
|
||||||
|
|
||||||
@@ -223,7 +223,7 @@ static void overlay_cache_init(void *vedata)
|
|||||||
|
|
||||||
static void overlay_cache_populate(void *vedata, Object *ob)
|
static void overlay_cache_populate(void *vedata, Object *ob)
|
||||||
{
|
{
|
||||||
OVERLAY_Data * data = (OVERLAY_Data *)vedata;
|
OVERLAY_Data *data = vedata;
|
||||||
OVERLAY_StorageList *stl = data->stl;
|
OVERLAY_StorageList *stl = data->stl;
|
||||||
OVERLAY_PrivateData *pd = stl->g_data;
|
OVERLAY_PrivateData *pd = stl->g_data;
|
||||||
OVERLAY_PassList *psl = data->psl;
|
OVERLAY_PassList *psl = data->psl;
|
||||||
@@ -322,7 +322,7 @@ static void overlay_cache_populate(void *vedata, Object *ob)
|
|||||||
|
|
||||||
static void overlay_cache_finish(void *vedata)
|
static void overlay_cache_finish(void *vedata)
|
||||||
{
|
{
|
||||||
OVERLAY_Data * data = (OVERLAY_Data *)vedata;
|
OVERLAY_Data *data = vedata;
|
||||||
OVERLAY_PassList *psl = data->psl;
|
OVERLAY_PassList *psl = data->psl;
|
||||||
OVERLAY_StorageList *stl = data->stl;
|
OVERLAY_StorageList *stl = data->stl;
|
||||||
|
|
||||||
@@ -340,7 +340,7 @@ static void overlay_cache_finish(void *vedata)
|
|||||||
|
|
||||||
static void overlay_draw_scene(void *vedata)
|
static void overlay_draw_scene(void *vedata)
|
||||||
{
|
{
|
||||||
OVERLAY_Data * data = (OVERLAY_Data *)vedata;
|
OVERLAY_Data *data = vedata;
|
||||||
OVERLAY_PassList *psl = data->psl;
|
OVERLAY_PassList *psl = data->psl;
|
||||||
DefaultFramebufferList *dfbl = DRW_viewport_framebuffer_list_get();
|
DefaultFramebufferList *dfbl = DRW_viewport_framebuffer_list_get();
|
||||||
|
|
||||||
|
@@ -890,7 +890,7 @@ static int armature_de_select_more_exec(bContext *C, wmOperator *UNUSED(op))
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
armature_select_more_less(ob, true);
|
armature_select_more_less(ob, true);
|
||||||
WM_event_add_notifier(C, NC_OBJECT | ND_BONE_SELECT, ob);
|
WM_event_add_notifier(C, NC_OBJECT | ND_BONE_SELECT, ob);
|
||||||
}
|
}
|
||||||
@@ -919,7 +919,7 @@ static int armature_de_select_less_exec(bContext *C, wmOperator *UNUSED(op))
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
armature_select_more_less(ob, false);
|
armature_select_more_less(ob, false);
|
||||||
WM_event_add_notifier(C, NC_OBJECT | ND_BONE_SELECT, ob);
|
WM_event_add_notifier(C, NC_OBJECT | ND_BONE_SELECT, ob);
|
||||||
}
|
}
|
||||||
@@ -991,8 +991,8 @@ static void select_similar_length(bContext *C, const float thresh)
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
bArmature * arm = ob->data;
|
bArmature *arm = ob->data;
|
||||||
bool changed = false;
|
bool changed = false;
|
||||||
|
|
||||||
for (EditBone *ebone = arm->edbo->first; ebone; ebone = ebone->next) {
|
for (EditBone *ebone = arm->edbo->first; ebone; ebone = ebone->next) {
|
||||||
@@ -1039,8 +1039,8 @@ static void select_similar_direction(bContext *C, const float thresh)
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
bArmature * arm = ob->data;
|
bArmature *arm = ob->data;
|
||||||
bool changed = false;
|
bool changed = false;
|
||||||
|
|
||||||
for (EditBone *ebone = arm->edbo->first; ebone; ebone = ebone->next) {
|
for (EditBone *ebone = arm->edbo->first; ebone; ebone = ebone->next) {
|
||||||
@@ -1070,8 +1070,8 @@ static void select_similar_layer(bContext *C)
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
bArmature * arm = ob->data;
|
bArmature *arm = ob->data;
|
||||||
bool changed = false;
|
bool changed = false;
|
||||||
|
|
||||||
for (EditBone *ebone = arm->edbo->first; ebone; ebone = ebone->next) {
|
for (EditBone *ebone = arm->edbo->first; ebone; ebone = ebone->next) {
|
||||||
@@ -1107,8 +1107,8 @@ static void select_similar_prefix(bContext *C)
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
bArmature * arm = ob->data;
|
bArmature *arm = ob->data;
|
||||||
bool changed = false;
|
bool changed = false;
|
||||||
|
|
||||||
/* Find matches */
|
/* Find matches */
|
||||||
@@ -1146,8 +1146,8 @@ static void select_similar_suffix(bContext *C)
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
bArmature * arm = ob->data;
|
bArmature *arm = ob->data;
|
||||||
bool changed = false;
|
bool changed = false;
|
||||||
|
|
||||||
/* Find matches */
|
/* Find matches */
|
||||||
@@ -1350,8 +1350,8 @@ static int armature_select_hierarchy_exec(bContext *C, wmOperator *op)
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
bArmature * arm = ob->data;
|
bArmature *arm = ob->data;
|
||||||
|
|
||||||
EditBone *ebone_active;
|
EditBone *ebone_active;
|
||||||
bool changed = false;
|
bool changed = false;
|
||||||
@@ -1459,15 +1459,15 @@ void ARMATURE_OT_select_hierarchy(wmOperatorType *ot)
|
|||||||
*/
|
*/
|
||||||
static int armature_select_mirror_exec(bContext *C, wmOperator *op)
|
static int armature_select_mirror_exec(bContext *C, wmOperator *op)
|
||||||
{
|
{
|
||||||
ViewLayer * view_layer = CTX_data_view_layer(C);
|
ViewLayer *view_layer = CTX_data_view_layer(C);
|
||||||
const bool active_only = RNA_boolean_get(op->ptr, "only_active");
|
const bool active_only = RNA_boolean_get(op->ptr, "only_active");
|
||||||
const bool extend = RNA_boolean_get(op->ptr, "extend");
|
const bool extend = RNA_boolean_get(op->ptr, "extend");
|
||||||
|
|
||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
bArmature * arm = ob->data;
|
bArmature *arm = ob->data;
|
||||||
|
|
||||||
EditBone *ebone, *ebone_mirror_act = NULL;
|
EditBone *ebone, *ebone_mirror_act = NULL;
|
||||||
|
|
||||||
|
@@ -930,8 +930,8 @@ static int pose_select_mirror_exec(bContext *C, wmOperator *op)
|
|||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object **objects = BKE_view_layer_array_from_objects_in_mode_unique_data(view_layer, &objects_len, OB_MODE_POSE);
|
Object **objects = BKE_view_layer_array_from_objects_in_mode_unique_data(view_layer, &objects_len, OB_MODE_POSE);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * ob = objects[ob_index];
|
Object *ob = objects[ob_index];
|
||||||
bArmature * arm = ob->data;
|
bArmature *arm = ob->data;
|
||||||
bPoseChannel *pchan, *pchan_mirror_act = NULL;
|
bPoseChannel *pchan, *pchan_mirror_act = NULL;
|
||||||
|
|
||||||
for (pchan = ob->pose->chanbase.first; pchan; pchan = pchan->next) {
|
for (pchan = ob->pose->chanbase.first; pchan; pchan = pchan->next) {
|
||||||
|
@@ -253,14 +253,14 @@ static int edbm_subdivide_edge_ring_exec(bContext *C, wmOperator *op)
|
|||||||
|
|
||||||
ViewLayer *view_layer = CTX_data_view_layer(C);
|
ViewLayer *view_layer = CTX_data_view_layer(C);
|
||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object * *objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
struct EdgeRingOpSubdProps op_props;
|
struct EdgeRingOpSubdProps op_props;
|
||||||
|
|
||||||
mesh_operator_edgering_props_get(op, &op_props);
|
mesh_operator_edgering_props_get(op, &op_props);
|
||||||
|
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * obedit = objects[ob_index];
|
Object *obedit = objects[ob_index];
|
||||||
BMEditMesh * em = BKE_editmesh_from_object(obedit);
|
BMEditMesh *em = BKE_editmesh_from_object(obedit);
|
||||||
|
|
||||||
if (em->bm->totedgesel == 0) {
|
if (em->bm->totedgesel == 0) {
|
||||||
continue;
|
continue;
|
||||||
@@ -2375,12 +2375,12 @@ static void mesh_set_smooth_faces(BMEditMesh *em, short smooth)
|
|||||||
|
|
||||||
static int edbm_faces_shade_smooth_exec(bContext *C, wmOperator *UNUSED(op))
|
static int edbm_faces_shade_smooth_exec(bContext *C, wmOperator *UNUSED(op))
|
||||||
{
|
{
|
||||||
ViewLayer * view_layer = CTX_data_view_layer(C);
|
ViewLayer *view_layer = CTX_data_view_layer(C);
|
||||||
uint objects_len = 0;
|
uint objects_len = 0;
|
||||||
Object * *objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
Object **objects = BKE_view_layer_array_from_objects_in_edit_mode_unique_data(view_layer, &objects_len);
|
||||||
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
for (uint ob_index = 0; ob_index < objects_len; ob_index++) {
|
||||||
Object * obedit = objects[ob_index];
|
Object *obedit = objects[ob_index];
|
||||||
BMEditMesh * em = BKE_editmesh_from_object(obedit);
|
BMEditMesh *em = BKE_editmesh_from_object(obedit);
|
||||||
|
|
||||||
if (em->bm->totfacesel == 0) {
|
if (em->bm->totfacesel == 0) {
|
||||||
continue;
|
continue;
|
||||||
|
@@ -56,12 +56,12 @@ typedef enum FileCheckType {
|
|||||||
CHECK_ALL = 3
|
CHECK_ALL = 3
|
||||||
} FileCheckType;
|
} FileCheckType;
|
||||||
|
|
||||||
struct ListBase * folderlist_new(void);
|
struct ListBase *folderlist_new(void);
|
||||||
void folderlist_free(struct ListBase *folderlist);
|
void folderlist_free(struct ListBase *folderlist);
|
||||||
struct ListBase * folderlist_duplicate(ListBase *folderlist);
|
struct ListBase *folderlist_duplicate(ListBase *folderlist);
|
||||||
void folderlist_popdir(struct ListBase *folderlist, char *dir);
|
void folderlist_popdir(struct ListBase *folderlist, char *dir);
|
||||||
void folderlist_pushdir(struct ListBase *folderlist, const char *dir);
|
void folderlist_pushdir(struct ListBase *folderlist, const char *dir);
|
||||||
const char * folderlist_peeklastdir(struct ListBase *folderdist);
|
const char *folderlist_peeklastdir(struct ListBase *folderdist);
|
||||||
int folderlist_clear_next(struct SpaceFile *sfile);
|
int folderlist_clear_next(struct SpaceFile *sfile);
|
||||||
|
|
||||||
|
|
||||||
@@ -77,24 +77,24 @@ void filelist_filter(struct FileList *filelist);
|
|||||||
void filelist_init_icons(void);
|
void filelist_init_icons(void);
|
||||||
void filelist_free_icons(void);
|
void filelist_free_icons(void);
|
||||||
void filelist_imgsize(struct FileList *filelist, short w, short h);
|
void filelist_imgsize(struct FileList *filelist, short w, short h);
|
||||||
struct ImBuf * filelist_getimage(struct FileList *filelist, const int index);
|
struct ImBuf *filelist_getimage(struct FileList *filelist, const int index);
|
||||||
struct ImBuf * filelist_geticon_image(struct FileList *filelist, const int index);
|
struct ImBuf *filelist_geticon_image(struct FileList *filelist, const int index);
|
||||||
int filelist_geticon(struct FileList *filelist, const int index, const bool is_main);
|
int filelist_geticon(struct FileList *filelist, const int index, const bool is_main);
|
||||||
|
|
||||||
struct FileList * filelist_new(short type);
|
struct FileList *filelist_new(short type);
|
||||||
void filelist_clear(struct FileList *filelist);
|
void filelist_clear(struct FileList *filelist);
|
||||||
void filelist_clear_ex(struct FileList *filelist, const bool do_cache, const bool do_selection);
|
void filelist_clear_ex(struct FileList *filelist, const bool do_cache, const bool do_selection);
|
||||||
void filelist_free(struct FileList *filelist);
|
void filelist_free(struct FileList *filelist);
|
||||||
|
|
||||||
const char * filelist_dir(struct FileList *filelist);
|
const char *filelist_dir(struct FileList *filelist);
|
||||||
bool filelist_is_dir(struct FileList *filelist, const char *path);
|
bool filelist_is_dir(struct FileList *filelist, const char *path);
|
||||||
void filelist_setdir(struct FileList *filelist, char *r_dir);
|
void filelist_setdir(struct FileList *filelist, char *r_dir);
|
||||||
|
|
||||||
int filelist_files_ensure(struct FileList *filelist);
|
int filelist_files_ensure(struct FileList *filelist);
|
||||||
int filelist_empty(struct FileList *filelist);
|
int filelist_empty(struct FileList *filelist);
|
||||||
FileDirEntry * filelist_file(struct FileList *filelist, int index);
|
FileDirEntry *filelist_file(struct FileList *filelist, int index);
|
||||||
int filelist_file_findpath(struct FileList *filelist, const char *file);
|
int filelist_file_findpath(struct FileList *filelist, const char *file);
|
||||||
FileDirEntry * filelist_entry_find_uuid(struct FileList *filelist, const int uuid[4]);
|
FileDirEntry *filelist_entry_find_uuid(struct FileList *filelist, const int uuid[4]);
|
||||||
void filelist_file_cache_slidingwindow_set(struct FileList *filelist, size_t window_size);
|
void filelist_file_cache_slidingwindow_set(struct FileList *filelist, size_t window_size);
|
||||||
bool filelist_file_cache_block(struct FileList *filelist, const int index);
|
bool filelist_file_cache_block(struct FileList *filelist, const int index);
|
||||||
|
|
||||||
|
@@ -1314,7 +1314,7 @@ TreeElementIcon tree_element_get_icon(TreeStoreElem *tselem, TreeElement *te)
|
|||||||
data.icon = ICON_OUTLINER_DATA_GREASEPENCIL; break;
|
data.icon = ICON_OUTLINER_DATA_GREASEPENCIL; break;
|
||||||
case ID_LP:
|
case ID_LP:
|
||||||
{
|
{
|
||||||
LightProbe * lp = (LightProbe *)tselem->id;
|
LightProbe *lp = (LightProbe *)tselem->id;
|
||||||
switch (lp->type) {
|
switch (lp->type) {
|
||||||
case LIGHTPROBE_TYPE_CUBE:
|
case LIGHTPROBE_TYPE_CUBE:
|
||||||
data.icon = ICON_LIGHTPROBE_CUBEMAP; break;
|
data.icon = ICON_LIGHTPROBE_CUBEMAP; break;
|
||||||
|
@@ -69,7 +69,7 @@ public:
|
|||||||
virtual float thickness() const;
|
virtual float thickness() const;
|
||||||
|
|
||||||
AppView *_pViewer;
|
AppView *_pViewer;
|
||||||
inline const AppView * viewer() const {return _pViewer;}
|
inline const AppView *viewer() const {return _pViewer;}
|
||||||
|
|
||||||
/*! modifiers */
|
/*! modifiers */
|
||||||
void setViewer(AppView *iViewer);
|
void setViewer(AppView *iViewer);
|
||||||
|
@@ -44,7 +44,7 @@ namespace Config {
|
|||||||
|
|
||||||
class Path {
|
class Path {
|
||||||
protected:
|
protected:
|
||||||
static Path * _pInstance;
|
static Path *_pInstance;
|
||||||
string _ProjectDir;
|
string _ProjectDir;
|
||||||
string _ModelsPath;
|
string _ModelsPath;
|
||||||
string _PatternsPath;
|
string _PatternsPath;
|
||||||
|
@@ -642,11 +642,11 @@ void Controller::ComputeSteerableViewMap()
|
|||||||
NodeShape *completeNS = new NodeShape;
|
NodeShape *completeNS = new NodeShape;
|
||||||
completeNS->material().setDiffuse(c,c,c,1);
|
completeNS->material().setDiffuse(c,c,c,1);
|
||||||
ng[Canvas::NB_STEERABLE_VIEWMAP-1]->AddChild(completeNS);
|
ng[Canvas::NB_STEERABLE_VIEWMAP-1]->AddChild(completeNS);
|
||||||
SteerableViewMap * svm = _Canvas->getSteerableViewMap();
|
SteerableViewMap *svm = _Canvas->getSteerableViewMap();
|
||||||
svm->Reset();
|
svm->Reset();
|
||||||
|
|
||||||
ViewMap::fedges_container& fedges = _ViewMap->FEdges();
|
ViewMap::fedges_container& fedges = _ViewMap->FEdges();
|
||||||
LineRep * fRep;
|
LineRep *fRep;
|
||||||
NodeShape *ns;
|
NodeShape *ns;
|
||||||
for (ViewMap::fedges_container::iterator f = fedges.begin(), fend = fedges.end();
|
for (ViewMap::fedges_container::iterator f = fedges.begin(), fend = fedges.end();
|
||||||
f != fend;
|
f != fend;
|
||||||
@@ -722,7 +722,7 @@ void Controller::ComputeSteerableViewMap()
|
|||||||
|
|
||||||
void Controller::saveSteerableViewMapImages()
|
void Controller::saveSteerableViewMapImages()
|
||||||
{
|
{
|
||||||
SteerableViewMap * svm = _Canvas->getSteerableViewMap();
|
SteerableViewMap *svm = _Canvas->getSteerableViewMap();
|
||||||
if (!svm) {
|
if (!svm) {
|
||||||
cerr << "the Steerable ViewMap has not been computed yet" << endl;
|
cerr << "the Steerable ViewMap has not been computed yet" << endl;
|
||||||
return;
|
return;
|
||||||
@@ -1003,7 +1003,7 @@ void Controller::resetModified(bool iMod)
|
|||||||
_Canvas->resetModified(iMod);
|
_Canvas->resetModified(iMod);
|
||||||
}
|
}
|
||||||
|
|
||||||
NodeGroup * Controller::BuildRep(vector<ViewEdge*>::iterator vedges_begin, vector<ViewEdge*>::iterator vedges_end)
|
NodeGroup *Controller::BuildRep(vector<ViewEdge*>::iterator vedges_begin, vector<ViewEdge*>::iterator vedges_end)
|
||||||
{
|
{
|
||||||
ViewMapTesselator2D tesselator2D;
|
ViewMapTesselator2D tesselator2D;
|
||||||
FrsMaterial mat;
|
FrsMaterial mat;
|
||||||
@@ -1052,7 +1052,7 @@ void Controller::resetInterpreter()
|
|||||||
|
|
||||||
void Controller::displayDensityCurves(int x, int y)
|
void Controller::displayDensityCurves(int x, int y)
|
||||||
{
|
{
|
||||||
SteerableViewMap * svm = _Canvas->getSteerableViewMap();
|
SteerableViewMap *svm = _Canvas->getSteerableViewMap();
|
||||||
if (!svm)
|
if (!svm)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@@ -92,7 +92,7 @@ public:
|
|||||||
virtual ~BlenderFileLoader();
|
virtual ~BlenderFileLoader();
|
||||||
|
|
||||||
/*! Loads the 3D scene and returns a pointer to the scene root node */
|
/*! Loads the 3D scene and returns a pointer to the scene root node */
|
||||||
NodeGroup * Load();
|
NodeGroup *Load();
|
||||||
|
|
||||||
/*! Gets the number of read faces */
|
/*! Gets the number of read faces */
|
||||||
inline unsigned int numFacesRead() {return _numFacesRead;}
|
inline unsigned int numFacesRead() {return _numFacesRead;}
|
||||||
|
@@ -290,8 +290,9 @@ public:
|
|||||||
* Returns the first intersection (occluder,t,u,v) or null.
|
* Returns the first intersection (occluder,t,u,v) or null.
|
||||||
* Starts with a call to InitRay.
|
* Starts with a call to InitRay.
|
||||||
*/
|
*/
|
||||||
Polygon3r * castRayToFindFirstIntersection(const Vec3r& orig, const Vec3r& dir, double& t,
|
Polygon3r *castRayToFindFirstIntersection(
|
||||||
double& u, double& v, unsigned timestamp);
|
const Vec3r& orig, const Vec3r& dir, double& t,
|
||||||
|
double& u, double& v, unsigned timestamp);
|
||||||
|
|
||||||
|
|
||||||
/*! Init all structures and values for computing the cells intersected by this new ray */
|
/*! Init all structures and values for computing the cells intersected by this new ray */
|
||||||
|
@@ -72,7 +72,7 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
public:
|
public:
|
||||||
void * userdata; // FIXME
|
void *userdata; // FIXME
|
||||||
|
|
||||||
Edge *EdgeA; // first segment
|
Edge *EdgeA; // first segment
|
||||||
Edge *EdgeB; // second segment
|
Edge *EdgeB; // second segment
|
||||||
|
@@ -61,7 +61,7 @@ ImagePyramid::~ImagePyramid()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
GrayImage * ImagePyramid::getLevel(int l)
|
GrayImage *ImagePyramid::getLevel(int l)
|
||||||
{
|
{
|
||||||
return _levels[l];
|
return _levels[l];
|
||||||
}
|
}
|
||||||
|
@@ -98,53 +98,53 @@ extern "C" {
|
|||||||
// C++ => Python
|
// C++ => Python
|
||||||
//==============================
|
//==============================
|
||||||
|
|
||||||
PyObject * PyBool_from_bool(bool b);
|
PyObject *PyBool_from_bool(bool b);
|
||||||
PyObject * Vector_from_Vec2f(Vec2f& v);
|
PyObject *Vector_from_Vec2f(Vec2f& v);
|
||||||
PyObject * Vector_from_Vec3f(Vec3f& v);
|
PyObject *Vector_from_Vec3f(Vec3f& v);
|
||||||
PyObject * Vector_from_Vec3r(Vec3r& v);
|
PyObject *Vector_from_Vec3r(Vec3r& v);
|
||||||
|
|
||||||
PyObject * Any_BPy_Interface0D_from_Interface0D(Interface0D& if0D);
|
PyObject *Any_BPy_Interface0D_from_Interface0D(Interface0D& if0D);
|
||||||
PyObject * Any_BPy_Interface1D_from_Interface1D(Interface1D& if1D);
|
PyObject *Any_BPy_Interface1D_from_Interface1D(Interface1D& if1D);
|
||||||
PyObject * Any_BPy_FEdge_from_FEdge(FEdge& fe);
|
PyObject *Any_BPy_FEdge_from_FEdge(FEdge& fe);
|
||||||
PyObject * Any_BPy_ViewVertex_from_ViewVertex(ViewVertex& vv);
|
PyObject *Any_BPy_ViewVertex_from_ViewVertex(ViewVertex& vv);
|
||||||
|
|
||||||
PyObject * BPy_BBox_from_BBox(const BBox< Vec3r > &bb);
|
PyObject *BPy_BBox_from_BBox(const BBox< Vec3r > &bb);
|
||||||
PyObject * BPy_CurvePoint_from_CurvePoint(CurvePoint& cp);
|
PyObject *BPy_CurvePoint_from_CurvePoint(CurvePoint& cp);
|
||||||
PyObject * BPy_directedViewEdge_from_directedViewEdge(ViewVertex::directedViewEdge& dve);
|
PyObject *BPy_directedViewEdge_from_directedViewEdge(ViewVertex::directedViewEdge& dve);
|
||||||
PyObject * BPy_FEdge_from_FEdge(FEdge& fe);
|
PyObject *BPy_FEdge_from_FEdge(FEdge& fe);
|
||||||
PyObject * BPy_FEdgeSharp_from_FEdgeSharp(FEdgeSharp& fes);
|
PyObject *BPy_FEdgeSharp_from_FEdgeSharp(FEdgeSharp& fes);
|
||||||
PyObject * BPy_FEdgeSmooth_from_FEdgeSmooth(FEdgeSmooth& fes);
|
PyObject *BPy_FEdgeSmooth_from_FEdgeSmooth(FEdgeSmooth& fes);
|
||||||
PyObject * BPy_Id_from_Id(Id& id);
|
PyObject *BPy_Id_from_Id(Id& id);
|
||||||
PyObject * BPy_Interface0D_from_Interface0D(Interface0D& if0D);
|
PyObject *BPy_Interface0D_from_Interface0D(Interface0D& if0D);
|
||||||
PyObject * BPy_Interface1D_from_Interface1D(Interface1D& if1D);
|
PyObject *BPy_Interface1D_from_Interface1D(Interface1D& if1D);
|
||||||
PyObject * BPy_IntegrationType_from_IntegrationType(IntegrationType i);
|
PyObject *BPy_IntegrationType_from_IntegrationType(IntegrationType i);
|
||||||
PyObject * BPy_FrsMaterial_from_FrsMaterial(const FrsMaterial& m);
|
PyObject *BPy_FrsMaterial_from_FrsMaterial(const FrsMaterial& m);
|
||||||
PyObject * BPy_Nature_from_Nature(unsigned short n);
|
PyObject *BPy_Nature_from_Nature(unsigned short n);
|
||||||
PyObject * BPy_MediumType_from_MediumType(Stroke::MediumType n);
|
PyObject *BPy_MediumType_from_MediumType(Stroke::MediumType n);
|
||||||
PyObject * BPy_SShape_from_SShape(SShape& ss);
|
PyObject *BPy_SShape_from_SShape(SShape& ss);
|
||||||
PyObject * BPy_Stroke_from_Stroke(Stroke& s);
|
PyObject *BPy_Stroke_from_Stroke(Stroke& s);
|
||||||
PyObject * BPy_StrokeAttribute_from_StrokeAttribute(StrokeAttribute& sa);
|
PyObject *BPy_StrokeAttribute_from_StrokeAttribute(StrokeAttribute& sa);
|
||||||
PyObject * BPy_StrokeVertex_from_StrokeVertex(StrokeVertex& sv);
|
PyObject *BPy_StrokeVertex_from_StrokeVertex(StrokeVertex& sv);
|
||||||
PyObject * BPy_SVertex_from_SVertex(SVertex& sv);
|
PyObject *BPy_SVertex_from_SVertex(SVertex& sv);
|
||||||
PyObject * BPy_ViewVertex_from_ViewVertex(ViewVertex& vv);
|
PyObject *BPy_ViewVertex_from_ViewVertex(ViewVertex& vv);
|
||||||
PyObject * BPy_NonTVertex_from_NonTVertex(NonTVertex& ntv);
|
PyObject *BPy_NonTVertex_from_NonTVertex(NonTVertex& ntv);
|
||||||
PyObject * BPy_TVertex_from_TVertex(TVertex& tv);
|
PyObject *BPy_TVertex_from_TVertex(TVertex& tv);
|
||||||
PyObject * BPy_ViewEdge_from_ViewEdge(ViewEdge& ve);
|
PyObject *BPy_ViewEdge_from_ViewEdge(ViewEdge& ve);
|
||||||
PyObject * BPy_Chain_from_Chain(Chain& c);
|
PyObject *BPy_Chain_from_Chain(Chain& c);
|
||||||
PyObject * BPy_ViewShape_from_ViewShape(ViewShape& vs);
|
PyObject *BPy_ViewShape_from_ViewShape(ViewShape& vs);
|
||||||
|
|
||||||
PyObject * BPy_AdjacencyIterator_from_AdjacencyIterator(AdjacencyIterator& a_it);
|
PyObject *BPy_AdjacencyIterator_from_AdjacencyIterator(AdjacencyIterator& a_it);
|
||||||
PyObject * BPy_Interface0DIterator_from_Interface0DIterator(Interface0DIterator& if0D_it, bool reversed);
|
PyObject *BPy_Interface0DIterator_from_Interface0DIterator(Interface0DIterator& if0D_it, bool reversed);
|
||||||
PyObject * BPy_CurvePointIterator_from_CurvePointIterator(CurveInternal::CurvePointIterator& cp_it);
|
PyObject *BPy_CurvePointIterator_from_CurvePointIterator(CurveInternal::CurvePointIterator& cp_it);
|
||||||
PyObject * BPy_StrokeVertexIterator_from_StrokeVertexIterator(StrokeInternal::StrokeVertexIterator& sv_it,
|
PyObject *BPy_StrokeVertexIterator_from_StrokeVertexIterator(StrokeInternal::StrokeVertexIterator& sv_it,
|
||||||
bool reversed);
|
bool reversed);
|
||||||
PyObject * BPy_SVertexIterator_from_SVertexIterator(ViewEdgeInternal::SVertexIterator& sv_it);
|
PyObject *BPy_SVertexIterator_from_SVertexIterator(ViewEdgeInternal::SVertexIterator& sv_it);
|
||||||
PyObject * BPy_orientedViewEdgeIterator_from_orientedViewEdgeIterator(ViewVertexInternal::orientedViewEdgeIterator& ove_it,
|
PyObject *BPy_orientedViewEdgeIterator_from_orientedViewEdgeIterator(ViewVertexInternal::orientedViewEdgeIterator& ove_it,
|
||||||
bool reversed);
|
bool reversed);
|
||||||
PyObject * BPy_ViewEdgeIterator_from_ViewEdgeIterator(ViewEdgeInternal::ViewEdgeIterator& ve_it);
|
PyObject *BPy_ViewEdgeIterator_from_ViewEdgeIterator(ViewEdgeInternal::ViewEdgeIterator& ve_it);
|
||||||
PyObject * BPy_ChainingIterator_from_ChainingIterator(ChainingIterator& c_it);
|
PyObject *BPy_ChainingIterator_from_ChainingIterator(ChainingIterator& c_it);
|
||||||
PyObject * BPy_ChainPredicateIterator_from_ChainPredicateIterator(ChainPredicateIterator& cp_it);
|
PyObject *BPy_ChainPredicateIterator_from_ChainPredicateIterator(ChainPredicateIterator& cp_it);
|
||||||
PyObject * BPy_ChainSilhouetteIterator_from_ChainSilhouetteIterator(ChainSilhouetteIterator& cs_it);
|
PyObject *BPy_ChainSilhouetteIterator_from_ChainSilhouetteIterator(ChainSilhouetteIterator& cs_it);
|
||||||
|
|
||||||
//==============================
|
//==============================
|
||||||
// Python => C++
|
// Python => C++
|
||||||
|
@@ -63,7 +63,7 @@ PyDoc_STRVAR(Integrator_integrate_doc,
|
|||||||
" :class:`UnaryFunction0DUnsigned` type.\n"
|
" :class:`UnaryFunction0DUnsigned` type.\n"
|
||||||
" :rtype: int or float");
|
" :rtype: int or float");
|
||||||
|
|
||||||
static PyObject * Integrator_integrate(PyObject * /*self*/, PyObject *args, PyObject *kwds)
|
static PyObject *Integrator_integrate(PyObject * /*self*/, PyObject *args, PyObject *kwds)
|
||||||
{
|
{
|
||||||
static const char *kwlist[] = {"func", "it", "it_end", "integration_type", NULL};
|
static const char *kwlist[] = {"func", "it", "it_end", "integration_type", NULL};
|
||||||
PyObject *obj1, *obj4 = 0;
|
PyObject *obj1, *obj4 = 0;
|
||||||
|
@@ -138,7 +138,7 @@ PyDoc_STRVAR(Interface1D_vertices_begin_doc,
|
|||||||
" :return: An Interface0DIterator pointing to the first vertex.\n"
|
" :return: An Interface0DIterator pointing to the first vertex.\n"
|
||||||
" :rtype: :class:`Interface0DIterator`");
|
" :rtype: :class:`Interface0DIterator`");
|
||||||
|
|
||||||
static PyObject * Interface1D_vertices_begin(BPy_Interface1D *self)
|
static PyObject *Interface1D_vertices_begin(BPy_Interface1D *self)
|
||||||
{
|
{
|
||||||
Interface0DIterator if0D_it(self->if1D->verticesBegin());
|
Interface0DIterator if0D_it(self->if1D->verticesBegin());
|
||||||
return BPy_Interface0DIterator_from_Interface0DIterator(if0D_it, false);
|
return BPy_Interface0DIterator_from_Interface0DIterator(if0D_it, false);
|
||||||
@@ -153,7 +153,7 @@ PyDoc_STRVAR(Interface1D_vertices_end_doc,
|
|||||||
" :return: An Interface0DIterator pointing after the last vertex.\n"
|
" :return: An Interface0DIterator pointing after the last vertex.\n"
|
||||||
" :rtype: :class:`Interface0DIterator`");
|
" :rtype: :class:`Interface0DIterator`");
|
||||||
|
|
||||||
static PyObject * Interface1D_vertices_end(BPy_Interface1D *self)
|
static PyObject *Interface1D_vertices_end(BPy_Interface1D *self)
|
||||||
{
|
{
|
||||||
Interface0DIterator if0D_it(self->if1D->verticesEnd());
|
Interface0DIterator if0D_it(self->if1D->verticesEnd());
|
||||||
return BPy_Interface0DIterator_from_Interface0DIterator(if0D_it, true);
|
return BPy_Interface0DIterator_from_Interface0DIterator(if0D_it, true);
|
||||||
@@ -173,7 +173,7 @@ PyDoc_STRVAR(Interface1D_points_begin_doc,
|
|||||||
" :return: An Interface0DIterator pointing to the first point.\n"
|
" :return: An Interface0DIterator pointing to the first point.\n"
|
||||||
" :rtype: :class:`Interface0DIterator`");
|
" :rtype: :class:`Interface0DIterator`");
|
||||||
|
|
||||||
static PyObject * Interface1D_points_begin(BPy_Interface1D *self, PyObject *args, PyObject *kwds)
|
static PyObject *Interface1D_points_begin(BPy_Interface1D *self, PyObject *args, PyObject *kwds)
|
||||||
{
|
{
|
||||||
static const char *kwlist[] = {"t", NULL};
|
static const char *kwlist[] = {"t", NULL};
|
||||||
float f = 0.0f;
|
float f = 0.0f;
|
||||||
@@ -198,7 +198,7 @@ PyDoc_STRVAR(Interface1D_points_end_doc,
|
|||||||
" :return: An Interface0DIterator pointing after the last point.\n"
|
" :return: An Interface0DIterator pointing after the last point.\n"
|
||||||
" :rtype: :class:`Interface0DIterator`");
|
" :rtype: :class:`Interface0DIterator`");
|
||||||
|
|
||||||
static PyObject * Interface1D_points_end(BPy_Interface1D *self, PyObject *args, PyObject *kwds)
|
static PyObject *Interface1D_points_end(BPy_Interface1D *self, PyObject *args, PyObject *kwds)
|
||||||
{
|
{
|
||||||
static const char *kwlist[] = {"t", NULL};
|
static const char *kwlist[] = {"t", NULL};
|
||||||
float f = 0.0f;
|
float f = 0.0f;
|
||||||
|
@@ -122,7 +122,7 @@ PyDoc_STRVAR(SShape_add_vertex_doc,
|
|||||||
" :arg vertex: An SVertex object.\n"
|
" :arg vertex: An SVertex object.\n"
|
||||||
" :type vertex: :class:`SVertex`");
|
" :type vertex: :class:`SVertex`");
|
||||||
|
|
||||||
static PyObject * SShape_add_vertex(BPy_SShape *self, PyObject *args, PyObject *kwds)
|
static PyObject *SShape_add_vertex(BPy_SShape *self, PyObject *args, PyObject *kwds)
|
||||||
{
|
{
|
||||||
static const char *kwlist[] = {"edge", NULL};
|
static const char *kwlist[] = {"edge", NULL};
|
||||||
PyObject *py_sv = 0;
|
PyObject *py_sv = 0;
|
||||||
|
@@ -135,7 +135,7 @@ static void StrokeAttribute_dealloc(BPy_StrokeAttribute *self)
|
|||||||
Py_TYPE(self)->tp_free((PyObject *)self);
|
Py_TYPE(self)->tp_free((PyObject *)self);
|
||||||
}
|
}
|
||||||
|
|
||||||
static PyObject * StrokeAttribute_repr(BPy_StrokeAttribute *self)
|
static PyObject *StrokeAttribute_repr(BPy_StrokeAttribute *self)
|
||||||
{
|
{
|
||||||
stringstream repr("StrokeAttribute:");
|
stringstream repr("StrokeAttribute:");
|
||||||
repr << " r: " << self->sa->getColorR() << " g: " << self->sa->getColorG() << " b: " << self->sa->getColorB() <<
|
repr << " r: " << self->sa->getColorR() << " g: " << self->sa->getColorG() << " b: " << self->sa->getColorB() <<
|
||||||
@@ -282,7 +282,7 @@ PyDoc_STRVAR(StrokeAttribute_set_attribute_real_doc,
|
|||||||
" :arg value: The attribute value.\n"
|
" :arg value: The attribute value.\n"
|
||||||
" :type value: float\n");
|
" :type value: float\n");
|
||||||
|
|
||||||
static PyObject * StrokeAttribute_set_attribute_real(BPy_StrokeAttribute *self, PyObject *args, PyObject *kwds)
|
static PyObject *StrokeAttribute_set_attribute_real(BPy_StrokeAttribute *self, PyObject *args, PyObject *kwds)
|
||||||
{
|
{
|
||||||
static const char *kwlist[] = {"name", "value", NULL};
|
static const char *kwlist[] = {"name", "value", NULL};
|
||||||
char *s = 0;
|
char *s = 0;
|
||||||
@@ -306,7 +306,7 @@ PyDoc_STRVAR(StrokeAttribute_set_attribute_vec2_doc,
|
|||||||
" :arg value: The attribute value.\n"
|
" :arg value: The attribute value.\n"
|
||||||
" :type value: :class:`mathutils.Vector`, list or tuple of 2 real numbers\n");
|
" :type value: :class:`mathutils.Vector`, list or tuple of 2 real numbers\n");
|
||||||
|
|
||||||
static PyObject * StrokeAttribute_set_attribute_vec2(BPy_StrokeAttribute *self, PyObject *args, PyObject *kwds)
|
static PyObject *StrokeAttribute_set_attribute_vec2(BPy_StrokeAttribute *self, PyObject *args, PyObject *kwds)
|
||||||
{
|
{
|
||||||
static const char *kwlist[] = {"name", "value", NULL};
|
static const char *kwlist[] = {"name", "value", NULL};
|
||||||
char *s;
|
char *s;
|
||||||
@@ -335,7 +335,7 @@ PyDoc_STRVAR(StrokeAttribute_set_attribute_vec3_doc,
|
|||||||
" :arg value: The attribute value.\n"
|
" :arg value: The attribute value.\n"
|
||||||
" :type value: :class:`mathutils.Vector`, list or tuple of 3 real numbers\n");
|
" :type value: :class:`mathutils.Vector`, list or tuple of 3 real numbers\n");
|
||||||
|
|
||||||
static PyObject * StrokeAttribute_set_attribute_vec3(BPy_StrokeAttribute *self, PyObject *args, PyObject *kwds)
|
static PyObject *StrokeAttribute_set_attribute_vec3(BPy_StrokeAttribute *self, PyObject *args, PyObject *kwds)
|
||||||
{
|
{
|
||||||
static const char *kwlist[] = {"name", "value", NULL};
|
static const char *kwlist[] = {"name", "value", NULL};
|
||||||
char *s;
|
char *s;
|
||||||
|
@@ -68,12 +68,12 @@ public:
|
|||||||
/*! Matrix is copied */
|
/*! Matrix is copied */
|
||||||
void setProjectionMatrix(double projection_matrix[16]);
|
void setProjectionMatrix(double projection_matrix[16]);
|
||||||
|
|
||||||
double * modelViewMatrix()
|
double *modelViewMatrix()
|
||||||
{
|
{
|
||||||
return modelview_matrix_;
|
return modelview_matrix_;
|
||||||
}
|
}
|
||||||
|
|
||||||
double * projectionMatrix()
|
double *projectionMatrix()
|
||||||
{
|
{
|
||||||
return projection_matrix_;
|
return projection_matrix_;
|
||||||
}
|
}
|
||||||
|
@@ -78,7 +78,7 @@ Geometry::Vec2r Interface0D::getPoint2D() const
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
FEdge * Interface0D::getFEdge(Interface0D&)
|
FEdge *Interface0D::getFEdge(Interface0D&)
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_TypeError, "method getFEdge() not properly overridden");
|
PyErr_SetString(PyExc_TypeError, "method getFEdge() not properly overridden");
|
||||||
return 0;
|
return 0;
|
||||||
@@ -96,25 +96,25 @@ Nature::VertexNature Interface0D::getNature() const
|
|||||||
return Nature::POINT;
|
return Nature::POINT;
|
||||||
}
|
}
|
||||||
|
|
||||||
SVertex * Interface0D::castToSVertex()
|
SVertex *Interface0D::castToSVertex()
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_TypeError, "method castToSVertex() not properly overridden");
|
PyErr_SetString(PyExc_TypeError, "method castToSVertex() not properly overridden");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
ViewVertex * Interface0D::castToViewVertex()
|
ViewVertex *Interface0D::castToViewVertex()
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_TypeError, "method castToViewVertex() not properly overridden");
|
PyErr_SetString(PyExc_TypeError, "method castToViewVertex() not properly overridden");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
NonTVertex * Interface0D::castToNonTVertex()
|
NonTVertex *Interface0D::castToNonTVertex()
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_TypeError, "method castToNonTVertex() not properly overridden");
|
PyErr_SetString(PyExc_TypeError, "method castToNonTVertex() not properly overridden");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
TVertex * Interface0D::castToTVertex()
|
TVertex *Interface0D::castToTVertex()
|
||||||
{
|
{
|
||||||
PyErr_SetString(PyExc_TypeError, "method castToTVertex() not properly overridden");
|
PyErr_SetString(PyExc_TypeError, "method castToTVertex() not properly overridden");
|
||||||
return 0;
|
return 0;
|
||||||
|
@@ -430,7 +430,7 @@ void AlphaBlockDXT5::decodeBlock(ColorBlock *block) const
|
|||||||
|
|
||||||
void AlphaBlockDXT5::flip4()
|
void AlphaBlockDXT5::flip4()
|
||||||
{
|
{
|
||||||
uint64 * b = (uint64 *)this;
|
uint64 *b = (uint64 *)this;
|
||||||
|
|
||||||
// @@ The masks might have to be byte swapped.
|
// @@ The masks might have to be byte swapped.
|
||||||
uint64 tmp = (*b & (uint64)(0x000000000000FFFFLL));
|
uint64 tmp = (*b & (uint64)(0x000000000000FFFFLL));
|
||||||
@@ -444,7 +444,7 @@ void AlphaBlockDXT5::flip4()
|
|||||||
|
|
||||||
void AlphaBlockDXT5::flip2()
|
void AlphaBlockDXT5::flip2()
|
||||||
{
|
{
|
||||||
uint * b = (uint *)this;
|
uint *b = (uint *)this;
|
||||||
|
|
||||||
// @@ The masks might have to be byte swapped.
|
// @@ The masks might have to be byte swapped.
|
||||||
uint tmp = (*b & 0xFF000000);
|
uint tmp = (*b & 0xFF000000);
|
||||||
|
@@ -45,9 +45,9 @@ struct ColorBlock {
|
|||||||
ColorBlock();
|
ColorBlock();
|
||||||
ColorBlock(const uint * linearImage);
|
ColorBlock(const uint * linearImage);
|
||||||
ColorBlock(const ColorBlock & block);
|
ColorBlock(const ColorBlock & block);
|
||||||
ColorBlock(const Image * img, uint x, uint y);
|
ColorBlock(const Image *img, uint x, uint y);
|
||||||
|
|
||||||
void init(const Image * img, uint x, uint y);
|
void init(const Image *img, uint x, uint y);
|
||||||
void init(uint w, uint h, const uint * data, uint x, uint y);
|
void init(uint w, uint h, const uint * data, uint x, uint y);
|
||||||
void init(uint w, uint h, const float * data, uint x, uint y);
|
void init(uint w, uint h, const float * data, uint x, uint y);
|
||||||
|
|
||||||
|
@@ -82,7 +82,7 @@ const Color32 * Image::scanline(uint h) const
|
|||||||
return m_data + h * m_width;
|
return m_data + h * m_width;
|
||||||
}
|
}
|
||||||
|
|
||||||
Color32 * Image::scanline(uint h)
|
Color32 *Image::scanline(uint h)
|
||||||
{
|
{
|
||||||
if (h >= m_height) {
|
if (h >= m_height) {
|
||||||
printf("DDS: scanline beyond dimensions of image\n");
|
printf("DDS: scanline beyond dimensions of image\n");
|
||||||
@@ -91,12 +91,12 @@ Color32 * Image::scanline(uint h)
|
|||||||
return m_data + h * m_width;
|
return m_data + h * m_width;
|
||||||
}
|
}
|
||||||
|
|
||||||
const Color32 * Image::pixels() const
|
const Color32 *Image::pixels() const
|
||||||
{
|
{
|
||||||
return m_data;
|
return m_data;
|
||||||
}
|
}
|
||||||
|
|
||||||
Color32 * Image::pixels()
|
Color32 *Image::pixels()
|
||||||
{
|
{
|
||||||
return m_data;
|
return m_data;
|
||||||
}
|
}
|
||||||
|
@@ -65,11 +65,11 @@ public:
|
|||||||
uint width() const;
|
uint width() const;
|
||||||
uint height() const;
|
uint height() const;
|
||||||
|
|
||||||
const Color32 * scanline(uint h) const;
|
const Color32 *scanline(uint h) const;
|
||||||
Color32 * scanline(uint h);
|
Color32 *scanline(uint h);
|
||||||
|
|
||||||
const Color32 * pixels() const;
|
const Color32 *pixels() const;
|
||||||
Color32 * pixels();
|
Color32 *pixels();
|
||||||
|
|
||||||
const Color32 & pixel(uint idx) const;
|
const Color32 & pixel(uint idx) const;
|
||||||
Color32 & pixel(uint idx);
|
Color32 & pixel(uint idx);
|
||||||
@@ -87,7 +87,7 @@ private:
|
|||||||
uint m_width;
|
uint m_width;
|
||||||
uint m_height;
|
uint m_height;
|
||||||
Format m_format;
|
Format m_format;
|
||||||
Color32 * m_data;
|
Color32 *m_data;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@@ -433,7 +433,7 @@ static struct ID *rna_ID_make_local(struct ID *self, Main *bmain, bool clear_pro
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static AnimData * rna_ID_animation_data_create(ID *id, Main *bmain)
|
static AnimData *rna_ID_animation_data_create(ID *id, Main *bmain)
|
||||||
{
|
{
|
||||||
AnimData *adt = BKE_animdata_add_id(id);
|
AnimData *adt = BKE_animdata_add_id(id);
|
||||||
DEG_relations_tag_update(bmain);
|
DEG_relations_tag_update(bmain);
|
||||||
|
@@ -7075,7 +7075,7 @@ int RNA_function_call_direct_va(bContext *C, ReportList *reports, PointerRNA *pt
|
|||||||
case PROP_COLLECTION:
|
case PROP_COLLECTION:
|
||||||
{
|
{
|
||||||
StructRNA *srna = va_arg(args, StructRNA *);
|
StructRNA *srna = va_arg(args, StructRNA *);
|
||||||
ListBase **arg = va_arg(args, ListBase * *);
|
ListBase **arg = va_arg(args, ListBase **);
|
||||||
err = rna_function_parameter_parse(&funcptr, parm, type, ftype, len, arg, retdata,
|
err = rna_function_parameter_parse(&funcptr, parm, type, ftype, len, arg, retdata,
|
||||||
srna, tid, fid, pid);
|
srna, tid, fid, pid);
|
||||||
break;
|
break;
|
||||||
|
@@ -30,19 +30,19 @@
|
|||||||
#include "BLI_sys_types.h"
|
#include "BLI_sys_types.h"
|
||||||
#include "BLI_utildefines_variadic.h"
|
#include "BLI_utildefines_variadic.h"
|
||||||
|
|
||||||
void PyC_ObSpit(const char *name, PyObject *var);
|
void PyC_ObSpit(const char *name, PyObject *var);
|
||||||
void PyC_ObSpitStr(char *result, size_t result_len, PyObject *var);
|
void PyC_ObSpitStr(char *result, size_t result_len, PyObject *var);
|
||||||
void PyC_LineSpit(void);
|
void PyC_LineSpit(void);
|
||||||
void PyC_StackSpit(void);
|
void PyC_StackSpit(void);
|
||||||
PyObject * PyC_ExceptionBuffer(void);
|
PyObject *PyC_ExceptionBuffer(void);
|
||||||
PyObject * PyC_ExceptionBuffer_Simple(void);
|
PyObject *PyC_ExceptionBuffer_Simple(void);
|
||||||
PyObject * PyC_Object_GetAttrStringArgs(PyObject *o, Py_ssize_t n, ...);
|
PyObject *PyC_Object_GetAttrStringArgs(PyObject *o, Py_ssize_t n, ...);
|
||||||
PyObject * PyC_FrozenSetFromStrings(const char **strings);
|
PyObject *PyC_FrozenSetFromStrings(const char **strings);
|
||||||
PyObject * PyC_Err_Format_Prefix(PyObject *exception_type_prefix, const char *format, ...);
|
PyObject *PyC_Err_Format_Prefix(PyObject *exception_type_prefix, const char *format, ...);
|
||||||
void PyC_Err_PrintWithFunc(PyObject *py_func);
|
void PyC_Err_PrintWithFunc(PyObject *py_func);
|
||||||
|
|
||||||
void PyC_FileAndNum(const char **filename, int *lineno);
|
void PyC_FileAndNum(const char **filename, int *lineno);
|
||||||
void PyC_FileAndNum_Safe(const char **filename, int *lineno); /* checks python is running */
|
void PyC_FileAndNum_Safe(const char **filename, int *lineno); /* checks python is running */
|
||||||
int PyC_AsArray_FAST(
|
int PyC_AsArray_FAST(
|
||||||
void *array, PyObject *value_fast, const Py_ssize_t length,
|
void *array, PyObject *value_fast, const Py_ssize_t length,
|
||||||
const PyTypeObject *type, const bool is_double, const char *error_prefix);
|
const PyTypeObject *type, const bool is_double, const char *error_prefix);
|
||||||
@@ -71,10 +71,10 @@ void PyC_Tuple_Fill(PyObject *tuple, PyObject *value);
|
|||||||
void PyC_List_Fill(PyObject *list, PyObject *value);
|
void PyC_List_Fill(PyObject *list, PyObject *value);
|
||||||
|
|
||||||
/* follow http://www.python.org/dev/peps/pep-0383/ */
|
/* follow http://www.python.org/dev/peps/pep-0383/ */
|
||||||
PyObject * PyC_UnicodeFromByte(const char *str);
|
PyObject *PyC_UnicodeFromByte(const char *str);
|
||||||
PyObject * PyC_UnicodeFromByteAndSize(const char *str, Py_ssize_t size);
|
PyObject *PyC_UnicodeFromByteAndSize(const char *str, Py_ssize_t size);
|
||||||
const char * PyC_UnicodeAsByte(PyObject *py_str, PyObject **coerce); /* coerce must be NULL */
|
const char *PyC_UnicodeAsByte(PyObject *py_str, PyObject **coerce); /* coerce must be NULL */
|
||||||
const char * PyC_UnicodeAsByteAndSize(PyObject *py_str, Py_ssize_t *size, PyObject **coerce);
|
const char *PyC_UnicodeAsByteAndSize(PyObject *py_str, Py_ssize_t *size, PyObject **coerce);
|
||||||
|
|
||||||
/* name namespace function for bpy */
|
/* name namespace function for bpy */
|
||||||
PyObject *PyC_DefaultNameSpace(const char *filename);
|
PyObject *PyC_DefaultNameSpace(const char *filename);
|
||||||
|
Reference in New Issue
Block a user