Esempio n. 1
0
int compare_toc(toc_smart_ptr& pattern, info_base* base_ptr)
{
   char pattern_buf[LARGE_BUFSIZ];
   ostringstream pattern_out(pattern_buf, LARGE_BUFSIZ, ios::out);
   print_toc(pattern, pattern_out);

   toc_smart_ptr x(base_ptr, pattern.toc_node_oid());
   char db_buf[LARGE_BUFSIZ];
   ostringstream db_out(db_buf, LARGE_BUFSIZ, ios::out);
   print_toc(x, db_out);

   return compare_stream(pattern_out, db_out);
}
Esempio n. 2
0
int compare_graphic(graphic_smart_ptr& pattern, info_base* base_ptr)
{
   char pattern_buf[LARGE_BUFSIZ];
   ostrstream pattern_out(pattern_buf, LARGE_BUFSIZ, ios::out);
   print_graphic(pattern, pattern_out, false);

   char loc[BUFSIZ];
   strcpy(loc, pattern.locator());

   graphic_smart_ptr x( base_ptr, loc );
   char db_buf[LARGE_BUFSIZ];
   ostrstream db_out(db_buf, LARGE_BUFSIZ, ios::out);
   print_graphic(x, db_out, false);

   return compare_stream(pattern_out, db_out);
}
Esempio n. 3
0
int compare_stylesheet(stylesheet_smart_ptr& pattern, info_base* base_ptr)
{
   char pattern_buf[LARGE_BUFSIZ];
   ostringstream pattern_out(pattern_buf, LARGE_BUFSIZ, ios::out);
   print_stylesheet(pattern, pattern_out);

   char loc[BUFSIZ];
   int len = MIN(strlen(pattern.name()), BUFSIZ - 1);
   *((char *) memcpy(loc, pattern.name(), len) + len) = '\0';

   stylesheet_smart_ptr x( base_ptr, loc );
   char db_buf[LARGE_BUFSIZ];
   ostringstream db_out(db_buf, LARGE_BUFSIZ, ios::out);
   print_stylesheet(x, db_out);

   return compare_stream(pattern_out, db_out);
}