Рубрика «расширение»

Плагины(Расширения)

Расширения это совместно используемая динамическая библиотека предназначения для загрузки в процессе исполнения основного приложения, которая обязательно должна реализовывать хотя бы один специальный интерфейс.

Расширения делятся на два типа:

  • Для Qt
  • Для собственных приложений

Разберём как создать свою систему расширений и сами расширения для него.

Связь с расширением осуществляется с помощью интерфейса (сигналы, слоты и методы класса). Расширение загружается приложением при помощи класса QPluginLoader. Для загрузки расширения используется метод instance(), который создаёт объект расширения и возвращает указатель на него. Для выгрузки расширения используется метод unload().

Часть 1


В первом примере создадим расширение которое будет использовать функцию(алгоритм, формулу) из расширения.

Визуальная схема проекта будет выглядеть следующим образом.

Создание системы расширения на библиотеке Qt - 1

Этап 1:

Первым этапом создадим класс интерфейсов наследуемый от Qobject, в качестве интерфейса будет метод который принимает переменную типа QString и возвращает эту же строку в верхнем регистре. С помощью макроса Q_DECLARE_INTERFACE, задаём идентификотор интерфейсов, компилятор с генерирует метаинформацию для строки-идентификатор. Данный модуль является протоколом общения между плагином и основной программой и будет использоваться в проекте плагина и в основном проекте.
Читать полностью »

Всем привет! В этой статье я расскажу об API BIM-системы Renga. О самой системе можно почитать тут, здесь же можно запросить версию для некоммерческого использования. Если вкратце, то Renga это трехмерная система автоматизированного проектирования в архитектуре и строительстве. В ней проектировщик/архитектор/конструктор работает с информационной моделью здания, получает ассоциативные чертежи, спецификации, в общем, создает проект.

Зачем нужно API CAD-системы

Сначала, как водится, немного водички.

Разработка расширений для CAD систем довольно распространена, поскольку в любом проектировании существуют различные направления, разделы и стандарты оформления проектной документации, которые требуют разной узкоспециализированной функциональности. Кроме того существуют задачи интеграции с программами расчета, визуализации, документооборота и многими другими. Выход — создание подключаемых модулей, расширяющих функциональность системы.
Читать полностью »

Здравствуйте, уважаемые читатели.

Предлагаю всем, кто заинтересуется, обсудить некоторые основные идеи классического и параллельного программирования в расширении C++, основанном на процедурах/функциях с планированием повторного входа (ПППВ/ФППВ). В минимальном варианте — это процедура или функция, у которой есть статический или динамический план исполнения.Читать полностью »

Скриншаринг на сайте по WebRTC из браузера Mozilla Firefox - 1

Недавно мы писали статью о том, как сделать расширение скриншаринга для браузера Google Chrome. В результате мы создали собственное расширение для скриншаринга, опубликовали его в Chrome Store и протестировали трансляцию экрана через Web Call Server в режиме один-ко-многим.

В этой статье мы проделаем тоже самое с браузером Firefox. Подход остается прежним и снова потребуется упаковка и публикация расширения, на этот раз в Mozilla Add-ons. В результате мы сможем делать скринкасты видеопотоков из FF без установки внешнего дополнительного ПО.Читать полностью »

Cкринкастинг на сайте по WebRTC из браузера Chrome - 1

Cкринкастинг в Chrome

Cкринкастинг (демонстрация экрана, скриншаринг) уже работает в браузере Google Chrome и позволяет захватывать как окно самого браузера, так и окно любого другого приложения. Например можно захватить Firefox, запущенный в соседнем окне.

Все бы замечательно, но есть проблема с безопасностью. В браузере Chrome скринкастинг выключен.

Для его включения необходимо воспользоваться Chrome Desktop Capture API и мы покажем в этой статье как это сделать.

Расширение для скринкастинга

Чтобы скринкастинг заработал, юзер должен установить ваше расширение (Chrome Extension), которое создано специально для вашего сайта (домена).Читать полностью »

Расширение uBlock Origin вышло на Microsoft Edge - 1

Наконец-то к браузеру Microsoft Edge вышел самый эффективный блокировщик рекламы, который потребляет минимальное количество ресурсов процессора и памяти по сравнению с другими блокировщиками, а также распространяется с открытым исходным кодом. Конечно, это знаменитый uBlock Origin Рэймонда Хилла.

Работа над портированием uBlock Origin для Microsoft Edge идёт в репозитории uBlock-Edge на Github. 11 декабря 2016 года проект достиг такого уровня, что его автор Ник Роллс (Nik Rolls) решил выложить uBlock-Edge в официальном каталоге Windows Store расширений для браузера Edge.
Читать полностью »

.NET Portability Analyzer - 1


.NET Portability Analyzer это совсем не новое приложение, которое, по причине появления .NET Standard должно бы стать интересным для разработчиков. Портируемость кода ускоряет работу команд в разы. Если вам интересно узнать насколько переносим на другую платформу ваш код, то вы можете использовать .NET Portability Analyzer, который доступен в виде расширения для Visual Studio и в виде отдельного консольного приложения.

.NET Portability Analyzer актуален для разработчиков .NET, .NET Core, UWP, Xamarin и Mono.
Далее предлагаю вашему вниманию факты и описание процесса использования.
Читать полностью »

Контринтуитивный метаматериал может привести к созданию теплоустойчивых электронных схем

Распечатанные на 3D-принтере структуры сжимаются при нагреве - 1

Практически все твёрдые материалы, от резины и стекла до гранита и стали, расширяются при нагревании. Лишь в очень редких случаях определённые материалы идут против системы и сжимаются при нагреве. К примеру, холодная вода сжимается, если её нагревать от 0 до 4 градусов Цельсия, до того, как начать расширяться.

Инженеры MIT и Южно-калифорнийского университета внесли новое добавление в этот класс странных материалов. Команда под руководством Николаса Фанга [Nicholas X. Fang], адъюнкт-профессора инженерной механики из MIT создала звездообразные структуры, состоящие из соединённых перекладин, или ферм. Эти структуры размером с кубик сахара быстро сжимаются, будучи нагретыми до 282 градусов Цельсия.
Читать полностью »

Джейсон Калаканис запускает нестандартный блокировщик рекламы (ad blocker). Калаканис является основателем таких проектов, как Weblogs, Mahalo.com, Inside.cоm, инвестором Uber и Tumblr.

AdReplacer – расширение для браузера Chrome. Приложение находит неприятную, ведущую на «спамерские сайты» рекламу, которая появляется обычно в нижней части веб-страницы и заменяет ее на «самый лучший контент в сети». Пока AdReplacer проходит тестирование на сайте Inside.com.

Словосочетание «самый лучший контент в сети» означает в данном случае некий контент, который является наиболее уместным в конкретной ситуации с точки зрения специально обученных редакторов проекта. Источниками такого контента, по их мнению, являются Bloomberg, Wired, Rolling Stone и USA Today. В дальнейшем контент будет подбираться с учетом индивидуальных предпочтений пользователя, рассчитывает Калаканис. Редакторы находятся «на посту» 24 часа в сутки. За эту работу они получают $14-$16 в час.

Джейсон Калаканис пока не собирается монетизировать приложение. Читать полностью »

image

Мир вам ничего не должен – он был тут раньше вас.
— Марк Твен

Читатель спрашивает:

А почему Вселенная не сжалась в чёрную дыру сразу после Большого взрыва?

Честно говоря, я и сам об этом много думал. И вот почему.

image

Вселенная в наше время полна всего. Наша галактика — это крутой замес из звёзд, планет, газа, пыли, большого количества тёмной материи, содержащая от 200 до 400 миллиардов звёзд, и весящая в сумме в триллион раз больше, чем вся наша Солнечная система. Но наша галактика — всего лишь одна из триллиона галактик схожего размера, разбросанных по Вселенной.

image

Но как бы ни была массивна Вселенная, эта масса распределена по огромному пространству. Наблюдаемая часть Вселенной составляет в диаметре порядка 92 миллиардов световых лет, что по сравнению с границами нашей Солнечной системы трудно себе представить. Орбита Плутона и других объектов пояса Койпера составляет 0,06% от светового года. Поэтому у нас есть огромная масса, распределённая по огромному объёму. И хотелось бы представить, как они соотносятся друг с другом.
Читать полностью »