1 #ifndef SUMA_NIML_DEFINED
2 #define SUMA_NIML_DEFINED
3 
4 typedef struct {
5    THD_3dim_dataset *dset;
6    int at_sb;
7 } SUMA_SEND_2AFNI;
8 
9 int SUMA_init_ports_assignments(SUMA_CommonFields *cf);
10 NI_element * SUMA_makeNI_SurfIXYZ (SUMA_SurfaceObject *SO);
11 int SUMA_offset_NI_SurfIXYZ (NI_element *nel, float *delta);
12 NI_element * SUMA_makeNI_SurfIJK (SUMA_SurfaceObject *SO);
13 NI_element * SUMA_makeNI_SurfINORM (SUMA_SurfaceObject *SO);
14 Boolean SUMA_niml_workproc( XtPointer thereiselvis );
15 Boolean SUMA_workprocess( XtPointer fred );
16 void SUMA_remove_workproc( XtWorkProc func );
17 void SUMA_register_workproc( XtWorkProc func , XtPointer data );
18 NI_element * SUMA_makeNI_CrossHair (SUMA_SurfaceViewer *sv);
19 NI_group * SUMA_makeNI_InstaTract_Query (SUMA_SurfaceViewer *sv);
20 SUMA_Boolean SUMA_nel_stdout (NI_element *nel);
21 void SUMA_remove_workproc2( XtWorkProc func , XtPointer data );
22 SUMA_Boolean SUMA_CanTalkToAfni (SUMA_DO *dov, int N_dov);
23 SUMA_Boolean SUMA_Write_DrawnROI_NIML (SUMA_DRAWN_ROI **ROIv, int N_ROI, char *filename, int Format);
24 SUMA_NIML_DRAWN_ROI * SUMA_Free_NIMLDrawROI (SUMA_NIML_DRAWN_ROI *nimlROI);
25 SUMA_NIML_DRAWN_ROI * SUMA_DrawnROI_to_NIMLDrawnROI (SUMA_DRAWN_ROI *ROI);
26 SUMA_DRAWN_ROI * SUMA_NIMLDrawnROI_to_DrawnROI (SUMA_NIML_DRAWN_ROI * nimlROI, SUMA_Boolean ForDisplay);
27 void SUMA_FakeIt (int Solo);
28 SUMA_Boolean SUMA_niml_call (SUMA_CommonFields *cf, int si, SUMA_Boolean fromSUMA);
29 SUMA_Boolean SUMA_niml_hangup (SUMA_CommonFields *cf, char *nel_stream_name, SUMA_Boolean fromSUMA, SUMA_Boolean killit);
30 int SUMA_which_stream_index (SUMA_CommonFields *cf, char *nel_stream_name);
31 SUMA_Boolean SUMA_SendSumaNewSurface(SUMA_SurfaceObject *SO, SUMA_COMM_STRUCT *cs);
32 SUMA_COMM_STRUCT *SUMA_Create_CommSrtuct(void);
33 SUMA_COMM_STRUCT *SUMA_Free_CommSrtuct(SUMA_COMM_STRUCT *cs);
34 SUMA_Boolean SUMA_SendToSuma (SUMA_SurfaceObject *SO, SUMA_COMM_STRUCT *cs, void *data, SUMA_DSET_TYPE dtype, int action);
35 SUMA_Boolean SUMA_SendToAfni (SUMA_COMM_STRUCT *cs, void *data, int action);
36 NI_element * SUMA_NodeVal2irgba_nel (SUMA_SurfaceObject *SO, float *val, char *instanceID, int cleanup);
37 NI_element * SUMA_Mesh_IJK2Mesh_IJK_nel (SUMA_SurfaceObject *SO, int *val, SUMA_Boolean cleanup, SUMA_DSET_TYPE dtype);
38 SUMA_Boolean SUMA_Mesh_IJK_nel2Mesh_IJK(SUMA_SurfaceObject *SO, NI_element *nel);
39 NI_element * SUMA_NodeXYZ2NodeXYZ_nel (SUMA_SurfaceObject *SO, float *val, SUMA_Boolean cleanup, SUMA_DSET_TYPE dtype);
40 SUMA_Boolean SUMA_NodeXYZ_nel2NodeXYZ (SUMA_SurfaceObject *SO, NI_element *nel);
41 SUMA_Boolean SUMA_Assign_HostName (SUMA_CommonFields *cf, char *HostName, int istream);
42 SUMA_Boolean SUMA_SendDset_Afni( NI_stream ns,  SUMA_SEND_2AFNI *SS2A, int all);
43 NI_element *SUMA_SOVolPar2VolPar_nel (SUMA_SurfaceObject *SO, SUMA_VOLPAR *VolPar, SUMA_DSET_TYPE dtype);
44 SUMA_Boolean SUMA_VolPar_nel2SOVolPar(SUMA_SurfaceObject *SO, NI_element *nel);
45 void SUMA_Wait_Till_Stream_Goes_Bad(SUMA_COMM_STRUCT *cs, int slp, int WaitMax, int verb);
46 
47 #endif
48