From 99637aa71f476f45a92c0015a82110933cb74c19 Mon Sep 17 00:00:00 2001 From: Constantin Kaplinsky Date: Tue, 12 Sep 2006 05:46:34 +0000 Subject: [PATCH] Documented the CapsList class. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@666 3789f03b-4d11-0410-bbf8-ca57d06f2519 --- common/rfb/CapsList.cxx | 2 +- common/rfb/CapsList.h | 22 +++++++++++++++++----- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/common/rfb/CapsList.cxx b/common/rfb/CapsList.cxx index e5f0aff9..11977b2e 100644 --- a/common/rfb/CapsList.cxx +++ b/common/rfb/CapsList.cxx @@ -18,7 +18,7 @@ // // CapsList class implementation. -// FIXME: Extend the comment. +// Member functions are documented in CapsList.h. // #include diff --git a/common/rfb/CapsList.h b/common/rfb/CapsList.h index ce17aabd..b8fb8e85 100644 --- a/common/rfb/CapsList.h +++ b/common/rfb/CapsList.h @@ -17,8 +17,8 @@ */ // -// CapsList class declaration. -// FIXME: Extend the comment. +// CapsList - a list of server-side protocol capabilities. This class makes +// it easy to prepare a capability list and send it via OutStream transport. // #ifndef __RFB_CAPSLIST_H__ @@ -32,23 +32,35 @@ namespace rfb { // NOTE: Here we use the CapsContainer class for an off-design purpose. // However, that class is so good that I believe it's better to - // use its well-tested reliable code instead of writing new class - // from the scratch. + // use its well-tested code instead of writing new class from the + // scratch. - class CapsList : private CapsContainer { + class CapsList : private CapsContainer + { public: + + // Constructor. + // The maxCaps value is the maximum number of capabilities in the list. CapsList(int maxCaps = 64); + virtual ~CapsList(); + // Current number of capabilities in the list. int getSize() const { return numEnabled(); } + // Add capability ("standard" vendor). void addStandard(rdr::U32 code, const char *name); + // Add capability (TightVNC vendor). void addTightExt(rdr::U32 code, const char *name); + // Add capability (any other vendor). void add3rdParty(rdr::U32 code, const char *name, const char *vendor); + // Send the list of capabilities (not including the counter). void write(rdr::OutStream* os) const; protected: + + // Pre-defined signatures for known vendors. static const char *const VENDOR_STD; static const char *const VENDOR_TIGHT; }; -- 2.39.5