Please note that the recommended version of Scilab is 2026.0.0. This page might be outdated.
See the recommended documentation of this function
libraryinfo
получает путь и устанавливает главные функции загруженной библиотеки
Синтаксис
macros = libraryinfo(libraryname) [macros, libpath] = libraryinfo(libraryname)
Аргументы
- libraryname
строка: имя загруженной библиотеки.
- macros
столбец строк: имена главных функций, принадлежащих библиотеке.
- libpath
строка: путь до файла в библиотеке.
Описание
Получает имена функций (написанных на языке Scilab), принадлежаних указанной
библиотеке, и путь до директории, где хранятся их *.sci-файлы и
файлы библиотеки. Вспомогательные функции, которые могут следовать за главными
функциями в *.sci-файлах, являются приватными и не возвращаются.
![]() | Только загруженные библиотеки могут быть адресованы с помощью libraryinfo(). |
Получение некоторой информации о библиотеки из её дескриптора
libraryinfo() работает по литеральному имени библиотеки.
В некоторых случаях в наличии может быть только их дескриптор, определённый при
загрузке библиотеки. Например, libraryinfo("iolib") работает,
а libraryinfo(iolib) - нет. Как же использовать дескриптор для
получения какой-либо информации? Продолжим с примером iolib:
- Получение пути:
libpath = string(iolib)(1) - Получение вектор-столбца составляющих функций:
functions = string(iolib)(2:$) - Получение литерального имени библиотеки:
libraryname = xmlGetValues("//scilablib", "name", libpath)
Незагруженная библиотека: получение информации по своему пути
Если рассматриваемая библиотека не загружена, то ни
libraryinfo(), ни string() не будут
работать.
При условии, что известен путь libpath, можно
- получить его литеральное имя:
xmlGetValues("//scilablib", "name", libpath+"/lib") - получить вектор-столбец составляющих
функций:
functions = xmlGetValues("//scilablib/macro", "name", libpath+"/lib")
Примеры
C libraryinfo() по литеральному имени библиотеки:
[f, p] = libraryinfo("iolib")
--> [f, p] = libraryinfo("iolib")
p =
SCI\modules\io\macros\
f =
!input !
!unix_g !
!unix_w !
!%_sodload !
!unix_x !
!unix_s !
По дескриптору библиотеки:
// Просто для отображения: iolib // Перехватить информацию в переменных: p = string(iolib)(1) f = string(iolib)(2:$) libname = xmlGetValues("//scilablib", "name", p+"/lib")
--> // Просто для отображения:
--> iolib
iolib =
Functions files location : SCI\modules\io\macros\.
input unix_g unix_w %_sodload unix_x unix_s
--> // Перехватить информацию в переменных:
--> p = string(iolib)(1)
p =
SCI\modules\io\macros\
--> f = string(iolib)(2:$)
f =
!input !
!unix_g !
!unix_w !
!%_sodload !
!unix_x !
!unix_s !
--> libname = xmlGetValues("//scilablib", "name", p+"/lib")
libname =
iolib
Для незагруженной библиотеки, по её пути:
path = fullpath("SCI/modules/scicos_blocks/macros/Hydraulics"); libname = xmlGetValues("//scilablib", "name", path+"/lib") functions = xmlGetValues("//scilablib/macro", "name", path+"/lib") Hydraulicslib // незагруженная (Xcos не должен быть запущен)
--> libname = xmlGetValues("//scilablib", "name", path+"/lib")
libname =
Hydraulicslib
--> functions = xmlGetValues("//scilablib/macro", "name", path+"/lib")
functions =
!Bache !
!Flowmeter !
!PerteDP !
!PuitsP !
!SourceP !
!VanneReglante !
--> Hydraulicslib
Undefined variable: Hydraulicslib
Смотрите также
- string — преобразование в строку
- load — Loads some archived variables, a saved graphic figure, a library of functions
- librarieslist — gets the list of loaded Scilab libraries
- whereis — Returns the name of the loaded library/module a given function belongs to
| Report an issue | ||
| << librarieslist | Библиотеки | argn >> |
