KSFoundation  [October2024]
A platform for structured EPIC programming on GE MR systems
ksprop.h File Reference
#include "ksinversion.h"

Data Structures

struct  KSPROP2_METADATA
 
struct  KSPROP_DESIGN
 
struct  KSPROP_STATE
 
struct  KSPROP_SETTINGS
 

Macros

#define KSPROP_MAXBLADES   256
 
#define GOLDEN_SECTION   1.618
 
#define KSPROP2_INIT_METADATA   {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
 
#define KSPROP_INIT_DESIGN   {KSPROP_LINEAR_ANGLE, KSPROP_LOOPMODE_INNER_BLADE, KSPROP_COLORED_NOISE, 1.0f, 0, 1}
 
#define KSPROP_INIT_STATE   {KS_NOTSET, KS_INITVALUE(KSPROP_MAXBLADES,0)}
 
#define KSPROP_DEFAULT_SETTINGS   {KSPROP_INIT_DESIGN, KSPROP_INIT_STATE}
 

Enumerations

enum  KSPROP_MODE { KSPROP_GOLDEN_ANGLE = 0, KSPROP_LINEAR_ANGLE = 1 }
 
enum  KSPROP_LOOPMODE { KSPROP_LOOPMODE_INNER_PASS = 0, KSPROP_LOOPMODE_INNER_BLADE = 1 }
 
enum  KSPROP_NOISEMODE { KSPROP_COLORED_NOISE = 0, KSPROP_WHITE_NOISE_RADIAL = 1, KSPROP_WHITE_NOISE_SIMPLE_RADIAL = 2, KSPROP_WHITE_NOISE_TAILORED = 3 }
 

Functions

void ksprop_init_settings (KSPROP_SETTINGS *const prop)
 
STATUS ksprop_eval (KSPROP_SETTINGS *prop, KS_KSPACE_DESIGN *kdesign)
 
void ksprop_attach_metadata (WF_PULSE_ADDR echo, const KS_DYNAMIC_STATE *dynamic, const char *custom)
 
s64 ksprop_scan_singlepass (const KSPROP_SETTINGS *prop, KSSCAN_LOOP_CONTROL *loopctrl, KS_DYNAMIC_STATE *dynamic, KS_CORESLICETIME coreslice(const SCAN_INFO *slice_pos, KS_DYNAMIC_STATE *dynamic))
 
s64 ksprop_scan_singlepass_inv (const KSPROP_SETTINGS *prop, KSINV_LOOP_CONTROL *inv_loopctrl, KS_DYNAMIC_STATE *dynamic, KS_CORESLICETIME coreslice(const SCAN_INFO *slice_pos, KS_DYNAMIC_STATE *dynamic), KS_CORESLICETIME irslice(const SCAN_INFO *slice_pos, KS_DYNAMIC_STATE *dynamic))
 
s64 ksprop_scan_scanloop (const KSPROP_SETTINGS *prop, KSSCAN_LOOP_CONTROL *loopctrl, KS_DYNAMIC_STATE *dynamic, KS_CORESLICETIME coreslice(const SCAN_INFO *slice_pos, KS_DYNAMIC_STATE *dynamic))
 
s64 ksprop_scan_scanloop_inv (const KSPROP_SETTINGS *prop, KSINV_LOOP_CONTROL *inv_loopctrl, KS_DYNAMIC_STATE *dynamic, KS_CORESLICETIME coreslice(const SCAN_INFO *slice_pos, KS_DYNAMIC_STATE *dynamic), KS_CORESLICETIME irslice(const SCAN_INFO *slice_pos, KS_DYNAMIC_STATE *dynamic))
 

Detailed Description

This file contains the sequence-independent definitions for propeller