renamed classed with Oi* prefix
This commit is contained in:
parent
674bd0b608
commit
4298902363
7 changed files with 60 additions and 58 deletions
5
.gitignore
vendored
5
.gitignore
vendored
|
@ -1,3 +1,4 @@
|
|||
build-*
|
||||
*,pro.user
|
||||
libqt-omd.pro.user
|
||||
*.pro.user
|
||||
*.creator
|
||||
*.creator.user
|
||||
|
|
|
@ -8,21 +8,22 @@
|
|||
#include <QEventLoop>
|
||||
|
||||
#include "image.h"
|
||||
#include "properties.h"
|
||||
#include "camera.h"
|
||||
|
||||
const QString Camera::userAgent = "libqt-omd v0.1";
|
||||
const QString OiCamera::userAgent = "libqt-omd v0.1";
|
||||
|
||||
Camera::Camera() :
|
||||
OiCamera::OiCamera() :
|
||||
camAddress("192.168.0.10")
|
||||
{
|
||||
networkManager = new QNetworkAccessManager;
|
||||
|
||||
connect(networkManager, &QNetworkAccessManager::finished, this, &Camera::requestFinished);
|
||||
connect(networkManager, &QNetworkAccessManager::finished, this, &OiCamera::requestFinished);
|
||||
|
||||
initialize();
|
||||
}
|
||||
|
||||
void Camera::initialize()
|
||||
void OiCamera::initialize()
|
||||
{
|
||||
switchCamMode(MODE_PLAY);
|
||||
//completePendingRequests();
|
||||
|
@ -37,7 +38,7 @@ void Camera::initialize()
|
|||
completePendingRequests();
|
||||
}
|
||||
|
||||
bool Camera::isOnline()
|
||||
bool OiCamera::isOnline()
|
||||
{
|
||||
QTcpSocket socket;
|
||||
socket.connectToHost(camAddress, 80, QIODevice::ReadOnly);
|
||||
|
@ -46,7 +47,7 @@ bool Camera::isOnline()
|
|||
|
||||
/********* Request handling ***********/
|
||||
|
||||
QNetworkRequest Camera::makeRequest(QString cgi, QMap<QString, QString> params)
|
||||
QNetworkRequest OiCamera::makeRequest(QString cgi, QMap<QString, QString> params)
|
||||
{
|
||||
QString tpl = QString("http://%1/%2.cgi").arg(camAddress.toString()).arg(cgi);
|
||||
|
||||
|
@ -66,7 +67,7 @@ QNetworkRequest Camera::makeRequest(QString cgi, QMap<QString, QString> params)
|
|||
return request;
|
||||
}
|
||||
|
||||
QNetworkReply * Camera::get(QString cgi, QMap<QString, QString> params)
|
||||
QNetworkReply * OiCamera::get(QString cgi, QMap<QString, QString> params)
|
||||
{
|
||||
QNetworkRequest request = makeRequest(cgi, params);
|
||||
QNetworkReply *reply = networkManager->get(request);
|
||||
|
@ -77,7 +78,7 @@ QNetworkReply * Camera::get(QString cgi, QMap<QString, QString> params)
|
|||
return reply;
|
||||
}
|
||||
|
||||
QNetworkReply * Camera::post(QString cgi, QMap<QString, QString> params, QDomDocument body)
|
||||
QNetworkReply * OiCamera::post(QString cgi, QMap<QString, QString> params, QDomDocument body)
|
||||
{
|
||||
QNetworkRequest request = makeRequest(cgi, params);
|
||||
QNetworkReply *reply = networkManager->post(request, body.toByteArray());
|
||||
|
@ -88,7 +89,7 @@ QNetworkReply * Camera::post(QString cgi, QMap<QString, QString> params, QDomDoc
|
|||
return reply;
|
||||
}
|
||||
|
||||
void Camera::completePendingRequests()
|
||||
void OiCamera::completePendingRequests()
|
||||
{
|
||||
static QEventLoop loop;
|
||||
|
||||
|
@ -100,7 +101,7 @@ void Camera::completePendingRequests()
|
|||
}
|
||||
}
|
||||
|
||||
void Camera::requestFinished(QNetworkReply *reply)
|
||||
void OiCamera::requestFinished(QNetworkReply *reply)
|
||||
{
|
||||
QDomDocument xml;
|
||||
|
||||
|
@ -140,32 +141,32 @@ void Camera::requestFinished(QNetworkReply *reply)
|
|||
|
||||
/********* Actions ***********/
|
||||
|
||||
void Camera::controlZoom(ZoomMode cmd)
|
||||
void OiCamera::controlZoom(ZoomMode cmd)
|
||||
{
|
||||
// FIXME implement
|
||||
}
|
||||
|
||||
void Camera::setTimeDiff(QDateTime t)
|
||||
void OiCamera::setTimeDiff(QDateTime t)
|
||||
{
|
||||
// FIXME implement
|
||||
}
|
||||
|
||||
void Camera::reFocus(QPoint pos, QSize size)
|
||||
void OiCamera::reFocus(QPoint pos, QSize size)
|
||||
{
|
||||
// FIXME implement
|
||||
}
|
||||
|
||||
/********* Requests **********/
|
||||
|
||||
void Camera::takeShot() { get("exec_takemotion"); }
|
||||
void Camera::powerOff() { get("exec_pwoff"); }
|
||||
void OiCamera::takeShot() { get("exec_takemotion"); }
|
||||
void OiCamera::powerOff() { get("exec_pwoff"); }
|
||||
|
||||
void Camera::requestCamInfo() { get("get_caminfo"); }
|
||||
void Camera::requestCapacity() { get("get_unusedcapacity"); }
|
||||
void Camera::requestConnectMode() { get("get_connectmode"); }
|
||||
void Camera::requestCommandList() { get("get_commandlist"); }
|
||||
void OiCamera::requestCamInfo() { get("get_caminfo"); }
|
||||
void OiCamera::requestCapacity() { get("get_unusedcapacity"); }
|
||||
void OiCamera::requestConnectMode() { get("get_connectmode"); }
|
||||
void OiCamera::requestCommandList() { get("get_commandlist"); }
|
||||
|
||||
void Camera::requestImageList(QString dir, bool rsv) {
|
||||
void OiCamera::requestImageList(QString dir, bool rsv) {
|
||||
QMap<QString, QString> params;
|
||||
|
||||
params["DIR"] = dir.replace('/', "%2F");
|
||||
|
@ -173,7 +174,7 @@ void Camera::requestImageList(QString dir, bool rsv) {
|
|||
get(rsv ? "get_rsvimglist" : "get_imglist", params);
|
||||
}
|
||||
|
||||
void Camera::requestImage(QString name, QSize resolution)
|
||||
void OiCamera::requestImage(QString name, QSize resolution)
|
||||
{
|
||||
QString tpl = QString("http://%1/DCIM/100OLYMP/%1.JPG").arg(camAddress.toString()).arg(name);
|
||||
QUrl url(tpl);
|
||||
|
@ -182,7 +183,7 @@ void Camera::requestImage(QString name, QSize resolution)
|
|||
networkManager->get(request);
|
||||
}
|
||||
|
||||
void Camera::switchCamMode(CamMode mode)
|
||||
void OiCamera::switchCamMode(CamMode mode)
|
||||
{
|
||||
QMap<QString, QString> params;
|
||||
|
||||
|
@ -204,7 +205,7 @@ void Camera::switchCamMode(CamMode mode)
|
|||
|
||||
/*********** Reply parsers ************/
|
||||
|
||||
void Camera::parseXml(QString cgi, QDomDocument body)
|
||||
void OiCamera::parseXml(QString cgi, QDomDocument body)
|
||||
{
|
||||
if (cgi == "get_unusedcapacity") parseCapacity(body);
|
||||
else if (cgi == "get_commandlist") parseCommandList(body);
|
||||
|
@ -226,19 +227,19 @@ void OiCamera::parseList(QString cgi, QByteArray body)
|
|||
}
|
||||
}
|
||||
|
||||
void Camera::parseImage(QString cgi, QByteArray body)
|
||||
void OiCamera::parseImage(QString cgi, QByteArray body)
|
||||
{
|
||||
QImage img = QImage::fromData(body.data());
|
||||
|
||||
emit receivedImage(img);
|
||||
}
|
||||
|
||||
void Camera::parseEmpty(QString cgi)
|
||||
void OiCamera::parseEmpty(QString cgi)
|
||||
{
|
||||
// FIXME anything to do here?
|
||||
}
|
||||
|
||||
void Camera::parseCamInfo(QDomDocument body)
|
||||
void OiCamera::parseCamInfo(QDomDocument body)
|
||||
{
|
||||
QDomElement elm = body.firstChildElement("caminfo");
|
||||
if (!elm.isNull()) {
|
||||
|
@ -247,19 +248,19 @@ void Camera::parseCamInfo(QDomDocument body)
|
|||
}
|
||||
}
|
||||
|
||||
void Camera::parseCapacity(QDomDocument body)
|
||||
void OiCamera::parseCapacity(QDomDocument body)
|
||||
{
|
||||
QDomElement elm = body.firstChildElement("unused");
|
||||
if (!elm.isNull())
|
||||
unusedCapacity = elm.text().toInt();
|
||||
}
|
||||
|
||||
void Camera::parseCommandList(QDomDocument body)
|
||||
void OiCamera::parseCommandList(QDomDocument body)
|
||||
{
|
||||
commandList = body;
|
||||
}
|
||||
|
||||
void Camera::parseConnectMode(QDomDocument body)
|
||||
void OiCamera::parseConnectMode(QDomDocument body)
|
||||
{
|
||||
QDomElement elm = body.firstChildElement("connectmode");
|
||||
if (!elm.isNull()) {
|
||||
|
@ -273,17 +274,17 @@ void Camera::parseConnectMode(QDomDocument body)
|
|||
|
||||
}
|
||||
|
||||
void Camera::parseProperties(QDomDocument body)
|
||||
void OiCamera::parseProperties(QDomDocument body)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Camera::parseTakeMisc(QDomDocument body)
|
||||
void OiCamera::parseTakeMisc(QDomDocument body)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Camera::parseTakeMotion(QDomDocument body)
|
||||
void OiCamera::parseTakeMotion(QDomDocument body)
|
||||
{
|
||||
|
||||
}
|
||||
|
|
|
@ -12,7 +12,7 @@ class QNetworkAccessManager;
|
|||
class QNetworkReply;
|
||||
class QNetworkRequest;
|
||||
|
||||
class Camera : public QObject
|
||||
class OiCamera : public QObject
|
||||
{
|
||||
Q_OBJECT
|
||||
// FIXME add Q_PROPERTY's
|
||||
|
@ -38,7 +38,7 @@ public:
|
|||
ZOOM_TELETERM
|
||||
};
|
||||
|
||||
Camera();
|
||||
OiCamera();
|
||||
|
||||
void setProperty(QString key, QString value);
|
||||
QString getProperty(QString key);
|
||||
|
@ -110,9 +110,7 @@ protected:
|
|||
/* Members */
|
||||
QHostAddress camAddress;
|
||||
QList<QNetworkReply *> pendingReplies;
|
||||
QMap<QString, QDateTime> cacheMap;
|
||||
QNetworkAccessManager * networkManager;
|
||||
LiveView * liveView;
|
||||
|
||||
/* Properties */
|
||||
enum CamMode camMode;
|
||||
|
|
|
@ -11,11 +11,13 @@ TEMPLATE = lib
|
|||
|
||||
SOURCES += camera.cpp \
|
||||
liveview.cpp \
|
||||
properties.cpp
|
||||
properties.cpp \
|
||||
image.cpp
|
||||
|
||||
HEADERS += camera.h \
|
||||
liveview.h \
|
||||
properties.h
|
||||
properties.h \
|
||||
image.h
|
||||
|
||||
unix {
|
||||
target.path = /usr/lib
|
||||
|
|
|
@ -2,11 +2,11 @@
|
|||
|
||||
#include "properties.h"
|
||||
|
||||
Properties::Properties(QDomNode desclist)
|
||||
OiProperties::OiProperties(QDomNode desclist)
|
||||
{
|
||||
QDomNode desc = desclist.firstChild();
|
||||
while (!desc.isNull()) {
|
||||
Property prop(desc);
|
||||
OiProperty prop(desc);
|
||||
|
||||
if (prop.isValid())
|
||||
properties[prop.key] = prop;
|
||||
|
@ -15,7 +15,7 @@ Properties::Properties(QDomNode desclist)
|
|||
}
|
||||
}
|
||||
|
||||
Property::Property(QDomNode desc)
|
||||
OiProperty::OiProperty(QDomNode desc)
|
||||
{
|
||||
key = desc.firstChildElement("propname").text();
|
||||
value = desc.firstChildElement("value").text();
|
||||
|
@ -30,7 +30,7 @@ Property::Property(QDomNode desc)
|
|||
flags |= PROP_VALID;
|
||||
}
|
||||
|
||||
Property & Property::operator =(const QString &newValue)
|
||||
OiProperty & OiProperty::operator =(const QString &newValue)
|
||||
{
|
||||
if (valid.contains(newValue)) {
|
||||
value = newValue;
|
||||
|
@ -40,7 +40,7 @@ Property & Property::operator =(const QString &newValue)
|
|||
return *this;
|
||||
}
|
||||
|
||||
bool Property::isValid(QString check)
|
||||
bool OiProperty::isValid(QString check)
|
||||
{
|
||||
return valid.contains(check.isEmpty() ? value : check);
|
||||
}
|
||||
|
|
|
@ -6,24 +6,24 @@
|
|||
|
||||
#include "camera.h"
|
||||
|
||||
class Property;
|
||||
class OiProperty;
|
||||
|
||||
class Properties
|
||||
class OiProperties
|
||||
{
|
||||
public:
|
||||
Properties(QDomNode desclist);
|
||||
OiProperties(QDomNode desclist);
|
||||
|
||||
Property& operator[](const QString &key);
|
||||
OiProperty& operator[](const QString &key);
|
||||
|
||||
protected:
|
||||
Camera *cam;
|
||||
OiCamera *cam;
|
||||
|
||||
QMap<QString, Property> properties;
|
||||
QMap<QString, OiProperty> properties;
|
||||
};
|
||||
|
||||
class Property
|
||||
class OiProperty
|
||||
{
|
||||
friend class Properties;
|
||||
friend class OiProperties;
|
||||
|
||||
enum {
|
||||
PROP_VALID = 1,
|
||||
|
@ -33,16 +33,16 @@ class Property
|
|||
};
|
||||
|
||||
public:
|
||||
Property() { }
|
||||
Property(QDomElement desc);
|
||||
OiProperty() { }
|
||||
OiProperty(QDomElement desc);
|
||||
|
||||
Property& operator =(const QString &value);
|
||||
OiProperty& operator =(const QString &value);
|
||||
operator QString();
|
||||
|
||||
bool isValid(QString value = QString());
|
||||
|
||||
protected:
|
||||
Property(QDomNode desc);
|
||||
OiProperty(QDomNode desc);
|
||||
|
||||
QStringList valid;
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ int main(int argc, char *argv[])
|
|||
QApplication a(argc, argv);
|
||||
|
||||
Viewer w;
|
||||
Camera c;
|
||||
OiCamera c;
|
||||
|
||||
w.show();
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue