Радиатор поддерживает
плагины (наконец ;-)
Скачать: Radiator SDK - набор разработчика (28/04/2001 - 182 kB) - проверка плагина, пример плагина с исходниками, описание использования прямого доступа к порту с комментариями Утилита командной строки Радиатора (01/10/2001 - 18 кБ) - пример программы с исходниками (Delphi 4.0) Пример программы дистанционного управления Радиатором (30/09/2001 - 123 кБ) -пример программы с исходниками (Delphi 4.0) Управление Радиатором с помощью глобальных комбинаций клавиш создал Алексей Хакимзянов (4 кБ) bt8x8 плагин +
драйвер (вер 1.2 - самоустанавливающийся плагин + драйвер 179 кБ) - плагин
создал Mike Crash bt8x8wdmfm плагин
(ver 1.1 - 31/05/2001 - 14 кБ) - плагин
создал Иван Усков (самые последние универсальные bt8x8 WDM-драйверы с поддержкой FM-режима
доступны с http://ivus.tele-kom.ru
или здесь)
|
![]() |
GemTek PCI
direct access plugin (ver. 1.1.2, 26/02/2002 - 5 kB) - plugin created by
Alex Brukhoff Plugin for IRAssistant made by Elso Andras with source (118 kB) RadioTrack
II плагин (07/09/2001 - 5 кБ) - плагин с возможностью
переключения моно/стерео создал Josef
Kucera (веб
страничка) GemTek PCI плагин
(вер. 1.04, 04/06/2001 - 82 кБ) - плагин создал Василий Зайцев SoundForte
SF64-PCE плагин (вер. 1.00, 25/07/2001 - 23 кБ) - плагин создал Петр Клюшкин (веб
страничка) SoundForte
SF64-PCR плагин
(вер 1.03, 02/07/2001 - 58 кБ) - плагин создал Алексей Хакимзянов SoundForte
SF16-FMR плагин (04/06/2001 - 17 кБ) - плагин создал Ladislav
Palider (Kefa) SoundForte
SF16-FMR2 плагин (вер. 1.01, 02/07/2001 - 61 кБ) - плагин создал Алексей Хакимзянов ProVideo 951 плагин
(вер. 1.02, 30/09/2001 - 58 кБ) - плагин создал Алексей Хакимзянов
|
Директория плагинов:
Плагины должны находиться в поддиректории Радиатора Plugins (например c:\Program
Files\Radiator\Plugins).
Если плагину необходимы какие-нибудь файлы, то они должны находиться там же. Если плагину необходимо сохранять свою конфигурацию, ПРЕДПОЧТИТЕЛЬНО ИСПОЛЬЗОВАТЬ
файл plugins.ini в поддиректории Plugins.
Пункты должны быть сохранены в файле plugins.ini в следующей форме:
[имя модуля] ;например [sf16fmi] для плагина sf16fmi.dll
параметр=значение ;например Port=$384
Как разработать свой собственный драйвер (плагин) для Радиатора:
Оригинальная идея принадлежит хорошо известному MikeCrash. Он создал свою собственную программу (AFM radio), которая была разработана для карт на базе BT878, но также могла работать с плагинами для других плат.
Через некоторое время, мы создали первое предложение нового интерфейса плагинов, который включил большее количество функций и возможностей.
Интерфейс плагинов Радиатора строго основан на приведенном здесь стандарте.
Интерфейс:
Здесь приведен список функций и процедур, которые экспортирует плагин Радиатора.
Фраза Радиатор пока не использует.
означает, что хотя пока Радиатор не использует эти функции, они
планируется к реализации в следующих версиях.
Требуется во всех плагинах | Описание |
функция GetModuleName: PChar; stdcall; | Экспортирует имя модуля. Не должна быть пустой, чтобы Радиатор смог распознать плагин. |
функция GetModuleInfo: Cardinal; stdcall; | Возвращает информацию о возможностях плагина. Результатом будет
постоянная "поддержки модуля" ORed: например FM_TUNE or FM_MUTEUNMUTE тоже самое, что и FM_TUNE + FM_MUTEUNMUTE Результатом будет 1 + 4 = 5. |
функция HWInit: Boolean; stdcall; | Инициализация "железа". |
функция HWDeInit: Boolean; stdcall; | Деинициализация "железа". |
Не обязательны | Описания |
функция GetModuleComment: PChar; stdcall; | Описание, копирайт и т.д. |
процедура TuneFreq (Freq: LongInt); stdcall; | Matches FM_TUNE. Частота в кГц (88.2 МГц -> 88200 кГц). |
процедура TuneFreqMuted (Freq: LongInt); stdcall; | Matches FM_TUNEMUTED. Частота в кГц (88.2 МГц -> 88200 кГц). |
процедура SetMute (Mute: Boolean); stdcall; | Matches FM_MUTEUNMUTE. |
функция ScanStation (DirectionUp:Boolean; FreqToSearchFrom: LongInt): LongInt;
stdcall; Радиатор использует начиная с версии 1.6.1.0. |
Matches FM_SCANSTATION.
Параметры: направление (вверх по диапазону - True или вниз по диапазону - False) и текущая частота, откуда начинать искать. Возвращает новую частоту. |
функция GetVolume: Word; stdcall; Радиатор пока не использует. |
Matches GETVOLUME. |
процедура SetVolume (Left,Right: Word);
stdcall; Радиатор пока не использует. |
Matches FM_SETVOLUMEBYVALUE. |
процедура VolumeUpDown(Step: Integer); stdcall; | Matches FM_SETVOLUMEUPDOWN. |
процедура SetBass(Bass: Word);
stdcall; Радиатор пока не использует. |
Matches FM_BASSTREBLE. |
функция GetBass: Word; stdcall; Радиатор пока не использует. |
Matches FM_BASSTREBLE. |
процедура SetTreble(Treble: Word);
stdcall; Радиатор пока не использует. |
Matches FM_BASSTREBLE. |
функция GetTreble: Word; stdcall; Радиатор пока не использует. |
Matches FM_BASSTREBLE. |
функция IsStereo: Boolean; stdcall; Радиатор пока не использует. |
Matches FM_ISSTEREO. |
процедура SetStereo (Stereo: Boolean); stdcall; | Matches FM_SETSTEREO. |
функция GetSignal: Word; stdcall; | Matches FM_GETSIGNAL. |
процедура ConfigurationDialog; stdcall; | Matches FM_CONFIGURATIONDIALOG. |
Функции, используемые для прямого доступа к порту:
Прямой доступ к порту осуществляется с помощью dlportio.dll, который
устанавливается вместе с Радиатором. НЕ ИСПОЛЬЗУЙТЕ НИ ВАШИ СОБСТВЕННЫЕ ДРАЙВЕРЫ,
НИ ПРЯМЫЕ АССЕМБЛЕРНЫЕ КОМАНДЫ ПОРТА - ЭТО НЕНУЖНО И ЛИШНЕЕ.
Доступ к порту с помощью команд ассемблера не работает под NT.
Путь установки плагинов по умолчанию - ПУТЬ_РАДИАТОРА+ПУТЬ_ПЛАГИНОВ (например
в c:\Program Files\Radiator\Plugins)
Dlportio.dll всегда находится в директории ПУТЬ_РАДИАТОРА, где к нему
можно обращаться.
функция GetPortByte(Address : Word) : Byte;
процедура SetPortByte(Address : Word; Data : Byte);
функция GetPortWord(Address : Word) : Word;
процедура SetPortWord(Address : Word; Data : Word);
функция GetPortDWord(Address : Word) : Longword;
процедура SetPortDWord(Address : Word; Data : Longword);
функция OpenDriver: Boolean;
процедура CloseDriver;
Постоянные "поддержки модуля" :
Постоянная | Десятичное значение | Описание |
FM_TUNE= 1 shl 0; | 1 | Поддержка установки частоты. |
FM_TUNEMUTED= 1 shl 1; | 2 | Поддержка установки частоты с отключенным звуком. Звук будет отключен, но частота будет установлена. Затем просто включите звук. |
FM_MUTEUNMUTE= 1 shl 2; | 4 | Поддержка отключения/включения звука. |
FM_GETVOLUME= 1 shl 3; | 8 | Поддержка функции GetVolume. |
FM_SETVOLUMEBYVALUE= 1 shl 4; | 16 | Поддержка установки громкости "цифровой" установкой величины. |
FM_SETVOLUMEUPDOWN= 1 shl 5; | 32 | Поддержка увеличения и уменьшения громкости дискретными шагами (так Радиатор работает сейчас). |
FM_BASSTREBLE= 1 shl 6; | 64 | Поддержка низких и высоких частот. |
FM_ISSTEREO= 1 shl 7; | 128 | Поддержка идентификации стерео. |
FM_SETSTEREO= 1 shl 8; | 256 | Принудительная установка стерео или моно. |
FM_GETSIGNAL= 1 shl 9; | 512 | Станция настроена/не настроена. |
FM_AMRANGE= 1 shl 10; | 1024 | Поддержка AM диапазона (пока не реализована в Радиаторе). |
FM_RDS= 1 shl 11; | 2048 | Поддержка RDS - все равно пока не реализована ;-). |
FM_SCANSTATION= 1 shl 12; | 4096 | Поддержка сканирования - параметры: направление (вверх по диапазону - True или вниз по диапазону - False) и текущая частота, откуда начинать искать. Возвращает новую частоту. |
FM_CONFIGURATIONDIALOG= 1 shl 16; | 65536 | Поддержка диалога конфигурации. |
В набор разработчика включен образец плагина sf16fmi вместе с исходным кодом на Delphi (Object Pascal), так что вы можете посмотреть его.
Как сделать плагин доступным для других пользователей Радиатора:
Пришлите его мне miroslav@flesko.cz и я выложу его для скачивания :-)
Посетителей с 14/02/1999
Статистика
Сделано в Республике Чехия. © 1999 - 2006 Miroslav
Fleљko
Любые комментарии и советы: miroslav@flesko.cz
Главный сайт на flesko.cz / Зеркало на
FortuneCity
Последнее обновление: 26/02/02 14:48