Mercurial > hg > octave-nkf
view src/ov-dld-fcn.cc @ 7259:9f02c32eb70d ss-2-9-18
[project @ 2007-12-05 18:02:33 by jwe]
author | jwe |
---|---|
date | Wed, 05 Dec 2007 18:02:34 +0000 |
parents | a1dbe9d80eee |
children | a1ab9dbc9622 |
line wrap: on
line source
/* Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2007 John W. Eaton This file is part of Octave. Octave is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. Octave is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with Octave; see the file COPYING. If not, see <http://www.gnu.org/licenses/>. */ #ifdef HAVE_CONFIG_H #include <config.h> #endif #include "oct-shlib.h" #include <defaults.h> #include "dynamic-ld.h" #include "error.h" #include "oct-obj.h" #include "ov-dld-fcn.h" #include "ov.h" DEFINE_OCTAVE_ALLOCATOR (octave_dld_function); DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA (octave_dld_function, "dynamically-linked function", "dynamically-linked function"); octave_dld_function::octave_dld_function (octave_builtin::fcn ff, const octave_shlib& shl, const std::string& nm, const std::string& ds) : octave_builtin (ff, nm, ds), sh_lib (shl) { mark_fcn_file_up_to_date (time_parsed ()); std::string file_name = fcn_file_name (); system_fcn_file = (! file_name.empty () && Voct_file_dir == file_name.substr (0, Voct_file_dir.length ())); } octave_dld_function::~octave_dld_function (void) { octave_dynamic_loader::remove (my_name, sh_lib); } std::string octave_dld_function::fcn_file_name (void) const { return sh_lib.file_name (); } octave_time octave_dld_function::time_parsed (void) const { return sh_lib.time_loaded (); } /* ;;; Local Variables: *** ;;; mode: C++ *** ;;; End: *** */