int main(int argc, char *argv[]) { PNMreader reader(argv[1]); Crop crop; crop.SetRegion(300, 1400, 50, 400); crop.SetInput(reader.GetOutput()); Transpose t; t.SetInput(crop.GetOutput()); Invert i; i.SetInput(t.GetOutput()); Color color(50, 1101, 0, 0, 128); LRConcat lr; lr.SetInput(color.GetOutput()); lr.SetInput2(i.GetOutput()); Color white(401, 1101, 255, 255, 255); Checkerboard cb; cb.SetInput(lr.GetOutput()); cb.SetInput2(white.GetOutput()); cb.GetOutput()->Update(); PNMwriter writer; writer.SetInput(cb.GetOutput()); writer.Write(argv[2]); CheckSum cs; cs.SetInput(cb.GetOutput()); cs.OutputCheckSum(); Logger::Finalize(); }
int main(int argc, char *argv[]) { if (argc < 2) { cerr << "Usage: " << argv[0] << " <username>" << endl; exit(EXIT_FAILURE); } char event[1024]; sprintf(event, "Entered program from %s\n", argv[1]); Logger::LogEvent(event); /* START STUDENT MODIFIABLE SECTION */ PNMreader reader("../images/hank.pnm"); Checkerboard b; Invert i; i.SetInput(reader.GetOutput()); b.SetInput(reader.GetOutput()); b.SetInput2(i.GetOutput()); LRConcat lr; lr.SetInput(i.GetOutput()); lr.SetInput2(b.GetOutput()); LRConcat LR; LR.SetInput(reader.GetOutput()); LR.SetInput2(i.GetOutput()); TBConcat tb; tb.SetInput(lr.GetOutput()); tb.SetInput2(LR.GetOutput()); LRConcat Lr; Lr.SetInput(tb.GetOutput()); Lr.SetInput2(tb.GetOutput()); Image *finalImage = Lr.GetOutput(); /* END STUDENT MODIFIABLE SECTION */ try { finalImage->Update(); } catch (DataFlowException &) { ofstream ofile("my_exception"); if (ofile.fail()) { cerr << "Something is wrong ... can't open my_exception" << " for opening" << endl; exit(EXIT_FAILURE); } ofile << "Exception found!" << endl; exit(EXIT_SUCCESS); } CheckSum cs; cs.SetInput(finalImage); cs.OutputCheckSum("my_checksum"); if (argc == 3) { PNMwriter writer; writer.SetInput(finalImage); writer.Write("3H.pnm"); } Logger::Finalize(); }
int main(int argc, char *argv[]) { if (argc < 2) { cerr << "Usage: " << argv[0] << " <username>" << endl; exit(EXIT_FAILURE); } char event[1024]; sprintf(event, "Entered program from %s\n", argv[1]); Logger::LogEvent(event); /* START STUDENT MODIFIABLE SECTION */ PNMreader reader("../images/puddles.pnm"); Shrinker s1; LRConcat lr; Transpose t; Invert i; s1.SetInput(reader.GetOutput()); i.SetInput(s1.GetOutput()); lr.SetInput(s1.GetOutput()); lr.SetInput2(i.GetOutput()); t.SetInput(lr.GetOutput()); /* Make the image "finalImage" be the image at the bottom of your pipeline */ Image *finalImage = t.GetOutput(); /* END STUDENT MODIFIABLE SECTION */ try { finalImage->Update(); } catch (DataFlowException &) { ofstream ofile("my_exception"); if (ofile.fail()) { cerr << "Something is wrong ... can't open my_exception" << " for opening" << endl; exit(EXIT_FAILURE); } ofile << "Exception found!" << endl; exit(EXIT_SUCCESS); } CheckSum cs; cs.SetInput(finalImage); cs.OutputCheckSum("my_checksum"); if (argc == 3) { PNMwriter writer; writer.SetInput(finalImage); writer.Write("3H.pnm"); } Logger::Finalize(); }