static inline void apply(LineString const& ls, SegmentIdentifier const& seg_id, signed_size_type to_index, RobustPolicy const& robust_policy, RangeOut& current_output) { signed_size_type const from_index = seg_id.segment_index + 1; // Sanity check if ( from_index > to_index || from_index < 0 || to_index >= static_cast<signed_size_type>(boost::size(ls)) ) { return; } signed_size_type const count = to_index - from_index + 1; typename boost::range_iterator<LineString const>::type it = boost::begin(ls) + from_index; for (signed_size_type i = 0; i < count; ++i, ++it) { append_to_output(current_output, *it, robust_policy, boost::integral_constant<bool, RemoveSpikes>()); } }
/** Create the output file. */ bool create_output_file() { int i; if (m_option.verbose) { printf("creating %s\n", m_output_file); } // Create empty output file if ((m_output_fp = fopen(m_output_file, "w")) == NULL) { printf("Error: Could not create output file: %s\n", m_output_file); return false; } // Loop thru all input files and append to output file if (m_option.verbose) { printf("from:\n"); } for (i = 0; i < m_input_file_len; ++i) { if (append_to_output(m_input_file[i])) { if (m_option.verbose) { printf("%s\n", m_input_file[i]); } } else if (m_option.verbose) { printf("%s (output failed)\n", m_input_file[i]); } } fclose(m_output_fp); return true; }
void pp_include(char *p) { parse_id(p, m_path_buf); if (append_to_output(m_path_buf)) { if (m_option.verbose) { printf("%s (included)\n", m_path_buf); } } else if (m_option.verbose) { printf("%s (include failed)\n", m_path_buf); } }