Witam,
ktoś może mi wytłumaczyć łopatologicznie co to jest za klasa i co ona dokładnie robi oraz skąd się co bierze?

ifndef WEBSOCKET_APPLICATIONS_CHAT_PARTICIPANT_HPP
#define WEBSOCKET_APPLICATIONS_CHAT_PARTICIPANT_HPP

#include <string>
#include <boost/shared_ptr.hpp>
#include "dataframe.hpp"

namespace websocket {
    namespace applications {
        namespace chat {

            class participant
            {
            public:
                virtual ~participant() {}
                virtual void deliver(dataframe msg) = 0;
                virtual std::string get_id() = 0;
            };

            typedef boost::shared_ptr<participant> participant_ptr;
            
        } // chat
    } // namespace applications
} // namespace websocket 

Odwołanie do niej z main() jest takie:

websocket::applications::chat::server s(argv[1], argv[2]);

Nie rozumiem również skąd tam jest ::server s , ponieważ w participan.hpp tego nie ma ;/