Blender  V3.3
data_transfer_intern.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later
2  * Copyright 2014 Blender Foundation. All rights reserved. */
3 
8 #pragma once
9 
10 #include "BKE_customdata.h" /* For cd_datatransfer_interp */
11 
12 #ifdef __cplusplus
13 extern "C" {
14 #endif
15 
16 struct CustomData;
18 struct ListBase;
19 
20 float data_transfer_interp_float_do(int mix_mode, float val_dst, float val_src, float mix_factor);
21 
23  int data_type,
24  int mix_mode,
25  float mix_factor,
26  const float *mix_weights,
27  const void *data_src,
28  void *data_dst,
29  int data_src_n,
30  int data_dst_n,
31  size_t elem_size,
32  size_t data_size,
33  size_t data_offset,
34  uint64_t data_flag,
36  void *interp_data);
37 
38 /* Type-specific. */
39 
41  int mix_mode,
42  float mix_factor,
43  const float *mix_weights,
44  int num_elem_dst,
45  bool use_create,
46  bool use_delete,
47  struct Object *ob_src,
48  struct Object *ob_dst,
49  struct CustomData *cd_src,
50  struct CustomData *cd_dst,
51  bool use_dupref_dst,
52  int fromlayers,
53  int tolayers);
54 
55 /* Defined in customdata.c */
56 
61  void *data_dst,
62  const void **sources,
63  const float *weights,
64  int count,
65  float mix_factor);
66 
67 #ifdef __cplusplus
68 }
69 #endif
CustomData interface, see also DNA_customdata_types.h.
void(* cd_datatransfer_interp)(const struct CustomDataTransferLayerMap *laymap, void *dest, const void **sources, const float *weights, int count, float mix_factor)
bool data_transfer_layersmapping_vgroups(struct ListBase *r_map, int mix_mode, float mix_factor, const float *mix_weights, int num_elem_dst, bool use_create, bool use_delete, struct Object *ob_src, struct Object *ob_dst, struct CustomData *cd_src, struct CustomData *cd_dst, bool use_dupref_dst, int fromlayers, int tolayers)
Definition: deform.c:1335
float data_transfer_interp_float_do(int mix_mode, float val_dst, float val_src, float mix_factor)
void data_transfer_layersmapping_add_item(struct ListBase *r_map, int data_type, int mix_mode, float mix_factor, const float *mix_weights, const void *data_src, void *data_dst, int data_src_n, int data_dst_n, size_t elem_size, size_t data_size, size_t data_offset, uint64_t data_flag, cd_datatransfer_interp interp, void *interp_data)
void customdata_data_transfer_interp_normal_normals(const CustomDataTransferLayerMap *laymap, void *data_dst, const void **sources, const float *weights, int count, float mix_factor)
Definition: customdata.cc:4952
int count
ccl_device_inline float2 interp(const float2 &a, const float2 &b, float t)
Definition: math_float2.h:232
unsigned __int64 uint64_t
Definition: stdint.h:90