/* mod_gen Version 1 */ /* Module Name: "Read IEEE" (Input) (Subroutine) */ /* Author: John Shalf,50,50,none */ /* Date Created: Wed Mar 26 13:49:06 1997 */ /* */ /* This file is automatically generated by the Module Generator (mod_gen)*/ /* Please do not modify or move the contents of this comment block as */ /* mod_gen needs it in order to read module sources back in. */ /* */ /* output 0 "out" field */ /* param 0 "Filename" browser "" "" ":" */ /* param 1 "RecordNumber" idial 0 0 1 */ /* End of Module Description Comments */ #include #include #include #include /* *****************************************/ /* Module Description */ /* *****************************************/ int Read_IEEE_desc() { int in_port, out_port, param, iresult; extern int Read_IEEE_compute(); AVSset_module_name("Read IEEE", MODULE_DATA); /* Output Port Specifications */ out_port = AVScreate_output_port("out", "field"); /* Parameter Specifications */ param = AVSadd_parameter("Filename", "string", "", "", ":"); AVSconnect_widget(param, "browser"); param = AVSadd_parameter("RecordNumber", "integer", 0, 0, 1); AVSconnect_widget(param, "idial"); /* param = AVSadd_parameter("SetExtents","boolean",0,0,0); AVSconnect_widget(param,"toggle"); param = AVSadd_parameter("SetCoordinates","choice", "Set Min/Max", "Set Min/Max:Set Edges:Set None", ":"); AVSconnect_widget(param,"radio_buttons"); */ AVSset_compute_proc(Read_IEEE_compute); return(1); } /* *****************************************/ /* Module Compute Routine */ /* *****************************************/ int Read_IEEE_compute(out,Filename,RecordNumber,SetExtents,SetCoordinates) AVSfield **out; char *Filename; int RecordNumber; int SetExtents; char *SetCoordinates; { /* Its a pain to integrate C++ directly into the Read_IEEE code and yet so much nicer to use the C++ interface than the C interface. So we'll just call a c++ compute subroutine that is located in another object file, "AVSreadcpp.cc". There is a version of this same thing in AVSreadhlcpp.cc which makes use of the even higher level (and hence more convenient) user interface. However there is some concern that it will be harder to debug IEEEIO if we layer the interface too much so its back to the low-level interface again. */ extern int readIEEE(); return readIEEE(out,Filename,RecordNumber,1,"Set Edges"); /* return readIEEE(out,Filename,RecordNumber,SetExtents,SetCoordinates); */ } /* ***********************************************************************/ /* Initialization for modules contained in this file. */ /* ***********************************************************************/ static int ((*mod_list[])()) = { Read_IEEE_desc }; #define NMODS (sizeof(mod_list) / sizeof(char *)) AVSinit_modules() { AVSinit_from_module_list(mod_list, NMODS); } /* ----> START OF USER-SUPPLIED CODE SECTION #4 (SUBROUTINES, FUNCTIONS, UTILITY ROUTINES)*/ /* <---- END OF USER-SUPPLIED CODE SECTION #4 */