<<prev file | next file >>    view single page | view frames    summary: fields | routine    details: routine

Matrix/

make_selection.pro

Convert an array of selected values to an index array that identifies the selected values in a list or data array.

topmake_selection tools

result = make_selection(names, selnames, ONLY_VALID=ONLY_VALID, REQUIRED=REQUIRED, QUIET=QUIET)

Return value

A (long) array with indexes to reference the selected values in the NAMES array.

Parameters

names        in required

A list or array of values to choose from

selnames        in required

A list of selected values

Keywords

ONLY_VALID       

Return only indexes of found values. Values not found are skipped. Default is to return 1 index value for each SELNAME, which is -1 if SELNAME is not contained in NAMES. If ONLY_VALID is set, the -1 values will be deleted, and a value of -1 indicates that no SELNAME has been found at all.

REQUIRED       

Normally, MAKE_SELECTION will return indexes for all values that are found, simply ignoring the selected values that are not in the NAMES array (although an error message is displayed). Set this keyword to return with -1 as soon as a selected value is not found.

QUIET       

Suppress printing of the error message if a selected value is not found (the error condition will still be set).

Examples

IDL> names = [ 'Alfred','Anton','Peter','John','Mary'] IDL> index = MAKE_SELECTION(names,['Peter','Mary']) IDL> print,index 2 4 IDL> vals = indgen(20) IDL> index = MAKE_SELECTION(vals,[9,-5,8,7,7,8,9]) IDL> print,index 9 -1 8 7 7 8 9 IDL> index = MAKE_SELECTION(vals,[9,-5,8,7,7,8,9],/ONLY_VALID) IDL> print,index 9 8 7 7 8 9 IDL> index = MAKE_SELECTION(vals,[9,-5,8,7,7,8,9],/REQUIRED) IDL> print,index -1 IDL> index = MAKE_SELECTION(vals,[9,-5,8,7,7,8,9],/REQUIRED,/QUIET) % MAKE_SELECTION: Selected name not found in names array (-5)! IDL> print,index -1

Version history

Version

$Id: make_selection.pro 372 2008-08-08 12:31:53Z pinsard $

History

mgs, 28 Aug 1998: VERSION 1.00 mgs, 29 Aug 1998: - changed behavior and added ONLY_VALID keyword Copyright (C) 1998, Martin Schultz, Harvard University This software is provided as is without any warranty whatsoever. It may be freely used, copied or distributed for non-commercial purposes. This copyright notice must be kept with any copy of this software. If this software shall be used commercially or sold as part of a larger package, please contact the author to arrange payment. Bugs and comments should be directed to mgs@io.harvard.edu with subject "IDL routine make_selection"

Known issues

Restrictions

If the NAMES array contains multiple entries of the same value, only the index to the first entry will be returned. A selection can contain multiple instances of the same value. The index array will contain one entry per selected item (See example below)

Statistics

McCabe cyclic 8
McCabe essential 1
McCabe modular design 1
Produced by IDLdoc 2.0.