LINUX.ORG.RU

Сообщения bejevy

 

получить доступ к объекту

здравствуйте, пишу на C++ программу:

есть класс Track

в не-GUI потоке создаются экземпляры (несколько сотен) данного класса, посредством указателей(хранятся в векторе) :

Track *t = new Track;

В процессе работы программы указатели копируются, причем предущий указатель на объект зануляется- примерно так:

Track *oldpointer; ...; newpointer=oldpointer; oldpointer=0;

Таким образом, в процессе работы программы существует лишь единственный указатель на объект. Также в процессе работы поля экземпляров класса Track модифицируются в рез-те вычислений и т.п.

Теперь встала необходимость визуализации расчетов. Как получить доступ к полям объекта из другого класса в gui-потоке?

Если это реализовать передавая указатель, то при возникновении необходимости удалить объект, память не освободится, т.к. существует более одного указателя на объект.

 

bejevy
()

QtDBus

ребята, пытаюсь запустить в qt creator чужой проект, при компиляции вадает единственную ошибку: ...mobileRelease0/topframe.h:24: error: QtDBus: No such file or directory

в .pro файле указано : QT += dbus

что делать?

bejevy
()

одновременная обработка мыши в QGraphicsItem и QGraphicsView

здрасьте, у меня есть три наследника view, scene и item. когда я во view.h переопределяю mousemoveevent(), то теряется способность перемещать items, и наоборот, когда во items.h переопределяю mousemoveevent(), view не реагирует на мышку.

как сделать, чтобы было одновременно? может флаг какой-нибудь выставить в QgraphicsItem?

bejevy
()

вопрос про QGraphicsView

здравствуйте! подскажите пожалуйста: есть класс №1 унаследованный от QWidget. на экземпляре данного класса я,переопределив paintevent(), отображаю данные: это графические примитивы QPainter - данные обработки, координатная сетка и тд). также переопределены wheelevent(), mousemoveevent() и т.п.

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

хочу реализовать данный пункт с помощью graphics framework: таким образом, для формуляров создаю класс унаследованный от QGraphicsItem; создаю сцену QGraphicsScene.

вот теперь непонятно как лучше отобразить сцену? можно сделать рендеринг сцены в класс №1, или надо создать отдельный QGraphicsView?

bejevy
()

аналог виндового WaitForSingleObject на Qt

здрасте, есть 2 потока, которые в бесконечном цикле выполняют расчеты. как из потока №1 пробудить поток №2?

bejevy
()

единая цветовая схема приожения

добрый день! подскажите пожалуйста как сделать, чтобы все виджеты, кнопки и цвета и т.п. были выполнены в единой цветовой схеме? чтобы динамически создаваемые объекты-виджеты были с унаследованной цветовой схемой?

bejevy
()

задать приоритет для приложения

привет! я создал программу с помощью Qt под Ubuntu. как сделать так, чтобы она каждый раз запускалась с указанным приоритетом?

bejevy
()

вопрос по синхронизации

здравствуйте! подскажите как поступить: под ОС linux на qt пишется программа. основной поток по сигналу таймера (интервал 10-20 мс) рисует из матрицы M[4096][2400] по принципу: если в ячейке «1»-то рисуем пиксель(point),если «0»-то ничего не выводим. второй поток представляет из себя бесконечный цикл, и отвечает за прием данных по сети (с высокой частотой), их обработку и запись результатов в эту же матрицу М[4096][2400]. таким образом данная матрица является разделяемым ресурсом, а значит требует синхронизациию. я сделал это через механизм мьютексов, предоставляемый библиотекой qt, но не устраивает скорость. как мне добиться быстродействия? как работают мьютексы?

int g;//др переменные int w;//др переменные int M[4096][2400];//вот матрица которую защитить нужно QMutex mutex; //вот мьютекс int e;//др переменные по аналогии с критическими секциями ВинАпи мютекс защищает только матрицу M или это касается всех переменных объявленных ниже/выше?

 

bejevy
()

не определяется opengl , чего хочет?

запускаю пример в QtCreator 2Dpainting: левая половинка с функциями QPainter работает как положено, а вот на правой где используется opengl отображается «дырка», т.е. фрагмент того, что на заднем фоне. дополнительно установил следующие пакеты: mesa-common-dev; freeglut3;freeglut3-dev;glut3;glut3-dev;libglut3;libglut3-dev;liblul-mesa-dev; ОС - убунту 12.04. ноутбук леново g770. на этом ноуте используются две видюхи, между которыми можно перключаться (в винде 7 работало). подозреваю что это драйвера на видеокарту встали неправильно. я новичок в линукс, подскажите как все настроить грамотно?

bejevy
()

lenovo g770 и ubuntu

привет. не работает видеокарта. установил убунту 12.04. сейчас используется по-видимому только встроенная видеокарта, да и то opengl приложения не работают. как подключить радеоновскую?

bejevy
()

ошибка при установке ubuntu

устанавливаю ubuntu на virtulabox из под windows7. после завершения установки, перезагрузки и ввода пароля вылазит ошибка : the application compiz has closed unexpectedly если игнорировать или закрыть, то появляется пустой фон рабочего стола и дальше ничего не грузится.

bejevy
()

поток и реальное время

привет! значит у меня многопоточное приложение под линукс. главный поток занимается визуализацией и GUI. второй поток занимается обработкой данных и их приемом в непрерывном цикле. данные же приходят по сети с высокой частотой на сетевой адаптер, где отлавливаются средствами библиотеки pcap+драйвер. как мне объяснить ОС, что задачи второго потока являются ПЕРВОСТЕПЕННЫМИ? как я могу быть уверенным в том, что данные не потеряются, что ОС всегда будет выделять процессорное время для этого потока? подозреваю, что мне нужен режим реального времени, но это ведь линукс? если же все делать в одном потоке, то страдает отзывчивость GUI.

 

bejevy
()

RSS подписка на новые темы