p.print("volatile int " + DUMMY_VOLATILE + ";\n");
    private void generateHeader()     {        p.print("#include <raw.h>\n");        p.print("#include \"/home/bits6/mgordon/streams/include/raw_streaming_gdn.h\"\n");        p.print("#include <stdlib.h>\n");        p.print("#include <math.h>\n\n");                        //if we are number gathering and this is the sink, generate the dummy        //vars for the assignment of the print expression.        /*          if (KjcOptions.numbers > 0 && NumberGathering.successful &&          self == NumberGathering.sink.contents) {          p.print("int dummyInt;\n");          p.print("float dummyFloat;\n");          }        */        //      print the typedefs for the rotating buffers        if (!KjcOptions.magicdram) {            p.print(CommunicateAddrs.getRotationTypes());        }                if (KjcOptions.altcodegen && !KjcOptions.decoupled){            p.print(getNetRegsDecls());        }                if (KjcOptions.decoupled) {            p.print("float " + Util.CSTOFPVAR + ";\n");            p.print("float " + Util.CSTIFPVAR + ";\n");            p.print("int " + Util.CSTOINTVAR + ";\n");            p.print("int " + Util.CSTIINTVAR + ";\n");        }                //if there are structures in the code, include        //the structure definition header files        //      if (SpaceTimeBackend.structures.length > 0)         // p.print("#include \"structs.h\"\n");        //print the extern for the function to init the         p.print("void raw_init();\n");        p.print("void raw_init2();\n");        if (SpaceTimeBackend.FILTER_DEBUG_MODE) {            p.print("void static_send_print(");            p.print("int i) {\n");            p.print("\tprint_int(i);\n");            p.print("\tstatic_send(i);\n");            p.print("}\n\n");            p.print("void static_send_print_f(");            p.print("float f) {\n");            p.print("\tprint_float(f);\n");            p.print("\tstatic_send(f);\n");            p.print("}\n\n");        }    }