summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (from parent 1: 624dade)
raw | patch | inline | side by side (from parent 1: 624dade)
author | Tomi Valkeinen <tomi.valkeinen@iki.fi> | |
Sat, 3 Oct 2015 08:27:26 +0000 (11:27 +0300) | ||
committer | Tomi Valkeinen <tomi.valkeinen@iki.fi> | |
Sat, 3 Oct 2015 14:49:45 +0000 (17:49 +0300) |
diff --git a/libkms++/connector.h b/libkms++/connector.h
index 14e6b369420c1522e87bbda6ff144e4b02209ce0..84845d5326b8c2235ff551b5d5953747150e541e 100644 (file)
--- a/libkms++/connector.h
+++ b/libkms++/connector.h
class Connector : public DrmObject
{
+ friend class Card;
public:
- Connector(Card& card, uint32_t id, uint32_t idx);
- ~Connector();
-
- void setup();
-
void print_short() const;
Videomode get_default_mode() const;
bool connected() const;
private:
+ Connector(Card& card, uint32_t id, uint32_t idx);
+ ~Connector();
+
+ void setup();
+
ConnectorPriv* m_priv;
std::string m_fullname;
diff --git a/libkms++/crtc.h b/libkms++/crtc.h
index fabc6e250d3314f3fead222a1f7cf9beb71e658c..d30d4972dda0113fbbbbdf2514b3428ce9d56d29 100644 (file)
--- a/libkms++/crtc.h
+++ b/libkms++/crtc.h
class Crtc : public DrmObject
{
+ friend class Card;
public:
- Crtc(Card& card, uint32_t id, uint32_t idx);
- ~Crtc();
-
- void setup();
-
void print_short() const;
const std::vector<Plane*>& get_possible_planes() const { return m_possible_planes; }
int page_flip(Framebuffer& fb, void *data);
private:
+ Crtc(Card& card, uint32_t id, uint32_t idx);
+ ~Crtc();
+
+ void setup();
+
CrtcPriv* m_priv;
std::vector<Plane*> m_possible_planes;
diff --git a/libkms++/drmobject.h b/libkms++/drmobject.h
index 6c3062c024852d7453c43e424be97e888dbe5254..f1791919ece511015491952a05e00ed910ee22a0 100644 (file)
--- a/libkms++/drmobject.h
+++ b/libkms++/drmobject.h
class DrmObject
{
+ friend class Card;
public:
- DrmObject(Card& card, uint32_t object_type);
- DrmObject(Card& card, uint32_t id, uint32_t object_type, uint32_t idx = 0);
- virtual ~DrmObject();
-
DrmObject(const DrmObject& other) = delete;
DrmObject& operator=(const DrmObject& other) = delete;
- virtual void setup() { };
-
virtual void print_short() const = 0;
void print_props() const;
uint64_t get_prop_value(const char *name) const;
protected:
+ DrmObject(Card& card, uint32_t object_type);
+ DrmObject(Card& card, uint32_t id, uint32_t object_type, uint32_t idx = 0);
+
+ virtual ~DrmObject();
+
+ virtual void setup() { }
+
virtual void set_id(uint32_t id);
private:
diff --git a/libkms++/encoder.h b/libkms++/encoder.h
index 3e9a8e46c2bff96df3b0f6e9797abd2522390c83..77e4e3e77001ea57fe6eff0f53e6f226aa91a4a3 100644 (file)
--- a/libkms++/encoder.h
+++ b/libkms++/encoder.h
class Encoder : public DrmObject
{
+ friend class Card;
public:
- Encoder(Card& card, uint32_t id);
- ~Encoder();
-
void print_short() const;
Crtc* get_crtc() const;
std::vector<Crtc*> get_possible_crtcs() const;
private:
+ Encoder(Card& card, uint32_t id);
+ ~Encoder();
+
EncoderPriv* m_priv;
};
}
diff --git a/libkms++/plane.h b/libkms++/plane.h
index 890a28fdfc9b77c127d84c434f81742c8300791d..671e1508964b7b6cf9b14f3a85db9a392eec4dce 100644 (file)
--- a/libkms++/plane.h
+++ b/libkms++/plane.h
class Plane : public DrmObject
{
+ friend class Card;
public:
- Plane(Card& card, uint32_t id);
- ~Plane();
-
void print_short() const;
bool supports_crtc(Crtc* crtc) const;
PlaneType plane_type() const;
private:
+ Plane(Card& card, uint32_t id);
+ ~Plane();
+
PlanePriv* m_priv;
};
}
diff --git a/libkms++/property.h b/libkms++/property.h
index d5306d0be34db2c0b0be3a30c34ff5822b10502e..24d2ae93887de1bb41df516b11423e98aa05fb0d 100644 (file)
--- a/libkms++/property.h
+++ b/libkms++/property.h
class Property : public DrmObject
{
+ friend class Card;
public:
- Property(Card& card, uint32_t id);
- ~Property();
-
void print_short() const;
const char *name() const;
private:
+ Property(Card& card, uint32_t id);
+ ~Property();
+
PropertyPriv* m_priv;
};
}