Модераторы: Rickert, Alexeis, BorisVorontsov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Фильтр и его конструктор и деструктор. 
:(
    Опции темы
AndreySol
Дата 31.10.2007, 08:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 772
Регистрация: 19.6.2004

Репутация: нет
Всего: 1



Вопрос такой - у фильтра, унаследованного от CTransInPlaceFilter есть конструктор, а деструктор у него есть ? Если есть, то когда он вызывается ? Или деструкторы в фильтрах DirectShow не используются ? Похоже что для DS фильтров вызывается конструктор, а затем метод Release() интерфейса IUnknown, который сидит в предках любого фильтра DS ?
Отчего сам вопрос возник:
к примеру я открываю файл, и в граф воспроизведения этого файла добавляю свой фильтр. При этом в конструкторе фильтра я инициализирую сторонюю библиотеку. Далее я с этим файлом и графом отработал, соответственно мне необходимо освободить эту библиотеку - и вот тут не знаю что делать, точнее где это сделать. В каком методе фильтра, или как-то еще ?
PM MAIL   Вверх
zkv
Дата 31.10.2007, 12:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



****


Профиль
Группа: Участник Клуба
Сообщений: 2133
Регистрация: 23.7.2006
Где: Санкт-Петербург

Репутация: нет
Всего: 92



почему бы не перегрузить тот же метод Release() - выполняем определенные действия, затем вызываем метод базового класса.
PM MAIL   Вверх
AndreySol
Дата 2.11.2007, 00:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 772
Регистрация: 19.6.2004

Репутация: нет
Всего: 1



Цитата

почему бы не перегрузить тот же метод Release() 

Да оно вроде и понятно, но ведь часто делают так:
сначала QueryInterface()
затем Release()
потом пользуются полученным указателем
стал не нужен: = NULL

Получается, что Release() не самое подходящее место.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Вы можете найти полезным что...
Alexeis
Rickert
  • Английская документация по DirectX лежит где-то здесь.
  • Английская документация по OpenGL лежит где-то там.
  • Гейм-дев у нас обсуждают где-то тут

Ждём вас! С уважением, Alexeis, Rickert.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема »


 




[ Время генерации скрипта: 0.0451 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.