File: GxB_SelectOp_new.c

package info (click to toggle)
suitesparse 1%3A5.12.0%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 176,720 kB
  • sloc: ansic: 1,193,914; cpp: 31,704; makefile: 6,638; fortran: 1,927; java: 1,826; csh: 765; ruby: 725; sh: 529; python: 333; perl: 225; sed: 164; awk: 35
file content (33 lines) | stat: -rw-r--r-- 1,281 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
//------------------------------------------------------------------------------
// GxB_SelectOp_new: create a new user-defined select operator (historical)
//------------------------------------------------------------------------------

// SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2022, All Rights Reserved.
// SPDX-License-Identifier: Apache-2.0

//------------------------------------------------------------------------------

// This function is historical.  Use GrB_IndexUnaryOp_new with GrB_select,
// instead of a user-defined GxB_SelectOp with GxB_select.

// The select function signature must be:

//      bool f (GrB_Index i, GrB_Index j, GrB_Index nrows, GrB_Index ncols,
//              const void *x, const void *thunk) ;

#include "GB.h"

#undef GxB_SelectOp_new
#undef GxM_SelectOp_new

GrB_Info GXB (SelectOp_new)         // create a new user-defined select operator
(
    GxB_SelectOp *selectop,         // handle for the new select operator
    GxB_select_function function,   // pointer to the select function
    GrB_Type xtype,                 // type of input x, or NULL if type-generic
    GrB_Type ttype                  // type of input thunk, or NULL if not used
)
{ 
    return (GB_SelectOp_new (selectop, function, xtype, ttype, NULL)) ;
}