#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
#include <ctype.h>
#include <time.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <string>
#include <sstream>
#include <vector>
#include <algorithm>
#include <stdexcept>
#include "BaseType.h"
#include "Str.h"
#include "Url.h"
#include "Sequence.h"
#include "Error.h"
#include "parser.h"
#include "util.h"
#include "debug.h"
Include dependency graph for util.cc:
Go to the source code of this file.
Functions | |
void | append_double_to_string (const double &num, string &str) |
void | append_long_to_string (long val, int base, string &str_val) |
string | dap_version () |
void | delete_xdrstdio (XDR *xdr) |
string | double_to_string (const double &num) |
void | downcase (string &s) |
string | file_to_string (FILE *fp) |
FILE * | get_temp_file (char *temp) |
char * | get_tempfile_template (char *file_template) |
const char * | libdap_name () |
const char * | libdap_root () |
const char * | libdap_version () |
string | long_to_string (long val, int base) |
XDR * | new_xdrstdio (FILE *stream, enum xdr_op xop) |
string | path_to_filename (string path) |
string | prune_spaces (const string &name) |
XDR * | set_xdrstdio (XDR *xdr, FILE *stream, enum xdr_op xop) |
string | systime () |
bool | unique_names (vector< BaseType * > l, const string &var_name, const string &type_name, string &msg) |
bool_t | xdr_str (XDR *xdrs, string &buf) |
void append_double_to_string | ( | const double & | num, | |
string & | str | |||
) |
void append_long_to_string | ( | long | val, | |
int | base, | |||
string & | str_val | |||
) |
Definition at line 479 of file util.cc.
References append_long_to_string().
Referenced by append_long_to_string(), InternalErr::InternalErr(), long_to_string(), and parse_error().
Here is the call graph for this function:
string dap_version | ( | ) |
Get the version of the DAP library.
Definition at line 538 of file util.cc.
References libdap_version().
Here is the call graph for this function:
void delete_xdrstdio | ( | XDR * | xdr | ) |
Definition at line 194 of file util.cc.
Referenced by DODSFilter::dataset_constraint(), and DODSFilter::functional_constraint().
string double_to_string | ( | const double & | num | ) |
Definition at line 527 of file util.cc.
References append_double_to_string().
Referenced by GeoConstraint::set_bounding_box().
Here is the call graph for this function:
void downcase | ( | string & | s | ) |
string file_to_string | ( | FILE * | fp | ) |
FILE* get_temp_file | ( | char * | temp | ) |
char* get_tempfile_template | ( | char * | file_template | ) |
Build a template for a temporary file suitable for use with mkstemp. Look around for a reasonable place to put a temporary file. Check first the value of the TMPDIR env var. If that does not yield a path that's writable (as defined by access(..., W_OK|R_OK)) then look at P_tmpdir (as defined in stdio.h. If both come up empty, then use `./'.
This function allocates storage using new. The caller must delete the char array.
file_template | A template suitable for use with mkstemp (so it has to have six extra chars at its end. This is combined with the path to some temporary directory (see above). |
Definition at line 575 of file util.cc.
Referenced by get_temp_file().
const char* libdap_name | ( | ) |
const char* libdap_root | ( | ) |
Definition at line 250 of file util.cc.
References libdap_root(), and LIBDAP_ROOT.
Referenced by libdap_root().
Here is the call graph for this function:
const char* libdap_version | ( | ) |
Return the version string for this package.
Definition at line 258 of file util.cc.
References PACKAGE_VERSION.
Referenced by dap_version().
string long_to_string | ( | long | val, | |
int | base | |||
) |
Definition at line 508 of file util.cc.
References append_long_to_string().
Referenced by AISDatabaseParser::aisError(), AISDatabaseParser::aisFatalError(), AISDatabaseParser::aisWarning(), DDXParser::ddx_fatal_error(), RCReader::get_proxy_server_host_url(), SignalHandler::register_handler(), save_str(), and libdap::set_array_using_double().
Here is the call graph for this function:
XDR* new_xdrstdio | ( | FILE * | stream, | |
enum xdr_op | xop | |||
) |
Definition at line 173 of file util.cc.
Referenced by DODSFilter::dataset_constraint(), and DODSFilter::functional_constraint().
string path_to_filename | ( | string | path | ) |
Get the filename part from a path. This function can be used to return a string that has the directory components stripped from a path. This is useful when building error message strings.
If WIN32 is defined, use '\' as the path separator, otherwise use '/' as the path separator.
string prune_spaces | ( | const string & | name | ) |
Removed spaces from the front of a URL and also from the front of the CE. This function assumes that there are no holes in both the URL and the CE. It will remove leading space, but not other spaces.
name | The URL to process |
Definition at line 93 of file util.cc.
Referenced by Connect::Connect(), and is_keyword().
XDR* set_xdrstdio | ( | XDR * | xdr, | |
FILE * | stream, | |||
enum xdr_op | xop | |||
) |
bool unique_names | ( | vector< BaseType * > | l, | |
const string & | var_name, | |||
const string & | type_name, | |||
string & | msg | |||
) |
Definition at line 116 of file util.cc.
References DBG.
Referenced by Structure::check_semantics(), Sequence::check_semantics(), Grid::check_semantics(), and DDS::check_semantics().
bool_t xdr_str | ( | XDR * | xdrs, | |
string & | buf | |||
) |
Definition at line 218 of file util.cc.
References DBG, and max_str_len.
Referenced by Vector::deserialize(), Str::deserialize(), Vector::serialize(), and Str::serialize().