Радиатор поддерживает
плагины (наконец ;-)
|
Скачать: 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), так что вы можете посмотреть его.
Как сделать плагин доступным для других пользователей Радиатора:
Пришлите его мне [email protected] и я выложу его для скачивания :-)
Visitors since 14/02/1999
Statistics for the 1st year
Сделано в Республике Чехия. c 1999 - 2001 Miroslav Flesko
Любые комментарии и советы: [email protected]
Главный сайт на flesko.cz / Зеркало на
FortuneCity
Последнее обновление: 26/02/02 14:48
... назад на главную страницу ...