1 # This file was automatically generated by SWIG (http://www.swig.org).
4 # Don't modify this file, modify the SWIG interface instead.
9 @ISA = qw(Exporter DynaLoader);
10 package Amanda::Typesc;
11 bootstrap Amanda::Types;
12 package Amanda::Types;
15 # ---------- BASE METHODS -------------
17 package Amanda::Types;
20 my ($classname,$obj) = @_;
21 return bless $obj, $classname;
31 my ($self,$field) = @_;
32 my $member_func = "swig_${field}_get";
33 $self->$member_func();
37 my ($self,$field,$newval) = @_;
38 my $member_func = "swig_${field}_set";
39 $self->$member_func($newval);
48 # ------- FUNCTION WRAPPERS --------
50 package Amanda::Types;
53 ############# Class : Amanda::Types::dumpfile_t ##############
55 package Amanda::Types::dumpfile_t;
56 use vars qw(@ISA %OWNER %ITERATORS %BLESSEDMEMBERS);
57 @ISA = qw( Amanda::Types );
60 *swig_type_get = *Amanda::Typesc::dumpfile_t_type_get;
61 *swig_type_set = *Amanda::Typesc::dumpfile_t_type_set;
62 *swig_datestamp_get = *Amanda::Typesc::dumpfile_t_datestamp_get;
63 *swig_datestamp_set = *Amanda::Typesc::dumpfile_t_datestamp_set;
64 *swig_dumplevel_get = *Amanda::Typesc::dumpfile_t_dumplevel_get;
65 *swig_dumplevel_set = *Amanda::Typesc::dumpfile_t_dumplevel_set;
66 *swig_compressed_get = *Amanda::Typesc::dumpfile_t_compressed_get;
67 *swig_compressed_set = *Amanda::Typesc::dumpfile_t_compressed_set;
68 *swig_encrypted_get = *Amanda::Typesc::dumpfile_t_encrypted_get;
69 *swig_encrypted_set = *Amanda::Typesc::dumpfile_t_encrypted_set;
70 *swig_comp_suffix_get = *Amanda::Typesc::dumpfile_t_comp_suffix_get;
71 *swig_comp_suffix_set = *Amanda::Typesc::dumpfile_t_comp_suffix_set;
72 *swig_encrypt_suffix_get = *Amanda::Typesc::dumpfile_t_encrypt_suffix_get;
73 *swig_encrypt_suffix_set = *Amanda::Typesc::dumpfile_t_encrypt_suffix_set;
74 *swig_name_get = *Amanda::Typesc::dumpfile_t_name_get;
75 *swig_name_set = *Amanda::Typesc::dumpfile_t_name_set;
76 *swig_disk_get = *Amanda::Typesc::dumpfile_t_disk_get;
77 *swig_disk_set = *Amanda::Typesc::dumpfile_t_disk_set;
78 *swig_program_get = *Amanda::Typesc::dumpfile_t_program_get;
79 *swig_program_set = *Amanda::Typesc::dumpfile_t_program_set;
80 *swig_application_get = *Amanda::Typesc::dumpfile_t_application_get;
81 *swig_application_set = *Amanda::Typesc::dumpfile_t_application_set;
82 *swig_srvcompprog_get = *Amanda::Typesc::dumpfile_t_srvcompprog_get;
83 *swig_srvcompprog_set = *Amanda::Typesc::dumpfile_t_srvcompprog_set;
84 *swig_clntcompprog_get = *Amanda::Typesc::dumpfile_t_clntcompprog_get;
85 *swig_clntcompprog_set = *Amanda::Typesc::dumpfile_t_clntcompprog_set;
86 *swig_srv_encrypt_get = *Amanda::Typesc::dumpfile_t_srv_encrypt_get;
87 *swig_srv_encrypt_set = *Amanda::Typesc::dumpfile_t_srv_encrypt_set;
88 *swig_clnt_encrypt_get = *Amanda::Typesc::dumpfile_t_clnt_encrypt_get;
89 *swig_clnt_encrypt_set = *Amanda::Typesc::dumpfile_t_clnt_encrypt_set;
90 *swig_recover_cmd_get = *Amanda::Typesc::dumpfile_t_recover_cmd_get;
91 *swig_recover_cmd_set = *Amanda::Typesc::dumpfile_t_recover_cmd_set;
92 *swig_uncompress_cmd_get = *Amanda::Typesc::dumpfile_t_uncompress_cmd_get;
93 *swig_uncompress_cmd_set = *Amanda::Typesc::dumpfile_t_uncompress_cmd_set;
94 *swig_encrypt_cmd_get = *Amanda::Typesc::dumpfile_t_encrypt_cmd_get;
95 *swig_encrypt_cmd_set = *Amanda::Typesc::dumpfile_t_encrypt_cmd_set;
96 *swig_decrypt_cmd_get = *Amanda::Typesc::dumpfile_t_decrypt_cmd_get;
97 *swig_decrypt_cmd_set = *Amanda::Typesc::dumpfile_t_decrypt_cmd_set;
98 *swig_srv_decrypt_opt_get = *Amanda::Typesc::dumpfile_t_srv_decrypt_opt_get;
99 *swig_srv_decrypt_opt_set = *Amanda::Typesc::dumpfile_t_srv_decrypt_opt_set;
100 *swig_clnt_decrypt_opt_get = *Amanda::Typesc::dumpfile_t_clnt_decrypt_opt_get;
101 *swig_clnt_decrypt_opt_set = *Amanda::Typesc::dumpfile_t_clnt_decrypt_opt_set;
102 *swig_cont_filename_get = *Amanda::Typesc::dumpfile_t_cont_filename_get;
103 *swig_cont_filename_set = *Amanda::Typesc::dumpfile_t_cont_filename_set;
104 *swig_dle_str_get = *Amanda::Typesc::dumpfile_t_dle_str_get;
105 *swig_dle_str_set = *Amanda::Typesc::dumpfile_t_dle_str_set;
106 *swig_is_partial_get = *Amanda::Typesc::dumpfile_t_is_partial_get;
107 *swig_is_partial_set = *Amanda::Typesc::dumpfile_t_is_partial_set;
108 *swig_partnum_get = *Amanda::Typesc::dumpfile_t_partnum_get;
109 *swig_partnum_set = *Amanda::Typesc::dumpfile_t_partnum_set;
110 *swig_totalparts_get = *Amanda::Typesc::dumpfile_t_totalparts_get;
111 *swig_totalparts_set = *Amanda::Typesc::dumpfile_t_totalparts_set;
112 *swig_blocksize_get = *Amanda::Typesc::dumpfile_t_blocksize_get;
113 *swig_blocksize_set = *Amanda::Typesc::dumpfile_t_blocksize_set;
116 my $self = Amanda::Typesc::new_dumpfile_t(@_);
117 bless $self, $pkg if defined($self);
121 return unless $_[0]->isa('HASH');
122 my $self = tied(%{$_[0]});
123 return unless defined $self;
124 delete $ITERATORS{$self};
125 if (exists $OWNER{$self}) {
126 Amanda::Typesc::delete_dumpfile_t($self);
127 delete $OWNER{$self};
133 my $ptr = tied(%$self);
139 my $ptr = tied(%$self);
144 # ------- VARIABLE STUBS --------
146 package Amanda::Types;
148 *F_UNKNOWN = *Amanda::Typesc::F_UNKNOWN;
149 *F_WEIRD = *Amanda::Typesc::F_WEIRD;
150 *F_TAPESTART = *Amanda::Typesc::F_TAPESTART;
151 *F_TAPEEND = *Amanda::Typesc::F_TAPEEND;
152 *F_DUMPFILE = *Amanda::Typesc::F_DUMPFILE;
153 *F_CONT_DUMPFILE = *Amanda::Typesc::F_CONT_DUMPFILE;
154 *F_SPLIT_DUMPFILE = *Amanda::Typesc::F_SPLIT_DUMPFILE;
155 *F_EMPTY = *Amanda::Typesc::F_EMPTY;
162 Amanda::Types - Amanda data structures that are shared by several modules
166 This module includes several types which are not specific to any
171 New structures may be added, but existing types are stable.
175 An in-memory representation of an Amanda header, with keys
189 =item C<comp_suffix>;
191 =item C<encrypt_suffix>;
193 =item C<name> -- hostname or label;
199 =item C<application>;
201 =item C<srvcompprog>;
203 =item C<clntcompprog>;
205 =item C<srv_encrypt>;
207 =item C<clnt_encrypt>;
209 =item C<recover_cmd>;
211 =item C<uncompress_cmd>;
213 =item C<encrypt_cmd>;
215 =item C<decrypt_cmd>;
217 =item C<srv_decrypt_opt>;
219 =item C<clnt_decrypt_opt>;
221 =item C<cont_filename>;
229 =item C<totalparts> (-1 == UNKNOWN); and
235 where C<type> is one of the following constants, which are availble
236 for import in the tag C<:filetype_t>:
244 =item C<F_TAPESTART>;
250 =item C<F_CONT_DUMPFILE>;
252 =item C<F_SPLIT_DUMPFILE>; or
258 NOTE: no methods are currently defined on C<dumpfile_t>; interfaces
259 can be written as needed. A new dumpfile is created with
261 my $hdr = Amanda::Types::dumpfile_t->new();
265 push @EXPORT_OK, qw(filetype_t_to_strings);
266 push @{$EXPORT_TAGS{"filetype_t"}}, qw(filetype_t_to_strings);
268 my %_filetype_t_VALUES;
269 #Convert a flag value to a list of names for flags that are set.
270 sub filetype_t_to_strings {
274 for my $k (keys %_filetype_t_VALUES) {
275 my $v = $_filetype_t_VALUES{$k};
277 #is this a matching flag?
278 if (($v == 0 && $flags == 0) || ($v != 0 && ($flags & $v) == $v)) {
283 #by default, just return the number as a 1-element list
291 push @EXPORT_OK, qw($F_UNKNOWN);
292 push @{$EXPORT_TAGS{"filetype_t"}}, qw($F_UNKNOWN);
294 $_filetype_t_VALUES{"F_UNKNOWN"} = $F_UNKNOWN;
296 push @EXPORT_OK, qw($F_WEIRD);
297 push @{$EXPORT_TAGS{"filetype_t"}}, qw($F_WEIRD);
299 $_filetype_t_VALUES{"F_WEIRD"} = $F_WEIRD;
301 push @EXPORT_OK, qw($F_TAPESTART);
302 push @{$EXPORT_TAGS{"filetype_t"}}, qw($F_TAPESTART);
304 $_filetype_t_VALUES{"F_TAPESTART"} = $F_TAPESTART;
306 push @EXPORT_OK, qw($F_TAPEEND);
307 push @{$EXPORT_TAGS{"filetype_t"}}, qw($F_TAPEEND);
309 $_filetype_t_VALUES{"F_TAPEEND"} = $F_TAPEEND;
311 push @EXPORT_OK, qw($F_DUMPFILE);
312 push @{$EXPORT_TAGS{"filetype_t"}}, qw($F_DUMPFILE);
314 $_filetype_t_VALUES{"F_DUMPFILE"} = $F_DUMPFILE;
316 push @EXPORT_OK, qw($F_CONT_DUMPFILE);
317 push @{$EXPORT_TAGS{"filetype_t"}}, qw($F_CONT_DUMPFILE);
319 $_filetype_t_VALUES{"F_CONT_DUMPFILE"} = $F_CONT_DUMPFILE;
321 push @EXPORT_OK, qw($F_SPLIT_DUMPFILE);
322 push @{$EXPORT_TAGS{"filetype_t"}}, qw($F_SPLIT_DUMPFILE);
324 $_filetype_t_VALUES{"F_SPLIT_DUMPFILE"} = $F_SPLIT_DUMPFILE;
326 push @EXPORT_OK, qw($F_EMPTY);
327 push @{$EXPORT_TAGS{"filetype_t"}}, qw($F_EMPTY);
329 $_filetype_t_VALUES{"F_EMPTY"} = $F_EMPTY;