コード例 #1
0
def decl_any_arr_arg(dtype, dim, element_shape, layout):
    dtype = cook_dtype(dtype)
    arg_id = _ti_core.decl_arg(dtype, True)
    element_dim = len(element_shape)
    if layout == Layout.AOS:
        element_dim = -element_dim
    return AnyArray(
        _ti_core.make_external_tensor_expr(dtype, dim, arg_id, element_dim),
        element_shape, layout)
コード例 #2
0
ファイル: kernel_arguments.py プロジェクト: hooyuser/taichi
def decl_ext_arr_arg(dtype, dim):
    dtype = cook_dtype(dtype)
    arg_id = _ti_core.decl_arg(dtype, True)
    return Expr(_ti_core.make_external_tensor_expr(dtype, dim, arg_id))
コード例 #3
0
ファイル: kernel_arguments.py プロジェクト: hooyuser/taichi
def decl_scalar_arg(dtype):
    dtype = cook_dtype(dtype)
    arg_id = _ti_core.decl_arg(dtype, False)
    return Expr(_ti_core.make_arg_load_expr(arg_id, dtype))
コード例 #4
0
def decl_sparse_matrix():
    ptr_type = cook_dtype(u64)
    # Treat the sparse matrix argument as a scalar since we only need to pass in the base pointer
    arg_id = _ti_core.decl_arg(ptr_type, False)
    return SparseMatrixProxy(_ti_core.make_arg_load_expr(arg_id, ptr_type))
コード例 #5
0
ファイル: kernel_arguments.py プロジェクト: quadpixels/taichi
def decl_any_arr_arg(dtype, dim, element_shape, layout):
    dtype = cook_dtype(dtype)
    arg_id = _ti_core.decl_arg(dtype, True)
    return AnyArray(_ti_core.make_external_tensor_expr(dtype, dim, arg_id),
                    element_shape, layout)