RNAlib-2.4.5
char_stream.h
Go to the documentation of this file.
1 #ifndef VIENNA_RNA_PACKAGE_CHAR_STREAM_H
2 #define VIENNA_RNA_PACKAGE_CHAR_STREAM_H
3 
15 #include <stdarg.h>
16 
17 /* below is our own implementation of a dynamic char * stream */
18 typedef struct vrna_cstr_s *vrna_cstr_t;
19 
20 vrna_cstr_t
21 vrna_cstr(size_t size,
22  FILE *output);
23 
24 
25 void
26 vrna_cstr_free(vrna_cstr_t buf);
27 
28 
29 void
30 vrna_cstr_close(vrna_cstr_t buf);
31 
32 
33 void
34 vrna_cstr_fflush(struct vrna_cstr_s *buf);
35 
36 
37 const char *
38 vrna_cstr_string(vrna_cstr_t buf);
39 
40 
41 int
42 vrna_cstr_vprintf(vrna_cstr_t buf,
43  const char *format,
44  va_list args);
45 
46 
47 int
48 vrna_cstr_printf(vrna_cstr_t buf,
49  const char *format,
50  ...);
51 
52 
53 void
54 vrna_cstr_message_info(vrna_cstr_t buf,
55  const char *format,
56  ...);
57 
58 
59 void
60 vrna_cstr_message_vinfo(vrna_cstr_t buf,
61  const char *format,
62  va_list args);
63 
64 
65 void
66 vrna_cstr_print_fasta_header(vrna_cstr_t buf,
67  const char *head);
68 
69 
70 void
71 vrna_cstr_printf_structure(struct vrna_cstr_s *buf,
72  const char *structure,
73  const char *format,
74  ...);
75 
76 
77 void
78 vrna_cstr_vprintf_structure(struct vrna_cstr_s *buf,
79  const char *structure,
80  const char *format,
81  va_list args);
82 
83 
88 #endif