Merge branch 'master' into blender2.8
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Contributor(s): Blender Foundation
|
* Contributor(s): Blender Foundation
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
@@ -124,7 +124,7 @@ void BLF_boundbox_ex(int fontid, const char *str, size_t len, struct rctf *box,
|
|||||||
void BLF_boundbox(int fontid, const char *str, size_t len, struct rctf *box) ATTR_NONNULL();
|
void BLF_boundbox(int fontid, const char *str, size_t len, struct rctf *box) ATTR_NONNULL();
|
||||||
|
|
||||||
/* The next both function return the width and height
|
/* The next both function return the width and height
|
||||||
* of the string, using the current font and both value
|
* of the string, using the current font and both value
|
||||||
* are multiplied by the aspect of the font.
|
* are multiplied by the aspect of the font.
|
||||||
*/
|
*/
|
||||||
float BLF_width_ex(int fontid, const char *str, size_t len, struct ResultBLF *r_info) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(2);
|
float BLF_width_ex(int fontid, const char *str, size_t len, struct ResultBLF *r_info) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(2);
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
*
|
*
|
||||||
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Contributor(s): Blender Foundation.
|
* Contributor(s): Blender Foundation.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Contributor(s): Blender Foundation
|
* Contributor(s): Blender Foundation
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Contributor(s): Blender Foundation
|
* Contributor(s): Blender Foundation
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
*
|
*
|
||||||
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Contributor(s): Blender Foundation.
|
* Contributor(s): Blender Foundation.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
*
|
*
|
||||||
* The Original Code is Copyright (C) 2008 Blender Foundation.
|
* The Original Code is Copyright (C) 2008 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Contributor(s): Blender Foundation.
|
* Contributor(s): Blender Foundation.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
* The Original Code is Copyright (C) 2009 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Contributor(s): Blender Foundation
|
* Contributor(s): Blender Foundation
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -38,18 +38,18 @@
|
|||||||
* There are three main mesh data structures in Blender:
|
* There are three main mesh data structures in Blender:
|
||||||
* #Mesh, #CDDerivedMesh and #BMesh.
|
* #Mesh, #CDDerivedMesh and #BMesh.
|
||||||
*
|
*
|
||||||
* These, and a few others, all implement DerivedMesh interfaces,
|
* These, and a few others, all implement DerivedMesh interfaces,
|
||||||
* which contains unified drawing interfaces, a few utility interfaces,
|
* which contains unified drawing interfaces, a few utility interfaces,
|
||||||
* and a bunch of read-only interfaces intended mostly for conversion from
|
* and a bunch of read-only interfaces intended mostly for conversion from
|
||||||
* one format to another.
|
* one format to another.
|
||||||
*
|
*
|
||||||
* All Mesh structures in blender make use of CustomData, which is used to store
|
* All Mesh structures in blender make use of CustomData, which is used to store
|
||||||
* per-element attributes and interpolate them (e.g. uvs, vcols, vgroups, etc).
|
* per-element attributes and interpolate them (e.g. uvs, vcols, vgroups, etc).
|
||||||
*
|
*
|
||||||
* Mesh is the "serialized" structure, used for storing object-mode mesh data
|
* Mesh is the "serialized" structure, used for storing object-mode mesh data
|
||||||
* and also for saving stuff to disk. It's interfaces are also what DerivedMesh
|
* and also for saving stuff to disk. It's interfaces are also what DerivedMesh
|
||||||
* uses to communicate with.
|
* uses to communicate with.
|
||||||
*
|
*
|
||||||
* CDDM is a little mesh library, that uses Mesh data structures in the backend.
|
* CDDM is a little mesh library, that uses Mesh data structures in the backend.
|
||||||
* It's mostly used for modifiers, and has the advantages of not taking much
|
* It's mostly used for modifiers, and has the advantages of not taking much
|
||||||
* resources.
|
* resources.
|
||||||
|
@@ -185,9 +185,9 @@ bool BKE_animsys_execute_fcurve(struct PointerRNA *ptr, struct AnimMapper *remap
|
|||||||
|
|
||||||
/* ------------ Specialized API --------------- */
|
/* ------------ Specialized API --------------- */
|
||||||
/* There are a few special tools which require these following functions. They are NOT to be used
|
/* There are a few special tools which require these following functions. They are NOT to be used
|
||||||
* for standard animation evaluation UNDER ANY CIRCUMSTANCES!
|
* for standard animation evaluation UNDER ANY CIRCUMSTANCES!
|
||||||
*
|
*
|
||||||
* i.e. Pose Library (PoseLib) uses some of these for selectively applying poses, but
|
* i.e. Pose Library (PoseLib) uses some of these for selectively applying poses, but
|
||||||
* Particles/Sequencer performing funky time manipulation is not ok.
|
* Particles/Sequencer performing funky time manipulation is not ok.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
* Contributor(s): none yet.
|
* Contributor(s): none yet.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __BKE_MULTIRES_H__
|
#ifndef __BKE_MULTIRES_H__
|
||||||
#define __BKE_MULTIRES_H__
|
#define __BKE_MULTIRES_H__
|
||||||
|
@@ -87,7 +87,7 @@ struct bNodeInstanceHash;
|
|||||||
|
|
||||||
/** Compact definition of a node socket.
|
/** Compact definition of a node socket.
|
||||||
* Can be used to quickly define a list of static sockets for a node,
|
* Can be used to quickly define a list of static sockets for a node,
|
||||||
* which are added to each new node of that type.
|
* which are added to each new node of that type.
|
||||||
*
|
*
|
||||||
* \deprecated This struct is used by C nodes to define templates as simple
|
* \deprecated This struct is used by C nodes to define templates as simple
|
||||||
* static struct lists. These are converted to the new template collections
|
* static struct lists. These are converted to the new template collections
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
* Contributor(s): none yet.
|
* Contributor(s): none yet.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __BKE_PAINT_H__
|
#ifndef __BKE_PAINT_H__
|
||||||
#define __BKE_PAINT_H__
|
#define __BKE_PAINT_H__
|
||||||
|
@@ -265,7 +265,7 @@ bActionGroup *action_groups_add_new(bAction *act, const char name[])
|
|||||||
|
|
||||||
/* Add given channel into (active) group
|
/* Add given channel into (active) group
|
||||||
* - assumes that channel is not linked to anything anymore
|
* - assumes that channel is not linked to anything anymore
|
||||||
* - always adds at the end of the group
|
* - always adds at the end of the group
|
||||||
*/
|
*/
|
||||||
void action_groups_add_channel(bAction *act, bActionGroup *agrp, FCurve *fcurve)
|
void action_groups_add_channel(bAction *act, bActionGroup *agrp, FCurve *fcurve)
|
||||||
{
|
{
|
||||||
@@ -914,7 +914,7 @@ void BKE_pose_channel_copy_data(bPoseChannel *pchan, const bPoseChannel *pchan_f
|
|||||||
|
|
||||||
|
|
||||||
/* checks for IK constraint, Spline IK, and also for Follow-Path constraint.
|
/* checks for IK constraint, Spline IK, and also for Follow-Path constraint.
|
||||||
* can do more constraints flags later
|
* can do more constraints flags later
|
||||||
*/
|
*/
|
||||||
/* pose should be entirely OK */
|
/* pose should be entirely OK */
|
||||||
void BKE_pose_update_constraint_flags(bPose *pose)
|
void BKE_pose_update_constraint_flags(bPose *pose)
|
||||||
@@ -1388,7 +1388,7 @@ void BKE_pose_tag_recalc(Main *bmain, bPose *pose)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* For the calculation of the effects of an Action at the given frame on an object
|
/* For the calculation of the effects of an Action at the given frame on an object
|
||||||
* This is currently only used for the Action Constraint
|
* This is currently only used for the Action Constraint
|
||||||
*/
|
*/
|
||||||
void what_does_obaction(Object *ob, Object *workob, bPose *pose, bAction *act, char groupname[], float cframe)
|
void what_does_obaction(Object *ob, Object *workob, bPose *pose, bAction *act, char groupname[], float cframe)
|
||||||
{
|
{
|
||||||
|
@@ -141,7 +141,7 @@ AnimData *BKE_animdata_from_id(ID *id)
|
|||||||
|
|
||||||
/* Add AnimData to the given ID-block. In order for this to work, we assume that
|
/* Add AnimData to the given ID-block. In order for this to work, we assume that
|
||||||
* the AnimData pointer is stored immediately after the given ID-block in the struct,
|
* the AnimData pointer is stored immediately after the given ID-block in the struct,
|
||||||
* as per IdAdtTemplate. Also note that
|
* as per IdAdtTemplate. Also note that
|
||||||
*/
|
*/
|
||||||
AnimData *BKE_animdata_add_id(ID *id)
|
AnimData *BKE_animdata_add_id(ID *id)
|
||||||
{
|
{
|
||||||
@@ -423,8 +423,8 @@ static bool animpath_matches_basepath(const char path[], const char basepath[])
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Move F-Curves in src action to dst action, setting up all the necessary groups
|
/* Move F-Curves in src action to dst action, setting up all the necessary groups
|
||||||
* for this to happen, but only if the F-Curves being moved have the appropriate
|
* for this to happen, but only if the F-Curves being moved have the appropriate
|
||||||
* "base path".
|
* "base path".
|
||||||
* - This is used when data moves from one datablock to another, causing the
|
* - This is used when data moves from one datablock to another, causing the
|
||||||
* F-Curves to need to be moved over too
|
* F-Curves to need to be moved over too
|
||||||
*/
|
*/
|
||||||
@@ -2660,7 +2660,7 @@ static void animsys_evaluate_nla(Depsgraph *depsgraph, ListBase *echannels, Poin
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* NLA Evaluation function (mostly for use through do_animdata)
|
/* NLA Evaluation function (mostly for use through do_animdata)
|
||||||
* - All channels that will be affected are not cleared anymore. Instead, we just evaluate into
|
* - All channels that will be affected are not cleared anymore. Instead, we just evaluate into
|
||||||
* some temp channels, where values can be accumulated in one go.
|
* some temp channels, where values can be accumulated in one go.
|
||||||
*/
|
*/
|
||||||
static void animsys_calculate_nla(Depsgraph *depsgraph, PointerRNA *ptr, AnimData *adt, float ctime)
|
static void animsys_calculate_nla(Depsgraph *depsgraph, PointerRNA *ptr, AnimData *adt, float ctime)
|
||||||
@@ -2714,7 +2714,7 @@ static void animsys_evaluate_overrides(PointerRNA *ptr, AnimData *adt)
|
|||||||
/* Evaluation System - Public API */
|
/* Evaluation System - Public API */
|
||||||
|
|
||||||
/* Overview of how this system works:
|
/* Overview of how this system works:
|
||||||
* 1) Depsgraph sorts data as necessary, so that data is in an order that means
|
* 1) Depsgraph sorts data as necessary, so that data is in an order that means
|
||||||
* that all dependencies are resolved before dependents.
|
* that all dependencies are resolved before dependents.
|
||||||
* 2) All normal animation is evaluated, so that drivers have some basis values to
|
* 2) All normal animation is evaluated, so that drivers have some basis values to
|
||||||
* work with
|
* work with
|
||||||
@@ -2722,33 +2722,33 @@ static void animsys_evaluate_overrides(PointerRNA *ptr, AnimData *adt)
|
|||||||
* which modify the effects of the NLA-stacks
|
* which modify the effects of the NLA-stacks
|
||||||
* b. Active Action is evaluated as per normal, on top of the results of the NLA tracks
|
* b. Active Action is evaluated as per normal, on top of the results of the NLA tracks
|
||||||
*
|
*
|
||||||
* --------------< often in a separate phase... >------------------
|
* --------------< often in a separate phase... >------------------
|
||||||
*
|
*
|
||||||
* 3) Drivers/expressions are evaluated on top of this, in an order where dependencies are
|
* 3) Drivers/expressions are evaluated on top of this, in an order where dependencies are
|
||||||
* resolved nicely.
|
* resolved nicely.
|
||||||
* Note: it may be necessary to have some tools to handle the cases where some higher-level
|
* Note: it may be necessary to have some tools to handle the cases where some higher-level
|
||||||
* drivers are added and cause some problematic dependencies that didn't exist in the local levels...
|
* drivers are added and cause some problematic dependencies that didn't exist in the local levels...
|
||||||
*
|
*
|
||||||
* --------------< always executed >------------------
|
* --------------< always executed >------------------
|
||||||
*
|
*
|
||||||
* Maintenance of editability of settings (XXX):
|
* Maintenance of editability of settings (XXX):
|
||||||
* In order to ensure that settings that are animated can still be manipulated in the UI without requiring
|
* In order to ensure that settings that are animated can still be manipulated in the UI without requiring
|
||||||
* that keyframes are added to prevent these values from being overwritten, we use 'overrides'.
|
* that keyframes are added to prevent these values from being overwritten, we use 'overrides'.
|
||||||
*
|
*
|
||||||
* Unresolved things:
|
* Unresolved things:
|
||||||
* - Handling of multi-user settings (i.e. time-offset, group-instancing) -> big cache grids or nodal system? but stored where?
|
* - Handling of multi-user settings (i.e. time-offset, group-instancing) -> big cache grids or nodal system? but stored where?
|
||||||
* - Multiple-block dependencies (i.e. drivers for settings are in both local and higher levels) -> split into separate lists?
|
* - Multiple-block dependencies (i.e. drivers for settings are in both local and higher levels) -> split into separate lists?
|
||||||
*
|
*
|
||||||
* Current Status:
|
* Current Status:
|
||||||
* - Currently (as of September 2009), overrides we haven't needed to (fully) implement overrides.
|
* - Currently (as of September 2009), overrides we haven't needed to (fully) implement overrides.
|
||||||
* However, the code for this is relatively harmless, so is left in the code for now.
|
* However, the code for this is relatively harmless, so is left in the code for now.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Evaluation loop for evaluation animation data
|
/* Evaluation loop for evaluation animation data
|
||||||
*
|
*
|
||||||
* This assumes that the animation-data provided belongs to the ID block in question,
|
* This assumes that the animation-data provided belongs to the ID block in question,
|
||||||
* and that the flags for which parts of the anim-data settings need to be recalculated
|
* and that the flags for which parts of the anim-data settings need to be recalculated
|
||||||
* have been set already by the depsgraph. Now, we use the recalc
|
* have been set already by the depsgraph. Now, we use the recalc
|
||||||
*/
|
*/
|
||||||
void BKE_animsys_evaluate_animdata(Depsgraph *depsgraph, Scene *scene, ID *id, AnimData *adt, float ctime, short recalc)
|
void BKE_animsys_evaluate_animdata(Depsgraph *depsgraph, Scene *scene, ID *id, AnimData *adt, float ctime, short recalc)
|
||||||
{
|
{
|
||||||
|
@@ -718,13 +718,13 @@ bool BKE_appdir_app_template_id_search(const char *app_template, char *path, siz
|
|||||||
/**
|
/**
|
||||||
* Gets the temp directory when blender first runs.
|
* Gets the temp directory when blender first runs.
|
||||||
* If the default path is not found, use try $TEMP
|
* If the default path is not found, use try $TEMP
|
||||||
*
|
*
|
||||||
* Also make sure the temp dir has a trailing slash
|
* Also make sure the temp dir has a trailing slash
|
||||||
*
|
*
|
||||||
* \param fullname The full path to the temporary temp directory
|
* \param fullname The full path to the temporary temp directory
|
||||||
* \param basename The full path to the persistent temp directory (may be NULL)
|
* \param basename The full path to the persistent temp directory (may be NULL)
|
||||||
* \param maxlen The size of the fullname buffer
|
* \param maxlen The size of the fullname buffer
|
||||||
* \param userdir Directory specified in user preferences
|
* \param userdir Directory specified in user preferences
|
||||||
*/
|
*/
|
||||||
static void where_is_temp(char *fullname, char *basename, const size_t maxlen, char *userdir)
|
static void where_is_temp(char *fullname, char *basename, const size_t maxlen, char *userdir)
|
||||||
{
|
{
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
@@ -103,7 +103,7 @@
|
|||||||
|
|
||||||
/* ************************ Constraints - General Utilities *************************** */
|
/* ************************ Constraints - General Utilities *************************** */
|
||||||
/* These functions here don't act on any specific constraints, and are therefore should/will
|
/* These functions here don't act on any specific constraints, and are therefore should/will
|
||||||
* not require any of the special function-pointers afforded by the relevant constraint
|
* not require any of the special function-pointers afforded by the relevant constraint
|
||||||
* type-info structs.
|
* type-info structs.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -654,7 +654,7 @@ static void constraint_target_to_mat4(Object *ob, const char *substring, float m
|
|||||||
/* ************************* Specific Constraints ***************************** */
|
/* ************************* Specific Constraints ***************************** */
|
||||||
/* Each constraint defines a set of functions, which will be called at the appropriate
|
/* Each constraint defines a set of functions, which will be called at the appropriate
|
||||||
* times. In addition to this, each constraint should have a type-info struct, where
|
* times. In addition to this, each constraint should have a type-info struct, where
|
||||||
* its functions are attached for use.
|
* its functions are attached for use.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Template for type-info data:
|
/* Template for type-info data:
|
||||||
@@ -663,7 +663,7 @@ static void constraint_target_to_mat4(Object *ob, const char *substring, float m
|
|||||||
* - although the naming of functions doesn't matter, it would help for code
|
* - although the naming of functions doesn't matter, it would help for code
|
||||||
* readability, to follow the same naming convention as is presented here
|
* readability, to follow the same naming convention as is presented here
|
||||||
* - any functions that a constraint doesn't need to define, don't define
|
* - any functions that a constraint doesn't need to define, don't define
|
||||||
* for such cases, just use NULL
|
* for such cases, just use NULL
|
||||||
* - these should be defined after all the functions have been defined, so that
|
* - these should be defined after all the functions have been defined, so that
|
||||||
* forward-definitions/prototypes don't need to be used!
|
* forward-definitions/prototypes don't need to be used!
|
||||||
* - keep this copy #if-def'd so that future constraints can get based off this
|
* - keep this copy #if-def'd so that future constraints can get based off this
|
||||||
@@ -4456,7 +4456,7 @@ static void con_unlink_refs_cb(bConstraint *UNUSED(con), ID **idpoin, bool is_re
|
|||||||
|
|
||||||
/* Free data of a specific constraint if it has any info.
|
/* Free data of a specific constraint if it has any info.
|
||||||
* be sure to run BIK_clear_data() when freeing an IK constraint,
|
* be sure to run BIK_clear_data() when freeing an IK constraint,
|
||||||
* unless DAG_relations_tag_update is called.
|
* unless DAG_relations_tag_update is called.
|
||||||
*/
|
*/
|
||||||
void BKE_constraint_free_data_ex(bConstraint *con, bool do_id_user)
|
void BKE_constraint_free_data_ex(bConstraint *con, bool do_id_user)
|
||||||
{
|
{
|
||||||
@@ -4805,7 +4805,7 @@ bool BKE_constraints_proxylocked_owner(Object *ob, bPoseChannel *pchan)
|
|||||||
|
|
||||||
/* This function is a relic from the prior implementations of the constraints system, when all
|
/* This function is a relic from the prior implementations of the constraints system, when all
|
||||||
* constraints either had one or no targets. It used to be called during the main constraint solving
|
* constraints either had one or no targets. It used to be called during the main constraint solving
|
||||||
* loop, but is now only used for the remaining cases for a few constraints.
|
* loop, but is now only used for the remaining cases for a few constraints.
|
||||||
*
|
*
|
||||||
* None of the actual calculations of the matrices should be done here! Also, this function is
|
* None of the actual calculations of the matrices should be done here! Also, this function is
|
||||||
* not to be used by any new constraints, particularly any that have multiple targets.
|
* not to be used by any new constraints, particularly any that have multiple targets.
|
||||||
@@ -4910,7 +4910,7 @@ void BKE_constraint_targets_for_solving_get(struct Depsgraph *depsgraph, bConstr
|
|||||||
/* This function is called whenever constraints need to be evaluated. Currently, all
|
/* This function is called whenever constraints need to be evaluated. Currently, all
|
||||||
* constraints that can be evaluated are every time this gets run.
|
* constraints that can be evaluated are every time this gets run.
|
||||||
*
|
*
|
||||||
* BKE_constraints_make_evalob and BKE_constraints_clear_evalob should be called before and
|
* BKE_constraints_make_evalob and BKE_constraints_clear_evalob should be called before and
|
||||||
* after running this function, to sort out cob
|
* after running this function, to sort out cob
|
||||||
*/
|
*/
|
||||||
void BKE_constraints_solve(struct Depsgraph *depsgraph, ListBase *conlist, bConstraintOb *cob, float ctime)
|
void BKE_constraints_solve(struct Depsgraph *depsgraph, ListBase *conlist, bConstraintOb *cob, float ctime)
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2014 Blender Foundation.
|
* The Original Code is Copyright (C) 2014 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Contributor(s): Bastien Montagne
|
* Contributor(s): Bastien Montagne
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -270,7 +270,7 @@ FCurve *iter_step_fcurve(FCurve *fcu_iter, const char rna_path[])
|
|||||||
|
|
||||||
/* Get list of LinkData's containing pointers to the F-Curves which control the types of data indicated
|
/* Get list of LinkData's containing pointers to the F-Curves which control the types of data indicated
|
||||||
* Lists...
|
* Lists...
|
||||||
* - dst: list of LinkData's matching the criteria returned.
|
* - dst: list of LinkData's matching the criteria returned.
|
||||||
* List must be freed after use, and is assumed to be empty when passed.
|
* List must be freed after use, and is assumed to be empty when passed.
|
||||||
* - src: list of F-Curves to search through
|
* - src: list of F-Curves to search through
|
||||||
* Filters...
|
* Filters...
|
||||||
@@ -879,7 +879,7 @@ void fcurve_store_samples(FCurve *fcu, void *data, int start, int end, FcuSample
|
|||||||
/* ***************************** F-Curve Sanity ********************************* */
|
/* ***************************** F-Curve Sanity ********************************* */
|
||||||
/* The functions here are used in various parts of Blender, usually after some editing
|
/* The functions here are used in various parts of Blender, usually after some editing
|
||||||
* of keyframe data has occurred. They ensure that keyframe data is properly ordered and
|
* of keyframe data has occurred. They ensure that keyframe data is properly ordered and
|
||||||
* that the handles are correctly
|
* that the handles are correctly
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Checks if the F-Curve has a Cycles modifier with simple settings that warrant transition smoothing */
|
/* Checks if the F-Curve has a Cycles modifier with simple settings that warrant transition smoothing */
|
||||||
|
@@ -58,14 +58,14 @@ void *fmodifiers_storage_get(FModifierStackStorage *storage, FModifier *fcm);
|
|||||||
/* Info ------------------------------- */
|
/* Info ------------------------------- */
|
||||||
|
|
||||||
/* F-Modifiers are modifiers which operate on F-Curves. However, they can also be defined
|
/* F-Modifiers are modifiers which operate on F-Curves. However, they can also be defined
|
||||||
* on NLA-Strips to affect all of the F-Curves referenced by the NLA-Strip.
|
* on NLA-Strips to affect all of the F-Curves referenced by the NLA-Strip.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Template --------------------------- */
|
/* Template --------------------------- */
|
||||||
|
|
||||||
/* Each modifier defines a set of functions, which will be called at the appropriate
|
/* Each modifier defines a set of functions, which will be called at the appropriate
|
||||||
* times. In addition to this, each modifier should have a type-info struct, where
|
* times. In addition to this, each modifier should have a type-info struct, where
|
||||||
* its functions are attached for use.
|
* its functions are attached for use.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Template for type-info data:
|
/* Template for type-info data:
|
||||||
@@ -74,7 +74,7 @@ void *fmodifiers_storage_get(FModifierStackStorage *storage, FModifier *fcm);
|
|||||||
* - although the naming of functions doesn't matter, it would help for code
|
* - although the naming of functions doesn't matter, it would help for code
|
||||||
* readability, to follow the same naming convention as is presented here
|
* readability, to follow the same naming convention as is presented here
|
||||||
* - any functions that a constraint doesn't need to define, don't define
|
* - any functions that a constraint doesn't need to define, don't define
|
||||||
* for such cases, just use NULL
|
* for such cases, just use NULL
|
||||||
* - these should be defined after all the functions have been defined, so that
|
* - these should be defined after all the functions have been defined, so that
|
||||||
* forward-definitions/prototypes don't need to be used!
|
* forward-definitions/prototypes don't need to be used!
|
||||||
* - keep this copy #if-def'd so that future constraints can get based off this
|
* - keep this copy #if-def'd so that future constraints can get based off this
|
||||||
@@ -260,7 +260,7 @@ static FModifierTypeInfo FMI_GENERATOR = {
|
|||||||
* x is the evaluation 'time', and 'y' is the resultant value
|
* x is the evaluation 'time', and 'y' is the resultant value
|
||||||
*
|
*
|
||||||
* Functions available are
|
* Functions available are
|
||||||
* sin, cos, tan, sinc (normalized sin), natural log, square root
|
* sin, cos, tan, sinc (normalized sin), natural log, square root
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static void fcm_fn_generator_new_data(void *mdata)
|
static void fcm_fn_generator_new_data(void *mdata)
|
||||||
@@ -1397,7 +1397,7 @@ static float eval_fmodifier_influence(FModifier *fcm, float evaltime)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* evaluate time modifications imposed by some F-Curve Modifiers
|
/* evaluate time modifications imposed by some F-Curve Modifiers
|
||||||
* - this step acts as an optimization to prevent the F-Curve stack being evaluated
|
* - this step acts as an optimization to prevent the F-Curve stack being evaluated
|
||||||
* several times by modifiers requesting the time be modified, as the final result
|
* several times by modifiers requesting the time be modified, as the final result
|
||||||
* would have required using the modified time
|
* would have required using the modified time
|
||||||
* - modifiers only ever receive the unmodified time, as subsequent modifiers should be
|
* - modifiers only ever receive the unmodified time, as subsequent modifiers should be
|
||||||
|
@@ -251,7 +251,7 @@ static const char *ob_adrcodes_to_paths(int adrcode, int *array_index)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* PoseChannel types
|
/* PoseChannel types
|
||||||
* NOTE: pchan name comes from 'actname' added earlier...
|
* NOTE: pchan name comes from 'actname' added earlier...
|
||||||
*/
|
*/
|
||||||
static const char *pchan_adrcodes_to_paths(int adrcode, int *array_index)
|
static const char *pchan_adrcodes_to_paths(int adrcode, int *array_index)
|
||||||
{
|
{
|
||||||
@@ -314,7 +314,7 @@ static const char *constraint_adrcodes_to_paths(int adrcode, int *array_index)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* ShapeKey types
|
/* ShapeKey types
|
||||||
* NOTE: as we don't have access to the keyblock where the data comes from (for now),
|
* NOTE: as we don't have access to the keyblock where the data comes from (for now),
|
||||||
* we'll just use numerical indices for now...
|
* we'll just use numerical indices for now...
|
||||||
*/
|
*/
|
||||||
static char *shapekey_adrcodes_to_paths(ID *id, int adrcode, int *UNUSED(array_index))
|
static char *shapekey_adrcodes_to_paths(ID *id, int adrcode, int *UNUSED(array_index))
|
||||||
@@ -1672,10 +1672,10 @@ static void nlastrips_to_animdata(ID *id, ListBase *strips)
|
|||||||
/* Called from do_versions() in readfile.c to convert the old 'IPO/adrcode' system
|
/* Called from do_versions() in readfile.c to convert the old 'IPO/adrcode' system
|
||||||
* to the new 'Animato/RNA' system.
|
* to the new 'Animato/RNA' system.
|
||||||
*
|
*
|
||||||
* The basic method used here, is to loop over datablocks which have IPO-data, and
|
* The basic method used here, is to loop over datablocks which have IPO-data, and
|
||||||
* add those IPO's to new AnimData blocks as Actions.
|
* add those IPO's to new AnimData blocks as Actions.
|
||||||
* Action/NLA data only works well for Objects, so these only need to be checked for there.
|
* Action/NLA data only works well for Objects, so these only need to be checked for there.
|
||||||
*
|
*
|
||||||
* Data that has been converted should be freed immediately, which means that it is immediately
|
* Data that has been converted should be freed immediately, which means that it is immediately
|
||||||
* clear which datablocks have yet to be converted, and also prevent freeing errors when we exit.
|
* clear which datablocks have yet to be converted, and also prevent freeing errors when we exit.
|
||||||
*/
|
*/
|
||||||
|
@@ -277,7 +277,7 @@ float *BKE_mball_make_orco(Object *ob, ListBase *dispbase)
|
|||||||
* This really needs a rewrite/refactor its totally broken in anything other then basic cases
|
* This really needs a rewrite/refactor its totally broken in anything other then basic cases
|
||||||
* Multiple Scenes + Set Scenes & mixing mball basis SHOULD work but fails to update the depsgraph on rename
|
* Multiple Scenes + Set Scenes & mixing mball basis SHOULD work but fails to update the depsgraph on rename
|
||||||
* and linking into scenes or removal of basis mball. so take care when changing this code.
|
* and linking into scenes or removal of basis mball. so take care when changing this code.
|
||||||
*
|
*
|
||||||
* Main idiot thing here is that the system returns find_basis_mball() objects which fail a is_basis_mball() test.
|
* Main idiot thing here is that the system returns find_basis_mball() objects which fail a is_basis_mball() test.
|
||||||
*
|
*
|
||||||
* Not only that but the depsgraph and their areas depend on this behavior!, so making small fixes here isn't worth it.
|
* Not only that but the depsgraph and their areas depend on this behavior!, so making small fixes here isn't worth it.
|
||||||
|
@@ -400,9 +400,9 @@ void modifier_setError(ModifierData *md, const char *_format, ...)
|
|||||||
|
|
||||||
/* used for buttons, to find out if the 'draw deformed in editmode' option is
|
/* used for buttons, to find out if the 'draw deformed in editmode' option is
|
||||||
* there
|
* there
|
||||||
*
|
*
|
||||||
* also used in transform_conversion.c, to detect CrazySpace [tm] (2nd arg
|
* also used in transform_conversion.c, to detect CrazySpace [tm] (2nd arg
|
||||||
* then is NULL)
|
* then is NULL)
|
||||||
* also used for some mesh tools to give warnings
|
* also used for some mesh tools to give warnings
|
||||||
*/
|
*/
|
||||||
int modifiers_getCageIndex(struct Scene *scene, Object *ob, int *r_lastPossibleCageIndex, bool is_virtual)
|
int modifiers_getCageIndex(struct Scene *scene, Object *ob, int *r_lastPossibleCageIndex, bool is_virtual)
|
||||||
|
@@ -73,7 +73,7 @@
|
|||||||
/* Freeing ------------------------------------------- */
|
/* Freeing ------------------------------------------- */
|
||||||
|
|
||||||
/* Remove the given NLA strip from the NLA track it occupies, free the strip's data,
|
/* Remove the given NLA strip from the NLA track it occupies, free the strip's data,
|
||||||
* and the strip itself.
|
* and the strip itself.
|
||||||
*/
|
*/
|
||||||
void BKE_nlastrip_free(ListBase *strips, NlaStrip *strip)
|
void BKE_nlastrip_free(ListBase *strips, NlaStrip *strip)
|
||||||
{
|
{
|
||||||
@@ -400,7 +400,7 @@ NlaStrip *BKE_nla_add_soundstrip(Scene *scene, Speaker *speaker)
|
|||||||
/* Strip Mapping ------------------------------------- */
|
/* Strip Mapping ------------------------------------- */
|
||||||
|
|
||||||
/* non clipped mapping for strip-time <-> global time (for Action-Clips)
|
/* non clipped mapping for strip-time <-> global time (for Action-Clips)
|
||||||
* invert = convert action-strip time to global time
|
* invert = convert action-strip time to global time
|
||||||
*/
|
*/
|
||||||
static float nlastrip_get_frame_actionclip(NlaStrip *strip, float cframe, short mode)
|
static float nlastrip_get_frame_actionclip(NlaStrip *strip, float cframe, short mode)
|
||||||
{
|
{
|
||||||
@@ -470,7 +470,7 @@ static float nlastrip_get_frame_actionclip(NlaStrip *strip, float cframe, short
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* non clipped mapping for strip-time <-> global time (for Transitions)
|
/* non clipped mapping for strip-time <-> global time (for Transitions)
|
||||||
* invert = convert action-strip time to global time
|
* invert = convert action-strip time to global time
|
||||||
*/
|
*/
|
||||||
static float nlastrip_get_frame_transition(NlaStrip *strip, float cframe, short mode)
|
static float nlastrip_get_frame_transition(NlaStrip *strip, float cframe, short mode)
|
||||||
{
|
{
|
||||||
@@ -597,7 +597,7 @@ bool BKE_nlastrips_has_space(ListBase *strips, float start, float end)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Rearrange the strips in the track so that they are always in order
|
/* Rearrange the strips in the track so that they are always in order
|
||||||
* (usually only needed after a strip has been moved)
|
* (usually only needed after a strip has been moved)
|
||||||
*/
|
*/
|
||||||
void BKE_nlastrips_sort_strips(ListBase *strips)
|
void BKE_nlastrips_sort_strips(ListBase *strips)
|
||||||
{
|
{
|
||||||
@@ -1037,7 +1037,7 @@ bool BKE_nlatrack_has_space(NlaTrack *nlt, float start, float end)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Rearrange the strips in the track so that they are always in order
|
/* Rearrange the strips in the track so that they are always in order
|
||||||
* (usually only needed after a strip has been moved)
|
* (usually only needed after a strip has been moved)
|
||||||
*/
|
*/
|
||||||
void BKE_nlatrack_sort_strips(NlaTrack *nlt)
|
void BKE_nlatrack_sort_strips(NlaTrack *nlt)
|
||||||
{
|
{
|
||||||
@@ -1050,7 +1050,7 @@ void BKE_nlatrack_sort_strips(NlaTrack *nlt)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Add the given NLA-Strip to the given NLA-Track, assuming that it
|
/* Add the given NLA-Strip to the given NLA-Track, assuming that it
|
||||||
* isn't currently attached to another one
|
* isn't currently attached to another one
|
||||||
*/
|
*/
|
||||||
bool BKE_nlatrack_add_strip(NlaTrack *nlt, NlaStrip *strip)
|
bool BKE_nlatrack_add_strip(NlaTrack *nlt, NlaStrip *strip)
|
||||||
{
|
{
|
||||||
@@ -1757,7 +1757,7 @@ bool BKE_nla_action_stash(AnimData *adt)
|
|||||||
/* Core Tools ------------------------------------------- */
|
/* Core Tools ------------------------------------------- */
|
||||||
|
|
||||||
/* For the given AnimData block, add the active action to the NLA
|
/* For the given AnimData block, add the active action to the NLA
|
||||||
* stack (i.e. 'push-down' action). The UI should only allow this
|
* stack (i.e. 'push-down' action). The UI should only allow this
|
||||||
* for normal editing only (i.e. not in editmode for some strip's action),
|
* for normal editing only (i.e. not in editmode for some strip's action),
|
||||||
* so no checks for this are performed.
|
* so no checks for this are performed.
|
||||||
*/
|
*/
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -836,7 +836,7 @@ bool nodeIsChildOf(const bNode *parent, const bNode *child)
|
|||||||
/**
|
/**
|
||||||
* Iterate over a chain of nodes, starting with \a node_start, executing
|
* Iterate over a chain of nodes, starting with \a node_start, executing
|
||||||
* \a callback for each node (which can return false to end iterator).
|
* \a callback for each node (which can return false to end iterator).
|
||||||
*
|
*
|
||||||
* \param reversed for backwards iteration
|
* \param reversed for backwards iteration
|
||||||
* \note Recursive
|
* \note Recursive
|
||||||
*/
|
*/
|
||||||
@@ -868,7 +868,7 @@ void nodeChainIter(
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Iterate over all parents of \a node, executing \a callback for each parent (which can return false to end iterator)
|
* Iterate over all parents of \a node, executing \a callback for each parent (which can return false to end iterator)
|
||||||
*
|
*
|
||||||
* \note Recursive
|
* \note Recursive
|
||||||
*/
|
*/
|
||||||
void nodeParentsIter(bNode *node, bool (*callback)(bNode *, void *), void *userdata)
|
void nodeParentsIter(bNode *node, bool (*callback)(bNode *, void *), void *userdata)
|
||||||
|
@@ -3394,7 +3394,7 @@ static void obrel_list_add(LinkNode **links, Object *ob)
|
|||||||
* Iterates over all objects of the given scene layer.
|
* Iterates over all objects of the given scene layer.
|
||||||
* Depending on the eObjectSet flag:
|
* Depending on the eObjectSet flag:
|
||||||
* collect either OB_SET_ALL, OB_SET_VISIBLE or OB_SET_SELECTED objects.
|
* collect either OB_SET_ALL, OB_SET_VISIBLE or OB_SET_SELECTED objects.
|
||||||
* If OB_SET_VISIBLE or OB_SET_SELECTED are collected,
|
* If OB_SET_VISIBLE or OB_SET_SELECTED are collected,
|
||||||
* then also add related objects according to the given includeFilters.
|
* then also add related objects according to the given includeFilters.
|
||||||
*/
|
*/
|
||||||
LinkNode *BKE_object_relational_superset(struct ViewLayer *view_layer, eObjectSet objectSet, eObRelationTypes includeFilter)
|
LinkNode *BKE_object_relational_superset(struct ViewLayer *view_layer, eObjectSet objectSet, eObRelationTypes includeFilter)
|
||||||
|
@@ -1449,7 +1449,7 @@ static void integrate_particle(ParticleSettings *part, ParticleData *pa, float d
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*********************************************************************************************************
|
/*********************************************************************************************************
|
||||||
* SPH fluid physics
|
* SPH fluid physics
|
||||||
*
|
*
|
||||||
* In theory, there could be unlimited implementation of SPH simulators
|
* In theory, there could be unlimited implementation of SPH simulators
|
||||||
*
|
*
|
||||||
|
@@ -2959,7 +2959,7 @@ int BKE_ptcache_write(PTCacheID *pid, unsigned int cfra)
|
|||||||
return !error;
|
return !error;
|
||||||
}
|
}
|
||||||
/* youll need to close yourself after!
|
/* youll need to close yourself after!
|
||||||
* mode - PTCACHE_CLEAR_ALL,
|
* mode - PTCACHE_CLEAR_ALL,
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* Clears & resets */
|
/* Clears & resets */
|
||||||
|
@@ -1229,7 +1229,7 @@ bool BKE_scene_validate_setscene(Main *bmain, Scene *sce)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* This function is needed to cope with fractional frames - including two Blender rendering features
|
/* This function is needed to cope with fractional frames - including two Blender rendering features
|
||||||
* mblur (motion blur that renders 'subframes' and blurs them together), and fields rendering.
|
* mblur (motion blur that renders 'subframes' and blurs them together), and fields rendering.
|
||||||
*/
|
*/
|
||||||
float BKE_scene_frame_get(const Scene *scene)
|
float BKE_scene_frame_get(const Scene *scene)
|
||||||
{
|
{
|
||||||
|
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
|
* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Contributor(s):
|
* Contributor(s):
|
||||||
* - Blender Foundation, 2003-2009
|
* - Blender Foundation, 2003-2009
|
||||||
* - Peter Schlaile <peter [at] schlaile [dot] de> 2005/2006
|
* - Peter Schlaile <peter [at] schlaile [dot] de> 2005/2006
|
||||||
*
|
*
|
||||||
|
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
|
* The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Contributor(s):
|
* Contributor(s):
|
||||||
* - Blender Foundation, 2003-2009
|
* - Blender Foundation, 2003-2009
|
||||||
* - Peter Schlaile <peter [at] schlaile [dot] de> 2005/2006
|
* - Peter Schlaile <peter [at] schlaile [dot] de> 2005/2006
|
||||||
*
|
*
|
||||||
|
@@ -1042,19 +1042,19 @@ fail:
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Writes any delayed frames in the encoder. This function is called before
|
* Writes any delayed frames in the encoder. This function is called before
|
||||||
* closing the encoder.
|
* closing the encoder.
|
||||||
*
|
*
|
||||||
* <p>
|
* <p>
|
||||||
* Since an encoder may use both past and future frames to predict
|
* Since an encoder may use both past and future frames to predict
|
||||||
* inter-frames (H.264 B-frames, for example), it can output the frames
|
* inter-frames (H.264 B-frames, for example), it can output the frames
|
||||||
* in a different order from the one it was given.
|
* in a different order from the one it was given.
|
||||||
* For example, when sending frames 1, 2, 3, 4 to the encoder, it may write
|
* For example, when sending frames 1, 2, 3, 4 to the encoder, it may write
|
||||||
* them in the order 1, 4, 2, 3 - first the two frames used for prediction,
|
* them in the order 1, 4, 2, 3 - first the two frames used for prediction,
|
||||||
* and then the bidirectionally-predicted frames. What this means in practice
|
* and then the bidirectionally-predicted frames. What this means in practice
|
||||||
* is that the encoder may not immediately produce one output frame for each
|
* is that the encoder may not immediately produce one output frame for each
|
||||||
* input frame. These delayed frames must be flushed before we close the
|
* input frame. These delayed frames must be flushed before we close the
|
||||||
* stream. We do this by calling avcodec_encode_video with NULL for the last
|
* stream. We do this by calling avcodec_encode_video with NULL for the last
|
||||||
* parameter.
|
* parameter.
|
||||||
* </p>
|
* </p>
|
||||||
*/
|
*/
|
||||||
|
@@ -45,10 +45,10 @@
|
|||||||
*
|
*
|
||||||
* - blenlib is written in C.
|
* - blenlib is written in C.
|
||||||
* - The posix-compliance may move to a separate lib that deals with
|
* - The posix-compliance may move to a separate lib that deals with
|
||||||
* platform dependencies. (There are other platform-dependent
|
* platform dependencies. (There are other platform-dependent
|
||||||
* fixes as well.)
|
* fixes as well.)
|
||||||
* - The file i/o has some redundant code. It should be cleaned.
|
* - The file i/o has some redundant code. It should be cleaned.
|
||||||
*
|
*
|
||||||
* \subsection dependencies Dependencies
|
* \subsection dependencies Dependencies
|
||||||
*
|
*
|
||||||
* - The blenlib uses type defines from \ref DNA, and functions from
|
* - The blenlib uses type defines from \ref DNA, and functions from
|
||||||
|
@@ -25,14 +25,14 @@
|
|||||||
* \ingroup bli
|
* \ingroup bli
|
||||||
*
|
*
|
||||||
* \note dials act similar to old rotation based phones and output an angle.
|
* \note dials act similar to old rotation based phones and output an angle.
|
||||||
*
|
*
|
||||||
* They just are initialized with the center of the dial and a threshold value as input.
|
* They just are initialized with the center of the dial and a threshold value as input.
|
||||||
*
|
*
|
||||||
* When the distance of the current position of the dial from the center
|
* When the distance of the current position of the dial from the center
|
||||||
* exceeds the threshold, this position is used to calculate the initial direction.
|
* exceeds the threshold, this position is used to calculate the initial direction.
|
||||||
* After that, the angle from the initial direction is calculated based on
|
* After that, the angle from the initial direction is calculated based on
|
||||||
* current and previous directions of the digit, and returned to the user.
|
* current and previous directions of the digit, and returned to the user.
|
||||||
*
|
*
|
||||||
* Usage examples:
|
* Usage examples:
|
||||||
*
|
*
|
||||||
* \code{.c}
|
* \code{.c}
|
||||||
@@ -41,11 +41,11 @@
|
|||||||
* float threshold = 0.5f;
|
* float threshold = 0.5f;
|
||||||
* float angle;
|
* float angle;
|
||||||
* Dial *dial;
|
* Dial *dial;
|
||||||
*
|
*
|
||||||
* dial = BLI_dial_initialize(start_position, threshold);
|
* dial = BLI_dial_initialize(start_position, threshold);
|
||||||
*
|
*
|
||||||
* angle = BLI_dial_angle(dial, curent_position);
|
* angle = BLI_dial_angle(dial, curent_position);
|
||||||
*
|
*
|
||||||
* MEM_freeN(dial);
|
* MEM_freeN(dial);
|
||||||
* \endcode
|
* \endcode
|
||||||
*/
|
*/
|
||||||
|
@@ -32,7 +32,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* Double-Linked Red-Black Tree Implementation:
|
/* Double-Linked Red-Black Tree Implementation:
|
||||||
*
|
*
|
||||||
* This is simply a Red-Black Tree implementation whose nodes can later
|
* This is simply a Red-Black Tree implementation whose nodes can later
|
||||||
* be arranged + retrieved as elements in a Double-Linked list (i.e. ListBase).
|
* be arranged + retrieved as elements in a Double-Linked list (i.e. ListBase).
|
||||||
* The Red-Black Tree implementation is based on the methods defined by Wikipedia.
|
* The Red-Black Tree implementation is based on the methods defined by Wikipedia.
|
||||||
|
@@ -2,17 +2,17 @@
|
|||||||
*
|
*
|
||||||
* NOTE: The canonical source of this file is maintained with the GNU C Library.
|
* NOTE: The canonical source of this file is maintained with the GNU C Library.
|
||||||
* Bugs can be reported to bug-glibc@prep.ai.mit.edu.
|
* Bugs can be reported to bug-glibc@prep.ai.mit.edu.
|
||||||
*
|
*
|
||||||
* This program is free software; you can redistribute it and/or modify it
|
* This program is free software; you can redistribute it and/or modify it
|
||||||
* under the terms of the GNU General Public License as published by the
|
* under the terms of the GNU General Public License as published by the
|
||||||
* Free Software Foundation; either version 2, or (at your option) any
|
* Free Software Foundation; either version 2, or (at your option) any
|
||||||
* later version.
|
* later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
* GNU General Public License for more details.
|
* GNU General Public License for more details.
|
||||||
*
|
*
|
||||||
* You should have received a copy of the GNU General Public License
|
* You should have received a copy of the GNU General Public License
|
||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. */
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
* Contributor(s): none yet.
|
* Contributor(s): none yet.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/** \file BLI_memarena.h
|
/** \file BLI_memarena.h
|
||||||
* \ingroup bli
|
* \ingroup bli
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
* Contributor(s): none yet.
|
* Contributor(s): none yet.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __BLI_NOISE_H__
|
#ifndef __BLI_NOISE_H__
|
||||||
|
@@ -40,7 +40,7 @@ extern "C" {
|
|||||||
struct BLI_mempool;
|
struct BLI_mempool;
|
||||||
|
|
||||||
/* Task Scheduler
|
/* Task Scheduler
|
||||||
*
|
*
|
||||||
* Central scheduler that holds running threads ready to execute tasks. A single
|
* Central scheduler that holds running threads ready to execute tasks. A single
|
||||||
* queue holds the task from all pools.
|
* queue holds the task from all pools.
|
||||||
*
|
*
|
||||||
|
@@ -76,7 +76,7 @@ void BLI_system_num_threads_override_set(int num);
|
|||||||
int BLI_system_num_threads_override_get(void);
|
int BLI_system_num_threads_override_get(void);
|
||||||
|
|
||||||
/* Global Mutex Locks
|
/* Global Mutex Locks
|
||||||
*
|
*
|
||||||
* One custom lock available now. can be extended. */
|
* One custom lock available now. can be extended. */
|
||||||
|
|
||||||
#define LOCK_IMAGE 0
|
#define LOCK_IMAGE 0
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2008 Blender Foundation.
|
* The Original Code is Copyright (C) 2008 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Contributor(s): Joshua Leung
|
* Contributor(s): Joshua Leung
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -30,7 +30,7 @@
|
|||||||
|
|
||||||
/** \file BLI_vfontdata.h
|
/** \file BLI_vfontdata.h
|
||||||
* \ingroup bli
|
* \ingroup bli
|
||||||
* \brief A structure to represent vector fonts,
|
* \brief A structure to represent vector fonts,
|
||||||
* and to load them from PostScript fonts.
|
* and to load them from PostScript fonts.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -751,7 +751,7 @@ static void deduplicate_recursive(const struct DeDuplicateParams *p, uint i)
|
|||||||
* although it can still be used as a target.
|
* although it can still be used as a target.
|
||||||
* \returns The numebr of merges found (includes any merges already in the \a duplicates array).
|
* \returns The numebr of merges found (includes any merges already in the \a duplicates array).
|
||||||
*
|
*
|
||||||
* \note Merging is always a single step (target indices wont be marked for merging).
|
* \note Merging is always a single step (target indices wont be marked for merging).
|
||||||
*/
|
*/
|
||||||
int BLI_kdtree_calc_duplicates_fast(
|
int BLI_kdtree_calc_duplicates_fast(
|
||||||
const KDTree *tree, const float range, bool use_index_order,
|
const KDTree *tree, const float range, bool use_index_order,
|
||||||
|
@@ -50,7 +50,7 @@
|
|||||||
|
|
||||||
|
|
||||||
/* BoxPacker for backing 2D rectangles into a square
|
/* BoxPacker for backing 2D rectangles into a square
|
||||||
*
|
*
|
||||||
* The defined Below are for internal use only */
|
* The defined Below are for internal use only */
|
||||||
typedef struct BoxVert {
|
typedef struct BoxVert {
|
||||||
float x;
|
float x;
|
||||||
@@ -271,7 +271,7 @@ static int vertex_sort(const void *p1, const void *p2, void *vs_ctx_p)
|
|||||||
* This sets boxes x,y to positive values, sorting from 0,0 outwards.
|
* This sets boxes x,y to positive values, sorting from 0,0 outwards.
|
||||||
* There is no limit to the space boxes may take, only that they will be packed
|
* There is no limit to the space boxes may take, only that they will be packed
|
||||||
* tightly into the lower left hand corner (0,0)
|
* tightly into the lower left hand corner (0,0)
|
||||||
*
|
*
|
||||||
* \param boxarray: a pre allocated array of boxes.
|
* \param boxarray: a pre allocated array of boxes.
|
||||||
* only the 'box->x' and 'box->y' are set, 'box->w' and 'box->h' are used,
|
* only the 'box->x' and 'box->y' are set, 'box->w' and 'box->h' are used,
|
||||||
* 'box->index' is not used at all, the only reason its there
|
* 'box->index' is not used at all, the only reason its there
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
* Contributor(s): none yet.
|
* Contributor(s): none yet.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/** \file blender/blenlib/intern/listbase.c
|
/** \file blender/blenlib/intern/listbase.c
|
||||||
|
@@ -979,7 +979,7 @@ float dist_squared_to_projected_aabb_simple(
|
|||||||
|
|
||||||
/* Adapted from "Real-Time Collision Detection" by Christer Ericson,
|
/* Adapted from "Real-Time Collision Detection" by Christer Ericson,
|
||||||
* published by Morgan Kaufmann Publishers, copyright 2005 Elsevier Inc.
|
* published by Morgan Kaufmann Publishers, copyright 2005 Elsevier Inc.
|
||||||
*
|
*
|
||||||
* Set 'r' to the point in triangle (a, b, c) closest to point 'p' */
|
* Set 'r' to the point in triangle (a, b, c) closest to point 'p' */
|
||||||
void closest_on_tri_to_point_v3(float r[3], const float p[3],
|
void closest_on_tri_to_point_v3(float r[3], const float p[3],
|
||||||
const float a[3], const float b[3], const float c[3])
|
const float a[3], const float b[3], const float c[3])
|
||||||
|
@@ -1745,7 +1745,7 @@ bool BLI_path_name_at_index(const char *path, const int index, int *r_offset, in
|
|||||||
#if 0
|
#if 0
|
||||||
/**
|
/**
|
||||||
* Produce image export path.
|
* Produce image export path.
|
||||||
*
|
*
|
||||||
* Returns:
|
* Returns:
|
||||||
* 0 if image filename is empty or if destination path
|
* 0 if image filename is empty or if destination path
|
||||||
* matches image path (i.e. both are the same file).
|
* matches image path (i.e. both are the same file).
|
||||||
@@ -1759,12 +1759,12 @@ bool BLI_path_name_at_index(const char *path, const int index, int *r_offset, in
|
|||||||
* - if an image is "below" current .blend file directory:
|
* - if an image is "below" current .blend file directory:
|
||||||
* rebuild the same dir structure in dest_dir
|
* rebuild the same dir structure in dest_dir
|
||||||
*
|
*
|
||||||
* Example:
|
* Example:
|
||||||
* src : //textures/foo/bar.png
|
* src : //textures/foo/bar.png
|
||||||
* dest: [dest_dir]/textures/foo/bar.png.
|
* dest: [dest_dir]/textures/foo/bar.png.
|
||||||
*
|
*
|
||||||
* - if an image is not "below" current .blend file directory,
|
* - if an image is not "below" current .blend file directory,
|
||||||
* disregard it's path and copy it into the destination
|
* disregard it's path and copy it into the destination
|
||||||
* directory.
|
* directory.
|
||||||
*
|
*
|
||||||
* Example:
|
* Example:
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
* Contributor(s): none yet.
|
* Contributor(s): none yet.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/** \file blender/blenlib/intern/string.c
|
/** \file blender/blenlib/intern/string.c
|
||||||
|
@@ -21,7 +21,7 @@
|
|||||||
* Contributor(s): none yet.
|
* Contributor(s): none yet.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/** \file blender/blenlib/intern/string_utils.c
|
/** \file blender/blenlib/intern/string_utils.c
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -70,29 +70,29 @@ static void *thread_tls_data;
|
|||||||
static TaskScheduler *task_scheduler = NULL;
|
static TaskScheduler *task_scheduler = NULL;
|
||||||
|
|
||||||
/* ********** basic thread control API ************
|
/* ********** basic thread control API ************
|
||||||
*
|
*
|
||||||
* Many thread cases have an X amount of jobs, and only an Y amount of
|
* Many thread cases have an X amount of jobs, and only an Y amount of
|
||||||
* threads are useful (typically amount of cpus)
|
* threads are useful (typically amount of cpus)
|
||||||
*
|
*
|
||||||
* This code can be used to start a maximum amount of 'thread slots', which
|
* This code can be used to start a maximum amount of 'thread slots', which
|
||||||
* then can be filled in a loop with an idle timer.
|
* then can be filled in a loop with an idle timer.
|
||||||
*
|
*
|
||||||
* A sample loop can look like this (pseudo c);
|
* A sample loop can look like this (pseudo c);
|
||||||
*
|
*
|
||||||
* ListBase lb;
|
* ListBase lb;
|
||||||
* int maxthreads = 2;
|
* int maxthreads = 2;
|
||||||
* int cont = 1;
|
* int cont = 1;
|
||||||
*
|
*
|
||||||
* BLI_threadpool_init(&lb, do_something_func, maxthreads);
|
* BLI_threadpool_init(&lb, do_something_func, maxthreads);
|
||||||
*
|
*
|
||||||
* while (cont) {
|
* while (cont) {
|
||||||
* if (BLI_available_threads(&lb) && !(escape loop event)) {
|
* if (BLI_available_threads(&lb) && !(escape loop event)) {
|
||||||
* // get new job (data pointer)
|
* // get new job (data pointer)
|
||||||
* // tag job 'processed
|
* // tag job 'processed
|
||||||
* BLI_threadpool_insert(&lb, job);
|
* BLI_threadpool_insert(&lb, job);
|
||||||
* }
|
* }
|
||||||
* else PIL_sleep_ms(50);
|
* else PIL_sleep_ms(50);
|
||||||
*
|
*
|
||||||
* // find if a job is ready, this the do_something_func() should write in job somewhere
|
* // find if a job is ready, this the do_something_func() should write in job somewhere
|
||||||
* cont = 0;
|
* cont = 0;
|
||||||
* for (go over all jobs)
|
* for (go over all jobs)
|
||||||
@@ -103,13 +103,13 @@ static TaskScheduler *task_scheduler = NULL;
|
|||||||
* }
|
* }
|
||||||
* else cont = 1;
|
* else cont = 1;
|
||||||
* }
|
* }
|
||||||
* // conditions to exit loop
|
* // conditions to exit loop
|
||||||
* if (if escape loop event) {
|
* if (if escape loop event) {
|
||||||
* if (BLI_available_threadslots(&lb) == maxthreads)
|
* if (BLI_available_threadslots(&lb) == maxthreads)
|
||||||
* break;
|
* break;
|
||||||
* }
|
* }
|
||||||
* }
|
* }
|
||||||
*
|
*
|
||||||
* BLI_threadpool_end(&lb);
|
* BLI_threadpool_end(&lb);
|
||||||
*
|
*
|
||||||
************************************************ */
|
************************************************ */
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -18,7 +18,7 @@
|
|||||||
* The Original Code is Copyright (C) 2008 Blender Foundation.
|
* The Original Code is Copyright (C) 2008 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* Contributor(s): Joshua Leung
|
* Contributor(s): Joshua Leung
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
* Contributor(s): none yet.
|
* Contributor(s): none yet.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef __BLO_RUNTIME_H__
|
#ifndef __BLO_RUNTIME_H__
|
||||||
|
@@ -2716,7 +2716,7 @@ static void lib_link_nladata(FileData *fd, ID *id, ListBase *list)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* This handles Animato NLA-Strips linking
|
/* This handles Animato NLA-Strips linking
|
||||||
* NOTE: this assumes that link_list has already been called on the list
|
* NOTE: this assumes that link_list has already been called on the list
|
||||||
*/
|
*/
|
||||||
static void direct_link_nladata_strips(FileData *fd, ListBase *list)
|
static void direct_link_nladata_strips(FileData *fd, ListBase *list)
|
||||||
{
|
{
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
@@ -17,7 +17,7 @@
|
|||||||
*
|
*
|
||||||
* The Original Code is Copyright (C) 2008 Blender Foundation.
|
* The Original Code is Copyright (C) 2008 Blender Foundation.
|
||||||
* All rights reserved.
|
* All rights reserved.
|
||||||
*
|
*
|
||||||
* Contributor(s): Blender Foundation.
|
* Contributor(s): Blender Foundation.
|
||||||
*
|
*
|
||||||
* ***** END GPL LICENSE BLOCK *****
|
* ***** END GPL LICENSE BLOCK *****
|
||||||
|
@@ -4,7 +4,7 @@
|
|||||||
* This program is free software; you can redistribute it and/or
|
* This program is free software; you can redistribute it and/or
|
||||||
* modify it under the terms of the GNU General Public License
|
* modify it under the terms of the GNU General Public License
|
||||||
* as published by the Free Software Foundation; either version 2
|
* as published by the Free Software Foundation; either version 2
|
||||||
* of the License, or (at your option) any later version.
|
* of the License, or (at your option) any later version.
|
||||||
*
|
*
|
||||||
* This program is distributed in the hope that it will be useful,
|
* This program is distributed in the hope that it will be useful,
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
@@ -906,7 +906,7 @@ void BM_log_face_added(BMLog *log, BMFace *f)
|
|||||||
/* Log a vertex as removed from the BMesh
|
/* Log a vertex as removed from the BMesh
|
||||||
*
|
*
|
||||||
* A couple things can happen here:
|
* A couple things can happen here:
|
||||||
*
|
*
|
||||||
* If the vertex was added as part of the current log entry, then it's
|
* If the vertex was added as part of the current log entry, then it's
|
||||||
* deleted and forgotten about entirely. Its unique ID is returned to
|
* deleted and forgotten about entirely. Its unique ID is returned to
|
||||||
* the unused pool.
|
* the unused pool.
|
||||||
@@ -950,7 +950,7 @@ void BM_log_vert_removed(BMLog *log, BMVert *v, const int cd_vert_mask_offset)
|
|||||||
/* Log a face as removed from the BMesh
|
/* Log a face as removed from the BMesh
|
||||||
*
|
*
|
||||||
* A couple things can happen here:
|
* A couple things can happen here:
|
||||||
*
|
*
|
||||||
* If the face was added as part of the current log entry, then it's
|
* If the face was added as part of the current log entry, then it's
|
||||||
* deleted and forgotten about entirely. Its unique ID is returned to
|
* deleted and forgotten about entirely. Its unique ID is returned to
|
||||||
* the unused pool.
|
* the unused pool.
|
||||||
|
@@ -21,7 +21,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/** \file blender/bmesh/operators/bmo_create.c
|
/** \file blender/bmesh/operators/bmo_create.c
|
||||||
* \ingroup bmesh
|
* \ingroup bmesh
|
||||||
*
|
*
|
||||||
* Create faces or edges (Fkey by default).
|
* Create faces or edges (Fkey by default).
|
||||||
*/
|
*/
|
||||||
|
@@ -60,7 +60,7 @@ bool AnimationExporter::is_flat_line(std::vector<float> &values, int channel_cou
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
/*
|
/*
|
||||||
* This function creates a complete LINEAR Collada <Animation> Entry with all needed
|
* This function creates a complete LINEAR Collada <Animation> Entry with all needed
|
||||||
* <source>, <sampler>, and <channel> entries.
|
* <source>, <sampler>, and <channel> entries.
|
||||||
* This is is used for creating sampled Transformation Animations for either:
|
* This is is used for creating sampled Transformation Animations for either:
|
||||||
*
|
*
|
||||||
@@ -78,8 +78,8 @@ bool AnimationExporter::is_flat_line(std::vector<float> &values, int channel_cou
|
|||||||
* axis_name = "" (actually not used)
|
* axis_name = "" (actually not used)
|
||||||
* is_rot = false (see xxx below)
|
* is_rot = false (see xxx below)
|
||||||
*
|
*
|
||||||
* xxx: I tried to create a 3 axis rotation animation
|
* xxx: I tried to create a 3 axis rotation animation
|
||||||
* like for translation or scale. But i could not
|
* like for translation or scale. But i could not
|
||||||
* figure out how to setup the channel for this case.
|
* figure out how to setup the channel for this case.
|
||||||
* So for now rotations are exported as 3 separate 1-axis collada animations
|
* So for now rotations are exported as 3 separate 1-axis collada animations
|
||||||
* See export_sampled_animation() further down.
|
* See export_sampled_animation() further down.
|
||||||
@@ -1035,8 +1035,8 @@ void AnimationExporter::evaluate_anim_with_constraints(Object *ob, float ctime)
|
|||||||
/*
|
/*
|
||||||
* ob is needed to aply parent inverse information to fcurve.
|
* ob is needed to aply parent inverse information to fcurve.
|
||||||
* TODO: Here we have to step over all keyframes for each object and for each fcurve.
|
* TODO: Here we have to step over all keyframes for each object and for each fcurve.
|
||||||
* Instead of processing each fcurve one by one,
|
* Instead of processing each fcurve one by one,
|
||||||
* step over the animation from keyframe to keyframe,
|
* step over the animation from keyframe to keyframe,
|
||||||
* then create adjusted fcurves (and entries) for all affected objects.
|
* then create adjusted fcurves (and entries) for all affected objects.
|
||||||
* Then we would need to step through the scene only once.
|
* Then we would need to step through the scene only once.
|
||||||
*/
|
*/
|
||||||
@@ -1572,7 +1572,7 @@ std::string AnimationExporter::get_camera_param_sid(char *rna_path, int tm_type,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Assign sid of the animated parameter or transform for rotation,
|
* Assign sid of the animated parameter or transform for rotation,
|
||||||
* axis name is always appended and the value of append_axis is ignored
|
* axis name is always appended and the value of append_axis is ignored
|
||||||
*/
|
*/
|
||||||
std::string AnimationExporter::get_transform_sid(char *rna_path, int tm_type, const char *axis_name, bool append_axis)
|
std::string AnimationExporter::get_transform_sid(char *rna_path, int tm_type, const char *axis_name, bool append_axis)
|
||||||
|
@@ -869,7 +869,7 @@ void AnimationImporter::apply_matrix_curves(Object *ob, std::vector<FCurve *>& a
|
|||||||
/*
|
/*
|
||||||
* This function returns the aspet ration from the Collada camera.
|
* This function returns the aspet ration from the Collada camera.
|
||||||
*
|
*
|
||||||
* Note:COLLADA allows to specify either XFov, or YFov alone.
|
* Note:COLLADA allows to specify either XFov, or YFov alone.
|
||||||
* In that case the aspect ratio can be determined from
|
* In that case the aspect ratio can be determined from
|
||||||
* the viewport aspect ratio (which is 1:1 ?)
|
* the viewport aspect ratio (which is 1:1 ?)
|
||||||
* XXX: check this: its probably wrong!
|
* XXX: check this: its probably wrong!
|
||||||
|
@@ -307,7 +307,7 @@ void bc_bubble_sort_by_Object_name(LinkNode *export_set)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Check if a bone is the top most exportable bone in the bone hierarchy.
|
/* Check if a bone is the top most exportable bone in the bone hierarchy.
|
||||||
* When deform_bones_only == false, then only bones with NO parent
|
* When deform_bones_only == false, then only bones with NO parent
|
||||||
* can be root bones. Otherwise the top most deform bones in the hierarchy
|
* can be root bones. Otherwise the top most deform bones in the hierarchy
|
||||||
* are root bones.
|
* are root bones.
|
||||||
*/
|
*/
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@@ -326,7 +326,7 @@ void COM_execute(RenderData *rd, Scene *scene, bNodeTree *editingtree, int rende
|
|||||||
void COM_deinitialize(void);
|
void COM_deinitialize(void);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Clear all compositor caches. (Compositor system will still remain available).
|
* @brief Clear all compositor caches. (Compositor system will still remain available).
|
||||||
* To deinitialize the compositor use the COM_deinitialize method.
|
* To deinitialize the compositor use the COM_deinitialize method.
|
||||||
*/
|
*/
|
||||||
// void COM_clearCaches(void); // NOT YET WRITTEN
|
// void COM_clearCaches(void); // NOT YET WRITTEN
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Lukas Toenne
|
* Lukas Toenne
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Lukas Toenne
|
* Lukas Toenne
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Lukas Toenne
|
* Lukas Toenne
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Lukas Toenne
|
* Lukas Toenne
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Lukas Toenne
|
* Lukas Toenne
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Lukas Toenne
|
* Lukas Toenne
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Lukas Toenne
|
* Lukas Toenne
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Lukas Toenne
|
* Lukas Toenne
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
@@ -15,8 +15,8 @@
|
|||||||
* along with this program; if not, write to the Free Software Foundation,
|
* along with this program; if not, write to the Free Software Foundation,
|
||||||
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||||
*
|
*
|
||||||
* Contributor:
|
* Contributor:
|
||||||
* Jeroen Bakker
|
* Jeroen Bakker
|
||||||
* Monique Dewanchand
|
* Monique Dewanchand
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user