KSFoundation  [April-2021]
A platform for simpler EPIC programming on GE MR systems
Data Structures
Here are the data structures with brief descriptions:
 CIndices
 CKS_BASE

(Internal use) Structure being a part of various sequence object to keep count of instances on HOST and TGT

 CKS_DATASTORE_STRUCT_DYNAMIC
 CKS_DATASTORE_STRUCT_INFO
 CKS_DATASTORETAG
 CKS_DIXON_ASYMREADWAVE
 CKS_DIXON_DUALREADTRAP
 CKS_EPI

Composite sequence object for EPI readout

 CKS_GRADRFCTRL

typedef struct that is a part of the KS_SEQ_CONTROL typedef struct, used internally to collect gradient & RF usage for heating and SAR calcs. Should not be used directly.

 CKS_ISIROT

Struct for in-sequence rotations using ISI vector interupts

 CKS_PHASEENCODING_COORD

Struct holding a 3D k-space phase encoding location (ky,kz)

 CKS_PHASEENCODING_PLAN

Phase encoding plan for the sequence (2D and 3D)

 CKS_PHASER

Composite sequence object for phase encoding using a trapezoid gradient

 CKS_READ

Core sequence object that handles a data acquisition window

 CKS_READTRAP

Composite sequence object for data readout using a trapezoid gradient

 CKS_READWAVE
 CKS_RF

Composite sequence object for RF (with optional OMEGA & THETA pulses)

 CKS_SAR

Struct to keep SAR parameters together. Used in ks_eval_gradrflimits() and GEReq_eval_checkTR_SAR_calcs()

 CKS_SELRF

Composite sequence object for slice-selective RF

 CKS_SEQ_COLLECTION

Collection handle of all sequence modules involved in the pulse sequence, used for RF scaling, TR timing and SAR calculations

 CKS_SEQ_CONTROL

A multi-purpose controller struct for each sequence module to facilitate RF scaling, SAR calculations, sequence duration and sequence switching

 CKS_SEQ_HANDLE

Internal typedef struct that is a part of the KS_SEQ_CONTROL typedef struct. Should not be used directly

 CKS_SEQLOC

typedef struct used as argument to ks_pg_*** functions to control where and when to place a sequence object (e.g. KS_TRAP)

 CKS_SLICE_PLAN

Struct holding all information about slice locations and aquisition order

 CKS_SMS_INFO

Internal typedef struct that is a part of the KS_SELRF typedef struct, used to store information about the pulses SMS properties.

 CKS_TRAP

Core sequence object for making trapezoids on X,Y,Z, and OMEGA boards

 CKS_WAIT

Core sequence object that adds wait periods in the pulse sequence (see ks_eval_wait(), ks_pg_wait()). Can be placed on any sequence board

 CKS_WAVE

Core sequence object making arbitrary waveforms on any board (using float data format)

 CKS_WFINSTANCE

(Internal use) Structure being a part of various sequence objects to sort them in time across boards

 CKSCHEMSAT_PARAMS

typedef struct holding steering parameters for KSChemSat

 CKSCHEMSAT_SEQUENCE

typedef struct holding all information about the KSChemSat sequence module incl. all gradients and waveforms

 CKSEPI_DATATAG
 CKSEPI_FLEET_SEQUENCE

FLEET sequence module for GRAPPA calibration volume in the presence of motion

 CKSEPI_SEQUENCE

typedef struct holding all all gradients and waveforms for the ksepi sequence

 CKSFSE_SEQUENCE

typedef struct holding all all gradients and waveforms for the ksfse sequence

 CKSGRE_SEQUENCE

typedef struct holding all all gradients and waveforms for the ksgre sequence

 CKSINV_PARAMS

typedef struct holding steering parameters for KSInversion

 CKSINV_SEQUENCE

typedef struct holding all information about the KSInversion sequence module incl. all gradients and waveforms

 CKSSPSAT_LOC

typedef struct holding information about one spatial saturation pulse location and thickness

 CKSSPSAT_PARAMS

typedef struct holding steering parameters for KSSpSat

 CKSSPSAT_SEQUENCE

typedef struct holding all all gradients and waveforms for the KSSpSat sequence module

 CKSSPSAT_VOLBORDER

typedef struct holding information about the prescribed FOV border (3D)