diff --git a/SubscriptionManager.cpp b/SubscriptionManager.cpp index 00ff4f4..7ad40df 100644 --- a/SubscriptionManager.cpp +++ b/SubscriptionManager.cpp @@ -11,6 +11,10 @@ namespace core { factory = new SubscriptionHandlerFactory(); } + SubscriptionManager::~SubscriptionManager() { + delete factory; + } + int SubscriptionManager::add(Subscription &subscription) { lock.lock(); subscriptions.insert(std::make_pair(subscription.id, &subscription)); diff --git a/html/CommandList_8h_source.html b/html/CommandList_8h_source.html deleted file mode 100644 index 02392e0..0000000 --- a/html/CommandList_8h_source.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - -My Project: CommandList.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
CommandList.h
-
-
-
1 #ifndef __CommandList_h__
-
2 #define __CommandList_h__
-
3 
-
4 #include "TCPSession.h"
-
5 #include "Command.h"
-
6 #include "Log.h"
-
7 
-
8 namespace core {
-
9 
-
17 
-
18  class CommandList : public Command {
-
19 
-
20  public:
-
21 
-
22  CommandList(std::string delimiter = "", int depth = 0);
-
23 
-
27 
-
28  void add(Command &command, std::string name = "");
-
29 
-
33 
-
34  void remove(Command &command);
-
35 
-
42 
-
43  int processRequest(coreutils::ZString &request, TCPSession &session);
-
44 
-
50 
-
51  bool grabInput(TCPSession &session, Command &command);
-
52 
-
56 
-
57  void clearGrab(TCPSession &session);
-
58 
-
62 
-
63  int processCommand(coreutils::ZString &request, TCPSession &session);
-
64 
-
65  protected:
-
66 
-
70 
-
71  std::map<std::string, Command *> commands;
-
72  std::string delimiter;
-
73  int depth;
-
74 
-
75  };
-
76 
-
77 }
-
78 
-
79 #endif
-
Definition: CommandList.h:18
-
int processCommand(coreutils::ZString &request, TCPSession &session)
Definition: CommandList.cpp:43
-
bool grabInput(TCPSession &session, Command &command)
Definition: CommandList.cpp:34
-
void add(Command &command, std::string name="")
Definition: CommandList.cpp:8
-
void remove(Command &command)
Definition: CommandList.cpp:12
-
int processRequest(coreutils::ZString &request, TCPSession &session)
Definition: CommandList.cpp:14
-
std::map< std::string, Command * > commands
Definition: CommandList.h:71
-
Definition: Command.h:22
-
Definition: TCPSession.h:26
-
- - - - diff --git a/html/Command_8h_source.html b/html/Command_8h_source.html deleted file mode 100644 index 6855450..0000000 --- a/html/Command_8h_source.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - -My Project: Command.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Command.h
-
-
-
1 #ifndef __Command_h__
-
2 #define __Command_h__
-
3 
-
4 #include "includes"
-
5 #include "Object.h"
-
6 #include "TCPSession.h"
-
7 #include "ZString.h"
-
8 
-
9 namespace core {
-
10 
-
11  class CommandList;
-
12 
-
13  class Session;
-
14 
-
21 
-
22  class Command {
-
23 
-
24  public:
-
25 
-
36 
-
37  virtual int processCommand(coreutils::ZString &request, TCPSession &session);
-
38 
-
44 
-
45  virtual void output(std::stringstream &out);
-
46 
-
47  };
-
48 
-
49 }
-
50 
-
51 #endif
-
Definition: Command.h:22
-
virtual int processCommand(coreutils::ZString &request, TCPSession &session)
Definition: Command.cpp:7
-
virtual void output(std::stringstream &out)
Definition: Command.cpp:11
-
Definition: TCPSession.h:26
-
- - - - diff --git a/html/ConsoleServer_8h_source.html b/html/ConsoleServer_8h_source.html deleted file mode 100644 index a271999..0000000 --- a/html/ConsoleServer_8h_source.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - - -My Project: ConsoleServer.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
ConsoleServer.h
-
-
-
1 #ifndef __ConsoleServer_h__
-
2 #define __ConsoleServer_h__
-
3 
-
4 #include "includes"
-
5 #include "TLSServer.h"
-
6 #include "Command.h"
-
7 #include "EPoll.h"
-
8 #include "LogListener.h"
-
9 
-
10 namespace core {
-
11 
-
12  class TCPSocket;
-
13  class TCPSession;
-
14 
-
18 
-
19  class ConsoleServer : public TCPServer, public coreutils::LogListener {
-
20 
-
21  public:
-
22 
-
23  //
-
24  //
-
25  //
-
26 
-
27  ConsoleServer(EPoll &ePoll, IPAddress address);
-
28 
-
29  //
-
30  //
-
31  //
-
32 
-
33  void logSend(std::string out) override;
-
34 
-
35  TCPSession * getSocketAccept(EPoll &ePoll) override;
-
36 
-
37  };
-
38 
-
39 }
-
40 
-
41 #endif
-
Definition: ConsoleServer.h:19
-
TCPSession * getSocketAccept(EPoll &ePoll) override
Definition: ConsoleServer.cpp:17
-
Definition: EPoll.h:31
-
Definition: IPAddress.h:9
-
Definition: TCPServer.h:28
-
Definition: TCPSession.h:26
-
- - - - diff --git a/html/ConsoleSession_8h_source.html b/html/ConsoleSession_8h_source.html deleted file mode 100644 index deef79f..0000000 --- a/html/ConsoleSession_8h_source.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - -My Project: ConsoleSession.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
ConsoleSession.h
-
-
-
1 #ifndef __ConsoleSession_h__
-
2 #define __ConsoleSession_h__
-
3 
-
4 #include "TerminalSession.h"
-
5 //#include "TCPServer.h"
-
6 #include "CommandList.h"
-
7 
-
8 namespace core {
-
9 
-
10  class TCPServer;
-
11 
-
19 
- -
21 
-
22  public:
-
23  ConsoleSession(EPoll &ePoll, TCPServer &server);
-
24  ~ConsoleSession();
-
25 
-
26  void writeLog(std::string data);
-
27 
-
28  protected:
-
29  void protocol(coreutils::ZString &data) override;
-
30 
-
31  private:
-
32  enum Status {WELCOME, LOGIN, WAIT_USER_PROFILE, PASSWORD, WAIT_PASSWORD, PROMPT, INPUT, PROCESS, DONE};
-
33  Status status = WELCOME;
-
34  void doCommand(coreutils::ZString &request);
-
35  coreutils::ZString command;
-
36 
-
37  };
-
38 
-
39 }
-
40 
-
41 #endif
-
Definition: ConsoleSession.h:20
-
void protocol(coreutils::ZString &data) override
Definition: ConsoleSession.cpp:11
-
Definition: EPoll.h:31
-
Definition: TCPServer.h:28
-
Definition: TerminalSession.h:30
-
- - - - diff --git a/html/EPoll_8h_source.html b/html/EPoll_8h_source.html deleted file mode 100644 index e75c626..0000000 --- a/html/EPoll_8h_source.html +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - -My Project: EPoll.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
EPoll.h
-
-
-
1 #ifndef __EPoll_h__
-
2 #define __EPoll_h__
-
3 
-
4 #include "Log.h"
-
5 #include "Socket.h"
-
6 #include "Thread.h"
-
7 #include "TCPSession.h"
-
8 #include "Command.h"
-
9 
-
10 namespace core {
-
11 
-
30 
-
31  class EPoll : public Command {
-
32 
-
33  public:
-
34 
-
35  volatile long long eventId = 0;
-
36 
-
40 
-
41  EPoll();
-
42 
-
46 
-
47  ~EPoll();
-
48 
-
55 
-
56  bool start(int numberOfThreads, int maxSockets);
-
57 
-
63 
-
64  bool stop();
-
65 
-
70 
-
71  bool isStopping();
-
72 
-
76 
-
77  int getDescriptor();
-
78 
-
82 
-
83  int maxSockets;
-
84 
-
88 
-
89  void eventReceived(struct epoll_event event);
-
90 
-
97 
-
98  int processCommand(coreutils::ZString &request, TCPSession &session) override;
-
99 
-
100  private:
-
101 
-
102  int epfd;
-
103  int numberOfThreads;
-
104  std::vector<Thread> threads;
-
105  volatile bool terminateThreads;
-
106 
-
107  };
-
108 
-
109 }
-
110 
-
111 #endif
-
112 
-
Definition: Command.h:22
-
Definition: EPoll.h:31
-
bool stop()
Stop and shut down the BMAEPoll processing.
Definition: EPoll.cpp:46
-
int getDescriptor()
Return the descriptor for the ePoll socket.
Definition: EPoll.cpp:70
-
int processCommand(coreutils::ZString &request, TCPSession &session) override
Output the threads array to the console.
Definition: EPoll.cpp:74
-
EPoll()
Definition: EPoll.cpp:9
-
bool isStopping()
Returns a true if the stop command has been requested.
Definition: EPoll.cpp:66
-
void eventReceived(struct epoll_event event)
Dispatch event to appropriate socket.
-
~EPoll()
Definition: EPoll.cpp:18
-
bool start(int numberOfThreads, int maxSockets)
Start the BMAEPoll processing.
Definition: EPoll.cpp:20
-
int maxSockets
The maximum number of socket allowed.
Definition: EPoll.h:83
-
Definition: TCPSession.h:26
-
- - - - diff --git a/html/INotify_8h_source.html b/html/INotify_8h_source.html deleted file mode 100644 index d9b1771..0000000 --- a/html/INotify_8h_source.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - -My Project: INotify.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
INotify.h
-
-
-
1 #ifndef __INotify_h__
-
2 # define __INotify_h__
-
3 
-
4 #include "includes"
-
5 #include "Socket.h"
-
6 
-
7 namespace core {
-
8 
-
9  class INotify : Socket {
-
10 
-
11  public:
-
12  INotify(EPoll &ePoll);
-
13  ~INotify();
-
14 
-
15  int addWatch(coreutils::ZString &watch);
-
16  void removeWatch(int wd);
-
17 
-
18  void onDataReceived(coreutils::ZString &data) override;
-
19 
-
20  virtual void inAccess(coreutils::ZString name) {}
-
21  virtual void inAttrib(std::string name) {}
-
22  virtual void inCloseWrite(std::string name) {}
-
23  virtual void inCloseNoWrite(std::string name) {}
-
24  virtual void inCreate(coreutils::ZString &name) {}
-
25  virtual void inDelete(std::string name) {}
-
26  virtual void inDeleteSelf(std::string name) {}
-
27  virtual void inModify(std::string name) {}
-
28  virtual void inMoveSelf(std::string name) {}
-
29  virtual void inMovedFrom(std::string name) {}
-
30  virtual void inMovedTo(std::string name) {}
-
31  virtual void inOpen(std::string name) {}
-
32 
-
33  };
-
34 
-
35 }
-
36 
-
37 #endif
-
Definition: EPoll.h:31
-
Definition: INotify.h:9
-
Definition: Socket.h:34
-
- - - - diff --git a/html/IPAddressList_8h_source.html b/html/IPAddressList_8h_source.html deleted file mode 100644 index 09eb44b..0000000 --- a/html/IPAddressList_8h_source.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - -My Project: IPAddressList.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
IPAddressList.h
-
-
-
1 #ifndef __IPAddressList_h__
-
2 #define __IPAddressList_h__
-
3 
-
4 #include "includes"
-
5 #include "IPAddress.h"
-
6 
-
7 namespace core {
-
8 
-
9  class IPAddressList {
-
10 
-
11  public:
-
12  IPAddressList();
-
13 
-
14  std::map<std::string, IPAddress> getList();
-
15  void add(IPAddress ipAddress);
-
16  bool remove(IPAddress ipAddress);
-
17  bool contains(std::string ipAddress);
-
18 
-
19  private:
-
20  std::map<std::string, IPAddress> list;
-
21  std::map<std::string, IPAddress>::iterator it = list.begin();
-
22  };
-
23 
-
24 }
-
25 
-
26 #endif
-
Definition: IPAddressList.h:9
-
Definition: IPAddress.h:9
-
- - - - diff --git a/html/IPAddress_8h_source.html b/html/IPAddress_8h_source.html deleted file mode 100644 index 33793d8..0000000 --- a/html/IPAddress_8h_source.html +++ /dev/null @@ -1,108 +0,0 @@ - - - - - - - -My Project: IPAddress.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
IPAddress.h
-
-
-
1 #ifndef __IPAddress_h__
-
2 #define __IPAddress_h__
-
3 
-
4 #include "includes"
-
5 #include "Object.h"
-
6 
-
7 namespace core {
-
8 
-
9  class IPAddress : public Object {
-
10 
-
11  public:
-
12  IPAddress();
-
13  IPAddress(std::string address);
-
14  IPAddress(std::string address, int port);
-
15  ~IPAddress();
-
16 
-
17  struct sockaddr_in addr;
-
18  socklen_t addressLength;
-
19 
-
20  struct sockaddr * getPointer();
-
21  std::string getClientAddress();
-
22  std::string getClientAddressAndPort();
-
23  int getClientPort();
-
24 
-
25  };
-
26 
-
27 }
-
28 
-
29 #endif
-
Definition: IPAddress.h:9
-
int getClientPort()
Get the client network port number.
Definition: IPAddress.cpp:47
-
std::string getClientAddressAndPort()
Get the client network address and port as xxx.xxx.xxx.xxx:ppppp.
Definition: IPAddress.cpp:40
-
std::string getClientAddress()
Get the client network address as xxx.xxx.xxx.xxx.
Definition: IPAddress.cpp:35
-
Definition: Object.h:8
-
- - - - diff --git a/html/Object_8h_source.html b/html/Object_8h_source.html deleted file mode 100644 index fa76d45..0000000 --- a/html/Object_8h_source.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - - -My Project: Object.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Object.h
-
-
-
1 #ifndef __Object_h__
-
2 #define __Object_h__
-
3 
-
4 #include "includes"
-
5 
-
6 namespace core {
-
7 
-
8  class Object {
-
9 
-
10  public:
-
11 
-
12  std::string name;
-
13  std::string tag;
-
14 
-
15  };
-
16 
-
17 }
-
18 
-
19 #endif
-
Definition: Object.h:8
-
- - - - diff --git a/html/SessionFilter_8h_source.html b/html/SessionFilter_8h_source.html deleted file mode 100644 index df7c23d..0000000 --- a/html/SessionFilter_8h_source.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - -My Project: SessionFilter.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
SessionFilter.h
-
-
-
1 #ifndef __SessionFilter_h__
-
2 #define __SessionFilter_h__
-
3 
-
4 //#include "Session.h"
-
5 #include "Object.h"
-
6 
-
7 namespace core
-
8 {
-
9 
-
10  class TCPSession;
-
11 
-
12  class SessionFilter : public Object
-
13  {
-
14 
-
15  public:
-
16  virtual bool test(TCPSession &session)
-
17  {
-
18  return true;
-
19  }
-
20  };
-
21 
-
22 }
-
23 
-
24 #endif
-
Definition: Object.h:8
-
Definition: SessionFilter.h:13
-
Definition: TCPSession.h:26
-
- - - - diff --git a/html/Socket_8h_source.html b/html/Socket_8h_source.html deleted file mode 100644 index 1d5babe..0000000 --- a/html/Socket_8h_source.html +++ /dev/null @@ -1,205 +0,0 @@ - - - - - - - -My Project: Socket.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Socket.h
-
-
-
1 #ifndef __Socket_h__
-
2 #define __Socket_h__
-
3 
-
4 #include "includes"
-
5 #include "Object.h"
-
6 #include "ZString.h"
-
7 
-
8 namespace core {
-
9 
-
10  class EPoll;
-
11 
-
33 
-
34  class Socket {
-
35 
-
36  public:
-
37 
-
44 
-
45  Socket(EPoll &ePoll, std::string text = "");
-
46 
-
50 
-
51  virtual ~Socket();
-
52 
-
58 
-
59  void shutdown(std::string text = "unknown");
-
60 
-
65 
-
66  void setDescriptor(int descriptor);
-
67 
-
68  int getDescriptor();
-
69 
-
82 
-
83  bool eventReceived(struct epoll_event event, long long eventId);
-
84 
-
88 
-
89  int write(std::string data);
-
90  void write(char *buffer, int length);
-
91 
-
92  void output(std::stringstream &out);
-
93 
-
100 
-
101  virtual void onRegister();
-
102  virtual void onRegistered();
-
103 
-
104  virtual void onUnregister();
-
105 
-
111 
-
112  virtual void onUnregistered();
-
113 
-
114  bool needsToWrite();
-
115 
-
116  bool reset = false;
-
117 
-
118  volatile bool shutDown = false;
-
119 
-
120  void enableSocket();
-
121  void disableSocket();
-
122 
-
123  protected:
-
124 
-
125  EPoll &ePoll; // The EPoll control object.
-
126 
-
127  void setBufferSize(int length);
-
128 
-
129  int getBufferSize();
-
130 
-
136 
-
137 // virtual void onConnected(); ///< Called when socket is open and ready to communicate.
-
138 
-
142 
-
143 // virtual void onDisconnected(); ///< Called when socket is closing and no longer ready to communicate.
-
144 
-
152 
-
153  virtual void onDataReceived(std::string data);
-
154 
-
158 
-
159  virtual void onDataReceived(coreutils::ZString &data);
-
160 
-
165 
-
166  virtual void receiveData(coreutils::ZString &buffer);
-
167 
-
168  private:
-
169 
-
170  std::string text;
-
171  int descriptor = -1;
-
172  std::mutex outlock;
-
173  bool readHangup = false;
-
174  volatile bool inHandler = false;
-
175 
-
176  //-------------------------------------------------------------------------------------
-
177  // the writeSocket is called when epoll has received a write request for a socket.
-
178  // Writing data to this socket is queued in the streambuf and permission is requested
-
179  // to write to the socket. This routine handles the writing of the streambuf data
-
180  // buffer to the socket.
-
181  //-------------------------------------------------------------------------------------
-
182 
-
183  void writeSocket();
-
184 
-
185  // int_type underflow();
-
186 // int_type uflow();
-
187 // int_type pbackfail(int_type ch);
-
188 // streamsize showmanyc();
-
189 
-
190  char *buffer; // This is a pointer to the managed buffer space.
-
191  int length; // This is the length of the buffer.
-
192 
-
193  std::queue<std::string> fifo;
-
194 
-
195  void resetSocket();
-
196 
-
197  std::mutex lock;
-
198 
-
199  };
-
200 
-
201 }
-
202 
-
203 #endif
-
204 
-
Definition: EPoll.h:31
-
Definition: Socket.h:34
-
int getDescriptor()
Get the descriptor for the socket.
Definition: Socket.cpp:46
-
int write(std::string data)
Definition: Socket.cpp:158
-
bool eventReceived(struct epoll_event event, long long eventId)
Parse epoll event and call specified callbacks.
Definition: Socket.cpp:70
-
virtual void onRegistered()
Called after the socket has been registered with epoll processing.
Definition: Socket.cpp:64
-
virtual void receiveData(coreutils::ZString &buffer)
Definition: Socket.cpp:112
-
Socket(EPoll &ePoll, std::string text="")
Definition: Socket.cpp:12
-
virtual void onRegister()
Called before the socket has registered with the epoll processing.
Definition: Socket.cpp:62
-
virtual ~Socket()
Definition: Socket.cpp:18
-
void setDescriptor(int descriptor)
Set the descriptor for the socket.
Definition: Socket.cpp:30
-
virtual void onDataReceived(std::string data)
Called when data is received from the socket.
Definition: Socket.cpp:102
-
virtual void onUnregistered()
Called when the socket has finished unregistering for the epoll processing.
Definition: Socket.cpp:68
-
void shutdown(std::string text="unknown")
Definition: Socket.cpp:179
-
- - - - diff --git a/html/SubscriptionHandler_8h_source.html b/html/SubscriptionHandler_8h_source.html deleted file mode 100644 index c31302d..0000000 --- a/html/SubscriptionHandler_8h_source.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - -My Project: SubscriptionHandler.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
SubscriptionHandler.h
-
-
-
1 #ifndef __SubscriptionHandler_h__
-
2 #define __SubscriptionHandler_h__
-
3 
-
4 #include "ZString.h"
-
5 #include <sstream>
-
6 #include <string>
-
7 #include <vector>
-
8 
-
9 namespace core {
-
10  class Subscription;
-
11  class TCPSession;
-
12 
- -
14 
-
15  public:
-
16  virtual int process(coreutils::ZString &request, std::stringstream &out, TCPSession &session, Subscription *subscription) { return 0; }
-
17  virtual int onSubscribe(TCPSession &session, Subscription *subscription) { return 0; }
-
18 
-
19  };
-
20 }
-
21 
-
22 #endif
-
Definition: SubscriptionHandler.h:13
-
Definition: Subscription.h:14
-
Definition: TCPSession.h:26
-
- - - - diff --git a/html/SubscriptionManager_8h_source.html b/html/SubscriptionManager_8h_source.html deleted file mode 100644 index c7e34af..0000000 --- a/html/SubscriptionManager_8h_source.html +++ /dev/null @@ -1,117 +0,0 @@ - - - - - - - -My Project: SubscriptionManager.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
SubscriptionManager.h
-
-
-
1 #ifndef __SubscriptionManager_h__
-
2 #define __SubscriptionManager_h__
-
3 
-
4 #include "Command.h"
-
5 #include "Subscription.h"
-
6 #include "SubscriptionHandler.h"
-
7 #include "TCPSession.h"
-
8 #include "ZString.h"
-
9 #include <string>
-
10 #include <vector>
-
11 
-
12 namespace core {
-
13 
-
14  class SubscriptionHandlerFactory;
-
15 
-
16  class SubscriptionManager : public Command {
-
17 
-
18  public:
- -
20  virtual ~SubscriptionManager();
-
21 
-
22  int add(Subscription &subscription);
-
23  int removeSessionSubscriptions(TCPSession &session);
-
24  int processCommand(coreutils::ZString &request, TCPSession &session) override;
-
25 
- -
27 
-
28  private:
-
29  Subscription *subscription;
-
30  std::map<std::string, Subscription *> subscriptions;
-
31  Subscription *newSubscription;
-
32  std::mutex lock;
-
33  };
-
34 
-
35 }
-
36 
-
37 #endif
-
Definition: Command.h:22
-
Definition: SubscriptionHandlerFactory.h:9
-
Definition: SubscriptionManager.h:16
-
int processCommand(coreutils::ZString &request, TCPSession &session) override
Definition: SubscriptionManager.cpp:53
-
Definition: Subscription.h:14
-
Definition: TCPSession.h:26
-
- - - - diff --git a/html/Subscription_8h_source.html b/html/Subscription_8h_source.html deleted file mode 100644 index 0495a52..0000000 --- a/html/Subscription_8h_source.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - -My Project: Subscription.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Subscription.h
-
-
-
1 #ifndef __Subscription_h__
-
2 #define __Subscription_h__
-
3 
-
4 #include "SubscriptionHandler.h"
-
5 #include "ZString.h"
-
6 #include <string>
-
7 #include <vector>
-
8 
-
9 namespace core
-
10 {
-
11 
-
12  class TCPSession;
-
13 
-
14  class Subscription {
-
15 
-
16  public:
-
17  Subscription(std::string id, std::string mode = "*AUTHOR");
-
18  Subscription(std::string id, TCPSession &session, std::string mode);
-
19  Subscription(std::string id, TCPSession &session, std::string mode, SubscriptionHandler *handler);
-
20  virtual ~Subscription();
-
21 
-
22  int subscribe(TCPSession &session);
-
23  int unsubscribe(TCPSession &session);
-
24 
-
25  virtual int process(coreutils::ZString &request, std::stringstream &out, TCPSession &session);
-
26 
-
27  virtual int onSubscribe(TCPSession &session, Subscription *subscription);
-
28 
-
29  int event(std::stringstream &out);
-
30 
-
31  bool ifSubscriber(TCPSession &session);
-
32 
-
33  bool subInvite(TCPSession &session);
-
34 
-
35  std::string id;
-
36  std::string mode;
-
37  TCPSession *owner;
-
38 
-
39  SubscriptionHandler *handler;
-
40 
-
41  std::vector<TCPSession *> subscribers;
-
42  };
-
43 }
-
44 
-
45 #endif
-
Definition: SubscriptionHandler.h:13
-
Definition: Subscription.h:14
-
Definition: TCPSession.h:26
-
- - - - diff --git a/html/TCPServer_8h_source.html b/html/TCPServer_8h_source.html deleted file mode 100644 index 1fed99f..0000000 --- a/html/TCPServer_8h_source.html +++ /dev/null @@ -1,172 +0,0 @@ - - - - - - - -My Project: TCPServer.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
TCPServer.h
-
-
-
1 #ifndef __TCPServer_h__
-
2 #define __TCPServer_h__
-
3 
-
4 #include "Command.h"
-
5 #include "CommandList.h"
-
6 #include "IPAddressList.h"
-
7 #include "Socket.h"
-
8 #include "SubscriptionManager.h"
-
9 #include "TCPSession.h"
-
10 #include "TCPSocket.h"
-
11 
-
12 namespace core
-
13 {
-
14 
-
26 
-
27  class TCPServer : public TCPSocket, public Command
-
28  {
-
29 
-
30  public:
-
39 
-
40  TCPServer(EPoll &ePoll, IPAddress address, std::string delimiter = " ", int depth = 10, std::string text = "");
-
41 
-
45 
-
46  virtual ~TCPServer();
-
47 
-
48  virtual void sessionErrorHandler(std::string errorString, std::stringstream &out);
-
49 
-
57 
-
58  virtual TCPSession *getSocketAccept(EPoll &epoll);
-
59 
-
63 
-
64  std::vector<TCPSession *> sessions;
-
65 
-
70 
- -
72 
-
78 
- -
80 
-
86 
- -
88 
-
89  void removeFromSessionList(TCPSession *session);
-
90 
-
91  void output(std::stringstream &out);
-
92 
-
96 
-
97  void sendToAll(std::stringstream &out);
-
98 
-
103 
-
104  void sendToAll(std::stringstream &out, TCPSession &sender, SessionFilter filter);
-
105 
-
111 
-
112  void sendToAll(std::stringstream &out, TCPSession &sender);
-
113 
-
117 
- -
119 
-
124 
-
125  TCPSession *getSessionByAlias(void *alias);
-
126 
-
127  protected:
-
137 
-
138  void onDataReceived(std::string data) override;
-
139 
-
146 
-
147  int processCommand(coreutils::ZString &request, TCPSession &session) override;
-
148 
-
149  private:
-
150  TCPSession *accept();
-
151  std::mutex lock;
-
152  };
-
153 
-
154 }
-
155 
-
156 #endif
-
Definition: CommandList.h:18
-
Definition: Command.h:22
-
Definition: EPoll.h:31
-
Definition: IPAddressList.h:9
-
Definition: IPAddress.h:9
-
Definition: SessionFilter.h:13
-
Definition: SubscriptionManager.h:16
-
Definition: TCPServer.h:28
-
void onDataReceived(std::string data) override
Definition: TCPServer.cpp:38
-
SubscriptionManager subscriptions
Definition: TCPServer.h:118
-
void output(std::stringstream &out)
Output the consoles array to the console.
Definition: TCPServer.cpp:94
-
int processCommand(coreutils::ZString &request, TCPSession &session) override
Definition: TCPServer.cpp:98
-
virtual ~TCPServer()
Definition: TCPServer.cpp:32
-
IPAddressList * blackList
Definition: TCPServer.h:79
-
virtual TCPSession * getSocketAccept(EPoll &epoll)
Definition: TCPServer.cpp:90
-
TCPSession * getSessionByAlias(void *alias)
Definition: TCPServer.cpp:133
-
IPAddressList * whiteList
Definition: TCPServer.h:87
-
TCPServer(EPoll &ePoll, IPAddress address, std::string delimiter=" ", int depth=10, std::string text="")
Definition: TCPServer.cpp:10
-
std::vector< TCPSession * > sessions
Definition: TCPServer.h:64
-
CommandList commands
Definition: TCPServer.h:71
-
Definition: TCPSession.h:26
-
Definition: TCPSocket.h:20
-
- - - - diff --git a/html/TCPSession2_8h_source.html b/html/TCPSession2_8h_source.html deleted file mode 100644 index 6eafeb1..0000000 --- a/html/TCPSession2_8h_source.html +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - -My Project: TCPSession2.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
TCPSession2.h
-
-
-
1 #ifndef __TCPSession2_h__
-
2 # define __TCPSession2_h__
-
3 
-
4 #include "TCPSocket.h"
-
5 #include "Timer.h"
-
6 #include "SessionFilter.h"
-
7 
-
8 namespace core {
-
9 
-
10  class Command;
-
11  class TCPServer;
-
12 
-
25 
-
26  class TCPSession2 : public TCPSocket {
-
27 
-
28  public:
-
29 
-
33 
-
34  TCPSession2(EPoll &ePoll, std::string text = "");
-
35 
-
39 
-
40  virtual ~TCPSession2();
-
41 
-
42  Command *grab = NULL;
-
43 
-
44  virtual void output(std::stringstream &data);
-
45 
-
50 
-
51  void send();
-
52 
-
56 
-
57  void terminate();
-
58 
-
62 
-
63  std::stringstream out;
-
64 
-
65  protected:
-
66 
-
70 
-
71  virtual void onRegistered() override;
-
72 
-
78  virtual void onDataReceived(coreutils::ZString &data) override;
-
79 
-
86 
-
87  virtual void onLineReceived(coreutils::ZString &line);
-
88 
-
95 
-
96  virtual void onBlockReceived(coreutils::ZString &block);
-
97 
-
103 
-
104  virtual void onConnected();
-
105 
-
115 
-
116  virtual void protocol(coreutils::ZString &data);
-
117 
-
123 
-
124  void setBlockSize(int size = 0);
-
125 
-
126  private:
-
127  char *lineBuffer = NULL;
-
128  int lineBufferSize = 0;
-
129  int lineLength = 0;
-
130  int blockLength = 0;
-
131  std::mutex mtx;
-
132  bool term = false;
-
133  int blockSize = 0;
-
134 
-
135  };
-
136 
-
137 }
-
138 
-
139 #endif
-
Definition: Command.h:22
-
Definition: EPoll.h:31
-
Definition: TCPSession2.h:26
-
virtual void protocol(coreutils::ZString &data)
Definition: TCPSession2.cpp:15
-
virtual void onDataReceived(coreutils::ZString &data) override
Definition: TCPSession2.cpp:26
-
std::stringstream out
Definition: TCPSession2.h:63
-
void terminate()
Definition: TCPSession2.cpp:81
-
virtual void onBlockReceived(coreutils::ZString &block)
Definition: TCPSession2.cpp:69
-
virtual void onLineReceived(coreutils::ZString &line)
Definition: TCPSession2.cpp:62
-
void setBlockSize(int size=0)
Definition: TCPSession2.cpp:58
-
virtual void onRegistered() override
Called after the socket has been registered with epoll processing.
Definition: TCPSession2.cpp:17
-
void send()
Definition: TCPSession2.cpp:75
-
virtual void output(std::stringstream &data)
Definition: TCPSession2.cpp:11
-
virtual void onConnected()
Definition: TCPSession2.cpp:24
-
Definition: TCPSocket.h:20
-
- - - - diff --git a/html/TCPSession_8h_source.html b/html/TCPSession_8h_source.html deleted file mode 100644 index a4ab218..0000000 --- a/html/TCPSession_8h_source.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - - - -My Project: TCPSession.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
TCPSession.h
-
-
-
1 #ifndef __Session_h__
-
2 #define __Session_h__
-
3 
-
4 #include "SessionFilter.h"
-
5 #include "TCPSocket.h"
-
6 
-
7 namespace core
-
8 {
-
9 
-
10  class Command;
-
11  class TCPServer;
-
12 
-
24 
-
25  class TCPSession : public TCPSocket
-
26  {
-
27 
-
28  public:
-
32 
-
33  TCPSession(EPoll &ePoll, TCPServer &server, std::string text = "");
-
34 
-
38 
-
39  virtual ~TCPSession();
-
40 
-
41  Command *grab = NULL;
-
42 
-
43  virtual void output(std::stringstream &data);
-
44 
-
49 
-
50  void send();
-
51 
-
55 
-
56  void terminate();
-
57 
-
61 
-
62  TCPServer &server;
-
63 
-
67 
-
68  std::stringstream out;
-
69 
-
75 
-
76  char uuid[37];
-
77 
-
83 
-
84  void *alias;
-
85 
-
89 
-
90  virtual bool compareAlias(void *alias);
-
91 
-
92  virtual void outputAlias(std::stringstream &out);
-
93 
-
94  protected:
-
98 
-
99  virtual void onRegistered() override;
-
100 
-
106  virtual void onDataReceived(coreutils::ZString &data) override;
-
107 
-
114 
-
115  virtual void onLineReceived(coreutils::ZString &line);
-
116 
-
123 
-
124  virtual void onBlockReceived(coreutils::ZString &block);
-
125 
-
131 
-
132  virtual void onConnected();
-
133 
-
143 
-
144  virtual void protocol(coreutils::ZString &data);
-
145 
-
151 
-
152  void setBlockSize(int size = 0);
-
153 
-
154  private:
-
155  char *lineBuffer = NULL;
-
156  int lineBufferSize = 0;
-
157  int lineLength = 0;
-
158  int blockLength = 0;
-
159  std::mutex mtx;
-
160  bool term = false;
-
161  int blockSize = 0;
-
162  };
-
163 
-
164 }
-
165 
-
166 #endif
-
Definition: Command.h:22
-
Definition: EPoll.h:31
-
Definition: TCPServer.h:28
-
Definition: TCPSession.h:26
-
void * alias
Definition: TCPSession.h:84
-
void send()
Definition: TCPSession.cpp:112
-
char uuid[37]
Definition: TCPSession.h:76
-
void terminate()
Definition: TCPSession.cpp:118
-
virtual void onLineReceived(coreutils::ZString &line)
Definition: TCPSession.cpp:97
-
virtual void output(std::stringstream &data)
Definition: TCPSession.cpp:25
-
void setBlockSize(int size=0)
Definition: TCPSession.cpp:92
-
virtual void onConnected()
Definition: TCPSession.cpp:56
-
virtual void protocol(coreutils::ZString &data)
Definition: TCPSession.cpp:30
-
virtual void onBlockReceived(coreutils::ZString &block)
Definition: TCPSession.cpp:105
-
std::stringstream out
Definition: TCPSession.h:68
-
virtual void onRegistered() override
Called after the socket has been registered with epoll processing.
Definition: TCPSession.cpp:49
-
virtual void onDataReceived(coreutils::ZString &data) override
Definition: TCPSession.cpp:58
-
Definition: TCPSocket.h:20
-
- - - - diff --git a/html/TCPSocket_8h_source.html b/html/TCPSocket_8h_source.html deleted file mode 100644 index d09b5f5..0000000 --- a/html/TCPSocket_8h_source.html +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - -My Project: TCPSocket.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
TCPSocket.h
-
-
-
1 #ifndef __TCPSocket_h__
-
2 #define __TCPSocket_h__
-
3 
-
4 #include "includes"
-
5 #include "Socket.h"
-
6 #include "IPAddress.h"
-
7 
-
8 namespace core {
-
9 
-
19 
-
20  class TCPSocket : public Socket {
-
21 
-
22  public:
-
23 
-
24  TCPSocket(EPoll &ePoll);
-
25  TCPSocket(EPoll &ePoll, std::string text);
-
26  virtual ~TCPSocket();
-
27 
-
28  void connect(IPAddress &address);
-
29 
-
30  IPAddress ipAddress;
-
31 
-
38 
-
39  virtual void output(std::stringstream &out);
-
40 
-
41  };
-
42 
-
43 }
-
44 
-
45 #endif
-
Definition: EPoll.h:31
-
Definition: IPAddress.h:9
-
Definition: Socket.h:34
-
Definition: TCPSocket.h:20
-
virtual void output(std::stringstream &out)
Definition: TCPSocket.cpp:22
-
- - - - diff --git a/html/TLSServer_8h_source.html b/html/TLSServer_8h_source.html deleted file mode 100644 index 6013091..0000000 --- a/html/TLSServer_8h_source.html +++ /dev/null @@ -1,118 +0,0 @@ - - - - - - - -My Project: TLSServer.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
TLSServer.h
-
-
-
1 #ifndef TLSServerSocket_h__
-
2 #define TLSServerSocket_h__
-
3 
-
4 #include "Socket.h"
-
5 #include "TCPServer.h"
-
6 #include "Command.h"
-
7 #include "TCPSession.h"
-
8 #include "IPAddress.h"
-
9 
-
10 namespace core {
-
11 
-
18 
-
19  class TLSServer : public TCPServer {
-
20 
-
21  public:
-
22 
-
31 
-
32  TLSServer(EPoll &ePoll, IPAddress address);
-
33 
-
37 
-
38  ~TLSServer();
-
39 
-
40  TCPSession * getSocketAccept();
-
41 
-
42  SSL_CTX *ctx;
-
43 
-
44  private:
-
45 
-
46  char *sip_cacert = (char *)"../testkeys/certs/pbxca.crt";
-
47  char *sip_cert = (char *)"../testkeys/certs/pbxserver.crt";
-
48  char *sip_key = (char *)"../testkeys/certs/pbxserver.key";
-
49 
-
50  };
-
51 
-
52 }
-
53 
-
54 #endif
-
Definition: EPoll.h:31
-
Definition: IPAddress.h:9
-
Definition: TCPServer.h:28
-
Definition: TCPSession.h:26
-
Definition: TLSServer.h:19
-
TLSServer(EPoll &ePoll, IPAddress address)
Definition: TLSServer.cpp:22
-
~TLSServer()
Definition: TLSServer.cpp:58
-
- - - - diff --git a/html/TLSSession_8h_source.html b/html/TLSSession_8h_source.html deleted file mode 100644 index 835f802..0000000 --- a/html/TLSSession_8h_source.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - -My Project: TLSSession.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
TLSSession.h
-
-
-
1 #ifndef __TLSSession_h__
-
2 #define __TLSSession_h__
-
3 
-
4 #include "includes"
-
5 #include "TCPSession.h"
-
6 #include "TLSServer.h"
-
7 #include <openssl/ssl.h>
-
8 
-
9 namespace core {
-
10 
-
11  class TLSServer;
-
12 
-
22 
-
23  class TLSSession : public TCPSession {
-
24 
-
25  public:
-
26 
-
27  TLSSession(EPoll &ePoll, TCPServer &server);
-
28  ~TLSSession();
-
29 
-
36 
-
37  virtual void output(std::stringstream &out);
-
38  virtual void protocol(coreutils::ZString &data) override;
-
39 
-
40  protected:
-
41  void receiveData(coreutils::ZString &buffer) override;
-
42  void onRegister();
-
43  void onRegistered();
-
44 
-
45  private:
-
46  bool initialized = false;
-
47  SSL *ssl;
-
48 
-
49  };
-
50 
-
51 }
-
52 
-
53 #endif
-
Definition: EPoll.h:31
-
Definition: TCPServer.h:28
-
Definition: TCPSession.h:26
-
std::stringstream out
Definition: TCPSession.h:68
-
Definition: TLSSession.h:23
-
virtual void protocol(coreutils::ZString &data) override
Definition: TLSSession.cpp:83
-
void onRegister()
Called before the socket has registered with the epoll processing.
Definition: TLSSession.cpp:36
-
void receiveData(coreutils::ZString &buffer) override
Definition: TLSSession.cpp:85
-
void onRegistered()
Called after the socket has been registered with epoll processing.
Definition: TLSSession.cpp:58
-
virtual void output(std::stringstream &out)
Definition: TLSSession.cpp:118
-
- - - - diff --git a/html/TerminalSession_8h_source.html b/html/TerminalSession_8h_source.html deleted file mode 100644 index 603ffe3..0000000 --- a/html/TerminalSession_8h_source.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - - -My Project: TerminalSession.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
TerminalSession.h
-
-
-
1 #ifndef __Terminal_h__
-
2 #define __Terminal_h__
-
3 
-
4 #include "includes"
-
5 #include "TCPSession.h"
-
6 #include "TCPServer.h"
-
7 
-
8 namespace core {
-
9 
-
10  static const int FG_BLACK = 30;
-
11  static const int FG_RED = 31;
-
12  static const int FG_GREEN = 32;
-
13  static const int FG_YELLOW = 33;
-
14  static const int FG_BLUE = 34;
-
15  static const int FG_MAGENTA = 35;
-
16  static const int FG_CYAN = 36;
-
17  static const int FG_WHITE = 37;
-
18 
-
19  static const int BG_BLACK = 40;
-
20  static const int BG_RED = 41;
-
21  static const int BG_GREEN = 42;
-
22  static const int BG_YELLOW = 43;
-
23  static const int BG_BLUE = 44;
-
24  static const int BG_MAGENTA = 45;
-
25  static const int BG_CYAN = 46;
-
26  static const int BG_WHITE = 47;
-
27 
-
28  static const char esc = 0x1b;
-
29 
-
30  class TerminalSession : public TCPSession {
-
31 
-
32  public:
-
33  TerminalSession(EPoll &ePoll, TCPServer &server);
-
34  ~TerminalSession();
-
35 
-
36  int getLines();
-
37 
-
41 
-
42  void clear();
-
43 
-
47 
-
48  void clearEOL();
-
49 
-
53 
-
54  void setCursorLocation(int x, int y);
-
55  void setColor(int color);
-
56  void setBackColor(int color);
-
57  void saveCursor();
-
58  void restoreCursor();
-
59  void NextLine(int lines);
-
60  void PreviousLine(int lines);
-
61  void scrollArea(int start, int end);
-
62 
-
63  };
-
64 
-
65 }
-
66 
-
67 #endif
-
Definition: EPoll.h:31
-
Definition: TCPServer.h:28
-
Definition: TCPSession.h:26
-
Definition: TerminalSession.h:30
-
void clear()
Definition: TerminalSession.cpp:17
-
void clearEOL()
Definition: TerminalSession.cpp:21
-
void setCursorLocation(int x, int y)
Definition: TerminalSession.cpp:25
-
- - - - diff --git a/html/ThreadScope_8h_source.html b/html/ThreadScope_8h_source.html deleted file mode 100644 index 8f65dab..0000000 --- a/html/ThreadScope_8h_source.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - -My Project: ThreadScope.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
ThreadScope.h
-
-
-
1 #ifndef __ThreadScope_h__
-
2 #define __ThreadScope_h__
-
3 
-
4 namespace core {
-
5 
-
6  class ThreadScope {
-
7 
-
8  public:
-
9  ThreadScope() {}
-
10 
-
11  };
-
12 
-
13 }
-
14 
-
15 #endif
-
Definition: ThreadScope.h:6
-
- - - - diff --git a/html/Thread_8h_source.html b/html/Thread_8h_source.html deleted file mode 100644 index f5aa035..0000000 --- a/html/Thread_8h_source.html +++ /dev/null @@ -1,123 +0,0 @@ - - - - - - - -My Project: Thread.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Thread.h
-
-
-
1 #ifndef __Thread_h__
-
2 #define __Thread_h__
-
3 
-
4 #include "includes"
-
5 #include "Log.h"
-
6 #include "Object.h"
-
7 #include "TCPSession.h"
-
8 #include "ThreadScope.h"
-
9 
-
10 namespace core {
-
11 
-
12  class EPoll;
-
13 
-
21 
-
22  class Thread : public Object {
-
23 
-
24  public:
-
25  Thread(EPoll &ePoll);
-
26  Thread(EPoll &ePoll, ThreadScope *thread);
-
27  ~Thread();
-
28 
-
32 
-
33  void start();
-
34  void join();
-
35  std::string getStatus();
-
36  pid_t getThreadId();
-
37  int getCount();
-
38  void output(std::stringstream &data);
-
39 
-
40  private:
-
41  EPoll &ePoll; // The EPoll control object.
-
42  std::string status;
-
43  int count;
-
44  std::thread *_thread;
-
45  void print_thread_start_log();
-
46  pid_t threadId;
-
47  void run();
-
48  ThreadScope *thread;
-
49 
-
50  };
-
51 
-
52 }
-
53 
-
54 #endif
-
Definition: EPoll.h:31
-
Definition: Object.h:8
-
Definition: ThreadScope.h:6
-
Definition: Thread.h:22
-
void start()
Definition: Thread.cpp:11
-
- - - - diff --git a/html/Timer_8h_source.html b/html/Timer_8h_source.html deleted file mode 100644 index 7e19213..0000000 --- a/html/Timer_8h_source.html +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - -My Project: Timer.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Timer.h
-
-
-
1 #ifndef __Timer_h__
-
2 #define __Timer_h__
-
3 
-
4 #include "Socket.h"
-
5 #include "EPoll.h"
-
6 
-
7 namespace core {
-
8 
-
17 
-
18  class Timer : Socket {
-
19 
-
20  public:
-
21  Timer(EPoll &ePoll);
-
22  Timer(EPoll &ePoll, double delay);
-
23  ~Timer();
-
24 
-
32 
-
33  void setTimer(double delay);
-
34 
-
38 
-
39  void clearTimer();
-
40 
-
45 
-
46  double getElapsed();
-
47 
-
48  double getEpoch();
-
49 
-
50  protected:
-
51 
-
55 
-
56  virtual void onTimeout() = 0;
-
57 
-
58  private:
-
59  void onDataReceived(std::string data) override;
-
60  double delayValue;
-
61 
-
62  };
-
63 
-
64 }
-
65 
-
66 #endif
-
Definition: EPoll.h:31
-
Definition: Socket.h:34
-
Definition: Timer.h:18
-
double getElapsed()
Definition: Timer.cpp:45
-
void clearTimer()
Definition: Timer.cpp:33
-
void setTimer(double delay)
Definition: Timer.cpp:13
-
virtual void onTimeout()=0
-
- - - - diff --git a/html/UDPServerSocket_8h_source.html b/html/UDPServerSocket_8h_source.html deleted file mode 100644 index a817630..0000000 --- a/html/UDPServerSocket_8h_source.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - - -My Project: UDPServerSocket.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
UDPServerSocket.h
-
-
-
1 #ifndef __UDPServerSocket_h__
-
2 #define __UDPServerSocket_h__
-
3 
-
4 #include "Socket.h"
-
5 #include "UDPSocket.h"
-
6 #include "Command.h"
-
7 
-
8 namespace core {
-
9 
-
16 
-
17  class UDPServerSocket : public UDPSocket, public Command {
-
18 
-
19  public:
-
20 
-
21  UDPServerSocket(EPoll &ePoll, std::string url, short int port, std::string commandName);
-
22  ~UDPServerSocket();
-
23 
-
24  protected:
-
25 
-
26  //---------------------------------------------------------------
-
27  // Override the virtual dataReceived since for the server these
-
28  // are requests to accept the new connection socket.
-
29  //---------------------------------------------------------------
-
30 
-
31  void onDataReceived(std::string data) override;
-
32 
-
33  int processCommand(std::string request, std::stringstream &data);
-
34 
-
35  //------------------------------------------------------------------------------------
-
36  // The retrieved socket connections are placed into the client vector list.
-
37  //------------------------------------------------------------------------------------
-
38 
-
39  std::vector<Session *> sessions;
-
40 
-
41  private:
-
42 
-
43 
-
44  };
-
45 
-
46 }
-
47 
-
48 #endif
-
Definition: Command.h:22
-
Definition: EPoll.h:31
-
Definition: UDPServerSocket.h:17
-
void onDataReceived(std::string data) override
Called when data is received from the socket.
Definition: UDPServerSocket.cpp:35
-
Definition: UDPSocket.h:8
-
- - - - diff --git a/html/UDPSocket_8h_source.html b/html/UDPSocket_8h_source.html deleted file mode 100644 index f94e980..0000000 --- a/html/UDPSocket_8h_source.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - -My Project: UDPSocket.h Source File - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
UDPSocket.h
-
-
-
1 #ifndef UDPSocket_h__
-
2 #define UDPSocket_h__
-
3 
-
4 #include "Socket.h"
-
5 
-
6 namespace core {
-
7 
-
8  class UDPSocket : public Socket {
-
9 
-
10  public:
-
11  UDPSocket(EPoll &ePoll);
-
12  ~UDPSocket();
-
13 
-
14 // virtual int open(string address, short int port);
-
15 // virtual void write(istream data);
-
16 
-
17 };
-
18 
-
19 }
-
20 
-
21 #endif
-
Definition: EPoll.h:31
-
Definition: Socket.h:34
-
Definition: UDPSocket.h:8
-
- - - - diff --git a/html/annotated.html b/html/annotated.html deleted file mode 100644 index 45395f3..0000000 --- a/html/annotated.html +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - - -My Project: Class List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class List
-
-
-
Here are the classes, structs, unions and interfaces with brief descriptions:
-
[detail level 12]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Ncore
 CCommand
 CCommandList
 CConsoleServer
 CConsoleSession
 CEPoll
 CINotify
 CIPAddress
 CIPAddressList
 CObject
 CSessionFilter
 CSocket
 CSubscription
 CSubscriptionHandler
 CSubscriptionHandlerFactory
 CSubscriptionManager
 CTCPServer
 CTCPSession
 CTCPSession2
 CTCPSocket
 CTerminalSession
 CThread
 CThreadScope
 CTimer
 CTLSServer
 CTLSSession
 CUDPServerSocket
 CUDPSocket
-
-
- - - - diff --git a/html/bc_s.png b/html/bc_s.png deleted file mode 100644 index 224b29a..0000000 Binary files a/html/bc_s.png and /dev/null differ diff --git a/html/bdwn.png b/html/bdwn.png deleted file mode 100644 index 940a0b9..0000000 Binary files a/html/bdwn.png and /dev/null differ diff --git a/html/classcore_1_1Command-members.html b/html/classcore_1_1Command-members.html deleted file mode 100644 index 8f96c6d..0000000 --- a/html/classcore_1_1Command-members.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::Command Member List
-
-
- -

This is the complete list of members for core::Command, including all inherited members.

- - - -
output(std::stringstream &out)core::Commandvirtual
processCommand(coreutils::ZString &request, TCPSession &session)core::Commandvirtual
- - - - diff --git a/html/classcore_1_1Command.html b/html/classcore_1_1Command.html deleted file mode 100644 index c2e23e2..0000000 --- a/html/classcore_1_1Command.html +++ /dev/null @@ -1,196 +0,0 @@ - - - - - - - -My Project: core::Command Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::Command Class Reference
-
-
- -

#include <Command.h>

-
-Inheritance diagram for core::Command:
-
-
Inheritance graph
- - - - - - - - - - -
[legend]
- - - - - - -

-Public Member Functions

virtual int processCommand (coreutils::ZString &request, TCPSession &session)
 
virtual void output (std::stringstream &out)
 
-

Detailed Description

-

Command

-

Use the Command object in combination with a CommandList object to maintain a list of functions that can be invoked as a result of processing a request.

-

Member Function Documentation

- -

◆ output()

- -
-
- - - - - -
- - - - - - - - -
void core::Command::output (std::stringstream & out)
-
-virtual
-
-

Specify the output that will occur to the specified session.

-
Parameters
- - -
sessionThe session that will receive the output.
-
-
- -

Reimplemented in core::TCPServer.

- -
-
- -

◆ processCommand()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
int core::Command::processCommand (coreutils::ZString & request,
TCPSessionsession 
)
-
-virtual
-
-

This method is used to implement the functionality of the requested command. This pure virtual function must be implemented in your inheriting object.

-
Parameters
- - - -
requestThe request that was entered by the user to invoke this command.
sessionSpecify the requesting session so that the execution of the command process can return its output to the session.
-
-
-
Returns
Returns 0 if execution of the command was successful. Otherwise returns a non-zero value indicating an error condition.
- -

Reimplemented in core::TCPServer, core::SubscriptionManager, core::EPoll, and core::CommandList.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1CommandList-members.html b/html/classcore_1_1CommandList-members.html deleted file mode 100644 index ae803e0..0000000 --- a/html/classcore_1_1CommandList-members.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::CommandList Member List
-
-
- -

This is the complete list of members for core::CommandList, including all inherited members.

- - - - - - - - - - - - -
add(Command &command, std::string name="")core::CommandList
clearGrab(TCPSession &session) (defined in core::CommandList)core::CommandList
CommandList(std::string delimiter="", int depth=0) (defined in core::CommandList)core::CommandList
commandscore::CommandListprotected
delimiter (defined in core::CommandList)core::CommandListprotected
depth (defined in core::CommandList)core::CommandListprotected
grabInput(TCPSession &session, Command &command)core::CommandList
output(std::stringstream &out)core::Commandvirtual
processCommand(coreutils::ZString &request, TCPSession &session)core::CommandListvirtual
processRequest(coreutils::ZString &request, TCPSession &session)core::CommandList
remove(Command &command)core::CommandList
- - - - diff --git a/html/classcore_1_1CommandList.html b/html/classcore_1_1CommandList.html deleted file mode 100644 index 1599308..0000000 --- a/html/classcore_1_1CommandList.html +++ /dev/null @@ -1,321 +0,0 @@ - - - - - - - -My Project: core::CommandList Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Protected Attributes | -List of all members
-
-
core::CommandList Class Reference
-
-
- -

#include <CommandList.h>

-
-Inheritance diagram for core::CommandList:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for core::CommandList:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - -

-Public Member Functions

CommandList (std::string delimiter="", int depth=0)
 
void add (Command &command, std::string name="")
 
void remove (Command &command)
 
int processRequest (coreutils::ZString &request, TCPSession &session)
 
bool grabInput (TCPSession &session, Command &command)
 
-void clearGrab (TCPSession &session)
 
int processCommand (coreutils::ZString &request, TCPSession &session)
 
- Public Member Functions inherited from core::Command
virtual void output (std::stringstream &out)
 
- - - - - - - -

-Protected Attributes

std::map< std::string, Command * > commands
 
-std::string delimiter
 
-int depth
 
-

Detailed Description

-

CommandList

-

This object organizes Command objects into a list that is used to parse an input and run the process associated with the selected command.

-

Member Function Documentation

- -

◆ add()

- -
-
- - - - - - - - - - - - - - - - - - -
void core::CommandList::add (Commandcommand,
std::string name = "" 
)
-
-

Add a new command to the command list and assign a default search value.

- -
-
- -

◆ grabInput()

- -
-
- - - - - - - - - - - - - - - - - - -
bool core::CommandList::grabInput (TCPSessionsession,
Commandcommand 
)
-
-

Use grabInput() within a Command object to force the requesting handler to receive all further input from the socket. Use releaseGrab() method to release the session back to normal command processing.

- -
-
- -

◆ processCommand()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
int core::CommandList::processCommand (coreutils::ZString & request,
TCPSessionsession 
)
-
-virtual
-
-

This method is used to implement the functionality of the requested command. This pure virtual function must be implemented in your inheriting object.

-
Parameters
- - - -
requestThe request that was entered by the user to invoke this command.
sessionSpecify the requesting session so that the execution of the command process can return its output to the session.
-
-
-
Returns
Returns 0 if execution of the command was successful. Otherwise returns a non-zero value indicating an error condition.
- -

Reimplemented from core::Command.

- -
-
- -

◆ processRequest()

- -
-
- - - - - - - - - - - - - - - - - - -
int core::CommandList::processRequest (coreutils::ZString & request,
TCPSessionsession 
)
-
-

Use this method to apply a parsed ZString to the command set and execute the matching parameter. The selected command will return a true on a call to check(). If there is a handler that has a grab on the process handler then control is given to the process handler holding the grab on the input.

- -
-
- -

◆ remove()

- -
-
- - - - - - - - -
void core::CommandList::remove (Commandcommand)
-
-

Remove a command object from the command list.

- -
-
-

Member Data Documentation

- -

◆ commands

- -
-
- - - - - -
- - - - -
std::map<std::string, Command *> core::CommandList::commands
-
-protected
-
-

The vector of all registered commands.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1CommandList__coll__graph.map b/html/classcore_1_1CommandList__coll__graph.map deleted file mode 100644 index 062545d..0000000 --- a/html/classcore_1_1CommandList__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1CommandList__coll__graph.md5 b/html/classcore_1_1CommandList__coll__graph.md5 deleted file mode 100644 index cb6786e..0000000 --- a/html/classcore_1_1CommandList__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -4a83ba6697ed223cfff1971adde7514e \ No newline at end of file diff --git a/html/classcore_1_1CommandList__coll__graph.png b/html/classcore_1_1CommandList__coll__graph.png deleted file mode 100644 index 331a245..0000000 Binary files a/html/classcore_1_1CommandList__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1CommandList__inherit__graph.map b/html/classcore_1_1CommandList__inherit__graph.map deleted file mode 100644 index 062545d..0000000 --- a/html/classcore_1_1CommandList__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1CommandList__inherit__graph.md5 b/html/classcore_1_1CommandList__inherit__graph.md5 deleted file mode 100644 index cb6786e..0000000 --- a/html/classcore_1_1CommandList__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -4a83ba6697ed223cfff1971adde7514e \ No newline at end of file diff --git a/html/classcore_1_1CommandList__inherit__graph.png b/html/classcore_1_1CommandList__inherit__graph.png deleted file mode 100644 index 331a245..0000000 Binary files a/html/classcore_1_1CommandList__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1Command__inherit__graph.map b/html/classcore_1_1Command__inherit__graph.map deleted file mode 100644 index e181935..0000000 --- a/html/classcore_1_1Command__inherit__graph.map +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - - - diff --git a/html/classcore_1_1Command__inherit__graph.md5 b/html/classcore_1_1Command__inherit__graph.md5 deleted file mode 100644 index cab1826..0000000 --- a/html/classcore_1_1Command__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -958fd71dba9cc408bb299a3dcf0b7efb \ No newline at end of file diff --git a/html/classcore_1_1Command__inherit__graph.png b/html/classcore_1_1Command__inherit__graph.png deleted file mode 100644 index cc85293..0000000 Binary files a/html/classcore_1_1Command__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1ConsoleServer-members.html b/html/classcore_1_1ConsoleServer-members.html deleted file mode 100644 index 7af721a..0000000 --- a/html/classcore_1_1ConsoleServer-members.html +++ /dev/null @@ -1,127 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::ConsoleServer Member List
-
-
- -

This is the complete list of members for core::ConsoleServer, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
blackListcore::TCPServer
commandscore::TCPServer
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
ConsoleServer(EPoll &ePoll, IPAddress address) (defined in core::ConsoleServer)core::ConsoleServer
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
getSessionByAlias(void *alias)core::TCPServer
getSocketAccept(EPoll &ePoll) overridecore::ConsoleServervirtual
ipAddress (defined in core::TCPSocket)core::TCPSocket
logSend(std::string out) override (defined in core::ConsoleServer)core::ConsoleServer
needsToWrite() (defined in core::Socket)core::Socket
onDataReceived(std::string data) overridecore::TCPServerprotectedvirtual
onDataReceived(coreutils::ZString &data) (defined in core::Socket)core::Socketprotectedvirtual
onRegister()core::Socketvirtual
onRegistered()core::Socketvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
output(std::stringstream &out)core::TCPServervirtual
processCommand(coreutils::ZString &request, TCPSession &session) overridecore::TCPServerprotectedvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
removeFromSessionList(TCPSession *session) (defined in core::TCPServer)core::TCPServer
reset (defined in core::Socket)core::Socket
sendToAll(std::stringstream &out) (defined in core::TCPServer)core::TCPServer
sendToAll(std::stringstream &out, TCPSession &sender, SessionFilter filter)core::TCPServer
sendToAll(std::stringstream &out, TCPSession &sender)core::TCPServer
sessionErrorHandler(std::string errorString, std::stringstream &out) (defined in core::TCPServer)core::TCPServervirtual
sessionscore::TCPServer
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutDown (defined in core::Socket)core::Socket
shutdown(std::string text="unknown")core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
subscriptionscore::TCPServer
TCPServer(EPoll &ePoll, IPAddress address, std::string delimiter=" ", int depth=10, std::string text="")core::TCPServer
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
whiteListcore::TCPServer
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~TCPServer()core::TCPServervirtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
- - - - diff --git a/html/classcore_1_1ConsoleServer.html b/html/classcore_1_1ConsoleServer.html deleted file mode 100644 index 6a09bf8..0000000 --- a/html/classcore_1_1ConsoleServer.html +++ /dev/null @@ -1,287 +0,0 @@ - - - - - - - -My Project: core::ConsoleServer Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::ConsoleServer Class Reference
-
-
-
-Inheritance diagram for core::ConsoleServer:
-
-
Inheritance graph
- - - - - - - - -
[legend]
-
-Collaboration diagram for core::ConsoleServer:
-
-
Collaboration graph
- - - - - - - - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

ConsoleServer (EPoll &ePoll, IPAddress address)
 
-void logSend (std::string out) override
 
TCPSessiongetSocketAccept (EPoll &ePoll) override
 
- Public Member Functions inherited from core::TCPServer
 TCPServer (EPoll &ePoll, IPAddress address, std::string delimiter=" ", int depth=10, std::string text="")
 
virtual ~TCPServer ()
 
-virtual void sessionErrorHandler (std::string errorString, std::stringstream &out)
 
-void removeFromSessionList (TCPSession *session)
 
-void output (std::stringstream &out)
 Output the consoles array to the console.
 
-void sendToAll (std::stringstream &out)
 
void sendToAll (std::stringstream &out, TCPSession &sender, SessionFilter filter)
 
void sendToAll (std::stringstream &out, TCPSession &sender)
 
TCPSessiongetSessionByAlias (void *alias)
 
- Public Member Functions inherited from core::TCPSocket
TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onRegistered ()
 Called after the socket has been registered with epoll processing.
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Additional Inherited Members

- Public Attributes inherited from core::TCPServer
std::vector< TCPSession * > sessions
 
CommandList commands
 
IPAddressListblackList
 
IPAddressListwhiteList
 
SubscriptionManager subscriptions
 
- Public Attributes inherited from core::TCPSocket
-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- Protected Member Functions inherited from core::TCPServer
void onDataReceived (std::string data) override
 
int processCommand (coreutils::ZString &request, TCPSession &session) override
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
-virtual void onDataReceived (coreutils::ZString &data)
 
virtual void receiveData (coreutils::ZString &buffer)
 
- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Member Function Documentation

- -

◆ getSocketAccept()

- -
-
- - - - - -
- - - - - - - - -
TCPSession * core::ConsoleServer::getSocketAccept (EPollepoll)
-
-overridevirtual
-
-

getSocketAccept is designed to allow a polymorphic extension of this object to return a type of object that extends the definition of the server socket. Returning the appropriate session object that extends from Session provides the mechanism where the server can select the protocol dialog for the desired service.

- -

Reimplemented from core::TCPServer.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1ConsoleServer__coll__graph.map b/html/classcore_1_1ConsoleServer__coll__graph.map deleted file mode 100644 index 8d210e1..0000000 --- a/html/classcore_1_1ConsoleServer__coll__graph.map +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/html/classcore_1_1ConsoleServer__coll__graph.md5 b/html/classcore_1_1ConsoleServer__coll__graph.md5 deleted file mode 100644 index 510b5f4..0000000 --- a/html/classcore_1_1ConsoleServer__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -e45ecf4531bbc100b5e38d7afbd87afe \ No newline at end of file diff --git a/html/classcore_1_1ConsoleServer__coll__graph.png b/html/classcore_1_1ConsoleServer__coll__graph.png deleted file mode 100644 index 081a7e0..0000000 Binary files a/html/classcore_1_1ConsoleServer__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1ConsoleServer__inherit__graph.map b/html/classcore_1_1ConsoleServer__inherit__graph.map deleted file mode 100644 index 4e2a3aa..0000000 --- a/html/classcore_1_1ConsoleServer__inherit__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/html/classcore_1_1ConsoleServer__inherit__graph.md5 b/html/classcore_1_1ConsoleServer__inherit__graph.md5 deleted file mode 100644 index f44a301..0000000 --- a/html/classcore_1_1ConsoleServer__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -c55c04921efc30bedbc7fa35b5e5970a \ No newline at end of file diff --git a/html/classcore_1_1ConsoleServer__inherit__graph.png b/html/classcore_1_1ConsoleServer__inherit__graph.png deleted file mode 100644 index 0b9a2e5..0000000 Binary files a/html/classcore_1_1ConsoleServer__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1ConsoleSession-members.html b/html/classcore_1_1ConsoleSession-members.html deleted file mode 100644 index a78300d..0000000 --- a/html/classcore_1_1ConsoleSession-members.html +++ /dev/null @@ -1,142 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::ConsoleSession Member List
-
-
- -

This is the complete list of members for core::ConsoleSession, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
aliascore::TCPSession
clear()core::TerminalSession
clearEOL()core::TerminalSession
compareAlias(void *alias) (defined in core::TCPSession)core::TCPSessionvirtual
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
ConsoleSession(EPoll &ePoll, TCPServer &server) (defined in core::ConsoleSession)core::ConsoleSession
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
getLines() (defined in core::TerminalSession)core::TerminalSession
grab (defined in core::TCPSession)core::TCPSession
ipAddress (defined in core::TCPSocket)core::TCPSocket
needsToWrite() (defined in core::Socket)core::Socket
NextLine(int lines) (defined in core::TerminalSession)core::TerminalSession
onBlockReceived(coreutils::ZString &block)core::TCPSessionprotectedvirtual
onConnected()core::TCPSessionprotectedvirtual
onDataReceived(coreutils::ZString &data) overridecore::TCPSessionprotectedvirtual
core::TCPSocket::onDataReceived(std::string data)core::Socketprotectedvirtual
onLineReceived(coreutils::ZString &line)core::TCPSessionprotectedvirtual
onRegister()core::Socketvirtual
onRegistered() overridecore::TCPSessionprotectedvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
outcore::TCPSession
output(std::stringstream &data)core::TCPSessionvirtual
outputAlias(std::stringstream &out) (defined in core::TCPSession)core::TCPSessionvirtual
PreviousLine(int lines) (defined in core::TerminalSession)core::TerminalSession
protocol(coreutils::ZString &data) overridecore::ConsoleSessionprotectedvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
reset (defined in core::Socket)core::Socket
restoreCursor() (defined in core::TerminalSession)core::TerminalSession
saveCursor() (defined in core::TerminalSession)core::TerminalSession
scrollArea(int start, int end) (defined in core::TerminalSession)core::TerminalSession
send()core::TCPSession
server (defined in core::TCPSession)core::TCPSession
setBackColor(int color) (defined in core::TerminalSession)core::TerminalSession
setBlockSize(int size=0)core::TCPSessionprotected
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setColor(int color) (defined in core::TerminalSession)core::TerminalSession
setCursorLocation(int x, int y)core::TerminalSession
setDescriptor(int descriptor)core::Socket
shutDown (defined in core::Socket)core::Socket
shutdown(std::string text="unknown")core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
TCPSession(EPoll &ePoll, TCPServer &server, std::string text="") (defined in core::TCPSession)core::TCPSession
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
TerminalSession(EPoll &ePoll, TCPServer &server) (defined in core::TerminalSession)core::TerminalSession
terminate()core::TCPSession
uuidcore::TCPSession
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
writeLog(std::string data) (defined in core::ConsoleSession)core::ConsoleSession
~ConsoleSession() (defined in core::ConsoleSession)core::ConsoleSession
~Socket()core::Socketvirtual
~TCPSession() (defined in core::TCPSession)core::TCPSessionvirtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
~TerminalSession() (defined in core::TerminalSession)core::TerminalSession
- - - - diff --git a/html/classcore_1_1ConsoleSession.html b/html/classcore_1_1ConsoleSession.html deleted file mode 100644 index ee6729e..0000000 --- a/html/classcore_1_1ConsoleSession.html +++ /dev/null @@ -1,331 +0,0 @@ - - - - - - - -My Project: core::ConsoleSession Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Protected Member Functions | -List of all members
-
-
core::ConsoleSession Class Reference
-
-
- -

#include <ConsoleSession.h>

-
-Inheritance diagram for core::ConsoleSession:
-
-
Inheritance graph
- - - - - - - -
[legend]
-
-Collaboration diagram for core::ConsoleSession:
-
-
Collaboration graph
- - - - - - - - - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

ConsoleSession (EPoll &ePoll, TCPServer &server)
 
-void writeLog (std::string data)
 
- Public Member Functions inherited from core::TerminalSession
TerminalSession (EPoll &ePoll, TCPServer &server)
 
-int getLines ()
 
void clear ()
 
void clearEOL ()
 
void setCursorLocation (int x, int y)
 
-void setColor (int color)
 
-void setBackColor (int color)
 
-void saveCursor ()
 
-void restoreCursor ()
 
-void NextLine (int lines)
 
-void PreviousLine (int lines)
 
-void scrollArea (int start, int end)
 
- Public Member Functions inherited from core::TCPSession
TCPSession (EPoll &ePoll, TCPServer &server, std::string text="")
 
virtual void output (std::stringstream &data)
 
void send ()
 
void terminate ()
 
-virtual bool compareAlias (void *alias)
 
-virtual void outputAlias (std::stringstream &out)
 
- Public Member Functions inherited from core::TCPSocket
TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Protected Member Functions

void protocol (coreutils::ZString &data) override
 
- Protected Member Functions inherited from core::TCPSession
-virtual void onRegistered () override
 Called after the socket has been registered with epoll processing.
 
virtual void onDataReceived (coreutils::ZString &data) override
 
virtual void onLineReceived (coreutils::ZString &line)
 
virtual void onBlockReceived (coreutils::ZString &block)
 
virtual void onConnected ()
 
void setBlockSize (int size=0)
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
virtual void onDataReceived (std::string data)
 Called when data is received from the socket. More...
 
virtual void receiveData (coreutils::ZString &buffer)
 
- - - - - - - - - - - - - - - - - - - - - - - -

-Additional Inherited Members

- Public Attributes inherited from core::TCPSession
-Commandgrab = NULL
 
-TCPServerserver
 
std::stringstream out
 
char uuid [37]
 
void * alias
 
- Public Attributes inherited from core::TCPSocket
-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Detailed Description

-

ConsoleSession

-

Extends the session parameters for this TCPSocket derived object. Extend the protocol() method in order to define the behavior and protocol interaction for this socket which is a console session.

-

Member Function Documentation

- -

◆ protocol()

- -
-
- - - - - -
- - - - - - - - -
void core::ConsoleSession::protocol (coreutils::ZString & data)
-
-overrideprotectedvirtual
-
-

Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the 'commands' added to the server object using the processRequest method on the session input.

-

When data is received within the session two modes are available to pass the data through the protocol method: LINE or BLOCK.

- -

Reimplemented from core::TCPSession.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1ConsoleSession__coll__graph.map b/html/classcore_1_1ConsoleSession__coll__graph.map deleted file mode 100644 index 3db3273..0000000 --- a/html/classcore_1_1ConsoleSession__coll__graph.map +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/html/classcore_1_1ConsoleSession__coll__graph.md5 b/html/classcore_1_1ConsoleSession__coll__graph.md5 deleted file mode 100644 index fb0e3d0..0000000 --- a/html/classcore_1_1ConsoleSession__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -6bccdd3ce0f42041f9911b31e7a469f9 \ No newline at end of file diff --git a/html/classcore_1_1ConsoleSession__coll__graph.png b/html/classcore_1_1ConsoleSession__coll__graph.png deleted file mode 100644 index 8dc2a32..0000000 Binary files a/html/classcore_1_1ConsoleSession__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1ConsoleSession__inherit__graph.map b/html/classcore_1_1ConsoleSession__inherit__graph.map deleted file mode 100644 index 0d00b54..0000000 --- a/html/classcore_1_1ConsoleSession__inherit__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/html/classcore_1_1ConsoleSession__inherit__graph.md5 b/html/classcore_1_1ConsoleSession__inherit__graph.md5 deleted file mode 100644 index 8018163..0000000 --- a/html/classcore_1_1ConsoleSession__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -aa708db41fb4e2b63059766367d3e76c \ No newline at end of file diff --git a/html/classcore_1_1ConsoleSession__inherit__graph.png b/html/classcore_1_1ConsoleSession__inherit__graph.png deleted file mode 100644 index a47219f..0000000 Binary files a/html/classcore_1_1ConsoleSession__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1EPoll-members.html b/html/classcore_1_1EPoll-members.html deleted file mode 100644 index b7069e4..0000000 --- a/html/classcore_1_1EPoll-members.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::EPoll Member List
-
-
- -

This is the complete list of members for core::EPoll, including all inherited members.

- - - - - - - - - - - - -
EPoll()core::EPoll
eventId (defined in core::EPoll)core::EPoll
eventReceived(struct epoll_event event)core::EPoll
getDescriptor()core::EPoll
isStopping()core::EPoll
maxSocketscore::EPoll
output(std::stringstream &out)core::Commandvirtual
processCommand(coreutils::ZString &request, TCPSession &session) overridecore::EPollvirtual
start(int numberOfThreads, int maxSockets)core::EPoll
stop()core::EPoll
~EPoll()core::EPoll
- - - - diff --git a/html/classcore_1_1EPoll.html b/html/classcore_1_1EPoll.html deleted file mode 100644 index eacbe7e..0000000 --- a/html/classcore_1_1EPoll.html +++ /dev/null @@ -1,374 +0,0 @@ - - - - - - - -My Project: core::EPoll Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -List of all members
-
-
core::EPoll Class Reference
-
-
- -

#include <EPoll.h>

-
-Inheritance diagram for core::EPoll:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for core::EPoll:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 EPoll ()
 
 ~EPoll ()
 
bool start (int numberOfThreads, int maxSockets)
 Start the BMAEPoll processing. More...
 
bool stop ()
 Stop and shut down the BMAEPoll processing. More...
 
bool isStopping ()
 Returns a true if the stop command has been requested. More...
 
int getDescriptor ()
 Return the descriptor for the ePoll socket. More...
 
void eventReceived (struct epoll_event event)
 Dispatch event to appropriate socket. More...
 
int processCommand (coreutils::ZString &request, TCPSession &session) override
 Output the threads array to the console. More...
 
- Public Member Functions inherited from core::Command
virtual void output (std::stringstream &out)
 
- - - - - - -

-Public Attributes

-volatile long long eventId = 0
 
int maxSockets
 The maximum number of socket allowed. More...
 
-

Detailed Description

-

EPoll

-

Manage socket events from the epoll system call.

-

Use this object to establish a socket server using the epoll network structure of Linux.

-

Use this object to establish the basis of working with multiple sockets of all sorts using the epoll capabilities of the Linux platform. Socket objects can register with EPoll which will establish a communication mechanism with that socket.

-

The maximum number of sockets to communicate with is specified on the start method.

-

Threads are used to establish a read queue for epoll. The desired number of threads (or queues) is established by a parameter on the start method.

-

Constructor & Destructor Documentation

- -

◆ EPoll()

- -
-
- - - - - - - -
core::EPoll::EPoll ()
-
-

The constructor for the BMAEPoll object.

- -
-
- -

◆ ~EPoll()

- -
-
- - - - - - - -
core::EPoll::~EPoll ()
-
-

The destructor for the BMAEPoll object.

- -
-
-

Member Function Documentation

- -

◆ eventReceived()

- -
-
- - - - - - - - -
void core::EPoll::eventReceived (struct epoll_event event)
-
- -

Dispatch event to appropriate socket.

-

Receive the epoll events and dispatch the event to the socket making the request.

- -
-
- -

◆ getDescriptor()

- -
-
- - - - - - - -
int core::EPoll::getDescriptor ()
-
- -

Return the descriptor for the ePoll socket.

-

Use this method to obtain the current descriptor socket number for the epoll function call.

- -
-
- -

◆ isStopping()

- -
-
- - - - - - - -
bool core::EPoll::isStopping ()
-
- -

Returns a true if the stop command has been requested.

-

This method returns a true if the stop() method has been called and the epoll system is shutting.

- -
-
- -

◆ processCommand()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
int core::EPoll::processCommand (coreutils::ZString & request,
TCPSessionsession 
)
-
-overridevirtual
-
- -

Output the threads array to the console.

-

The processCommand() method displays the thread array to the requesting console via the session passed as parameter.

-
Parameters
- - -
sessionthe session to write the requested data to.
-
-
- -

Reimplemented from core::Command.

- -
-
- -

◆ start()

- -
-
- - - - - - - - - - - - - - - - - - -
bool core::EPoll::start (int numberOfThreads,
int maxSockets 
)
-
- -

Start the BMAEPoll processing.

-

Use the start() method to initiate the threads and begin epoll queue processing.

-
Parameters
- - - -
numberOfThreadsthe number of threads to start for processing epoll entries.
maxSocketsthe maximum number of open sockets that epoll will manage.
-
-
- -
-
- -

◆ stop()

- -
-
- - - - - - - -
bool core::EPoll::stop ()
-
- -

Stop and shut down the BMAEPoll processing.

-

Use the stop() method to initiate the shutdown process for the epoll socket management.

-

A complete shutdown of all managed sockets will be initiated by this method call.

- -
-
-

Member Data Documentation

- -

◆ maxSockets

- -
-
- - - - -
int core::EPoll::maxSockets
-
- -

The maximum number of socket allowed.

-

The maximum number of sockets that can be managed by the epoll system.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1EPoll__coll__graph.map b/html/classcore_1_1EPoll__coll__graph.map deleted file mode 100644 index 39f7c20..0000000 --- a/html/classcore_1_1EPoll__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1EPoll__coll__graph.md5 b/html/classcore_1_1EPoll__coll__graph.md5 deleted file mode 100644 index a2b4276..0000000 --- a/html/classcore_1_1EPoll__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -59d16fa7de30ff900ab48693b10de851 \ No newline at end of file diff --git a/html/classcore_1_1EPoll__coll__graph.png b/html/classcore_1_1EPoll__coll__graph.png deleted file mode 100644 index efeebc4..0000000 Binary files a/html/classcore_1_1EPoll__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1EPoll__inherit__graph.map b/html/classcore_1_1EPoll__inherit__graph.map deleted file mode 100644 index 39f7c20..0000000 --- a/html/classcore_1_1EPoll__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1EPoll__inherit__graph.md5 b/html/classcore_1_1EPoll__inherit__graph.md5 deleted file mode 100644 index a2b4276..0000000 --- a/html/classcore_1_1EPoll__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -59d16fa7de30ff900ab48693b10de851 \ No newline at end of file diff --git a/html/classcore_1_1EPoll__inherit__graph.png b/html/classcore_1_1EPoll__inherit__graph.png deleted file mode 100644 index efeebc4..0000000 Binary files a/html/classcore_1_1EPoll__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1INotify-members.html b/html/classcore_1_1INotify-members.html deleted file mode 100644 index 03fa998..0000000 --- a/html/classcore_1_1INotify-members.html +++ /dev/null @@ -1,99 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::INotify Member List
-
-
- -

This is the complete list of members for core::INotify, including all inherited members.

- - - - - - - - - - - - - - - - - - - -
addWatch(coreutils::ZString &watch) (defined in core::INotify)core::INotify
inAccess(coreutils::ZString name) (defined in core::INotify)core::INotifyinlinevirtual
inAttrib(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inCloseNoWrite(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inCloseWrite(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inCreate(coreutils::ZString &name) (defined in core::INotify)core::INotifyinlinevirtual
inDelete(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inDeleteSelf(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inModify(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inMovedFrom(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inMovedTo(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inMoveSelf(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
inOpen(std::string name) (defined in core::INotify)core::INotifyinlinevirtual
INotify(EPoll &ePoll) (defined in core::INotify)core::INotify
onDataReceived(coreutils::ZString &data) override (defined in core::INotify)core::INotifyvirtual
core::Socket::onDataReceived(std::string data)core::Socketprivatevirtual
removeWatch(int wd) (defined in core::INotify)core::INotify
~INotify() (defined in core::INotify)core::INotify
- - - - diff --git a/html/classcore_1_1INotify.html b/html/classcore_1_1INotify.html deleted file mode 100644 index bb13abc..0000000 --- a/html/classcore_1_1INotify.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - -My Project: core::INotify Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::INotify Class Reference
-
-
-
-Inheritance diagram for core::INotify:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for core::INotify:
-
-
Collaboration graph
- - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

INotify (EPoll &ePoll)
 
-int addWatch (coreutils::ZString &watch)
 
-void removeWatch (int wd)
 
-void onDataReceived (coreutils::ZString &data) override
 
-virtual void inAccess (coreutils::ZString name)
 
-virtual void inAttrib (std::string name)
 
-virtual void inCloseWrite (std::string name)
 
-virtual void inCloseNoWrite (std::string name)
 
-virtual void inCreate (coreutils::ZString &name)
 
-virtual void inDelete (std::string name)
 
-virtual void inDeleteSelf (std::string name)
 
-virtual void inModify (std::string name)
 
-virtual void inMoveSelf (std::string name)
 
-virtual void inMovedFrom (std::string name)
 
-virtual void inMovedTo (std::string name)
 
-virtual void inOpen (std::string name)
 
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1INotify__coll__graph.map b/html/classcore_1_1INotify__coll__graph.map deleted file mode 100644 index b1b973e..0000000 --- a/html/classcore_1_1INotify__coll__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/html/classcore_1_1INotify__coll__graph.md5 b/html/classcore_1_1INotify__coll__graph.md5 deleted file mode 100644 index be09bd7..0000000 --- a/html/classcore_1_1INotify__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -92f9d16c1d5c1cc148c8f86a9705302e \ No newline at end of file diff --git a/html/classcore_1_1INotify__coll__graph.png b/html/classcore_1_1INotify__coll__graph.png deleted file mode 100644 index e2516b7..0000000 Binary files a/html/classcore_1_1INotify__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1INotify__inherit__graph.map b/html/classcore_1_1INotify__inherit__graph.map deleted file mode 100644 index 538b785..0000000 --- a/html/classcore_1_1INotify__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1INotify__inherit__graph.md5 b/html/classcore_1_1INotify__inherit__graph.md5 deleted file mode 100644 index 4cc6b6f..0000000 --- a/html/classcore_1_1INotify__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -bd7d5c6ca50a1d9f295e71a940e042cf \ No newline at end of file diff --git a/html/classcore_1_1INotify__inherit__graph.png b/html/classcore_1_1INotify__inherit__graph.png deleted file mode 100644 index aa505c4..0000000 Binary files a/html/classcore_1_1INotify__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1IPAddress-members.html b/html/classcore_1_1IPAddress-members.html deleted file mode 100644 index 6748819..0000000 --- a/html/classcore_1_1IPAddress-members.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::IPAddress Member List
-
-
- -

This is the complete list of members for core::IPAddress, including all inherited members.

- - - - - - - - - - - - - -
addr (defined in core::IPAddress)core::IPAddress
addressLength (defined in core::IPAddress)core::IPAddress
getClientAddress()core::IPAddress
getClientAddressAndPort()core::IPAddress
getClientPort()core::IPAddress
getPointer() (defined in core::IPAddress)core::IPAddress
IPAddress() (defined in core::IPAddress)core::IPAddress
IPAddress(std::string address) (defined in core::IPAddress)core::IPAddress
IPAddress(std::string address, int port) (defined in core::IPAddress)core::IPAddress
name (defined in core::Object)core::Object
tag (defined in core::Object)core::Object
~IPAddress() (defined in core::IPAddress)core::IPAddress
- - - - diff --git a/html/classcore_1_1IPAddress.html b/html/classcore_1_1IPAddress.html deleted file mode 100644 index bd38e33..0000000 --- a/html/classcore_1_1IPAddress.html +++ /dev/null @@ -1,145 +0,0 @@ - - - - - - - -My Project: core::IPAddress Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -List of all members
-
-
core::IPAddress Class Reference
-
-
-
-Inheritance diagram for core::IPAddress:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for core::IPAddress:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - -

-Public Member Functions

IPAddress (std::string address)
 
IPAddress (std::string address, int port)
 
-struct sockaddr * getPointer ()
 
-std::string getClientAddress ()
 Get the client network address as xxx.xxx.xxx.xxx.
 
-std::string getClientAddressAndPort ()
 Get the client network address and port as xxx.xxx.xxx.xxx:ppppp.
 
-int getClientPort ()
 Get the client network port number.
 
- - - - - - - - - - -

-Public Attributes

-struct sockaddr_in addr
 
-socklen_t addressLength
 
- Public Attributes inherited from core::Object
-std::string name
 
-std::string tag
 
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1IPAddressList-members.html b/html/classcore_1_1IPAddressList-members.html deleted file mode 100644 index f8713a5..0000000 --- a/html/classcore_1_1IPAddressList-members.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::IPAddressList Member List
-
-
- -

This is the complete list of members for core::IPAddressList, including all inherited members.

- - - - - - -
add(IPAddress ipAddress) (defined in core::IPAddressList)core::IPAddressList
contains(std::string ipAddress) (defined in core::IPAddressList)core::IPAddressList
getList() (defined in core::IPAddressList)core::IPAddressList
IPAddressList() (defined in core::IPAddressList)core::IPAddressList
remove(IPAddress ipAddress) (defined in core::IPAddressList)core::IPAddressList
- - - - diff --git a/html/classcore_1_1IPAddressList.html b/html/classcore_1_1IPAddressList.html deleted file mode 100644 index ffef6e9..0000000 --- a/html/classcore_1_1IPAddressList.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - -My Project: core::IPAddressList Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::IPAddressList Class Reference
-
-
- - - - - - - - - - -

-Public Member Functions

-std::map< std::string, IPAddressgetList ()
 
-void add (IPAddress ipAddress)
 
-bool remove (IPAddress ipAddress)
 
-bool contains (std::string ipAddress)
 
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1IPAddress__coll__graph.map b/html/classcore_1_1IPAddress__coll__graph.map deleted file mode 100644 index 12963eb..0000000 --- a/html/classcore_1_1IPAddress__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1IPAddress__coll__graph.md5 b/html/classcore_1_1IPAddress__coll__graph.md5 deleted file mode 100644 index 63ac5ab..0000000 --- a/html/classcore_1_1IPAddress__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -156ef09bd41be803b2f51d7f424cd841 \ No newline at end of file diff --git a/html/classcore_1_1IPAddress__coll__graph.png b/html/classcore_1_1IPAddress__coll__graph.png deleted file mode 100644 index e76df2d..0000000 Binary files a/html/classcore_1_1IPAddress__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1IPAddress__inherit__graph.map b/html/classcore_1_1IPAddress__inherit__graph.map deleted file mode 100644 index 12963eb..0000000 --- a/html/classcore_1_1IPAddress__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1IPAddress__inherit__graph.md5 b/html/classcore_1_1IPAddress__inherit__graph.md5 deleted file mode 100644 index 63ac5ab..0000000 --- a/html/classcore_1_1IPAddress__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -156ef09bd41be803b2f51d7f424cd841 \ No newline at end of file diff --git a/html/classcore_1_1IPAddress__inherit__graph.png b/html/classcore_1_1IPAddress__inherit__graph.png deleted file mode 100644 index e76df2d..0000000 Binary files a/html/classcore_1_1IPAddress__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1Object-members.html b/html/classcore_1_1Object-members.html deleted file mode 100644 index 657efbb..0000000 --- a/html/classcore_1_1Object-members.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::Object Member List
-
-
- -

This is the complete list of members for core::Object, including all inherited members.

- - - -
name (defined in core::Object)core::Object
tag (defined in core::Object)core::Object
- - - - diff --git a/html/classcore_1_1Object.html b/html/classcore_1_1Object.html deleted file mode 100644 index 366996b..0000000 --- a/html/classcore_1_1Object.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - -My Project: core::Object Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Attributes | -List of all members
-
-
core::Object Class Reference
-
-
-
-Inheritance diagram for core::Object:
-
-
Inheritance graph
- - - - - - -
[legend]
- - - - - - -

-Public Attributes

-std::string name
 
-std::string tag
 
-
The documentation for this class was generated from the following file: -
- - - - diff --git a/html/classcore_1_1Object__inherit__graph.map b/html/classcore_1_1Object__inherit__graph.map deleted file mode 100644 index acb0232..0000000 --- a/html/classcore_1_1Object__inherit__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/html/classcore_1_1Object__inherit__graph.md5 b/html/classcore_1_1Object__inherit__graph.md5 deleted file mode 100644 index 6264b7d..0000000 --- a/html/classcore_1_1Object__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -b14282148f8863b81eeca78a65a2960b \ No newline at end of file diff --git a/html/classcore_1_1Object__inherit__graph.png b/html/classcore_1_1Object__inherit__graph.png deleted file mode 100644 index 9d083f9..0000000 Binary files a/html/classcore_1_1Object__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1SessionFilter-members.html b/html/classcore_1_1SessionFilter-members.html deleted file mode 100644 index b29edc6..0000000 --- a/html/classcore_1_1SessionFilter-members.html +++ /dev/null @@ -1,84 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::SessionFilter Member List
-
-
- -

This is the complete list of members for core::SessionFilter, including all inherited members.

- - - - -
name (defined in core::Object)core::Object
tag (defined in core::Object)core::Object
test(TCPSession &session) (defined in core::SessionFilter)core::SessionFilterinlinevirtual
- - - - diff --git a/html/classcore_1_1SessionFilter.html b/html/classcore_1_1SessionFilter.html deleted file mode 100644 index 69d958e..0000000 --- a/html/classcore_1_1SessionFilter.html +++ /dev/null @@ -1,119 +0,0 @@ - - - - - - - -My Project: core::SessionFilter Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::SessionFilter Class Reference
-
-
-
-Inheritance diagram for core::SessionFilter:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for core::SessionFilter:
-
-
Collaboration graph
- - - - -
[legend]
- - - - -

-Public Member Functions

-virtual bool test (TCPSession &session)
 
- - - - - - -

-Additional Inherited Members

- Public Attributes inherited from core::Object
-std::string name
 
-std::string tag
 
-
The documentation for this class was generated from the following file: -
- - - - diff --git a/html/classcore_1_1SessionFilter__coll__graph.map b/html/classcore_1_1SessionFilter__coll__graph.map deleted file mode 100644 index dcfae7a..0000000 --- a/html/classcore_1_1SessionFilter__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1SessionFilter__coll__graph.md5 b/html/classcore_1_1SessionFilter__coll__graph.md5 deleted file mode 100644 index e75907b..0000000 --- a/html/classcore_1_1SessionFilter__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -49ec60c1d28ae09032cf4b8ee15c98a8 \ No newline at end of file diff --git a/html/classcore_1_1SessionFilter__coll__graph.png b/html/classcore_1_1SessionFilter__coll__graph.png deleted file mode 100644 index e4d8ab9..0000000 Binary files a/html/classcore_1_1SessionFilter__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1SessionFilter__inherit__graph.map b/html/classcore_1_1SessionFilter__inherit__graph.map deleted file mode 100644 index dcfae7a..0000000 --- a/html/classcore_1_1SessionFilter__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1SessionFilter__inherit__graph.md5 b/html/classcore_1_1SessionFilter__inherit__graph.md5 deleted file mode 100644 index e75907b..0000000 --- a/html/classcore_1_1SessionFilter__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -49ec60c1d28ae09032cf4b8ee15c98a8 \ No newline at end of file diff --git a/html/classcore_1_1SessionFilter__inherit__graph.png b/html/classcore_1_1SessionFilter__inherit__graph.png deleted file mode 100644 index e4d8ab9..0000000 Binary files a/html/classcore_1_1SessionFilter__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1Socket-members.html b/html/classcore_1_1Socket-members.html deleted file mode 100644 index 33a2674..0000000 --- a/html/classcore_1_1Socket-members.html +++ /dev/null @@ -1,105 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::Socket Member List
-
-
- -

This is the complete list of members for core::Socket, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - -
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
needsToWrite() (defined in core::Socket)core::Socket
onDataReceived(std::string data)core::Socketprotectedvirtual
onDataReceived(coreutils::ZString &data) (defined in core::Socket)core::Socketprotectedvirtual
onRegister()core::Socketvirtual
onRegistered()core::Socketvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
output(std::stringstream &out) (defined in core::Socket)core::Socket
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
reset (defined in core::Socket)core::Socket
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutdown(std::string text="unknown")core::Socket
shutDown (defined in core::Socket)core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
- - - - diff --git a/html/classcore_1_1Socket.html b/html/classcore_1_1Socket.html deleted file mode 100644 index 907608c..0000000 --- a/html/classcore_1_1Socket.html +++ /dev/null @@ -1,490 +0,0 @@ - - - - - - - -My Project: core::Socket Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -Protected Member Functions | -Protected Attributes | -List of all members
-
-
core::Socket Class Reference
-
-
- -

#include <Socket.h>

-
-Inheritance diagram for core::Socket:
-
-
Inheritance graph
- - - - - - - - - - - - - - - - -
[legend]
-
-Collaboration diagram for core::Socket:
-
-
Collaboration graph
- - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onRegistered ()
 Called after the socket has been registered with epoll processing.
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - -

-Public Attributes

-bool reset = false
 
-volatile bool shutDown = false
 
- - - - - - - - - - - - -

-Protected Member Functions

-void setBufferSize (int length)
 
-int getBufferSize ()
 
virtual void onDataReceived (std::string data)
 Called when data is received from the socket. More...
 
-virtual void onDataReceived (coreutils::ZString &data)
 
virtual void receiveData (coreutils::ZString &buffer)
 
- - - -

-Protected Attributes

-EPollePoll
 
-

Detailed Description

-

Socket

-

The core component to managing a socket.

-

Hooks into the EPoll through the registration and unregistration process and provides a communication socket of the specified protocol type. This object provides for all receiving data threading through use of the EPoll object and also provides buffering for output data requests to the socket.

-

A program using a socket object can request to open a socket (network or device) and communicate through the streambuffer interface of the socket object.

-

The socket side of the Socket accepts EPOLLIN event and will maintain the data in a buffer for the stream readers to read. A onDataReceived event is then sent with the data received in the buffer that can be read through the stream. Only sockets that send events to epoll can be used with this object.

-

When writing to the stream the data is written into a buffer and a EPOLLOUT is scheduled. Upon receiving the EPOLLOUT event then the buffer is written to the socket output.

-

Constructor & Destructor Documentation

- -

◆ Socket()

- -
-
- - - - - - - - - - - - - - - - - - -
core::Socket::Socket (EPollePoll,
std::string text = "" 
)
-
-

Constructor

-
Parameters
- - - -
ePollThe EPoll socket descriptor.
textA title for this socket.
-
-
- -
-
- -

◆ ~Socket()

- -
-
- - - - - -
- - - - - - - -
core::Socket::~Socket ()
-
-virtual
-
-

Destructor

- -
-
-

Member Function Documentation

- -

◆ eventReceived()

- -
-
- - - - - - - - - - - - - - - - - - -
bool core::Socket::eventReceived (struct epoll_event event,
long long eventId 
)
-
- -

Parse epoll event and call specified callbacks.

-

The event received from epoll is sent through the eventReceived method which will parse the event and call the read and write callbacks on the socket.

-

This method is called by the BMAEPoll object and should not be called from any user extended classes unless an epoll event is being simulated.

-

The return value of false will delete the socket object causing the destructors to run. The return value of true will enable the socket on ePoll to receive more events.

- -
-
- -

◆ onDataReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::Socket::onDataReceived (std::string data)
-
-protectedvirtual
-
- -

Called when data is received from the socket.

-

The onConnected method is called when the socket is ready to communicate. Writing to the socket can begin on this call to initiate a contact with the remote device. The onDataReceived method is called when the socket has received an event from epoll and there is data ready to be read from the socket. The default handler will pull the data and put it into the streambuf for the socket. EPOLLIN

-
Parameters
- - -
datathe data that has been received from the socket.
-
-
- -

Reimplemented in core::UDPServerSocket, and core::TCPServer.

- -
-
- -

◆ onRegister()

- -
-
- - - - - -
- - - - - - - -
void core::Socket::onRegister ()
-
-virtual
-
- -

Called before the socket has registered with the epoll processing.

-

The onRegister method is called before the socket is registered with ePoll so objects extending the Socket definition can initialize the socket before receiving events. Evoked when the descriptor is set using setDescriptor for the socket.

- -

Reimplemented in core::TLSSession.

- -
-
- -

◆ onUnregistered()

- -
-
- - - - - -
- - - - - - - -
void core::Socket::onUnregistered ()
-
-virtual
-
- -

Called when the socket has finished unregistering for the epoll processing.

-

ePoll and socket communcation events will be stopped. The default method will close the socket and clean up the connection. If this is overridden by an extended object then the object should call this method to clean the socket up.

- -
-
- -

◆ receiveData()

- -
-
- - - - - -
- - - - - - - - -
void core::Socket::receiveData (coreutils::ZString & buffer)
-
-protectedvirtual
-
-

receiveData will read the data from the socket and place it in the socket buffer. TLS layer overrides this to be able to read from SSL.

- -

Reimplemented in core::TLSSession.

- -
-
- -

◆ setDescriptor()

- -
-
- - - - - - - - -
void core::Socket::setDescriptor (int descriptor)
-
- -

Set the descriptor for the socket.

-

setDescriptor establishes the file descriptor for the socket and registers the socket on the EPoll controller. setDescriptor will invoke the onRegister() event.

- -
-
- -

◆ shutdown()

- -
-
- - - - - - - - -
void core::Socket::shutdown (std::string text = "unknown")
-
-

Use the shutdown() method to terminate the socket connection and remove resources. This method is provided to ensure that all destructors are called for all inherited objects with a virtual destructor.

- -
-
- -

◆ write()

- -
-
- - - - - - - - -
int core::Socket::write (std::string data)
-
-

Write data to the socket.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1Socket__coll__graph.map b/html/classcore_1_1Socket__coll__graph.map deleted file mode 100644 index 80dcd4f..0000000 --- a/html/classcore_1_1Socket__coll__graph.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/html/classcore_1_1Socket__coll__graph.md5 b/html/classcore_1_1Socket__coll__graph.md5 deleted file mode 100644 index dd6eaea..0000000 --- a/html/classcore_1_1Socket__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -6630f35392a585fbda340b0878b403d5 \ No newline at end of file diff --git a/html/classcore_1_1Socket__coll__graph.png b/html/classcore_1_1Socket__coll__graph.png deleted file mode 100644 index 59f350a..0000000 Binary files a/html/classcore_1_1Socket__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1Socket__inherit__graph.map b/html/classcore_1_1Socket__inherit__graph.map deleted file mode 100644 index 39db861..0000000 --- a/html/classcore_1_1Socket__inherit__graph.map +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/html/classcore_1_1Socket__inherit__graph.md5 b/html/classcore_1_1Socket__inherit__graph.md5 deleted file mode 100644 index aec602f..0000000 --- a/html/classcore_1_1Socket__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -c60753a1ec5ac2cbf84f9bf372e3ae70 \ No newline at end of file diff --git a/html/classcore_1_1Socket__inherit__graph.png b/html/classcore_1_1Socket__inherit__graph.png deleted file mode 100644 index b3a63da..0000000 Binary files a/html/classcore_1_1Socket__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1Subscription-members.html b/html/classcore_1_1Subscription-members.html deleted file mode 100644 index b29f187..0000000 --- a/html/classcore_1_1Subscription-members.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::Subscription Member List
-
-
- -

This is the complete list of members for core::Subscription, including all inherited members.

- - - - - - - - - - - - - - - - - -
event(std::stringstream &out) (defined in core::Subscription)core::Subscription
handler (defined in core::Subscription)core::Subscription
id (defined in core::Subscription)core::Subscription
ifSubscriber(TCPSession &session) (defined in core::Subscription)core::Subscription
mode (defined in core::Subscription)core::Subscription
onSubscribe(TCPSession &session, Subscription *subscription) (defined in core::Subscription)core::Subscriptionvirtual
owner (defined in core::Subscription)core::Subscription
process(coreutils::ZString &request, std::stringstream &out, TCPSession &session) (defined in core::Subscription)core::Subscriptionvirtual
subInvite(TCPSession &session) (defined in core::Subscription)core::Subscription
subscribe(TCPSession &session) (defined in core::Subscription)core::Subscription
subscribers (defined in core::Subscription)core::Subscription
Subscription(std::string id, std::string mode="*AUTHOR") (defined in core::Subscription)core::Subscription
Subscription(std::string id, TCPSession &session, std::string mode) (defined in core::Subscription)core::Subscription
Subscription(std::string id, TCPSession &session, std::string mode, SubscriptionHandler *handler) (defined in core::Subscription)core::Subscription
unsubscribe(TCPSession &session) (defined in core::Subscription)core::Subscription
~Subscription() (defined in core::Subscription)core::Subscriptionvirtual
- - - - diff --git a/html/classcore_1_1Subscription.html b/html/classcore_1_1Subscription.html deleted file mode 100644 index 8512099..0000000 --- a/html/classcore_1_1Subscription.html +++ /dev/null @@ -1,159 +0,0 @@ - - - - - - - -My Project: core::Subscription Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -List of all members
-
-
core::Subscription Class Reference
-
-
-
-Collaboration diagram for core::Subscription:
-
-
Collaboration graph
- - - - - - - - - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

Subscription (std::string id, std::string mode="*AUTHOR")
 
Subscription (std::string id, TCPSession &session, std::string mode)
 
Subscription (std::string id, TCPSession &session, std::string mode, SubscriptionHandler *handler)
 
-int subscribe (TCPSession &session)
 
-int unsubscribe (TCPSession &session)
 
-virtual int process (coreutils::ZString &request, std::stringstream &out, TCPSession &session)
 
-virtual int onSubscribe (TCPSession &session, Subscription *subscription)
 
-int event (std::stringstream &out)
 
-bool ifSubscriber (TCPSession &session)
 
-bool subInvite (TCPSession &session)
 
- - - - - - - - - - - -

-Public Attributes

-std::string id
 
-std::string mode
 
-TCPSessionowner
 
-SubscriptionHandlerhandler
 
-std::vector< TCPSession * > subscribers
 
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1SubscriptionHandler-members.html b/html/classcore_1_1SubscriptionHandler-members.html deleted file mode 100644 index ca1f0a7..0000000 --- a/html/classcore_1_1SubscriptionHandler-members.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::SubscriptionHandler Member List
-
-
- -

This is the complete list of members for core::SubscriptionHandler, including all inherited members.

- - - -
onSubscribe(TCPSession &session, Subscription *subscription) (defined in core::SubscriptionHandler)core::SubscriptionHandlerinlinevirtual
process(coreutils::ZString &request, std::stringstream &out, TCPSession &session, Subscription *subscription) (defined in core::SubscriptionHandler)core::SubscriptionHandlerinlinevirtual
- - - - diff --git a/html/classcore_1_1SubscriptionHandler.html b/html/classcore_1_1SubscriptionHandler.html deleted file mode 100644 index 122111e..0000000 --- a/html/classcore_1_1SubscriptionHandler.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - - -My Project: core::SubscriptionHandler Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::SubscriptionHandler Class Reference
-
-
- - - - - - -

-Public Member Functions

-virtual int process (coreutils::ZString &request, std::stringstream &out, TCPSession &session, Subscription *subscription)
 
-virtual int onSubscribe (TCPSession &session, Subscription *subscription)
 
-
The documentation for this class was generated from the following file: -
- - - - diff --git a/html/classcore_1_1SubscriptionManager-members.html b/html/classcore_1_1SubscriptionManager-members.html deleted file mode 100644 index b80ff7d..0000000 --- a/html/classcore_1_1SubscriptionManager-members.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::SubscriptionManager Member List
-
-
- -

This is the complete list of members for core::SubscriptionManager, including all inherited members.

- - - - - - - - -
add(Subscription &subscription) (defined in core::SubscriptionManager)core::SubscriptionManager
factory (defined in core::SubscriptionManager)core::SubscriptionManager
output(std::stringstream &out)core::Commandvirtual
processCommand(coreutils::ZString &request, TCPSession &session) overridecore::SubscriptionManagervirtual
removeSessionSubscriptions(TCPSession &session) (defined in core::SubscriptionManager)core::SubscriptionManager
SubscriptionManager() (defined in core::SubscriptionManager)core::SubscriptionManager
~SubscriptionManager() (defined in core::SubscriptionManager)core::SubscriptionManagervirtual
- - - - diff --git a/html/classcore_1_1SubscriptionManager.html b/html/classcore_1_1SubscriptionManager.html deleted file mode 100644 index 5f82aba..0000000 --- a/html/classcore_1_1SubscriptionManager.html +++ /dev/null @@ -1,174 +0,0 @@ - - - - - - - -My Project: core::SubscriptionManager Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -List of all members
-
-
core::SubscriptionManager Class Reference
-
-
-
-Inheritance diagram for core::SubscriptionManager:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for core::SubscriptionManager:
-
-
Collaboration graph
- - - - - -
[legend]
- - - - - - - - - - - -

-Public Member Functions

-int add (Subscription &subscription)
 
-int removeSessionSubscriptions (TCPSession &session)
 
int processCommand (coreutils::ZString &request, TCPSession &session) override
 
- Public Member Functions inherited from core::Command
virtual void output (std::stringstream &out)
 
- - - -

-Public Attributes

-SubscriptionHandlerFactoryfactory
 
-

Member Function Documentation

- -

◆ processCommand()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
int core::SubscriptionManager::processCommand (coreutils::ZString & request,
TCPSessionsession 
)
-
-overridevirtual
-
-

This method is used to implement the functionality of the requested command. This pure virtual function must be implemented in your inheriting object.

-
Parameters
- - - -
requestThe request that was entered by the user to invoke this command.
sessionSpecify the requesting session so that the execution of the command process can return its output to the session.
-
-
-
Returns
Returns 0 if execution of the command was successful. Otherwise returns a non-zero value indicating an error condition.
- -

Reimplemented from core::Command.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1SubscriptionManager__coll__graph.map b/html/classcore_1_1SubscriptionManager__coll__graph.map deleted file mode 100644 index 906a1bb..0000000 --- a/html/classcore_1_1SubscriptionManager__coll__graph.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/html/classcore_1_1SubscriptionManager__coll__graph.md5 b/html/classcore_1_1SubscriptionManager__coll__graph.md5 deleted file mode 100644 index 31d886a..0000000 --- a/html/classcore_1_1SubscriptionManager__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -10381645b9e54c41704797e5bdbda984 \ No newline at end of file diff --git a/html/classcore_1_1SubscriptionManager__coll__graph.png b/html/classcore_1_1SubscriptionManager__coll__graph.png deleted file mode 100644 index 2ac7239..0000000 Binary files a/html/classcore_1_1SubscriptionManager__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1SubscriptionManager__inherit__graph.map b/html/classcore_1_1SubscriptionManager__inherit__graph.map deleted file mode 100644 index 6f44801..0000000 --- a/html/classcore_1_1SubscriptionManager__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1SubscriptionManager__inherit__graph.md5 b/html/classcore_1_1SubscriptionManager__inherit__graph.md5 deleted file mode 100644 index cb8634c..0000000 --- a/html/classcore_1_1SubscriptionManager__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -6483fa7ecc4d788b414f5d6678a03717 \ No newline at end of file diff --git a/html/classcore_1_1SubscriptionManager__inherit__graph.png b/html/classcore_1_1SubscriptionManager__inherit__graph.png deleted file mode 100644 index b4fd9f0..0000000 Binary files a/html/classcore_1_1SubscriptionManager__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1Subscription__coll__graph.map b/html/classcore_1_1Subscription__coll__graph.map deleted file mode 100644 index a9817a4..0000000 --- a/html/classcore_1_1Subscription__coll__graph.map +++ /dev/null @@ -1,16 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/html/classcore_1_1Subscription__coll__graph.md5 b/html/classcore_1_1Subscription__coll__graph.md5 deleted file mode 100644 index 409e638..0000000 --- a/html/classcore_1_1Subscription__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -f8a16462219e60c4a850bd47db3544d2 \ No newline at end of file diff --git a/html/classcore_1_1Subscription__coll__graph.png b/html/classcore_1_1Subscription__coll__graph.png deleted file mode 100644 index 1ab5040..0000000 Binary files a/html/classcore_1_1Subscription__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1Subscription__inherit__graph.map b/html/classcore_1_1Subscription__inherit__graph.map deleted file mode 100644 index 932135f..0000000 --- a/html/classcore_1_1Subscription__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1Subscription__inherit__graph.md5 b/html/classcore_1_1Subscription__inherit__graph.md5 deleted file mode 100644 index 39c8bbf..0000000 --- a/html/classcore_1_1Subscription__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -b31e82e2b73337305b35736356004421 \ No newline at end of file diff --git a/html/classcore_1_1Subscription__inherit__graph.png b/html/classcore_1_1Subscription__inherit__graph.png deleted file mode 100644 index 6ac6548..0000000 Binary files a/html/classcore_1_1Subscription__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1TCPServer-members.html b/html/classcore_1_1TCPServer-members.html deleted file mode 100644 index 896d8ec..0000000 --- a/html/classcore_1_1TCPServer-members.html +++ /dev/null @@ -1,125 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::TCPServer Member List
-
-
- -

This is the complete list of members for core::TCPServer, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
blackListcore::TCPServer
commandscore::TCPServer
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
getSessionByAlias(void *alias)core::TCPServer
getSocketAccept(EPoll &epoll)core::TCPServervirtual
ipAddress (defined in core::TCPSocket)core::TCPSocket
needsToWrite() (defined in core::Socket)core::Socket
onDataReceived(std::string data) overridecore::TCPServerprotectedvirtual
onDataReceived(coreutils::ZString &data) (defined in core::Socket)core::Socketprotectedvirtual
onRegister()core::Socketvirtual
onRegistered()core::Socketvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
output(std::stringstream &out)core::TCPServervirtual
processCommand(coreutils::ZString &request, TCPSession &session) overridecore::TCPServerprotectedvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
removeFromSessionList(TCPSession *session) (defined in core::TCPServer)core::TCPServer
reset (defined in core::Socket)core::Socket
sendToAll(std::stringstream &out) (defined in core::TCPServer)core::TCPServer
sendToAll(std::stringstream &out, TCPSession &sender, SessionFilter filter)core::TCPServer
sendToAll(std::stringstream &out, TCPSession &sender)core::TCPServer
sessionErrorHandler(std::string errorString, std::stringstream &out) (defined in core::TCPServer)core::TCPServervirtual
sessionscore::TCPServer
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutdown(std::string text="unknown")core::Socket
shutDown (defined in core::Socket)core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
subscriptionscore::TCPServer
TCPServer(EPoll &ePoll, IPAddress address, std::string delimiter=" ", int depth=10, std::string text="")core::TCPServer
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
whiteListcore::TCPServer
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~TCPServer()core::TCPServervirtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
- - - - diff --git a/html/classcore_1_1TCPServer.html b/html/classcore_1_1TCPServer.html deleted file mode 100644 index 2a0fcd2..0000000 --- a/html/classcore_1_1TCPServer.html +++ /dev/null @@ -1,614 +0,0 @@ - - - - - - - -My Project: core::TCPServer Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -Protected Member Functions | -List of all members
-
-
core::TCPServer Class Reference
-
-
- -

#include <TCPServer.h>

-
-Inheritance diagram for core::TCPServer:
-
-
Inheritance graph
- - - - - - - - -
[legend]
-
-Collaboration diagram for core::TCPServer:
-
-
Collaboration graph
- - - - - - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 TCPServer (EPoll &ePoll, IPAddress address, std::string delimiter=" ", int depth=10, std::string text="")
 
virtual ~TCPServer ()
 
-virtual void sessionErrorHandler (std::string errorString, std::stringstream &out)
 
virtual TCPSessiongetSocketAccept (EPoll &epoll)
 
-void removeFromSessionList (TCPSession *session)
 
-void output (std::stringstream &out)
 Output the consoles array to the console.
 
-void sendToAll (std::stringstream &out)
 
void sendToAll (std::stringstream &out, TCPSession &sender, SessionFilter filter)
 
void sendToAll (std::stringstream &out, TCPSession &sender)
 
TCPSessiongetSessionByAlias (void *alias)
 
- Public Member Functions inherited from core::TCPSocket
TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onRegistered ()
 Called after the socket has been registered with epoll processing.
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - - - - - - - -

-Public Attributes

std::vector< TCPSession * > sessions
 
CommandList commands
 
IPAddressListblackList
 
IPAddressListwhiteList
 
SubscriptionManager subscriptions
 
- Public Attributes inherited from core::TCPSocket
-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- - - - - - - - - - - - - - -

-Protected Member Functions

void onDataReceived (std::string data) override
 
int processCommand (coreutils::ZString &request, TCPSession &session) override
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
-virtual void onDataReceived (coreutils::ZString &data)
 
virtual void receiveData (coreutils::ZString &buffer)
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Detailed Description

-

TCPServer

-

Manage a socket connection as a TCP server type. Connections to the socket are processed through the accept functionality.

-

A list of connections is maintained in a vector object.

-

This object extends the BMACommand object as well so it can be added to a Console object and process commands to display status information.

-

Constructor & Destructor Documentation

- -

◆ TCPServer()

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
core::TCPServer::TCPServer (EPollePoll,
IPAddress address,
std::string delimiter = " ",
int depth = 10,
std::string text = "" 
)
-
-

The constructor for the TCPServer object.

-
Parameters
- - - - - -
ePollthe EPoll instance that manages the socket.
urlthe IP address for the socket to receive connection requests.
portthe port number that the socket will listen on.
commandNamethe name of the command used to invoke the status display for this object.
-
-
- -
-
- -

◆ ~TCPServer()

- -
-
- - - - - -
- - - - - - - -
core::TCPServer::~TCPServer ()
-
-virtual
-
-

The destructor for this object.

- -
-
-

Member Function Documentation

- -

◆ getSessionByAlias()

- -
-
- - - - - - - - -
TCPSession * core::TCPServer::getSessionByAlias (void * alias)
-
-

Use the getSessionByAlias to retrieve a session pointer by the value of the alias pointer.

- -
-
- -

◆ getSocketAccept()

- -
-
- - - - - -
- - - - - - - - -
TCPSession * core::TCPServer::getSocketAccept (EPollepoll)
-
-virtual
-
-

getSocketAccept is designed to allow a polymorphic extension of this object to return a type of object that extends the definition of the server socket. Returning the appropriate session object that extends from Session provides the mechanism where the server can select the protocol dialog for the desired service.

- -

Reimplemented in core::ConsoleServer.

- -
-
- -

◆ onDataReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPServer::onDataReceived (std::string data)
-
-overrideprotectedvirtual
-
-

Override the virtual dataReceived since for the server these are requests to accept the new connection socket. No data is to be read or written when this method is called. It is the response to the fact that a new connection is coming into the system

-
Parameters
- - - -
datathe pointer to the buffer containing the received data.
lengththe length of the associated data buffer.
-
-
- -

Reimplemented from core::Socket.

- -
-
- -

◆ processCommand()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
int core::TCPServer::processCommand (coreutils::ZString & request,
TCPSessionsession 
)
-
-overrideprotectedvirtual
-
-

This method is called when the Command associated with this object is requested because a user has typed in the associated command name on a command entry line.

-
Parameters
- - -
thesession object to write the output to.
-
-
- -

Reimplemented from core::Command.

- -
-
- -

◆ sendToAll() [1/2]

- -
-
- - - - - - - - - - - - - - - - - - -
void core::TCPServer::sendToAll (std::stringstream & out,
TCPSessionsender 
)
-
-

Use this sendToAll method to output the contents of the out stream to all the connections on the server excluding the sender session and the entries identified by the passed in filter object.

- -
-
- -

◆ sendToAll() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - - - - - - - -
void core::TCPServer::sendToAll (std::stringstream & out,
TCPSessionsender,
SessionFilter filter 
)
-
-

Use this sendToAll method to output the contents of the out stream to all the connections on the server excluding the sender session.

- -
-
-

Member Data Documentation

- -

◆ blackList

- -
-
- - - - -
IPAddressList* core::TCPServer::blackList
-
-

If not NULL the blacklist object can be assigned to this server socket and the server IP addresses connecting to the server attempting to accept a socket are contained in this list then the connection is rejected and no accept is granted.

- -
-
- -

◆ commands

- -
-
- - - - -
CommandList core::TCPServer::commands
-
-

The commands object is a CommandList and is used to store Command objects to be parsed and run as data comes into the session.

- -
-
- -

◆ sessions

- -
-
- - - - -
std::vector<TCPSession *> core::TCPServer::sessions
-
-

The list of sessions that are currently open and being maintained by this object.

- -
-
- -

◆ subscriptions

- -
-
- - - - -
SubscriptionManager core::TCPServer::subscriptions
-
-

The Subscription Manager tracks all subscriptions on the server.

- -
-
- -

◆ whiteList

- -
-
- - - - -
IPAddressList* core::TCPServer::whiteList
-
-

If not NULL the blacklist object can be assigned to this server socket and the server IP addresses connecting to the server attempting to accept a socket are contained in this list then the connection is rejected and no accept is granted.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1TCPServer__coll__graph.map b/html/classcore_1_1TCPServer__coll__graph.map deleted file mode 100644 index 6f06af0..0000000 --- a/html/classcore_1_1TCPServer__coll__graph.map +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - - - - - - diff --git a/html/classcore_1_1TCPServer__coll__graph.md5 b/html/classcore_1_1TCPServer__coll__graph.md5 deleted file mode 100644 index ea11268..0000000 --- a/html/classcore_1_1TCPServer__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -badf028bda2effa907d0c79f664a2cf2 \ No newline at end of file diff --git a/html/classcore_1_1TCPServer__coll__graph.png b/html/classcore_1_1TCPServer__coll__graph.png deleted file mode 100644 index 1af34b8..0000000 Binary files a/html/classcore_1_1TCPServer__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1TCPServer__inherit__graph.map b/html/classcore_1_1TCPServer__inherit__graph.map deleted file mode 100644 index 0530c37..0000000 --- a/html/classcore_1_1TCPServer__inherit__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/html/classcore_1_1TCPServer__inherit__graph.md5 b/html/classcore_1_1TCPServer__inherit__graph.md5 deleted file mode 100644 index 4e3e5fc..0000000 --- a/html/classcore_1_1TCPServer__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -6ce798a6fc432dc7d50ce7b2829a1d3c \ No newline at end of file diff --git a/html/classcore_1_1TCPServer__inherit__graph.png b/html/classcore_1_1TCPServer__inherit__graph.png deleted file mode 100644 index 6cba3d4..0000000 Binary files a/html/classcore_1_1TCPServer__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1TCPSession-members.html b/html/classcore_1_1TCPSession-members.html deleted file mode 100644 index b22cd21..0000000 --- a/html/classcore_1_1TCPSession-members.html +++ /dev/null @@ -1,126 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::TCPSession Member List
-
-
- -

This is the complete list of members for core::TCPSession, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
aliascore::TCPSession
compareAlias(void *alias) (defined in core::TCPSession)core::TCPSessionvirtual
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
grab (defined in core::TCPSession)core::TCPSession
ipAddress (defined in core::TCPSocket)core::TCPSocket
needsToWrite() (defined in core::Socket)core::Socket
onBlockReceived(coreutils::ZString &block)core::TCPSessionprotectedvirtual
onConnected()core::TCPSessionprotectedvirtual
onDataReceived(coreutils::ZString &data) overridecore::TCPSessionprotectedvirtual
core::TCPSocket::onDataReceived(std::string data)core::Socketprotectedvirtual
onLineReceived(coreutils::ZString &line)core::TCPSessionprotectedvirtual
onRegister()core::Socketvirtual
onRegistered() overridecore::TCPSessionprotectedvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
outcore::TCPSession
output(std::stringstream &data)core::TCPSessionvirtual
outputAlias(std::stringstream &out) (defined in core::TCPSession)core::TCPSessionvirtual
protocol(coreutils::ZString &data)core::TCPSessionprotectedvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
reset (defined in core::Socket)core::Socket
send()core::TCPSession
server (defined in core::TCPSession)core::TCPSession
setBlockSize(int size=0)core::TCPSessionprotected
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutdown(std::string text="unknown")core::Socket
shutDown (defined in core::Socket)core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
TCPSession(EPoll &ePoll, TCPServer &server, std::string text="") (defined in core::TCPSession)core::TCPSession
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
terminate()core::TCPSession
uuidcore::TCPSession
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~TCPSession() (defined in core::TCPSession)core::TCPSessionvirtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
- - - - diff --git a/html/classcore_1_1TCPSession.html b/html/classcore_1_1TCPSession.html deleted file mode 100644 index 19207cd..0000000 --- a/html/classcore_1_1TCPSession.html +++ /dev/null @@ -1,540 +0,0 @@ - - - - - - - -My Project: core::TCPSession Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -Protected Member Functions | -List of all members
-
-
core::TCPSession Class Reference
-
-
- -

#include <TCPSession.h>

-
-Inheritance diagram for core::TCPSession:
-
-
Inheritance graph
- - - - - - - - -
[legend]
-
-Collaboration diagram for core::TCPSession:
-
-
Collaboration graph
- - - - - - - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

TCPSession (EPoll &ePoll, TCPServer &server, std::string text="")
 
virtual void output (std::stringstream &data)
 
void send ()
 
void terminate ()
 
-virtual bool compareAlias (void *alias)
 
-virtual void outputAlias (std::stringstream &out)
 
- Public Member Functions inherited from core::TCPSocket
TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - - - - - - - -

-Public Attributes

-Commandgrab = NULL
 
-TCPServerserver
 
std::stringstream out
 
char uuid [37]
 
void * alias
 
- Public Attributes inherited from core::TCPSocket
-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- - - - - - - - - - - - - - - - - - - - - - - - - - -

-Protected Member Functions

-virtual void onRegistered () override
 Called after the socket has been registered with epoll processing.
 
virtual void onDataReceived (coreutils::ZString &data) override
 
virtual void onLineReceived (coreutils::ZString &line)
 
virtual void onBlockReceived (coreutils::ZString &block)
 
virtual void onConnected ()
 
virtual void protocol (coreutils::ZString &data)
 
void setBlockSize (int size=0)
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
virtual void onDataReceived (std::string data)
 Called when data is received from the socket. More...
 
virtual void receiveData (coreutils::ZString &buffer)
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Detailed Description

-

TCPSession

-

TCPSession defines the nature of the interaction with the client and stores persistent data for a defined session. TCPSession objects are not sockets but instead provide a communications control mechanism. Protocol conversations are provided through extensions from this object.

-

Member Function Documentation

- -

◆ onBlockReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession::onBlockReceived (coreutils::ZString & block)
-
-protectedvirtual
-
-

Override the onBlockReceived method to receive a string of characters that represents a single block of data of length determined by the block length value. If onDataReceived was overriden this method will not be called unless the onDataReceived calls this method explicitly using the class and member name.

- -
-
- -

◆ onConnected()

- -
-
- - - - - -
- - - - - - - -
void core::TCPSession::onConnected ()
-
-protectedvirtual
-
-

This method is called from within the protocol method when protocol is called on the initial connection where the data is an empty string. Use this method to deliver a message to the connection upon connection.

- -
-
- -

◆ onDataReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession::onDataReceived (coreutils::ZString & data)
-
-overrideprotectedvirtual
-
-

Override this method to receive data directly from the socket as data is received. If you need data split by line termination characters then override the onLineReceived method instead.

- -

Reimplemented from core::Socket.

- -
-
- -

◆ onLineReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession::onLineReceived (coreutils::ZString & line)
-
-protectedvirtual
-
-

Override the onLineReceived method to receive a string of characters that represents a single line of data terminated by a LF or CRLF. If onDataReceived was overriden this method will not be called unless the onDataReceived calls this method explicitly using the class and member name.

- -
-
- -

◆ output()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession::output (std::stringstream & out)
-
-virtual
-
-

The output method is called by a socket session (TCPSession) and will output the detail information for the client socket. When extending BMATCPSocket or BMASession you can override the method to add attributes to the list.

- -

Reimplemented from core::TCPSocket.

- -

Reimplemented in core::TLSSession.

- -
-
- -

◆ protocol()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession::protocol (coreutils::ZString & data)
-
-protectedvirtual
-
-

Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the 'commands' added to the server object using the processRequest method on the session input.

-

When data is received within the session two modes are available to pass the data through the protocol method: LINE or BLOCK.

- -

Reimplemented in core::TLSSession, and core::ConsoleSession.

- -
-
- -

◆ send()

- -
-
- - - - - - - -
void core::TCPSession::send ()
-
-

The send method is used to output the contents of the out stream to the session containing the stream.

- -
-
- -

◆ setBlockSize()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession::setBlockSize (int size = 0)
-
-protected
-
-

Use setBlockSize to set the amount of data that should be read at once from the session data buffer. If this value is set to 0 then the data will be retrieved

- -
-
- -

◆ terminate()

- -
-
- - - - - - - -
void core::TCPSession::terminate ()
-
-

Use this method to terminate this TCPSession.

- -
-
-

Member Data Documentation

- -

◆ alias

- -
-
- - - - -
void* core::TCPSession::alias
-
-

alias is a void pointer that can be set to point to any object that identifies this session uniquely. Using this approach, inheriting objects can determine how it knows the contacts that this server manages.

- -
-
- -

◆ out

- -
-
- - - - -
std::stringstream core::TCPSession::out
-
-

Use out to send data to the session socket or other session sockets.

- -
-
- -

◆ uuid

- -
-
- - - - -
char core::TCPSession::uuid[37]
-
-

uuid is generated automatically when the session object is instantiated. This value can be used to uniquely identify a session and is the default value pointed to by the alias pointer.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1TCPSession2-members.html b/html/classcore_1_1TCPSession2-members.html deleted file mode 100644 index 7349d40..0000000 --- a/html/classcore_1_1TCPSession2-members.html +++ /dev/null @@ -1,121 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::TCPSession2 Member List
-
-
- -

This is the complete list of members for core::TCPSession2, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
grab (defined in core::TCPSession2)core::TCPSession2
ipAddress (defined in core::TCPSocket)core::TCPSocket
needsToWrite() (defined in core::Socket)core::Socket
onBlockReceived(coreutils::ZString &block)core::TCPSession2protectedvirtual
onConnected()core::TCPSession2protectedvirtual
onDataReceived(coreutils::ZString &data) overridecore::TCPSession2protectedvirtual
core::TCPSocket::onDataReceived(std::string data)core::Socketprotectedvirtual
onLineReceived(coreutils::ZString &line)core::TCPSession2protectedvirtual
onRegister()core::Socketvirtual
onRegistered() overridecore::TCPSession2protectedvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
outcore::TCPSession2
output(std::stringstream &data)core::TCPSession2virtual
protocol(coreutils::ZString &data)core::TCPSession2protectedvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
reset (defined in core::Socket)core::Socket
send()core::TCPSession2
setBlockSize(int size=0)core::TCPSession2protected
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutdown(std::string text="unknown")core::Socket
shutDown (defined in core::Socket)core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
TCPSession2(EPoll &ePoll, std::string text="") (defined in core::TCPSession2)core::TCPSession2
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
terminate()core::TCPSession2
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~TCPSession2() (defined in core::TCPSession2)core::TCPSession2virtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
- - - - diff --git a/html/classcore_1_1TCPSession2.html b/html/classcore_1_1TCPSession2.html deleted file mode 100644 index 7d1398a..0000000 --- a/html/classcore_1_1TCPSession2.html +++ /dev/null @@ -1,486 +0,0 @@ - - - - - - - -My Project: core::TCPSession2 Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -Protected Member Functions | -List of all members
-
-
core::TCPSession2 Class Reference
-
-
- -

#include <TCPSession2.h>

-
-Inheritance diagram for core::TCPSession2:
-
-
Inheritance graph
- - - - - -
[legend]
-
-Collaboration diagram for core::TCPSession2:
-
-
Collaboration graph
- - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

TCPSession2 (EPoll &ePoll, std::string text="")
 
virtual void output (std::stringstream &data)
 
void send ()
 
void terminate ()
 
- Public Member Functions inherited from core::TCPSocket
TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - -

-Public Attributes

-Commandgrab = NULL
 
std::stringstream out
 
- Public Attributes inherited from core::TCPSocket
-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- - - - - - - - - - - - - - - - - - - - - - - - - - -

-Protected Member Functions

-virtual void onRegistered () override
 Called after the socket has been registered with epoll processing.
 
virtual void onDataReceived (coreutils::ZString &data) override
 
virtual void onLineReceived (coreutils::ZString &line)
 
virtual void onBlockReceived (coreutils::ZString &block)
 
virtual void onConnected ()
 
virtual void protocol (coreutils::ZString &data)
 
void setBlockSize (int size=0)
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
virtual void onDataReceived (std::string data)
 Called when data is received from the socket. More...
 
virtual void receiveData (coreutils::ZString &buffer)
 
- - - - -

-Additional Inherited Members

- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Detailed Description

-

TCPSession2

-

TCPSession defines the nature of the interaction with the client and stores persistent data for a defined session. TCPSession objects are not sockets but instead provide a communications control mechanism. Protocol conversations are provided through extensions from this object.

-

TCPSession2 is designed to be 'connected' instead of being served by a server.

-

Member Function Documentation

- -

◆ onBlockReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession2::onBlockReceived (coreutils::ZString & block)
-
-protectedvirtual
-
-

Override the onBlockReceived method to receive a string of characters that represents a single block of data of length determined by the block length value. If onDataReceived was overriden this method will not be called unless the onDataReceived calls this method explicitly using the class and member name.

- -
-
- -

◆ onConnected()

- -
-
- - - - - -
- - - - - - - -
void core::TCPSession2::onConnected ()
-
-protectedvirtual
-
-

This method is called from within the protocol method when protocol is called on the initial connection where the data is an empty string. Use this method to deliver a message to the connection upon connection.

- -
-
- -

◆ onDataReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession2::onDataReceived (coreutils::ZString & data)
-
-overrideprotectedvirtual
-
-

Override this method to receive data directly from the socket as data is received. If you need data split by line termination characters then override the onLineReceived method instead.

- -

Reimplemented from core::Socket.

- -
-
- -

◆ onLineReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession2::onLineReceived (coreutils::ZString & line)
-
-protectedvirtual
-
-

Override the onLineReceived method to receive a string of characters that represents a single line of data terminated by a LF or CRLF. If onDataReceived was overriden this method will not be called unless the onDataReceived calls this method explicitly using the class and member name.

- -
-
- -

◆ output()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession2::output (std::stringstream & out)
-
-virtual
-
-

The output method is called by a socket session (TCPSession) and will output the detail information for the client socket. When extending BMATCPSocket or BMASession you can override the method to add attributes to the list.

- -

Reimplemented from core::TCPSocket.

- -
-
- -

◆ protocol()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession2::protocol (coreutils::ZString & data)
-
-protectedvirtual
-
-

Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the 'commands' added to the server object using the processRequest method on the session input.

-

When data is received within the session two modes are available to pass the data through the protocol method: LINE or BLOCK.

- -
-
- -

◆ send()

- -
-
- - - - - - - -
void core::TCPSession2::send ()
-
-

The send method is used to output the contents of the out stream to the session containing the stream.

- -
-
- -

◆ setBlockSize()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSession2::setBlockSize (int size = 0)
-
-protected
-
-

Use setBlockSize to set the amount of data that should be read at once from the session data buffer. If this value is set to 0 then the data will be retrieved

- -
-
- -

◆ terminate()

- -
-
- - - - - - - -
void core::TCPSession2::terminate ()
-
-

Use this method to terminate this TCPSession.

- -
-
-

Member Data Documentation

- -

◆ out

- -
-
- - - - -
std::stringstream core::TCPSession2::out
-
-

Use out to send data to the session socket or other session sockets.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1TCPSession2__coll__graph.map b/html/classcore_1_1TCPSession2__coll__graph.map deleted file mode 100644 index b1f9008..0000000 --- a/html/classcore_1_1TCPSession2__coll__graph.map +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/html/classcore_1_1TCPSession2__coll__graph.md5 b/html/classcore_1_1TCPSession2__coll__graph.md5 deleted file mode 100644 index dba19e7..0000000 --- a/html/classcore_1_1TCPSession2__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -19364e83a43ab4ba592b0312977d0505 \ No newline at end of file diff --git a/html/classcore_1_1TCPSession2__coll__graph.png b/html/classcore_1_1TCPSession2__coll__graph.png deleted file mode 100644 index 83e485c..0000000 Binary files a/html/classcore_1_1TCPSession2__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1TCPSession2__inherit__graph.map b/html/classcore_1_1TCPSession2__inherit__graph.map deleted file mode 100644 index 57bef83..0000000 --- a/html/classcore_1_1TCPSession2__inherit__graph.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/html/classcore_1_1TCPSession2__inherit__graph.md5 b/html/classcore_1_1TCPSession2__inherit__graph.md5 deleted file mode 100644 index a615e73..0000000 --- a/html/classcore_1_1TCPSession2__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -fa41fc1bb3bcdfffb80d976d2d6400db \ No newline at end of file diff --git a/html/classcore_1_1TCPSession2__inherit__graph.png b/html/classcore_1_1TCPSession2__inherit__graph.png deleted file mode 100644 index 53d19a1..0000000 Binary files a/html/classcore_1_1TCPSession2__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1TCPSession__coll__graph.map b/html/classcore_1_1TCPSession__coll__graph.map deleted file mode 100644 index 0db6433..0000000 --- a/html/classcore_1_1TCPSession__coll__graph.map +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/html/classcore_1_1TCPSession__coll__graph.md5 b/html/classcore_1_1TCPSession__coll__graph.md5 deleted file mode 100644 index 676e7e1..0000000 --- a/html/classcore_1_1TCPSession__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -91f57454593efc08e12cda9660f2df52 \ No newline at end of file diff --git a/html/classcore_1_1TCPSession__coll__graph.png b/html/classcore_1_1TCPSession__coll__graph.png deleted file mode 100644 index 0719de0..0000000 Binary files a/html/classcore_1_1TCPSession__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1TCPSession__inherit__graph.map b/html/classcore_1_1TCPSession__inherit__graph.map deleted file mode 100644 index 90087bd..0000000 --- a/html/classcore_1_1TCPSession__inherit__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/html/classcore_1_1TCPSession__inherit__graph.md5 b/html/classcore_1_1TCPSession__inherit__graph.md5 deleted file mode 100644 index 96bbb72..0000000 --- a/html/classcore_1_1TCPSession__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -39b44b8ff3d3a261df40d4e8e510c5ac \ No newline at end of file diff --git a/html/classcore_1_1TCPSession__inherit__graph.png b/html/classcore_1_1TCPSession__inherit__graph.png deleted file mode 100644 index 1615f7b..0000000 Binary files a/html/classcore_1_1TCPSession__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1TCPSocket-members.html b/html/classcore_1_1TCPSocket-members.html deleted file mode 100644 index e7c11c2..0000000 --- a/html/classcore_1_1TCPSocket-members.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::TCPSocket Member List
-
-
- -

This is the complete list of members for core::TCPSocket, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
ipAddress (defined in core::TCPSocket)core::TCPSocket
needsToWrite() (defined in core::Socket)core::Socket
onDataReceived(std::string data)core::Socketprotectedvirtual
onDataReceived(coreutils::ZString &data) (defined in core::Socket)core::Socketprotectedvirtual
onRegister()core::Socketvirtual
onRegistered()core::Socketvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
output(std::stringstream &out)core::TCPSocketvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
reset (defined in core::Socket)core::Socket
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutDown (defined in core::Socket)core::Socket
shutdown(std::string text="unknown")core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
- - - - diff --git a/html/classcore_1_1TCPSocket.html b/html/classcore_1_1TCPSocket.html deleted file mode 100644 index 64eb360..0000000 --- a/html/classcore_1_1TCPSocket.html +++ /dev/null @@ -1,249 +0,0 @@ - - - - - - - -My Project: core::TCPSocket Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -List of all members
-
-
core::TCPSocket Class Reference
-
-
- -

#include <TCPSocket.h>

-
-Inheritance diagram for core::TCPSocket:
-
-
Inheritance graph
- - - - - - - - - - - - -
[legend]
-
-Collaboration diagram for core::TCPSocket:
-
-
Collaboration graph
- - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
virtual void output (std::stringstream &out)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onRegistered ()
 Called after the socket has been registered with epoll processing.
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - -

-Public Attributes

-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- - - - - - - - - - - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
virtual void onDataReceived (std::string data)
 Called when data is received from the socket. More...
 
-virtual void onDataReceived (coreutils::ZString &data)
 
virtual void receiveData (coreutils::ZString &buffer)
 
- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Detailed Description

-

TCPSocket

-

Provides a network TCP socket.

-

For accessing TCP network functions use this object. The connection oriented nature of TCP provides a single client persistent connection with data error correction and a durable synchronous data connection.

-

Member Function Documentation

- -

◆ output()

- -
-
- - - - - -
- - - - - - - - -
void core::TCPSocket::output (std::stringstream & out)
-
-virtual
-
-

The output method is called by a socket session (TCPSession) and will output the detail information for the client socket. When extending BMATCPSocket or BMASession you can override the method to add attributes to the list.

- -

Reimplemented in core::TLSSession, core::TCPServer, core::TCPSession2, and core::TCPSession.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1TCPSocket__coll__graph.map b/html/classcore_1_1TCPSocket__coll__graph.map deleted file mode 100644 index 1ef8ff7..0000000 --- a/html/classcore_1_1TCPSocket__coll__graph.map +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - - - diff --git a/html/classcore_1_1TCPSocket__coll__graph.md5 b/html/classcore_1_1TCPSocket__coll__graph.md5 deleted file mode 100644 index a957225..0000000 --- a/html/classcore_1_1TCPSocket__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -09a4e1b2bc983192b12dee427b95649c \ No newline at end of file diff --git a/html/classcore_1_1TCPSocket__coll__graph.png b/html/classcore_1_1TCPSocket__coll__graph.png deleted file mode 100644 index b934430..0000000 Binary files a/html/classcore_1_1TCPSocket__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1TCPSocket__inherit__graph.map b/html/classcore_1_1TCPSocket__inherit__graph.map deleted file mode 100644 index 0d0890b..0000000 --- a/html/classcore_1_1TCPSocket__inherit__graph.map +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - - - - - diff --git a/html/classcore_1_1TCPSocket__inherit__graph.md5 b/html/classcore_1_1TCPSocket__inherit__graph.md5 deleted file mode 100644 index 8898e9a..0000000 --- a/html/classcore_1_1TCPSocket__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -a3f0cc10e1369a50e7562354f8e829d7 \ No newline at end of file diff --git a/html/classcore_1_1TCPSocket__inherit__graph.png b/html/classcore_1_1TCPSocket__inherit__graph.png deleted file mode 100644 index 818c99f..0000000 Binary files a/html/classcore_1_1TCPSocket__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1TLSServer-members.html b/html/classcore_1_1TLSServer-members.html deleted file mode 100644 index b30f49c..0000000 --- a/html/classcore_1_1TLSServer-members.html +++ /dev/null @@ -1,129 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::TLSServer Member List
-
-
- -

This is the complete list of members for core::TLSServer, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
blackListcore::TCPServer
commandscore::TCPServer
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
ctx (defined in core::TLSServer)core::TLSServer
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
getSessionByAlias(void *alias)core::TCPServer
getSocketAccept() (defined in core::TLSServer)core::TLSServer
core::TCPServer::getSocketAccept(EPoll &epoll)core::TCPServervirtual
ipAddress (defined in core::TCPSocket)core::TCPSocket
needsToWrite() (defined in core::Socket)core::Socket
onDataReceived(std::string data) overridecore::TCPServerprotectedvirtual
onDataReceived(coreutils::ZString &data) (defined in core::Socket)core::Socketprotectedvirtual
onRegister()core::Socketvirtual
onRegistered()core::Socketvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
output(std::stringstream &out)core::TCPServervirtual
processCommand(coreutils::ZString &request, TCPSession &session) overridecore::TCPServerprotectedvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
removeFromSessionList(TCPSession *session) (defined in core::TCPServer)core::TCPServer
reset (defined in core::Socket)core::Socket
sendToAll(std::stringstream &out) (defined in core::TCPServer)core::TCPServer
sendToAll(std::stringstream &out, TCPSession &sender, SessionFilter filter)core::TCPServer
sendToAll(std::stringstream &out, TCPSession &sender)core::TCPServer
sessionErrorHandler(std::string errorString, std::stringstream &out) (defined in core::TCPServer)core::TCPServervirtual
sessionscore::TCPServer
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutDown (defined in core::Socket)core::Socket
shutdown(std::string text="unknown")core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
subscriptionscore::TCPServer
TCPServer(EPoll &ePoll, IPAddress address, std::string delimiter=" ", int depth=10, std::string text="")core::TCPServer
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
TLSServer(EPoll &ePoll, IPAddress address)core::TLSServer
whiteListcore::TCPServer
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~TCPServer()core::TCPServervirtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
~TLSServer()core::TLSServer
- - - - diff --git a/html/classcore_1_1TLSServer.html b/html/classcore_1_1TLSServer.html deleted file mode 100644 index 3091a1a..0000000 --- a/html/classcore_1_1TLSServer.html +++ /dev/null @@ -1,326 +0,0 @@ - - - - - - - -My Project: core::TLSServer Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Public Attributes | -List of all members
-
-
core::TLSServer Class Reference
-
-
- -

#include <TLSServer.h>

-
-Inheritance diagram for core::TLSServer:
-
-
Inheritance graph
- - - - - - - -
[legend]
-
-Collaboration diagram for core::TLSServer:
-
-
Collaboration graph
- - - - - - - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 TLSServer (EPoll &ePoll, IPAddress address)
 
 ~TLSServer ()
 
-TCPSessiongetSocketAccept ()
 
- Public Member Functions inherited from core::TCPServer
 TCPServer (EPoll &ePoll, IPAddress address, std::string delimiter=" ", int depth=10, std::string text="")
 
virtual ~TCPServer ()
 
-virtual void sessionErrorHandler (std::string errorString, std::stringstream &out)
 
virtual TCPSessiongetSocketAccept (EPoll &epoll)
 
-void removeFromSessionList (TCPSession *session)
 
-void output (std::stringstream &out)
 Output the consoles array to the console.
 
-void sendToAll (std::stringstream &out)
 
void sendToAll (std::stringstream &out, TCPSession &sender, SessionFilter filter)
 
void sendToAll (std::stringstream &out, TCPSession &sender)
 
TCPSessiongetSessionByAlias (void *alias)
 
- Public Member Functions inherited from core::TCPSocket
TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onRegistered ()
 Called after the socket has been registered with epoll processing.
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - - - - - - - - - - -

-Public Attributes

-SSL_CTX * ctx
 
- Public Attributes inherited from core::TCPServer
std::vector< TCPSession * > sessions
 
CommandList commands
 
IPAddressListblackList
 
IPAddressListwhiteList
 
SubscriptionManager subscriptions
 
- Public Attributes inherited from core::TCPSocket
-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- - - - - - - - - - - - - - - - - - -

-Additional Inherited Members

- Protected Member Functions inherited from core::TCPServer
void onDataReceived (std::string data) override
 
int processCommand (coreutils::ZString &request, TCPSession &session) override
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
-virtual void onDataReceived (coreutils::ZString &data)
 
virtual void receiveData (coreutils::ZString &buffer)
 
- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Detailed Description

-

TLSServer

-

Manage a socket connection as a TLS server type. Connections to the socket are processed through the accept functionality.

-

Constructor & Destructor Documentation

- -

◆ TLSServer()

- -
-
- - - - - - - - - - - - - - - - - - -
core::TLSServer::TLSServer (EPollePoll,
IPAddress address 
)
-
-

The constructor.

-
Parameters
- - - - - -
ePollthe BMAEPoll instance that manages the socket.
urlthe IP address for the socket to receive connection requests.
portthe port number that the socket will listen on.
commandNamethe name of the command used to invoke the status display for this object.
-
-
-
Returns
the instance of the BMATLSServerSocket.
- -
-
- -

◆ ~TLSServer()

- -
-
- - - - - - - -
core::TLSServer::~TLSServer ()
-
-

The destructor for this object.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1TLSServer__coll__graph.map b/html/classcore_1_1TLSServer__coll__graph.map deleted file mode 100644 index b06a99b..0000000 --- a/html/classcore_1_1TLSServer__coll__graph.map +++ /dev/null @@ -1,14 +0,0 @@ - - - - - - - - - - - - - - diff --git a/html/classcore_1_1TLSServer__coll__graph.md5 b/html/classcore_1_1TLSServer__coll__graph.md5 deleted file mode 100644 index 98ee059..0000000 --- a/html/classcore_1_1TLSServer__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -d31126033c6011706f1ba21826a508b2 \ No newline at end of file diff --git a/html/classcore_1_1TLSServer__coll__graph.png b/html/classcore_1_1TLSServer__coll__graph.png deleted file mode 100644 index 6a82932..0000000 Binary files a/html/classcore_1_1TLSServer__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1TLSServer__inherit__graph.map b/html/classcore_1_1TLSServer__inherit__graph.map deleted file mode 100644 index f7d71d4..0000000 --- a/html/classcore_1_1TLSServer__inherit__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/html/classcore_1_1TLSServer__inherit__graph.md5 b/html/classcore_1_1TLSServer__inherit__graph.md5 deleted file mode 100644 index bc9c99e..0000000 --- a/html/classcore_1_1TLSServer__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -806406ab05637ac4d8f203101668f5ea \ No newline at end of file diff --git a/html/classcore_1_1TLSServer__inherit__graph.png b/html/classcore_1_1TLSServer__inherit__graph.png deleted file mode 100644 index a3ab48e..0000000 Binary files a/html/classcore_1_1TLSServer__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1TLSSession-members.html b/html/classcore_1_1TLSSession-members.html deleted file mode 100644 index 46e2cb6..0000000 --- a/html/classcore_1_1TLSSession-members.html +++ /dev/null @@ -1,128 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::TLSSession Member List
-
-
- -

This is the complete list of members for core::TLSSession, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
aliascore::TCPSession
compareAlias(void *alias) (defined in core::TCPSession)core::TCPSessionvirtual
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
grab (defined in core::TCPSession)core::TCPSession
ipAddress (defined in core::TCPSocket)core::TCPSocket
needsToWrite() (defined in core::Socket)core::Socket
onBlockReceived(coreutils::ZString &block)core::TCPSessionprotectedvirtual
onConnected()core::TCPSessionprotectedvirtual
onDataReceived(coreutils::ZString &data) overridecore::TCPSessionprotectedvirtual
core::TCPSocket::onDataReceived(std::string data)core::Socketprotectedvirtual
onLineReceived(coreutils::ZString &line)core::TCPSessionprotectedvirtual
onRegister()core::TLSSessionprotectedvirtual
onRegistered()core::TLSSessionprotectedvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
outcore::TCPSession
output(std::stringstream &out)core::TLSSessionvirtual
outputAlias(std::stringstream &out) (defined in core::TCPSession)core::TCPSessionvirtual
protocol(coreutils::ZString &data) overridecore::TLSSessionvirtual
receiveData(coreutils::ZString &buffer) overridecore::TLSSessionprotectedvirtual
reset (defined in core::Socket)core::Socket
send()core::TCPSession
server (defined in core::TCPSession)core::TCPSession
setBlockSize(int size=0)core::TCPSessionprotected
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutDown (defined in core::Socket)core::Socket
shutdown(std::string text="unknown")core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
TCPSession(EPoll &ePoll, TCPServer &server, std::string text="") (defined in core::TCPSession)core::TCPSession
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
terminate()core::TCPSession
TLSSession(EPoll &ePoll, TCPServer &server) (defined in core::TLSSession)core::TLSSession
uuidcore::TCPSession
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~TCPSession() (defined in core::TCPSession)core::TCPSessionvirtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
~TLSSession() (defined in core::TLSSession)core::TLSSession
- - - - diff --git a/html/classcore_1_1TLSSession.html b/html/classcore_1_1TLSSession.html deleted file mode 100644 index b6c153b..0000000 --- a/html/classcore_1_1TLSSession.html +++ /dev/null @@ -1,381 +0,0 @@ - - - - - - - -My Project: core::TLSSession Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Protected Member Functions | -List of all members
-
-
core::TLSSession Class Reference
-
-
- -

#include <TLSSession.h>

-
-Inheritance diagram for core::TLSSession:
-
-
Inheritance graph
- - - - - - -
[legend]
-
-Collaboration diagram for core::TLSSession:
-
-
Collaboration graph
- - - - - - - - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

TLSSession (EPoll &ePoll, TCPServer &server)
 
virtual void output (std::stringstream &out)
 
virtual void protocol (coreutils::ZString &data) override
 
- Public Member Functions inherited from core::TCPSession
TCPSession (EPoll &ePoll, TCPServer &server, std::string text="")
 
void send ()
 
void terminate ()
 
-virtual bool compareAlias (void *alias)
 
-virtual void outputAlias (std::stringstream &out)
 
- Public Member Functions inherited from core::TCPSocket
TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Protected Member Functions

void receiveData (coreutils::ZString &buffer) override
 
void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-void onRegistered ()
 Called after the socket has been registered with epoll processing.
 
- Protected Member Functions inherited from core::TCPSession
virtual void onDataReceived (coreutils::ZString &data) override
 
virtual void onLineReceived (coreutils::ZString &line)
 
virtual void onBlockReceived (coreutils::ZString &block)
 
virtual void onConnected ()
 
void setBlockSize (int size=0)
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
virtual void onDataReceived (std::string data)
 Called when data is received from the socket. More...
 
- - - - - - - - - - - - - - - - - - - - - - - -

-Additional Inherited Members

- Public Attributes inherited from core::TCPSession
-Commandgrab = NULL
 
-TCPServerserver
 
std::stringstream out
 
char uuid [37]
 
void * alias
 
- Public Attributes inherited from core::TCPSocket
-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Detailed Description

-

TLSSession

-

Provides a network TLS socket.

-

For accessing TLS network functions use this object. The connection oriented nature of TLS provides a single client persistent connection with data error correction and a durable synchronous data connection.

-

Member Function Documentation

- -

◆ onRegister()

- -
-
- - - - - -
- - - - - - - -
void core::TLSSession::onRegister ()
-
-protectedvirtual
-
- -

Called before the socket has registered with the epoll processing.

-

The onRegister method is called before the socket is registered with ePoll so objects extending the Socket definition can initialize the socket before receiving events. Evoked when the descriptor is set using setDescriptor for the socket.

- -

Reimplemented from core::Socket.

- -
-
- -

◆ output()

- -
-
- - - - - -
- - - - - - - - -
void core::TLSSession::output (std::stringstream & out)
-
-virtual
-
-

The output method is called by a socket session (Session) and will output the detail information for the client socket. When extending TLSSocket or Session you can override the method to add attributes to the list.

- -

Reimplemented from core::TCPSession.

- -
-
- -

◆ protocol()

- -
-
- - - - - -
- - - - - - - - -
void core::TLSSession::protocol (coreutils::ZString & data)
-
-overridevirtual
-
-

Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the 'commands' added to the server object using the processRequest method on the session input.

-

When data is received within the session two modes are available to pass the data through the protocol method: LINE or BLOCK.

- -

Reimplemented from core::TCPSession.

- -
-
- -

◆ receiveData()

- -
-
- - - - - -
- - - - - - - - -
void core::TLSSession::receiveData (coreutils::ZString & buffer)
-
-overrideprotectedvirtual
-
-

receiveData will read the data from the socket and place it in the socket buffer. TLS layer overrides this to be able to read from SSL.

- -

Reimplemented from core::Socket.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1TLSSession__coll__graph.map b/html/classcore_1_1TLSSession__coll__graph.map deleted file mode 100644 index 4899fdc..0000000 --- a/html/classcore_1_1TLSSession__coll__graph.map +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/html/classcore_1_1TLSSession__coll__graph.md5 b/html/classcore_1_1TLSSession__coll__graph.md5 deleted file mode 100644 index 5fff15e..0000000 --- a/html/classcore_1_1TLSSession__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -e8ed3c7bcb4cb11d447e6c236b863068 \ No newline at end of file diff --git a/html/classcore_1_1TLSSession__coll__graph.png b/html/classcore_1_1TLSSession__coll__graph.png deleted file mode 100644 index 6e62194..0000000 Binary files a/html/classcore_1_1TLSSession__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1TLSSession__inherit__graph.map b/html/classcore_1_1TLSSession__inherit__graph.map deleted file mode 100644 index e71c9c1..0000000 --- a/html/classcore_1_1TLSSession__inherit__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/html/classcore_1_1TLSSession__inherit__graph.md5 b/html/classcore_1_1TLSSession__inherit__graph.md5 deleted file mode 100644 index 269f8b1..0000000 --- a/html/classcore_1_1TLSSession__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -1a17344686e47104422238aeef1c3bfd \ No newline at end of file diff --git a/html/classcore_1_1TLSSession__inherit__graph.png b/html/classcore_1_1TLSSession__inherit__graph.png deleted file mode 100644 index 30f9f08..0000000 Binary files a/html/classcore_1_1TLSSession__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1TerminalSession-members.html b/html/classcore_1_1TerminalSession-members.html deleted file mode 100644 index 76a807f..0000000 --- a/html/classcore_1_1TerminalSession-members.html +++ /dev/null @@ -1,139 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::TerminalSession Member List
-
-
- -

This is the complete list of members for core::TerminalSession, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
aliascore::TCPSession
clear()core::TerminalSession
clearEOL()core::TerminalSession
compareAlias(void *alias) (defined in core::TCPSession)core::TCPSessionvirtual
connect(IPAddress &address) (defined in core::TCPSocket)core::TCPSocket
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
getLines() (defined in core::TerminalSession)core::TerminalSession
grab (defined in core::TCPSession)core::TCPSession
ipAddress (defined in core::TCPSocket)core::TCPSocket
needsToWrite() (defined in core::Socket)core::Socket
NextLine(int lines) (defined in core::TerminalSession)core::TerminalSession
onBlockReceived(coreutils::ZString &block)core::TCPSessionprotectedvirtual
onConnected()core::TCPSessionprotectedvirtual
onDataReceived(coreutils::ZString &data) overridecore::TCPSessionprotectedvirtual
core::TCPSocket::onDataReceived(std::string data)core::Socketprotectedvirtual
onLineReceived(coreutils::ZString &line)core::TCPSessionprotectedvirtual
onRegister()core::Socketvirtual
onRegistered() overridecore::TCPSessionprotectedvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
outcore::TCPSession
output(std::stringstream &data)core::TCPSessionvirtual
outputAlias(std::stringstream &out) (defined in core::TCPSession)core::TCPSessionvirtual
PreviousLine(int lines) (defined in core::TerminalSession)core::TerminalSession
protocol(coreutils::ZString &data)core::TCPSessionprotectedvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
reset (defined in core::Socket)core::Socket
restoreCursor() (defined in core::TerminalSession)core::TerminalSession
saveCursor() (defined in core::TerminalSession)core::TerminalSession
scrollArea(int start, int end) (defined in core::TerminalSession)core::TerminalSession
send()core::TCPSession
server (defined in core::TCPSession)core::TCPSession
setBackColor(int color) (defined in core::TerminalSession)core::TerminalSession
setBlockSize(int size=0)core::TCPSessionprotected
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setColor(int color) (defined in core::TerminalSession)core::TerminalSession
setCursorLocation(int x, int y)core::TerminalSession
setDescriptor(int descriptor)core::Socket
shutDown (defined in core::Socket)core::Socket
shutdown(std::string text="unknown")core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
TCPSession(EPoll &ePoll, TCPServer &server, std::string text="") (defined in core::TCPSession)core::TCPSession
TCPSocket(EPoll &ePoll) (defined in core::TCPSocket)core::TCPSocket
TCPSocket(EPoll &ePoll, std::string text) (defined in core::TCPSocket)core::TCPSocket
TerminalSession(EPoll &ePoll, TCPServer &server) (defined in core::TerminalSession)core::TerminalSession
terminate()core::TCPSession
uuidcore::TCPSession
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~TCPSession() (defined in core::TCPSession)core::TCPSessionvirtual
~TCPSocket() (defined in core::TCPSocket)core::TCPSocketvirtual
~TerminalSession() (defined in core::TerminalSession)core::TerminalSession
- - - - diff --git a/html/classcore_1_1TerminalSession.html b/html/classcore_1_1TerminalSession.html deleted file mode 100644 index e296804..0000000 --- a/html/classcore_1_1TerminalSession.html +++ /dev/null @@ -1,349 +0,0 @@ - - - - - - - -My Project: core::TerminalSession Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::TerminalSession Class Reference
-
-
-
-Inheritance diagram for core::TerminalSession:
-
-
Inheritance graph
- - - - - - - -
[legend]
-
-Collaboration diagram for core::TerminalSession:
-
-
Collaboration graph
- - - - - - - - - - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

TerminalSession (EPoll &ePoll, TCPServer &server)
 
-int getLines ()
 
void clear ()
 
void clearEOL ()
 
void setCursorLocation (int x, int y)
 
-void setColor (int color)
 
-void setBackColor (int color)
 
-void saveCursor ()
 
-void restoreCursor ()
 
-void NextLine (int lines)
 
-void PreviousLine (int lines)
 
-void scrollArea (int start, int end)
 
- Public Member Functions inherited from core::TCPSession
TCPSession (EPoll &ePoll, TCPServer &server, std::string text="")
 
virtual void output (std::stringstream &data)
 
void send ()
 
void terminate ()
 
-virtual bool compareAlias (void *alias)
 
-virtual void outputAlias (std::stringstream &out)
 
- Public Member Functions inherited from core::TCPSocket
TCPSocket (EPoll &ePoll)
 
TCPSocket (EPoll &ePoll, std::string text)
 
-void connect (IPAddress &address)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Additional Inherited Members

- Public Attributes inherited from core::TCPSession
-Commandgrab = NULL
 
-TCPServerserver
 
std::stringstream out
 
char uuid [37]
 
void * alias
 
- Public Attributes inherited from core::TCPSocket
-IPAddress ipAddress
 
- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- Protected Member Functions inherited from core::TCPSession
-virtual void onRegistered () override
 Called after the socket has been registered with epoll processing.
 
virtual void onDataReceived (coreutils::ZString &data) override
 
virtual void onLineReceived (coreutils::ZString &line)
 
virtual void onBlockReceived (coreutils::ZString &block)
 
virtual void onConnected ()
 
virtual void protocol (coreutils::ZString &data)
 
void setBlockSize (int size=0)
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
virtual void onDataReceived (std::string data)
 Called when data is received from the socket. More...
 
virtual void receiveData (coreutils::ZString &buffer)
 
- Protected Attributes inherited from core::Socket
-EPollePoll
 
-

Member Function Documentation

- -

◆ clear()

- -
-
- - - - - - - -
void core::TerminalSession::clear ()
-
-

Clear the display.

- -
-
- -

◆ clearEOL()

- -
-
- - - - - - - -
void core::TerminalSession::clearEOL ()
-
-

Clear the display from the cursor to the end of line.

- -
-
- -

◆ setCursorLocation()

- -
-
- - - - - - - - - - - - - - - - - - -
void core::TerminalSession::setCursorLocation (int x,
int y 
)
-
-

Set the location of the cursor on the display.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1TerminalSession__coll__graph.map b/html/classcore_1_1TerminalSession__coll__graph.map deleted file mode 100644 index c17f2a3..0000000 --- a/html/classcore_1_1TerminalSession__coll__graph.map +++ /dev/null @@ -1,15 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/html/classcore_1_1TerminalSession__coll__graph.md5 b/html/classcore_1_1TerminalSession__coll__graph.md5 deleted file mode 100644 index f755af2..0000000 --- a/html/classcore_1_1TerminalSession__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -cd1348275ab29cdfd481224ca50046fe \ No newline at end of file diff --git a/html/classcore_1_1TerminalSession__coll__graph.png b/html/classcore_1_1TerminalSession__coll__graph.png deleted file mode 100644 index 65e702d..0000000 Binary files a/html/classcore_1_1TerminalSession__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1TerminalSession__inherit__graph.map b/html/classcore_1_1TerminalSession__inherit__graph.map deleted file mode 100644 index 40bafaa..0000000 --- a/html/classcore_1_1TerminalSession__inherit__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/html/classcore_1_1TerminalSession__inherit__graph.md5 b/html/classcore_1_1TerminalSession__inherit__graph.md5 deleted file mode 100644 index e4ed190..0000000 --- a/html/classcore_1_1TerminalSession__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -0730fba17781b9d63883ed05bfb4ca31 \ No newline at end of file diff --git a/html/classcore_1_1TerminalSession__inherit__graph.png b/html/classcore_1_1TerminalSession__inherit__graph.png deleted file mode 100644 index 9037b94..0000000 Binary files a/html/classcore_1_1TerminalSession__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1Thread-members.html b/html/classcore_1_1Thread-members.html deleted file mode 100644 index 8fb9c0b..0000000 --- a/html/classcore_1_1Thread-members.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::Thread Member List
-
-
- -

This is the complete list of members for core::Thread, including all inherited members.

- - - - - - - - - - - - -
getCount() (defined in core::Thread)core::Thread
getStatus() (defined in core::Thread)core::Thread
getThreadId() (defined in core::Thread)core::Thread
join() (defined in core::Thread)core::Thread
name (defined in core::Object)core::Object
output(std::stringstream &data) (defined in core::Thread)core::Thread
start()core::Thread
tag (defined in core::Object)core::Object
Thread(EPoll &ePoll) (defined in core::Thread)core::Thread
Thread(EPoll &ePoll, ThreadScope *thread) (defined in core::Thread)core::Thread
~Thread() (defined in core::Thread)core::Thread
- - - - diff --git a/html/classcore_1_1Thread.html b/html/classcore_1_1Thread.html deleted file mode 100644 index 9dff38a..0000000 --- a/html/classcore_1_1Thread.html +++ /dev/null @@ -1,164 +0,0 @@ - - - - - - - -My Project: core::Thread Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::Thread Class Reference
-
-
- -

#include <Thread.h>

-
-Inheritance diagram for core::Thread:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for core::Thread:
-
-
Collaboration graph
- - - - -
[legend]
- - - - - - - - - - - - - - - - - - -

-Public Member Functions

Thread (EPoll &ePoll)
 
Thread (EPoll &ePoll, ThreadScope *thread)
 
void start ()
 
-void join ()
 
-std::string getStatus ()
 
-pid_t getThreadId ()
 
-int getCount ()
 
-void output (std::stringstream &data)
 
- - - - - - -

-Additional Inherited Members

- Public Attributes inherited from core::Object
-std::string name
 
-std::string tag
 
-

Detailed Description

-

Thread

-

This thread object is designed to be the thread processor for the EPoll object. It wraps the thread object to allow maintaining a status value for monitoring the thread activity. EPoll will instantiate a Thread object for each thread specified in the EPoll's start method.

-

Member Function Documentation

- -

◆ start()

- -
-
- - - - - - - -
void core::Thread::start ()
-
-

Start the thread object. This will cause the epoll scheduler to commence reading the epoll queue.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1ThreadScope-members.html b/html/classcore_1_1ThreadScope-members.html deleted file mode 100644 index 2bb2fb6..0000000 --- a/html/classcore_1_1ThreadScope-members.html +++ /dev/null @@ -1,82 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::ThreadScope Member List
-
-
- -

This is the complete list of members for core::ThreadScope, including all inherited members.

- - -
ThreadScope() (defined in core::ThreadScope)core::ThreadScopeinline
- - - - diff --git a/html/classcore_1_1ThreadScope.html b/html/classcore_1_1ThreadScope.html deleted file mode 100644 index 1304ea1..0000000 --- a/html/classcore_1_1ThreadScope.html +++ /dev/null @@ -1,83 +0,0 @@ - - - - - - - -My Project: core::ThreadScope Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-List of all members
-
-
core::ThreadScope Class Reference
-
-
-
The documentation for this class was generated from the following file: -
- - - - diff --git a/html/classcore_1_1Thread__coll__graph.map b/html/classcore_1_1Thread__coll__graph.map deleted file mode 100644 index 902928c..0000000 --- a/html/classcore_1_1Thread__coll__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1Thread__coll__graph.md5 b/html/classcore_1_1Thread__coll__graph.md5 deleted file mode 100644 index 4a0cc87..0000000 --- a/html/classcore_1_1Thread__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -7b27e6318b467af3b1df84944c1d56f9 \ No newline at end of file diff --git a/html/classcore_1_1Thread__coll__graph.png b/html/classcore_1_1Thread__coll__graph.png deleted file mode 100644 index a87930b..0000000 Binary files a/html/classcore_1_1Thread__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1Thread__inherit__graph.map b/html/classcore_1_1Thread__inherit__graph.map deleted file mode 100644 index 902928c..0000000 --- a/html/classcore_1_1Thread__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1Thread__inherit__graph.md5 b/html/classcore_1_1Thread__inherit__graph.md5 deleted file mode 100644 index 4a0cc87..0000000 --- a/html/classcore_1_1Thread__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -7b27e6318b467af3b1df84944c1d56f9 \ No newline at end of file diff --git a/html/classcore_1_1Thread__inherit__graph.png b/html/classcore_1_1Thread__inherit__graph.png deleted file mode 100644 index a87930b..0000000 Binary files a/html/classcore_1_1Thread__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1Timer-members.html b/html/classcore_1_1Timer-members.html deleted file mode 100644 index d71eb6d..0000000 --- a/html/classcore_1_1Timer-members.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::Timer Member List
-
-
- -

This is the complete list of members for core::Timer, including all inherited members.

- - - - - - - - - - -
clearTimer()core::Timer
getElapsed()core::Timer
getEpoch() (defined in core::Timer)core::Timer
onDataReceived(coreutils::ZString &data) (defined in core::Socket)core::Socketprivatevirtual
onTimeout()=0core::Timerprotectedpure virtual
setTimer(double delay)core::Timer
Timer(EPoll &ePoll) (defined in core::Timer)core::Timer
Timer(EPoll &ePoll, double delay) (defined in core::Timer)core::Timer
~Timer() (defined in core::Timer)core::Timer
- - - - diff --git a/html/classcore_1_1Timer.html b/html/classcore_1_1Timer.html deleted file mode 100644 index 37e1526..0000000 --- a/html/classcore_1_1Timer.html +++ /dev/null @@ -1,224 +0,0 @@ - - - - - - - -My Project: core::Timer Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Protected Member Functions | -List of all members
-
-
core::Timer Class Referenceabstract
-
-
- -

#include <Timer.h>

-
-Inheritance diagram for core::Timer:
-
-
Inheritance graph
- - - - -
[legend]
-
-Collaboration diagram for core::Timer:
-
-
Collaboration graph
- - - - - - -
[legend]
- - - - - - - - - - - - - - -

-Public Member Functions

Timer (EPoll &ePoll)
 
Timer (EPoll &ePoll, double delay)
 
void setTimer (double delay)
 
void clearTimer ()
 
double getElapsed ()
 
-double getEpoch ()
 
- - - -

-Protected Member Functions

virtual void onTimeout ()=0
 
-

Detailed Description

-

Timer

-

Set and trigger callback upon specified timeout.

-

The Timer is used to establish a timer using the timer socket interface. It cannot be instantiated directly but must be extended.

-

Member Function Documentation

- -

◆ clearTimer()

- -
-
- - - - - - - -
void core::Timer::clearTimer ()
-
-

Use the clearTimer() to unset the timer and return the timer to an idle state.

- -
-
- -

◆ getElapsed()

- -
-
- - - - - - - -
double core::Timer::getElapsed ()
-
-

Use the getElapsed() method to obtain the amount of time that has elapsed since the timer was set.

- -
-
- -

◆ onTimeout()

- -
-
- - - - - -
- - - - - - - -
virtual void core::Timer::onTimeout ()
-
-protectedpure virtual
-
-

This method is called when the time out occurs.

- -
-
- -

◆ setTimer()

- -
-
- - - - - - - - -
void core::Timer::setTimer (double delay)
-
-

Use the setTimer() method to set the time out value for timer. Setting the timer also starts the timer countdown. The clearTimer() method can be used to reset the timer without triggering the onTimeout() callback.

-
Parameters
- - -
delaythe amount of time in seconds to wait before trigering the onTimeout function.
-
-
- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1Timer__coll__graph.map b/html/classcore_1_1Timer__coll__graph.map deleted file mode 100644 index 7a68e6d..0000000 --- a/html/classcore_1_1Timer__coll__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/html/classcore_1_1Timer__coll__graph.md5 b/html/classcore_1_1Timer__coll__graph.md5 deleted file mode 100644 index caa7ab9..0000000 --- a/html/classcore_1_1Timer__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -78d90d95e4a8b85df71667f892d3425f \ No newline at end of file diff --git a/html/classcore_1_1Timer__coll__graph.png b/html/classcore_1_1Timer__coll__graph.png deleted file mode 100644 index bdb0746..0000000 Binary files a/html/classcore_1_1Timer__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1Timer__inherit__graph.map b/html/classcore_1_1Timer__inherit__graph.map deleted file mode 100644 index 0bf826e..0000000 --- a/html/classcore_1_1Timer__inherit__graph.map +++ /dev/null @@ -1,4 +0,0 @@ - - - - diff --git a/html/classcore_1_1Timer__inherit__graph.md5 b/html/classcore_1_1Timer__inherit__graph.md5 deleted file mode 100644 index 0f52868..0000000 --- a/html/classcore_1_1Timer__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -64e9d85be9082e6c2d3ed33b1e5faab9 \ No newline at end of file diff --git a/html/classcore_1_1Timer__inherit__graph.png b/html/classcore_1_1Timer__inherit__graph.png deleted file mode 100644 index f7de0c0..0000000 Binary files a/html/classcore_1_1Timer__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1UDPServerSocket-members.html b/html/classcore_1_1UDPServerSocket-members.html deleted file mode 100644 index e813a91..0000000 --- a/html/classcore_1_1UDPServerSocket-members.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::UDPServerSocket Member List
-
-
- -

This is the complete list of members for core::UDPServerSocket, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
needsToWrite() (defined in core::Socket)core::Socket
onDataReceived(std::string data) overridecore::UDPServerSocketprotectedvirtual
onDataReceived(coreutils::ZString &data) (defined in core::Socket)core::Socketprotectedvirtual
onRegister()core::Socketvirtual
onRegistered()core::Socketvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
output(std::stringstream &out) (defined in core::Socket)core::Socket
core::Command::output(std::stringstream &out)core::Commandvirtual
processCommand(std::string request, std::stringstream &data) (defined in core::UDPServerSocket)core::UDPServerSocketprotected
core::Command::processCommand(coreutils::ZString &request, TCPSession &session)core::Commandvirtual
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
reset (defined in core::Socket)core::Socket
sessions (defined in core::UDPServerSocket)core::UDPServerSocketprotected
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutdown(std::string text="unknown")core::Socket
shutDown (defined in core::Socket)core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
UDPServerSocket(EPoll &ePoll, std::string url, short int port, std::string commandName) (defined in core::UDPServerSocket)core::UDPServerSocket
UDPSocket(EPoll &ePoll) (defined in core::UDPSocket)core::UDPSocket
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~UDPServerSocket() (defined in core::UDPServerSocket)core::UDPServerSocket
~UDPSocket() (defined in core::UDPSocket)core::UDPSocket
- - - - diff --git a/html/classcore_1_1UDPServerSocket.html b/html/classcore_1_1UDPServerSocket.html deleted file mode 100644 index ab87f00..0000000 --- a/html/classcore_1_1UDPServerSocket.html +++ /dev/null @@ -1,257 +0,0 @@ - - - - - - - -My Project: core::UDPServerSocket Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -Protected Member Functions | -Protected Attributes | -List of all members
-
-
core::UDPServerSocket Class Reference
-
-
- -

#include <UDPServerSocket.h>

-
-Inheritance diagram for core::UDPServerSocket:
-
-
Inheritance graph
- - - - - - -
[legend]
-
-Collaboration diagram for core::UDPServerSocket:
-
-
Collaboration graph
- - - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

UDPServerSocket (EPoll &ePoll, std::string url, short int port, std::string commandName)
 
- Public Member Functions inherited from core::UDPSocket
UDPSocket (EPoll &ePoll)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onRegistered ()
 Called after the socket has been registered with epoll processing.
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- Public Member Functions inherited from core::Command
virtual int processCommand (coreutils::ZString &request, TCPSession &session)
 
virtual void output (std::stringstream &out)
 
- - - - - - - - - - - - - - - -

-Protected Member Functions

void onDataReceived (std::string data) override
 Called when data is received from the socket. More...
 
-int processCommand (std::string request, std::stringstream &data)
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
-virtual void onDataReceived (coreutils::ZString &data)
 
virtual void receiveData (coreutils::ZString &buffer)
 
- - - - - - -

-Protected Attributes

-std::vector< Session * > sessions
 
- Protected Attributes inherited from core::Socket
-EPollePoll
 
- - - - - - -

-Additional Inherited Members

- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
-

Detailed Description

-

UDPSocket

-

Manage a socket connection as a UDP server type. Connections to the socket are processed through the session list functionality. A list of sessions is maintained in a vector object.

-

Member Function Documentation

- -

◆ onDataReceived()

- -
-
- - - - - -
- - - - - - - - -
void core::UDPServerSocket::onDataReceived (std::string data)
-
-overrideprotectedvirtual
-
- -

Called when data is received from the socket.

-

The onConnected method is called when the socket is ready to communicate. Writing to the socket can begin on this call to initiate a contact with the remote device. The onDataReceived method is called when the socket has received an event from epoll and there is data ready to be read from the socket. The default handler will pull the data and put it into the streambuf for the socket. EPOLLIN

-
Parameters
- - -
datathe data that has been received from the socket.
-
-
- -

Reimplemented from core::Socket.

- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1UDPServerSocket__coll__graph.map b/html/classcore_1_1UDPServerSocket__coll__graph.map deleted file mode 100644 index fa03037..0000000 --- a/html/classcore_1_1UDPServerSocket__coll__graph.map +++ /dev/null @@ -1,7 +0,0 @@ - - - - - - - diff --git a/html/classcore_1_1UDPServerSocket__coll__graph.md5 b/html/classcore_1_1UDPServerSocket__coll__graph.md5 deleted file mode 100644 index 5937848..0000000 --- a/html/classcore_1_1UDPServerSocket__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -035ad54302d909c4c89d3db4330068a5 \ No newline at end of file diff --git a/html/classcore_1_1UDPServerSocket__coll__graph.png b/html/classcore_1_1UDPServerSocket__coll__graph.png deleted file mode 100644 index b126ca1..0000000 Binary files a/html/classcore_1_1UDPServerSocket__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1UDPServerSocket__inherit__graph.map b/html/classcore_1_1UDPServerSocket__inherit__graph.map deleted file mode 100644 index 50d416a..0000000 --- a/html/classcore_1_1UDPServerSocket__inherit__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/html/classcore_1_1UDPServerSocket__inherit__graph.md5 b/html/classcore_1_1UDPServerSocket__inherit__graph.md5 deleted file mode 100644 index 53eb376..0000000 --- a/html/classcore_1_1UDPServerSocket__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -118e122dd91472e9619b8e9fce36868c \ No newline at end of file diff --git a/html/classcore_1_1UDPServerSocket__inherit__graph.png b/html/classcore_1_1UDPServerSocket__inherit__graph.png deleted file mode 100644 index ae2849d..0000000 Binary files a/html/classcore_1_1UDPServerSocket__inherit__graph.png and /dev/null differ diff --git a/html/classcore_1_1UDPSocket-members.html b/html/classcore_1_1UDPSocket-members.html deleted file mode 100644 index 2a89b4e..0000000 --- a/html/classcore_1_1UDPSocket-members.html +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - -My Project: Member List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
core::UDPSocket Member List
-
-
- -

This is the complete list of members for core::UDPSocket, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - -
disableSocket() (defined in core::Socket)core::Socket
enableSocket() (defined in core::Socket)core::Socket
ePoll (defined in core::Socket)core::Socketprotected
eventReceived(struct epoll_event event, long long eventId)core::Socket
getBufferSize() (defined in core::Socket)core::Socketprotected
getDescriptor()core::Socket
needsToWrite() (defined in core::Socket)core::Socket
onDataReceived(std::string data)core::Socketprotectedvirtual
onDataReceived(coreutils::ZString &data) (defined in core::Socket)core::Socketprotectedvirtual
onRegister()core::Socketvirtual
onRegistered()core::Socketvirtual
onUnregister() (defined in core::Socket)core::Socketvirtual
onUnregistered()core::Socketvirtual
output(std::stringstream &out) (defined in core::Socket)core::Socket
receiveData(coreutils::ZString &buffer)core::Socketprotectedvirtual
reset (defined in core::Socket)core::Socket
setBufferSize(int length) (defined in core::Socket)core::Socketprotected
setDescriptor(int descriptor)core::Socket
shutdown(std::string text="unknown")core::Socket
shutDown (defined in core::Socket)core::Socket
Socket(EPoll &ePoll, std::string text="")core::Socket
UDPSocket(EPoll &ePoll) (defined in core::UDPSocket)core::UDPSocket
write(std::string data)core::Socket
write(char *buffer, int length) (defined in core::Socket)core::Socket
~Socket()core::Socketvirtual
~UDPSocket() (defined in core::UDPSocket)core::UDPSocket
- - - - diff --git a/html/classcore_1_1UDPSocket.html b/html/classcore_1_1UDPSocket.html deleted file mode 100644 index 649ce4f..0000000 --- a/html/classcore_1_1UDPSocket.html +++ /dev/null @@ -1,189 +0,0 @@ - - - - - - - -My Project: core::UDPSocket Class Reference - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Public Member Functions | -List of all members
-
-
core::UDPSocket Class Reference
-
-
-
-Inheritance diagram for core::UDPSocket:
-
-
Inheritance graph
- - - - - -
[legend]
-
-Collaboration diagram for core::UDPSocket:
-
-
Collaboration graph
- - - - - - -
[legend]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

UDPSocket (EPoll &ePoll)
 
- Public Member Functions inherited from core::Socket
 Socket (EPoll &ePoll, std::string text="")
 
virtual ~Socket ()
 
void shutdown (std::string text="unknown")
 
void setDescriptor (int descriptor)
 Set the descriptor for the socket. More...
 
-int getDescriptor ()
 Get the descriptor for the socket.
 
bool eventReceived (struct epoll_event event, long long eventId)
 Parse epoll event and call specified callbacks. More...
 
int write (std::string data)
 
-void write (char *buffer, int length)
 
-void output (std::stringstream &out)
 
virtual void onRegister ()
 Called before the socket has registered with the epoll processing. More...
 
-virtual void onRegistered ()
 Called after the socket has been registered with epoll processing.
 
-virtual void onUnregister ()
 
virtual void onUnregistered ()
 Called when the socket has finished unregistering for the epoll processing. More...
 
-bool needsToWrite ()
 
-void enableSocket ()
 
-void disableSocket ()
 
- - - - - - - - - - - - - - - - - - - - - -

-Additional Inherited Members

- Public Attributes inherited from core::Socket
-bool reset = false
 
-volatile bool shutDown = false
 
- Protected Member Functions inherited from core::Socket
-void setBufferSize (int length)
 
-int getBufferSize ()
 
virtual void onDataReceived (std::string data)
 Called when data is received from the socket. More...
 
-virtual void onDataReceived (coreutils::ZString &data)
 
virtual void receiveData (coreutils::ZString &buffer)
 
- Protected Attributes inherited from core::Socket
-EPollePoll
 
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/html/classcore_1_1UDPSocket__coll__graph.map b/html/classcore_1_1UDPSocket__coll__graph.map deleted file mode 100644 index c9fc2ac..0000000 --- a/html/classcore_1_1UDPSocket__coll__graph.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/html/classcore_1_1UDPSocket__coll__graph.md5 b/html/classcore_1_1UDPSocket__coll__graph.md5 deleted file mode 100644 index e438ab8..0000000 --- a/html/classcore_1_1UDPSocket__coll__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -c3f1eff5f9e23ac18526a5ae94acc1be \ No newline at end of file diff --git a/html/classcore_1_1UDPSocket__coll__graph.png b/html/classcore_1_1UDPSocket__coll__graph.png deleted file mode 100644 index d545d43..0000000 Binary files a/html/classcore_1_1UDPSocket__coll__graph.png and /dev/null differ diff --git a/html/classcore_1_1UDPSocket__inherit__graph.map b/html/classcore_1_1UDPSocket__inherit__graph.map deleted file mode 100644 index 9e3bad0..0000000 --- a/html/classcore_1_1UDPSocket__inherit__graph.map +++ /dev/null @@ -1,5 +0,0 @@ - - - - - diff --git a/html/classcore_1_1UDPSocket__inherit__graph.md5 b/html/classcore_1_1UDPSocket__inherit__graph.md5 deleted file mode 100644 index ac7a468..0000000 --- a/html/classcore_1_1UDPSocket__inherit__graph.md5 +++ /dev/null @@ -1 +0,0 @@ -a322f59af8a5eb543fb07f45ca3ea19e \ No newline at end of file diff --git a/html/classcore_1_1UDPSocket__inherit__graph.png b/html/classcore_1_1UDPSocket__inherit__graph.png deleted file mode 100644 index 5d2cd22..0000000 Binary files a/html/classcore_1_1UDPSocket__inherit__graph.png and /dev/null differ diff --git a/html/classes.html b/html/classes.html deleted file mode 100644 index a5a8e52..0000000 --- a/html/classes.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - -My Project: Class Index - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class Index
-
-
-
C | E | I | O | S | T | U
-
-
-
C
-
Command (core)
CommandList (core)
ConsoleServer (core)
ConsoleSession (core)
-
-
E
-
EPoll (core)
-
-
I
-
INotify (core)
IPAddress (core)
IPAddressList (core)
-
-
O
-
Object (core)
-
-
S
-
SessionFilter (core)
Socket (core)
Subscription (core)
SubscriptionHandler (core)
SubscriptionHandlerFactory (core)
SubscriptionManager (core)
-
-
T
-
TCPServer (core)
TCPSession (core)
TCPSession2 (core)
TCPSocket (core)
TerminalSession (core)
Thread (core)
ThreadScope (core)
Timer (core)
TLSServer (core)
TLSSession (core)
-
-
U
-
UDPServerSocket (core)
UDPSocket (core)
-
-
- - - - diff --git a/html/closed.png b/html/closed.png deleted file mode 100644 index 98cc2c9..0000000 Binary files a/html/closed.png and /dev/null differ diff --git a/html/doc.png b/html/doc.png deleted file mode 100644 index 17edabf..0000000 Binary files a/html/doc.png and /dev/null differ diff --git a/html/doxygen.css b/html/doxygen.css deleted file mode 100644 index ffbff02..0000000 --- a/html/doxygen.css +++ /dev/null @@ -1,1793 +0,0 @@ -/* The standard CSS for doxygen 1.9.1 */ - -body, table, div, p, dl { - font: 400 14px/22px Roboto,sans-serif; -} - -p.reference, p.definition { - font: 400 14px/22px Roboto,sans-serif; -} - -/* @group Heading Levels */ - -h1.groupheader { - font-size: 150%; -} - -.title { - font: 400 14px/28px Roboto,sans-serif; - font-size: 150%; - font-weight: bold; - margin: 10px 2px; -} - -h2.groupheader { - border-bottom: 1px solid #879ECB; - color: #354C7B; - font-size: 150%; - font-weight: normal; - margin-top: 1.75em; - padding-top: 8px; - padding-bottom: 4px; - width: 100%; -} - -h3.groupheader { - font-size: 100%; -} - -h1, h2, h3, h4, h5, h6 { - -webkit-transition: text-shadow 0.5s linear; - -moz-transition: text-shadow 0.5s linear; - -ms-transition: text-shadow 0.5s linear; - -o-transition: text-shadow 0.5s linear; - transition: text-shadow 0.5s linear; - margin-right: 15px; -} - -h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { - text-shadow: 0 0 15px cyan; -} - -dt { - font-weight: bold; -} - -ul.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; - column-count: 3; -} - -p.startli, p.startdd { - margin-top: 2px; -} - -th p.starttd, th p.intertd, th p.endtd { - font-size: 100%; - font-weight: 700; -} - -p.starttd { - margin-top: 0px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -p.interli { -} - -p.interdd { -} - -p.intertd { -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.navtab { - border-right: 1px solid #A3B4D7; - padding-right: 15px; - text-align: right; - line-height: 110%; -} - -div.navtab table { - border-spacing: 0; -} - -td.navtab { - padding-right: 6px; - padding-left: 6px; -} -td.navtabHL { - background-image: url('tab_a.png'); - background-repeat:repeat-x; - padding-right: 6px; - padding-left: 6px; -} - -td.navtabHL a, td.navtabHL a:visited { - color: #fff; - text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); -} - -a.navtab { - font-weight: bold; -} - -div.qindex{ - text-align: center; - width: 100%; - line-height: 140%; - font-size: 130%; - color: #A0A0A0; -} - -dt.alphachar{ - font-size: 180%; - font-weight: bold; -} - -.alphachar a{ - color: black; -} - -.alphachar a:hover, .alphachar a:visited{ - text-decoration: none; -} - -.classindex dl { - padding: 25px; - column-count:1 -} - -.classindex dd { - display:inline-block; - margin-left: 50px; - width: 90%; - line-height: 1.15em; -} - -.classindex dl.odd { - background-color: #F8F9FC; -} - -@media(min-width: 1120px) { - .classindex dl { - column-count:2 - } -} - -@media(min-width: 1320px) { - .classindex dl { - column-count:3 - } -} - - -/* @group Link Styling */ - -a { - color: #3D578C; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #4665A2; -} - -a:hover { - text-decoration: underline; -} - -.contents a.qindexHL:visited { - color: #FFFFFF; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #4665A2; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -ul { - overflow: hidden; /*Fixed: list item bullets overlap floating elements*/ -} - -#side-nav ul { - overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ -} - -#main-nav ul { - overflow: visible; /* reset ul rule for the navigation bar drop down lists */ -} - -.fragment { - text-align: left; - direction: ltr; - overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/ - overflow-y: hidden; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/ - margin: 4px 8px 4px 2px; - background-color: #FBFCFD; - border: 1px solid #C4CFE5; -} - -div.line { - font-family: monospace, fixed; - font-size: 13px; - min-height: 13px; - line-height: 1.0; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: break-word; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -div.line:after { - content:"\000A"; - white-space: pre; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - border-right: 2px solid #0F0; - background-color: #E8E8E8; - white-space: pre; -} -span.lineno a { - background-color: #D8D8D8; -} - -span.lineno a:hover { - background-color: #C8C8C8; -} - -.lineno { - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -div.ah, span.ah { - background-color: black; - font-weight: bold; - color: #FFFFFF; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - box-shadow: 2px 2px 3px #999; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); -} - -div.classindex ul { - list-style: none; - padding-left: 0; -} - -div.classindex span.ai { - display: inline-block; -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background-color: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 12px; - margin-right: 8px; -} - -td.indexkey { - background-color: #EBEFF6; - font-weight: bold; - border: 1px solid #C4CFE5; - margin: 2px 0px 2px 0; - padding: 2px 10px; - white-space: nowrap; - vertical-align: top; -} - -td.indexvalue { - background-color: #EBEFF6; - border: 1px solid #C4CFE5; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #EEF1F7; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl, img.inline { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #F7F8FB; - border-left: 2px solid #9CAFD4; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -blockquote.DocNodeRTL { - border-left: 0; - border-right: 2px solid #9CAFD4; - margin: 0 4px 0 24px; - padding: 0 16px 0 12px; -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #A3B4D7; -} - -th.dirtab { - background: #EBEFF6; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #4A6AAA; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.memberdecls td, .fieldtable tr { - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -.memberdecls td.glow, .fieldtable tr.glow { - background-color: cyan; - box-shadow: 0 0 15px cyan; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F9FAFC; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memSeparator { - border-bottom: 1px solid #DEE4F0; - line-height: 1px; - margin: 0px; - padding: 0px; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memItemRight, .memTemplItemRight { - width: 100%; -} - -.memTemplParams { - color: #4665A2; - white-space: nowrap; - font-size: 80%; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtitle { - padding: 8px; - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - border-top-right-radius: 4px; - border-top-left-radius: 4px; - margin-bottom: -1px; - background-image: url('nav_f.png'); - background-repeat: repeat-x; - background-color: #E2E8F2; - line-height: 1.25; - font-weight: 300; - float:left; -} - -.permalink -{ - font-size: 65%; - display: inline-block; - vertical-align: middle; -} - -.memtemplate { - font-size: 80%; - color: #4665A2; - font-weight: normal; - margin-left: 9px; -} - -.memnav { - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.mempage { - width: 100%; -} - -.memitem { - padding: 0; - margin-bottom: 10px; - margin-right: 5px; - -webkit-transition: box-shadow 0.5s linear; - -moz-transition: box-shadow 0.5s linear; - -ms-transition: box-shadow 0.5s linear; - -o-transition: box-shadow 0.5s linear; - transition: box-shadow 0.5s linear; - display: table !important; - width: 100%; -} - -.memitem.glow { - box-shadow: 0 0 15px cyan; -} - -.memname { - font-weight: 400; - margin-left: 6px; -} - -.memname td { - vertical-align: bottom; -} - -.memproto, dl.reflist dt { - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 0px 6px 0px; - color: #253555; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - background-color: #DFE5F1; - /* opera specific markup */ - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - border-top-right-radius: 4px; - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 4px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 4px; - -} - -.overload { - font-family: "courier new",courier,monospace; - font-size: 65%; -} - -.memdoc, dl.reflist dd { - border-bottom: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 10px 2px 10px; - background-color: #FBFCFD; - border-top-width: 0; - background-image:url('nav_g.png'); - background-repeat:repeat-x; - background-color: #FFFFFF; - /* opera specific markup */ - border-bottom-left-radius: 4px; - border-bottom-right-radius: 4px; - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - /* firefox specific markup */ - -moz-border-radius-bottomleft: 4px; - -moz-border-radius-bottomright: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -dl.reflist dt { - padding: 5px; -} - -dl.reflist dd { - margin: 0px 0px 10px 0px; - padding: 5px; -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} -.paramname code { - line-height: 14px; -} - -.params, .retval, .exception, .tparams { - margin-left: 0px; - padding-left: 0px; -} - -.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname { - font-weight: bold; - vertical-align: top; -} - -.params .paramtype, .tparams .paramtype { - font-style: italic; - vertical-align: top; -} - -.params .paramdir, .tparams .paramdir { - font-family: "courier new",courier,monospace; - vertical-align: top; -} - -table.mlabels { - border-spacing: 0px; -} - -td.mlabels-left { - width: 100%; - padding: 0px; -} - -td.mlabels-right { - vertical-align: bottom; - padding: 0px; - white-space: nowrap; -} - -span.mlabels { - margin-left: 8px; -} - -span.mlabel { - background-color: #728DC1; - border-top:1px solid #5373B4; - border-left:1px solid #5373B4; - border-right:1px solid #C4CFE5; - border-bottom:1px solid #C4CFE5; - text-shadow: none; - color: white; - margin-right: 4px; - padding: 2px 3px; - border-radius: 3px; - font-size: 7pt; - white-space: nowrap; - vertical-align: middle; -} - - - -/* @end */ - -/* these are for tree view inside a (index) page */ - -div.directory { - margin: 10px 0px; - border-top: 1px solid #9CAFD4; - border-bottom: 1px solid #9CAFD4; - width: 100%; -} - -.directory table { - border-collapse:collapse; -} - -.directory td { - margin: 0px; - padding: 0px; - vertical-align: top; -} - -.directory td.entry { - white-space: nowrap; - padding-right: 6px; - padding-top: 3px; -} - -.directory td.entry a { - outline:none; -} - -.directory td.entry a img { - border: none; -} - -.directory td.desc { - width: 100%; - padding-left: 6px; - padding-right: 6px; - padding-top: 3px; - border-left: 1px solid rgba(0,0,0,0.05); -} - -.directory tr.even { - padding-left: 6px; - background-color: #F7F8FB; -} - -.directory img { - vertical-align: -30%; -} - -.directory .levels { - white-space: nowrap; - width: 100%; - text-align: right; - font-size: 9pt; -} - -.directory .levels span { - cursor: pointer; - padding-left: 2px; - padding-right: 2px; - color: #3D578C; -} - -.arrow { - color: #9CAFD4; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - cursor: pointer; - font-size: 80%; - display: inline-block; - width: 16px; - height: 22px; -} - -.icon { - font-family: Arial, Helvetica; - font-weight: bold; - font-size: 12px; - height: 14px; - width: 16px; - display: inline-block; - background-color: #728DC1; - color: white; - text-align: center; - border-radius: 4px; - margin-left: 2px; - margin-right: 2px; -} - -.icona { - width: 24px; - height: 22px; - display: inline-block; -} - -.iconfopen { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderopen.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.iconfclosed { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderclosed.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.icondoc { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('doc.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -table.directory { - font: 400 14px Roboto,sans-serif; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -address { - font-style: normal; - color: #2A3D61; -} - -table.doxtable caption { - caption-side: top; -} - -table.doxtable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -table.fieldtable { - /*width: 100%;*/ - margin-bottom: 10px; - border: 1px solid #A8B8D9; - border-spacing: 0px; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); -} - -.fieldtable td, .fieldtable th { - padding: 3px 7px 2px; -} - -.fieldtable td.fieldtype, .fieldtable td.fieldname { - white-space: nowrap; - border-right: 1px solid #A8B8D9; - border-bottom: 1px solid #A8B8D9; - vertical-align: top; -} - -.fieldtable td.fieldname { - padding-top: 3px; -} - -.fieldtable td.fielddoc { - border-bottom: 1px solid #A8B8D9; - /*width: 100%;*/ -} - -.fieldtable td.fielddoc p:first-child { - margin-top: 0px; -} - -.fieldtable td.fielddoc p:last-child { - margin-bottom: 2px; -} - -.fieldtable tr:last-child td { - border-bottom: none; -} - -.fieldtable th { - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #E2E8F2; - font-size: 90%; - color: #253555; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; - font-weight: 400; - -moz-border-radius-topleft: 4px; - -moz-border-radius-topright: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom: 1px solid #A8B8D9; -} - - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - background-position: 0 -5px; - height:30px; - line-height:30px; - color:#8AA0CC; - border:solid 1px #C2CDE4; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right:15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#364D7C; -} - -.navpath li.navelem a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; - color: #283A5D; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; -} - -.navpath li.navelem a:hover -{ - color:#6884BD; -} - -.navpath li.footer -{ - list-style-type:none; - float:right; - padding-left:10px; - padding-right:15px; - background-image:none; - background-repeat:no-repeat; - background-position:right; - color:#364D7C; - font-size: 8pt; -} - - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -table.classindex -{ - margin: 10px; - white-space: nowrap; - margin-left: 3%; - margin-right: 3%; - width: 94%; - border: 0; - border-spacing: 0; - padding: 0; -} - -div.ingroups -{ - font-size: 8pt; - width: 50%; - text-align: left; -} - -div.ingroups a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #F9FAFC; - margin: 0px; - border-bottom: 1px solid #C4CFE5; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - -.PageDocRTL-title div.headertitle { - text-align: right; - direction: rtl; -} - -dl { - padding: 0 0 0 0; -} - -/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ -dl.section { - margin-left: 0px; - padding-left: 0px; -} - -dl.section.DocNodeRTL { - margin-right: 0px; - padding-right: 0px; -} - -dl.note { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #D0C000; -} - -dl.note.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #D0C000; -} - -dl.warning, dl.attention { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #FF0000; -} - -dl.warning.DocNodeRTL, dl.attention.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #FF0000; -} - -dl.pre, dl.post, dl.invariant { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #00D000; -} - -dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #00D000; -} - -dl.deprecated { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #505050; -} - -dl.deprecated.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #505050; -} - -dl.todo { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #00C0E0; -} - -dl.todo.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #00C0E0; -} - -dl.test { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #3030E0; -} - -dl.test.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #3030E0; -} - -dl.bug { - margin-left: -7px; - padding-left: 3px; - border-left: 4px solid; - border-color: #C08050; -} - -dl.bug.DocNodeRTL { - margin-left: 0; - padding-left: 0; - border-left: 0; - margin-right: -7px; - padding-right: 3px; - border-right: 4px solid; - border-color: #C08050; -} - -dl.section dd { - margin-bottom: 6px; -} - - -#projectlogo -{ - text-align: center; - vertical-align: bottom; - border-collapse: separate; -} - -#projectlogo img -{ - border: 0px none; -} - -#projectalign -{ - vertical-align: middle; -} - -#projectname -{ - font: 300% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 2px 0px; -} - -#projectbrief -{ - font: 120% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#projectnumber -{ - font: 50% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#titlearea -{ - padding: 0px; - margin: 0px; - width: 100%; - border-bottom: 1px solid #5373B4; -} - -.image -{ - text-align: center; -} - -.dotgraph -{ - text-align: center; -} - -.mscgraph -{ - text-align: center; -} - -.plantumlgraph -{ - text-align: center; -} - -.diagraph -{ - text-align: center; -} - -.caption -{ - font-weight: bold; -} - -div.zoom -{ - border: 1px solid #90A5CE; -} - -dl.citelist { - margin-bottom:50px; -} - -dl.citelist dt { - color:#334975; - float:left; - font-weight:bold; - margin-right:10px; - padding:5px; - text-align:right; - width:52px; -} - -dl.citelist dd { - margin:2px 0 2px 72px; - padding:5px 0; -} - -div.toc { - padding: 14px 25px; - background-color: #F4F6FA; - border: 1px solid #D8DFEE; - border-radius: 7px 7px 7px 7px; - float: right; - height: auto; - margin: 0 8px 10px 10px; - width: 200px; -} - -.PageDocRTL-title div.toc { - float: left !important; - text-align: right; -} - -div.toc li { - background: url("bdwn.png") no-repeat scroll 0 5px transparent; - font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; - margin-top: 5px; - padding-left: 10px; - padding-top: 2px; -} - -.PageDocRTL-title div.toc li { - background-position-x: right !important; - padding-left: 0 !important; - padding-right: 10px; -} - -div.toc h3 { - font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #4665A2; - border-bottom: 0 none; - margin: 0; -} - -div.toc ul { - list-style: none outside none; - border: medium none; - padding: 0px; -} - -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { - margin-left: 15px; -} - -div.toc li.level3 { - margin-left: 30px; -} - -div.toc li.level4 { - margin-left: 45px; -} - -span.emoji { - /* font family used at the site: https://unicode.org/emoji/charts/full-emoji-list.html - * font-family: "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji", Times, Symbola, Aegyptus, Code2000, Code2001, Code2002, Musica, serif, LastResort; - */ -} - -.PageDocRTL-title div.toc li.level1 { - margin-left: 0 !important; - margin-right: 0; -} - -.PageDocRTL-title div.toc li.level2 { - margin-left: 0 !important; - margin-right: 15px; -} - -.PageDocRTL-title div.toc li.level3 { - margin-left: 0 !important; - margin-right: 30px; -} - -.PageDocRTL-title div.toc li.level4 { - margin-left: 0 !important; - margin-right: 45px; -} - -.inherit_header { - font-weight: bold; - color: gray; - cursor: pointer; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.inherit_header td { - padding: 6px 0px 2px 5px; -} - -.inherit { - display: none; -} - -tr.heading h2 { - margin-top: 12px; - margin-bottom: 4px; -} - -/* tooltip related style info */ - -.ttc { - position: absolute; - display: none; -} - -#powerTip { - cursor: default; - white-space: nowrap; - background-color: white; - border: 1px solid gray; - border-radius: 4px 4px 4px 4px; - box-shadow: 1px 1px 7px gray; - display: none; - font-size: smaller; - max-width: 80%; - opacity: 0.9; - padding: 1ex 1em 1em; - position: absolute; - z-index: 2147483647; -} - -#powerTip div.ttdoc { - color: grey; - font-style: italic; -} - -#powerTip div.ttname a { - font-weight: bold; -} - -#powerTip div.ttname { - font-weight: bold; -} - -#powerTip div.ttdeci { - color: #006318; -} - -#powerTip div { - margin: 0px; - padding: 0px; - font: 12px/16px Roboto,sans-serif; -} - -#powerTip:before, #powerTip:after { - content: ""; - position: absolute; - margin: 0px; -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.s:after, #powerTip.s:before, -#powerTip.w:after, #powerTip.w:before, -#powerTip.e:after, #powerTip.e:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.nw:after, #powerTip.nw:before, -#powerTip.sw:after, #powerTip.sw:before { - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; -} - -#powerTip.n:after, #powerTip.s:after, -#powerTip.w:after, #powerTip.e:after, -#powerTip.nw:after, #powerTip.ne:after, -#powerTip.sw:after, #powerTip.se:after { - border-color: rgba(255, 255, 255, 0); -} - -#powerTip.n:before, #powerTip.s:before, -#powerTip.w:before, #powerTip.e:before, -#powerTip.nw:before, #powerTip.ne:before, -#powerTip.sw:before, #powerTip.se:before { - border-color: rgba(128, 128, 128, 0); -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.nw:after, #powerTip.nw:before { - top: 100%; -} - -#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { - border-top-color: #FFFFFF; - border-width: 10px; - margin: 0px -10px; -} -#powerTip.n:before { - border-top-color: #808080; - border-width: 11px; - margin: 0px -11px; -} -#powerTip.n:after, #powerTip.n:before { - left: 50%; -} - -#powerTip.nw:after, #powerTip.nw:before { - right: 14px; -} - -#powerTip.ne:after, #powerTip.ne:before { - left: 14px; -} - -#powerTip.s:after, #powerTip.s:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.sw:after, #powerTip.sw:before { - bottom: 100%; -} - -#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { - border-bottom-color: #FFFFFF; - border-width: 10px; - margin: 0px -10px; -} - -#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { - border-bottom-color: #808080; - border-width: 11px; - margin: 0px -11px; -} - -#powerTip.s:after, #powerTip.s:before { - left: 50%; -} - -#powerTip.sw:after, #powerTip.sw:before { - right: 14px; -} - -#powerTip.se:after, #powerTip.se:before { - left: 14px; -} - -#powerTip.e:after, #powerTip.e:before { - left: 100%; -} -#powerTip.e:after { - border-left-color: #FFFFFF; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.e:before { - border-left-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -#powerTip.w:after, #powerTip.w:before { - right: 100%; -} -#powerTip.w:after { - border-right-color: #FFFFFF; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.w:before { - border-right-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -@media print -{ - #top { display: none; } - #side-nav { display: none; } - #nav-path { display: none; } - body { overflow:visible; } - h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } - .summary { display: none; } - .memitem { page-break-inside: avoid; } - #doc-content - { - margin-left:0 !important; - height:auto !important; - width:auto !important; - overflow:inherit; - display:inline; - } -} - -/* @group Markdown */ - -table.markdownTable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.markdownTable td, table.markdownTable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.markdownTable tr { -} - -th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -th.markdownTableHeadLeft, td.markdownTableBodyLeft { - text-align: left -} - -th.markdownTableHeadRight, td.markdownTableBodyRight { - text-align: right -} - -th.markdownTableHeadCenter, td.markdownTableBodyCenter { - text-align: center -} - -.DocNodeRTL { - text-align: right; - direction: rtl; -} - -.DocNodeLTR { - text-align: left; - direction: ltr; -} - -table.DocNodeRTL { - width: auto; - margin-right: 0; - margin-left: auto; -} - -table.DocNodeLTR { - width: auto; - margin-right: auto; - margin-left: 0; -} - -tt, code, kbd, samp -{ - display: inline-block; - direction:ltr; -} -/* @end */ - -u { - text-decoration: underline; -} - diff --git a/html/doxygen.png b/html/doxygen.png deleted file mode 100644 index 3ff17d8..0000000 Binary files a/html/doxygen.png and /dev/null differ diff --git a/html/doxygen.svg b/html/doxygen.svg deleted file mode 100644 index d42dad5..0000000 --- a/html/doxygen.svg +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/html/dynsections.js b/html/dynsections.js deleted file mode 100644 index 3174bd7..0000000 --- a/html/dynsections.js +++ /dev/null @@ -1,121 +0,0 @@ -/* - @licstart The following is the entire license notice for the JavaScript code in this file. - - The MIT License (MIT) - - Copyright (C) 1997-2020 by Dimitri van Heesch - - Permission is hereby granted, free of charge, to any person obtaining a copy of this software - and associated documentation files (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, publish, distribute, - sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all copies or - substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, - DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - @licend The above is the entire license notice for the JavaScript code in this file - */ -function toggleVisibility(linkObj) -{ - var base = $(linkObj).attr('id'); - var summary = $('#'+base+'-summary'); - var content = $('#'+base+'-content'); - var trigger = $('#'+base+'-trigger'); - var src=$(trigger).attr('src'); - if (content.is(':visible')===true) { - content.hide(); - summary.show(); - $(linkObj).addClass('closed').removeClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); - } else { - content.show(); - summary.hide(); - $(linkObj).removeClass('closed').addClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); - } - return false; -} - -function updateStripes() -{ - $('table.directory tr'). - removeClass('even').filter(':visible:even').addClass('even'); -} - -function toggleLevel(level) -{ - $('table.directory tr').each(function() { - var l = this.id.split('_').length-1; - var i = $('#img'+this.id.substring(3)); - var a = $('#arr'+this.id.substring(3)); - if (l - - - - - - -My Project: File List - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
File List
-
-
-
Here is a list of all documented files with brief descriptions:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
 Command.h
 CommandList.h
 ConsoleServer.h
 ConsoleSession.h
 EPoll.h
 INotify.h
 IPAddress.h
 IPAddressList.h
 Object.h
 SessionFilter.h
 Socket.h
 Subscription.h
 SubscriptionHandler.h
 SubscriptionHandlerFactory.h
 SubscriptionManager.h
 TCPServer.h
 TCPSession.h
 TCPSession2.h
 TCPSocket.h
 TerminalSession.h
 Thread.h
 ThreadScope.h
 Timer.h
 TLSServer.h
 TLSSession.h
 UDPServerSocket.h
 UDPSocket.h
-
-
- - - - diff --git a/html/folderclosed.png b/html/folderclosed.png deleted file mode 100644 index bb8ab35..0000000 Binary files a/html/folderclosed.png and /dev/null differ diff --git a/html/folderopen.png b/html/folderopen.png deleted file mode 100644 index d6c7f67..0000000 Binary files a/html/folderopen.png and /dev/null differ diff --git a/html/functions.html b/html/functions.html deleted file mode 100644 index 5e895f1..0000000 --- a/html/functions.html +++ /dev/null @@ -1,331 +0,0 @@ - - - - - - - -My Project: Class Members - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
Here is a list of all documented class members with links to the class documentation for each member:
- -

- a -

- - -

- b -

- - -

- c -

- - -

- e -

- - -

- g -

- - -

- i -

- - -

- m -

- - -

- o -

- - -

- p -

- - -

- r -

- - -

- s -

- - -

- t -

- - -

- u -

- - -

- w -

- - -

- ~ -

-
- - - - diff --git a/html/functions_func.html b/html/functions_func.html deleted file mode 100644 index 544f5af..0000000 --- a/html/functions_func.html +++ /dev/null @@ -1,290 +0,0 @@ - - - - - - - -My Project: Class Members - Functions - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-  - -

- a -

- - -

- c -

- - -

- e -

- - -

- g -

- - -

- i -

- - -

- o -

- - -

- p -

- - -

- r -

- - -

- s -

- - -

- t -

- - -

- w -

- - -

- ~ -

-
- - - - diff --git a/html/functions_vars.html b/html/functions_vars.html deleted file mode 100644 index 17a8743..0000000 --- a/html/functions_vars.html +++ /dev/null @@ -1,101 +0,0 @@ - - - - - - - -My Project: Class Members - Variables - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
- - - - diff --git a/html/graph_legend.html b/html/graph_legend.html deleted file mode 100644 index 4150f7a..0000000 --- a/html/graph_legend.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - -My Project: Graph Legend - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Graph Legend
-
-
-

This page explains how to interpret the graphs that are generated by doxygen.

-

Consider the following example:

/*! Invisible class because of truncation */
-
class Invisible { };
-
-
/*! Truncated class, inheritance relation is hidden */
-
class Truncated : public Invisible { };
-
-
/* Class not documented with doxygen comments */
-
class Undocumented { };
-
-
/*! Class that is inherited using public inheritance */
-
class PublicBase : public Truncated { };
-
-
/*! A template class */
-
template<class T> class Templ { };
-
-
/*! Class that is inherited using protected inheritance */
-
class ProtectedBase { };
-
-
/*! Class that is inherited using private inheritance */
-
class PrivateBase { };
-
-
/*! Class that is used by the Inherited class */
-
class Used { };
-
-
/*! Super class that inherits a number of other classes */
-
class Inherited : public PublicBase,
-
protected ProtectedBase,
-
private PrivateBase,
-
public Undocumented,
-
public Templ<int>
-
{
-
private:
-
Used *m_usedClass;
-
};
-

This will result in the following graph:

-

The boxes in the above graph have the following meaning:

- -

The arrows have the following meaning:

- -
- - - - diff --git a/html/graph_legend.md5 b/html/graph_legend.md5 deleted file mode 100644 index 8fcdccd..0000000 --- a/html/graph_legend.md5 +++ /dev/null @@ -1 +0,0 @@ -f51bf6e9a10430aafef59831b08dcbfe \ No newline at end of file diff --git a/html/graph_legend.png b/html/graph_legend.png deleted file mode 100644 index 58209e0..0000000 Binary files a/html/graph_legend.png and /dev/null differ diff --git a/html/hierarchy.html b/html/hierarchy.html deleted file mode 100644 index 6ef43a4..0000000 --- a/html/hierarchy.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -My Project: Class Hierarchy - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class Hierarchy
-
-
-
-

Go to the graphical class hierarchy

-This inheritance list is sorted roughly, but not completely, alphabetically:
-
- - - - diff --git a/html/index.html b/html/index.html deleted file mode 100644 index 3b71ffc..0000000 --- a/html/index.html +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - - -My Project: Main Page - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
My Project Documentation
-
-
-
- - - - diff --git a/html/inherit_graph_0.map b/html/inherit_graph_0.map deleted file mode 100644 index f44afad..0000000 --- a/html/inherit_graph_0.map +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - diff --git a/html/inherit_graph_0.md5 b/html/inherit_graph_0.md5 deleted file mode 100644 index 700f258..0000000 --- a/html/inherit_graph_0.md5 +++ /dev/null @@ -1 +0,0 @@ -ea28c177b7a0c6b95617996150801c4a \ No newline at end of file diff --git a/html/inherit_graph_0.png b/html/inherit_graph_0.png deleted file mode 100644 index 74e6ffc..0000000 Binary files a/html/inherit_graph_0.png and /dev/null differ diff --git a/html/inherit_graph_1.map b/html/inherit_graph_1.map deleted file mode 100644 index edcb801..0000000 --- a/html/inherit_graph_1.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/html/inherit_graph_1.md5 b/html/inherit_graph_1.md5 deleted file mode 100644 index d70011b..0000000 --- a/html/inherit_graph_1.md5 +++ /dev/null @@ -1 +0,0 @@ -d019270962bf71fea9f33cb5799a0ff7 \ No newline at end of file diff --git a/html/inherit_graph_1.png b/html/inherit_graph_1.png deleted file mode 100644 index 8d04063..0000000 Binary files a/html/inherit_graph_1.png and /dev/null differ diff --git a/html/inherit_graph_2.map b/html/inherit_graph_2.map deleted file mode 100644 index 372f02b..0000000 --- a/html/inherit_graph_2.map +++ /dev/null @@ -1,6 +0,0 @@ - - - - - - diff --git a/html/inherit_graph_2.md5 b/html/inherit_graph_2.md5 deleted file mode 100644 index 281e267..0000000 --- a/html/inherit_graph_2.md5 +++ /dev/null @@ -1 +0,0 @@ -f01cc99cf9042d3e6f8a4717869b8981 \ No newline at end of file diff --git a/html/inherit_graph_2.png b/html/inherit_graph_2.png deleted file mode 100644 index 14eb4bb..0000000 Binary files a/html/inherit_graph_2.png and /dev/null differ diff --git a/html/inherit_graph_3.map b/html/inherit_graph_3.map deleted file mode 100644 index 3e03bc7..0000000 --- a/html/inherit_graph_3.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/html/inherit_graph_3.md5 b/html/inherit_graph_3.md5 deleted file mode 100644 index b401073..0000000 --- a/html/inherit_graph_3.md5 +++ /dev/null @@ -1 +0,0 @@ -15fa81b48b99ac4af8ab5eec3674b2a5 \ No newline at end of file diff --git a/html/inherit_graph_3.png b/html/inherit_graph_3.png deleted file mode 100644 index 83da18a..0000000 Binary files a/html/inherit_graph_3.png and /dev/null differ diff --git a/html/inherit_graph_4.map b/html/inherit_graph_4.map deleted file mode 100644 index fb2c300..0000000 --- a/html/inherit_graph_4.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/html/inherit_graph_4.md5 b/html/inherit_graph_4.md5 deleted file mode 100644 index b9b4fef..0000000 --- a/html/inherit_graph_4.md5 +++ /dev/null @@ -1 +0,0 @@ -6bfd00f81b50345da1bbf756e128f069 \ No newline at end of file diff --git a/html/inherit_graph_4.png b/html/inherit_graph_4.png deleted file mode 100644 index 0a81b26..0000000 Binary files a/html/inherit_graph_4.png and /dev/null differ diff --git a/html/inherit_graph_5.map b/html/inherit_graph_5.map deleted file mode 100644 index 3f45b4d..0000000 --- a/html/inherit_graph_5.map +++ /dev/null @@ -1,3 +0,0 @@ - - - diff --git a/html/inherit_graph_5.md5 b/html/inherit_graph_5.md5 deleted file mode 100644 index 8837605..0000000 --- a/html/inherit_graph_5.md5 +++ /dev/null @@ -1 +0,0 @@ -933520f5283a076825bcef748846ac58 \ No newline at end of file diff --git a/html/inherit_graph_5.png b/html/inherit_graph_5.png deleted file mode 100644 index 4801274..0000000 Binary files a/html/inherit_graph_5.png and /dev/null differ diff --git a/html/inherits.html b/html/inherits.html deleted file mode 100644 index a5ac714..0000000 --- a/html/inherits.html +++ /dev/null @@ -1,134 +0,0 @@ - - - - - - - -My Project: Class Hierarchy - - - - - - - - - -
-
- - - - - - -
-
My Project -
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class Hierarchy
-
-
- - - - - - - - -
- - - - - - - - - - - - - - - - - - - - - -
- - - -
- - - - - - -
- - - -
- - - -
- - - -
- - - -
-
- - - - diff --git a/html/jquery.js b/html/jquery.js deleted file mode 100644 index 103c32d..0000000 --- a/html/jquery.js +++ /dev/null @@ -1,35 +0,0 @@ -/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ -!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element -},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/** - * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler - * Licensed under MIT - * @author Ariel Flesler - * @version 2.1.2 - */ -;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 - * http://www.smartmenus.org/ - * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); \ No newline at end of file diff --git a/html/menu.js b/html/menu.js deleted file mode 100644 index 2fe2214..0000000 --- a/html/menu.js +++ /dev/null @@ -1,51 +0,0 @@ -/* - @licstart The following is the entire license notice for the JavaScript code in this file. - - The MIT License (MIT) - - Copyright (C) 1997-2020 by Dimitri van Heesch - - Permission is hereby granted, free of charge, to any person obtaining a copy of this software - and associated documentation files (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, publish, distribute, - sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all copies or - substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, - DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - @licend The above is the entire license notice for the JavaScript code in this file - */ -function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { - function makeTree(data,relPath) { - var result=''; - if ('children' in data) { - result+=''; - } - return result; - } - - $('#main-nav').append(makeTree(menudata,relPath)); - $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); - if (searchEnabled) { - if (serverSide) { - $('#main-menu').append('
  • '); - } else { - $('#main-menu').append('
  • '); - } - } - $('#main-menu').smartmenus(); -} -/* @license-end */ diff --git a/html/menudata.js b/html/menudata.js deleted file mode 100644 index 0820aeb..0000000 --- a/html/menudata.js +++ /dev/null @@ -1,63 +0,0 @@ -/* - @licstart The following is the entire license notice for the JavaScript code in this file. - - The MIT License (MIT) - - Copyright (C) 1997-2020 by Dimitri van Heesch - - Permission is hereby granted, free of charge, to any person obtaining a copy of this software - and associated documentation files (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, publish, distribute, - sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all copies or - substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, - DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - @licend The above is the entire license notice for the JavaScript code in this file -*/ -var menudata={children:[ -{text:"Main Page",url:"index.html"}, -{text:"Classes",url:"annotated.html",children:[ -{text:"Class List",url:"annotated.html"}, -{text:"Class Index",url:"classes.html"}, -{text:"Class Hierarchy",url:"inherits.html"}, -{text:"Class Members",url:"functions.html",children:[ -{text:"All",url:"functions.html",children:[ -{text:"a",url:"functions.html#index_a"}, -{text:"b",url:"functions.html#index_b"}, -{text:"c",url:"functions.html#index_c"}, -{text:"e",url:"functions.html#index_e"}, -{text:"g",url:"functions.html#index_g"}, -{text:"i",url:"functions.html#index_i"}, -{text:"m",url:"functions.html#index_m"}, -{text:"o",url:"functions.html#index_o"}, -{text:"p",url:"functions.html#index_p"}, -{text:"r",url:"functions.html#index_r"}, -{text:"s",url:"functions.html#index_s"}, -{text:"t",url:"functions.html#index_t"}, -{text:"u",url:"functions.html#index_u"}, -{text:"w",url:"functions.html#index_w"}, -{text:"~",url:"functions.html#index__7E"}]}, -{text:"Functions",url:"functions_func.html",children:[ -{text:"a",url:"functions_func.html#index_a"}, -{text:"c",url:"functions_func.html#index_c"}, -{text:"e",url:"functions_func.html#index_e"}, -{text:"g",url:"functions_func.html#index_g"}, -{text:"i",url:"functions_func.html#index_i"}, -{text:"o",url:"functions_func.html#index_o"}, -{text:"p",url:"functions_func.html#index_p"}, -{text:"r",url:"functions_func.html#index_r"}, -{text:"s",url:"functions_func.html#index_s"}, -{text:"t",url:"functions_func.html#index_t"}, -{text:"w",url:"functions_func.html#index_w"}, -{text:"~",url:"functions_func.html#index__7E"}]}, -{text:"Variables",url:"functions_vars.html"}]}]}, -{text:"Files",url:"files.html",children:[ -{text:"File List",url:"files.html"}]}]} diff --git a/html/nav_f.png b/html/nav_f.png deleted file mode 100644 index 72a58a5..0000000 Binary files a/html/nav_f.png and /dev/null differ diff --git a/html/nav_g.png b/html/nav_g.png deleted file mode 100644 index 2093a23..0000000 Binary files a/html/nav_g.png and /dev/null differ diff --git a/html/nav_h.png b/html/nav_h.png deleted file mode 100644 index 33389b1..0000000 Binary files a/html/nav_h.png and /dev/null differ diff --git a/html/open.png b/html/open.png deleted file mode 100644 index 30f75c7..0000000 Binary files a/html/open.png and /dev/null differ diff --git a/html/search/all_0.html b/html/search/all_0.html deleted file mode 100644 index 1ec5b2d..0000000 --- a/html/search/all_0.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_0.js b/html/search/all_0.js deleted file mode 100644 index 525415e..0000000 --- a/html/search/all_0.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['add_0',['add',['../classcore_1_1CommandList.html#a7a45e75e3d21a25fd3f7e887acf395e9',1,'core::CommandList']]], - ['alias_1',['alias',['../classcore_1_1TCPSession.html#a014ae6b1465bf36606763703aa8a930d',1,'core::TCPSession']]] -]; diff --git a/html/search/all_1.html b/html/search/all_1.html deleted file mode 100644 index 9f80e90..0000000 --- a/html/search/all_1.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_1.js b/html/search/all_1.js deleted file mode 100644 index a600f74..0000000 --- a/html/search/all_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['blacklist_2',['blackList',['../classcore_1_1TCPServer.html#a82f6bf16e4ab20d8b30da09e034fffff',1,'core::TCPServer']]] -]; diff --git a/html/search/all_2.html b/html/search/all_2.html deleted file mode 100644 index 02cfffc..0000000 --- a/html/search/all_2.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_2.js b/html/search/all_2.js deleted file mode 100644 index cf47cff..0000000 --- a/html/search/all_2.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['clear_3',['clear',['../classcore_1_1TerminalSession.html#a42bb06857891220a831da04248233935',1,'core::TerminalSession']]], - ['cleareol_4',['clearEOL',['../classcore_1_1TerminalSession.html#aa660768eed03b0b996a749e8a146446c',1,'core::TerminalSession']]], - ['cleartimer_5',['clearTimer',['../classcore_1_1Timer.html#a8e063f46e89dac04364871e909ab940a',1,'core::Timer']]], - ['command_6',['Command',['../classcore_1_1Command.html',1,'core']]], - ['commandlist_7',['CommandList',['../classcore_1_1CommandList.html',1,'core']]], - ['commands_8',['commands',['../classcore_1_1CommandList.html#ad0aedf95828fe743908d8423f171ff36',1,'core::CommandList::commands()'],['../classcore_1_1TCPServer.html#afcc44802b988e2f4292504e804dccf8b',1,'core::TCPServer::commands()']]], - ['consoleserver_9',['ConsoleServer',['../classcore_1_1ConsoleServer.html',1,'core']]], - ['consolesession_10',['ConsoleSession',['../classcore_1_1ConsoleSession.html',1,'core']]] -]; diff --git a/html/search/all_3.html b/html/search/all_3.html deleted file mode 100644 index 39767b8..0000000 --- a/html/search/all_3.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_3.js b/html/search/all_3.js deleted file mode 100644 index abd9f7e..0000000 --- a/html/search/all_3.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['epoll_11',['EPoll',['../classcore_1_1EPoll.html',1,'core::EPoll'],['../classcore_1_1EPoll.html#a2fd5cc4336b5f72990ecc0e7ea3d7641',1,'core::EPoll::EPoll()']]], - ['eventreceived_12',['eventReceived',['../classcore_1_1EPoll.html#a3238b150b5d0a57eb2e1b17daa236d3b',1,'core::EPoll::eventReceived()'],['../classcore_1_1Socket.html#a1a045e15fb5851d666a21be05ac4c5d7',1,'core::Socket::eventReceived()']]] -]; diff --git a/html/search/all_4.html b/html/search/all_4.html deleted file mode 100644 index fc40463..0000000 --- a/html/search/all_4.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_4.js b/html/search/all_4.js deleted file mode 100644 index ea5ab9c..0000000 --- a/html/search/all_4.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['getclientaddress_13',['getClientAddress',['../classcore_1_1IPAddress.html#ae5e7e28589d026bbbc6c3423d418b008',1,'core::IPAddress']]], - ['getclientaddressandport_14',['getClientAddressAndPort',['../classcore_1_1IPAddress.html#abea870f1a048cb7bba1d2bad98558232',1,'core::IPAddress']]], - ['getclientport_15',['getClientPort',['../classcore_1_1IPAddress.html#a39f706f2d43d7d001296ecead4b587e8',1,'core::IPAddress']]], - ['getdescriptor_16',['getDescriptor',['../classcore_1_1EPoll.html#a1e52017e1deae15c1c87c6b6a099e1ed',1,'core::EPoll::getDescriptor()'],['../classcore_1_1Socket.html#a06ba54744530439d4131e6aba4623d08',1,'core::Socket::getDescriptor()']]], - ['getelapsed_17',['getElapsed',['../classcore_1_1Timer.html#a0df7f1ffc05529b45d6e13713bbc0209',1,'core::Timer']]], - ['getsessionbyalias_18',['getSessionByAlias',['../classcore_1_1TCPServer.html#a9042281193e227a6cd8dab3ff8b46a40',1,'core::TCPServer']]], - ['getsocketaccept_19',['getSocketAccept',['../classcore_1_1ConsoleServer.html#a80d9ea7f3fc5e07c50d5b9e0d4943ca8',1,'core::ConsoleServer::getSocketAccept()'],['../classcore_1_1TCPServer.html#a841f02799ad8529aad7cea132f4de8a9',1,'core::TCPServer::getSocketAccept()']]], - ['grabinput_20',['grabInput',['../classcore_1_1CommandList.html#a72aea93a650f148c639ba25a724da243',1,'core::CommandList']]] -]; diff --git a/html/search/all_5.html b/html/search/all_5.html deleted file mode 100644 index 9dd9344..0000000 --- a/html/search/all_5.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_5.js b/html/search/all_5.js deleted file mode 100644 index b0f1180..0000000 --- a/html/search/all_5.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['inotify_21',['INotify',['../classcore_1_1INotify.html',1,'core']]], - ['ipaddress_22',['IPAddress',['../classcore_1_1IPAddress.html',1,'core']]], - ['ipaddresslist_23',['IPAddressList',['../classcore_1_1IPAddressList.html',1,'core']]], - ['isstopping_24',['isStopping',['../classcore_1_1EPoll.html#a301b46b71ac7ac61a687ff723fe269b3',1,'core::EPoll']]] -]; diff --git a/html/search/all_6.html b/html/search/all_6.html deleted file mode 100644 index f1e516d..0000000 --- a/html/search/all_6.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_6.js b/html/search/all_6.js deleted file mode 100644 index 1bfc895..0000000 --- a/html/search/all_6.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['maxsockets_25',['maxSockets',['../classcore_1_1EPoll.html#acfcef2513d94f7b9a191fed3dc744d90',1,'core::EPoll']]] -]; diff --git a/html/search/all_7.html b/html/search/all_7.html deleted file mode 100644 index 8ddbf6c..0000000 --- a/html/search/all_7.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_7.js b/html/search/all_7.js deleted file mode 100644 index 9f53706..0000000 --- a/html/search/all_7.js +++ /dev/null @@ -1,14 +0,0 @@ -var searchData= -[ - ['object_26',['Object',['../classcore_1_1Object.html',1,'core']]], - ['onblockreceived_27',['onBlockReceived',['../classcore_1_1TCPSession.html#a9c996cbbfa2e592c23cf67ed8b15a32a',1,'core::TCPSession::onBlockReceived()'],['../classcore_1_1TCPSession2.html#a6c88775e81dc0074ef0832146be9f4b9',1,'core::TCPSession2::onBlockReceived()']]], - ['onconnected_28',['onConnected',['../classcore_1_1TCPSession.html#a8719952f7bb00bf7239ec40aa2868626',1,'core::TCPSession::onConnected()'],['../classcore_1_1TCPSession2.html#af1913cb444a9e07c0f31a2cd8d934a62',1,'core::TCPSession2::onConnected()']]], - ['ondatareceived_29',['onDataReceived',['../classcore_1_1Socket.html#ac8d6a2c54696eb6fc2024cf6bcf6b4e5',1,'core::Socket::onDataReceived()'],['../classcore_1_1TCPServer.html#a276ccbc8cb9b4380ebd78807b97f0159',1,'core::TCPServer::onDataReceived()'],['../classcore_1_1TCPSession.html#afc2d2a92bc65e1e5122a93d120253a1d',1,'core::TCPSession::onDataReceived()'],['../classcore_1_1TCPSession2.html#a67c473e1a22b10fc100ae54206f7471b',1,'core::TCPSession2::onDataReceived()'],['../classcore_1_1UDPServerSocket.html#a41933ca153c854a800e3d047ab18313e',1,'core::UDPServerSocket::onDataReceived()']]], - ['onlinereceived_30',['onLineReceived',['../classcore_1_1TCPSession.html#a3d9e0f14e7d24357fd1950b3f9b4eaff',1,'core::TCPSession::onLineReceived()'],['../classcore_1_1TCPSession2.html#a6cd36b444d9548d1024190c6ba747e18',1,'core::TCPSession2::onLineReceived()']]], - ['onregister_31',['onRegister',['../classcore_1_1Socket.html#a81e5ee3e17834166d97c6e8b7dfe0da0',1,'core::Socket::onRegister()'],['../classcore_1_1TLSSession.html#a76cec7cf4851eb27abe77a2339344c6d',1,'core::TLSSession::onRegister()']]], - ['onregistered_32',['onRegistered',['../classcore_1_1Socket.html#a23b9824653bbe4652a716acb828665b1',1,'core::Socket::onRegistered()'],['../classcore_1_1TLSSession.html#a8e26fdc9e8a6c573b5a504a1f1b137a9',1,'core::TLSSession::onRegistered()'],['../classcore_1_1TCPSession2.html#a76096659b82c5dcbf6eac1d916511e60',1,'core::TCPSession2::onRegistered()'],['../classcore_1_1TCPSession.html#aed4ed499b978bcea57a8efefe929fc98',1,'core::TCPSession::onRegistered()']]], - ['ontimeout_33',['onTimeout',['../classcore_1_1Timer.html#ae51704ff08d985bbc30e3ff4c9b3c6ca',1,'core::Timer']]], - ['onunregistered_34',['onUnregistered',['../classcore_1_1Socket.html#ae9be59697c2b2e5efb19aaae3ba943d2',1,'core::Socket']]], - ['out_35',['out',['../classcore_1_1TCPSession.html#abb302bbb3d7e7bc75490c736364f0d4d',1,'core::TCPSession::out()'],['../classcore_1_1TCPSession2.html#a6b8005e611b6007a00ad3288973a522d',1,'core::TCPSession2::out()']]], - ['output_36',['output',['../classcore_1_1Command.html#ab6352ce5650e70a5c76c3d6e4eefd292',1,'core::Command::output()'],['../classcore_1_1TCPServer.html#a49e3ead1bf4e7830685780e73c4db5db',1,'core::TCPServer::output()'],['../classcore_1_1TCPSession.html#a50037cbfc515650e04054e5481785981',1,'core::TCPSession::output()'],['../classcore_1_1TCPSession2.html#ae7648a7759570a00d3d4a8c169183291',1,'core::TCPSession2::output()'],['../classcore_1_1TCPSocket.html#afacf7528ff3c9ac077d7b5a49e2116fd',1,'core::TCPSocket::output()'],['../classcore_1_1TLSSession.html#ae55de8a035d1ddc560cf619b2030af43',1,'core::TLSSession::output()']]] -]; diff --git a/html/search/all_8.html b/html/search/all_8.html deleted file mode 100644 index 83c55ae..0000000 --- a/html/search/all_8.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_8.js b/html/search/all_8.js deleted file mode 100644 index 43d6afd..0000000 --- a/html/search/all_8.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['processcommand_37',['processCommand',['../classcore_1_1Command.html#a95176f2532c38ee14e3fee40ee28b1bd',1,'core::Command::processCommand()'],['../classcore_1_1CommandList.html#a1819e1cb377b5d8e5e00b4777e2b4aba',1,'core::CommandList::processCommand()'],['../classcore_1_1EPoll.html#a22b5f1545aff3162040844be043abcce',1,'core::EPoll::processCommand()'],['../classcore_1_1SubscriptionManager.html#aaa30bf772ad72b3f319a790662e4f8ae',1,'core::SubscriptionManager::processCommand()'],['../classcore_1_1TCPServer.html#a6b7a7e1ac4132942fcaf418ed41c1437',1,'core::TCPServer::processCommand()']]], - ['processrequest_38',['processRequest',['../classcore_1_1CommandList.html#abcfb26e37e1ee6ff5655ebc3d33b1818',1,'core::CommandList']]], - ['protocol_39',['protocol',['../classcore_1_1ConsoleSession.html#aa1818efcd33a4152d2089aa545f08833',1,'core::ConsoleSession::protocol()'],['../classcore_1_1TCPSession.html#a98a65da2346b79bee659fca6902e94c7',1,'core::TCPSession::protocol()'],['../classcore_1_1TCPSession2.html#a45df5db21355bf7d3585d68789b371ce',1,'core::TCPSession2::protocol()'],['../classcore_1_1TLSSession.html#a208145cc1fcdc14054602aacc2c51d91',1,'core::TLSSession::protocol()']]] -]; diff --git a/html/search/all_9.html b/html/search/all_9.html deleted file mode 100644 index 1e263c1..0000000 --- a/html/search/all_9.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_9.js b/html/search/all_9.js deleted file mode 100644 index ceb52cc..0000000 --- a/html/search/all_9.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['receivedata_40',['receiveData',['../classcore_1_1Socket.html#a46ed2e240852d3fa949979ebbc4ac875',1,'core::Socket::receiveData()'],['../classcore_1_1TLSSession.html#a8507cdcd23ac4b340ce6f6d5f0b26a52',1,'core::TLSSession::receiveData()']]], - ['remove_41',['remove',['../classcore_1_1CommandList.html#aaac684effb9ecf5238d23ca60d3fffaa',1,'core::CommandList']]] -]; diff --git a/html/search/all_a.html b/html/search/all_a.html deleted file mode 100644 index 3a6cac1..0000000 --- a/html/search/all_a.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_a.js b/html/search/all_a.js deleted file mode 100644 index d766ae7..0000000 --- a/html/search/all_a.js +++ /dev/null @@ -1,20 +0,0 @@ -var searchData= -[ - ['send_42',['send',['../classcore_1_1TCPSession.html#a2b09eeafef5e44009a77d9da43e3b889',1,'core::TCPSession::send()'],['../classcore_1_1TCPSession2.html#aca2f7127b4081fa0e2d2d128083fb0f7',1,'core::TCPSession2::send()']]], - ['sendtoall_43',['sendToAll',['../classcore_1_1TCPServer.html#a7080f7d45e734087e81b83c5e1f8e676',1,'core::TCPServer::sendToAll(std::stringstream &out, TCPSession &sender, SessionFilter filter)'],['../classcore_1_1TCPServer.html#af708df59e1bc60077c16db97f9cc8ff0',1,'core::TCPServer::sendToAll(std::stringstream &out, TCPSession &sender)']]], - ['sessionfilter_44',['SessionFilter',['../classcore_1_1SessionFilter.html',1,'core']]], - ['sessions_45',['sessions',['../classcore_1_1TCPServer.html#aeed1bc55d099667ccda51cd682bfc633',1,'core::TCPServer']]], - ['setblocksize_46',['setBlockSize',['../classcore_1_1TCPSession.html#a836fb3fd5ee543ebc93262a980ae88b5',1,'core::TCPSession::setBlockSize()'],['../classcore_1_1TCPSession2.html#a6f4ed04cd2848e5b903b8331b2e951c8',1,'core::TCPSession2::setBlockSize()']]], - ['setcursorlocation_47',['setCursorLocation',['../classcore_1_1TerminalSession.html#aa9939cbe36c08e1a0b8413a96ca251fa',1,'core::TerminalSession']]], - ['setdescriptor_48',['setDescriptor',['../classcore_1_1Socket.html#ac44f6ae3196a8a3e09a6a85fcf495762',1,'core::Socket']]], - ['settimer_49',['setTimer',['../classcore_1_1Timer.html#ac0a642cdcb76b7f995137162050d3d0b',1,'core::Timer']]], - ['shutdown_50',['shutdown',['../classcore_1_1Socket.html#af2d1b6de7a64a9d446b0305b6ec47b31',1,'core::Socket']]], - ['socket_51',['Socket',['../classcore_1_1Socket.html',1,'core::Socket'],['../classcore_1_1Socket.html#a4c3f87fd1de3c9eab4bf5efbb30ce87d',1,'core::Socket::Socket()']]], - ['start_52',['start',['../classcore_1_1EPoll.html#aaefe2caef75eb538af90cb34682d277b',1,'core::EPoll::start()'],['../classcore_1_1Thread.html#ae6885df9a9b9503669e5776518b19054',1,'core::Thread::start()']]], - ['stop_53',['stop',['../classcore_1_1EPoll.html#a0c2865acd31d14fbf19dbc42cc084ddc',1,'core::EPoll']]], - ['subscription_54',['Subscription',['../classcore_1_1Subscription.html',1,'core']]], - ['subscriptionhandler_55',['SubscriptionHandler',['../classcore_1_1SubscriptionHandler.html',1,'core']]], - ['subscriptionhandlerfactory_56',['SubscriptionHandlerFactory',['../classcore_1_1SubscriptionHandlerFactory.html',1,'core']]], - ['subscriptionmanager_57',['SubscriptionManager',['../classcore_1_1SubscriptionManager.html',1,'core']]], - ['subscriptions_58',['subscriptions',['../classcore_1_1TCPServer.html#a28302dd844cfc971ee41de2000d24aa0',1,'core::TCPServer']]] -]; diff --git a/html/search/all_b.html b/html/search/all_b.html deleted file mode 100644 index 130deb4..0000000 --- a/html/search/all_b.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_b.js b/html/search/all_b.js deleted file mode 100644 index 0b22d72..0000000 --- a/html/search/all_b.js +++ /dev/null @@ -1,14 +0,0 @@ -var searchData= -[ - ['tcpserver_59',['TCPServer',['../classcore_1_1TCPServer.html',1,'core::TCPServer'],['../classcore_1_1TCPServer.html#abaecb97c336b757d1029d45277f9fc5b',1,'core::TCPServer::TCPServer()']]], - ['tcpsession_60',['TCPSession',['../classcore_1_1TCPSession.html',1,'core']]], - ['tcpsession2_61',['TCPSession2',['../classcore_1_1TCPSession2.html',1,'core']]], - ['tcpsocket_62',['TCPSocket',['../classcore_1_1TCPSocket.html',1,'core']]], - ['terminalsession_63',['TerminalSession',['../classcore_1_1TerminalSession.html',1,'core']]], - ['terminate_64',['terminate',['../classcore_1_1TCPSession.html#a34936745e8d7669d5400e78d353a56d3',1,'core::TCPSession::terminate()'],['../classcore_1_1TCPSession2.html#a6b999e7ea6551a1b513ee057afaa9e4a',1,'core::TCPSession2::terminate()']]], - ['thread_65',['Thread',['../classcore_1_1Thread.html',1,'core']]], - ['threadscope_66',['ThreadScope',['../classcore_1_1ThreadScope.html',1,'core']]], - ['timer_67',['Timer',['../classcore_1_1Timer.html',1,'core']]], - ['tlsserver_68',['TLSServer',['../classcore_1_1TLSServer.html',1,'core::TLSServer'],['../classcore_1_1TLSServer.html#a6460f9872936015efdfd0b8de04aa2fe',1,'core::TLSServer::TLSServer()']]], - ['tlssession_69',['TLSSession',['../classcore_1_1TLSSession.html',1,'core']]] -]; diff --git a/html/search/all_c.html b/html/search/all_c.html deleted file mode 100644 index 3dd5af0..0000000 --- a/html/search/all_c.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_c.js b/html/search/all_c.js deleted file mode 100644 index f36c68b..0000000 --- a/html/search/all_c.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['udpserversocket_70',['UDPServerSocket',['../classcore_1_1UDPServerSocket.html',1,'core']]], - ['udpsocket_71',['UDPSocket',['../classcore_1_1UDPSocket.html',1,'core']]], - ['uuid_72',['uuid',['../classcore_1_1TCPSession.html#a2ccd4968f5c53d1c16a57e04081db692',1,'core::TCPSession']]] -]; diff --git a/html/search/all_d.html b/html/search/all_d.html deleted file mode 100644 index af7f2f0..0000000 --- a/html/search/all_d.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_d.js b/html/search/all_d.js deleted file mode 100644 index c837c01..0000000 --- a/html/search/all_d.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['whitelist_73',['whiteList',['../classcore_1_1TCPServer.html#abad6300b6234ca8b69cef9128755342e',1,'core::TCPServer']]], - ['write_74',['write',['../classcore_1_1Socket.html#a1413c826307ef0f29d7457770af675e3',1,'core::Socket']]] -]; diff --git a/html/search/all_e.html b/html/search/all_e.html deleted file mode 100644 index e25df42..0000000 --- a/html/search/all_e.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/all_e.js b/html/search/all_e.js deleted file mode 100644 index 9dc7d28..0000000 --- a/html/search/all_e.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['_7eepoll_75',['~EPoll',['../classcore_1_1EPoll.html#a8e7a2496d684b745a6410f9bd3e88534',1,'core::EPoll']]], - ['_7esocket_76',['~Socket',['../classcore_1_1Socket.html#aa5003845f8ae464ad2fa206176381be0',1,'core::Socket']]], - ['_7etcpserver_77',['~TCPServer',['../classcore_1_1TCPServer.html#a7ccdc057c9eee8504fce796301f82088',1,'core::TCPServer']]], - ['_7etlsserver_78',['~TLSServer',['../classcore_1_1TLSServer.html#ac71db77c796a1bf65357409cb96054c7',1,'core::TLSServer']]] -]; diff --git a/html/search/classes_0.html b/html/search/classes_0.html deleted file mode 100644 index af8159e..0000000 --- a/html/search/classes_0.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/classes_0.js b/html/search/classes_0.js deleted file mode 100644 index 1480110..0000000 --- a/html/search/classes_0.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['command_79',['Command',['../classcore_1_1Command.html',1,'core']]], - ['commandlist_80',['CommandList',['../classcore_1_1CommandList.html',1,'core']]], - ['consoleserver_81',['ConsoleServer',['../classcore_1_1ConsoleServer.html',1,'core']]], - ['consolesession_82',['ConsoleSession',['../classcore_1_1ConsoleSession.html',1,'core']]] -]; diff --git a/html/search/classes_1.html b/html/search/classes_1.html deleted file mode 100644 index 576e916..0000000 --- a/html/search/classes_1.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/classes_1.js b/html/search/classes_1.js deleted file mode 100644 index ba3dad4..0000000 --- a/html/search/classes_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['epoll_83',['EPoll',['../classcore_1_1EPoll.html',1,'core']]] -]; diff --git a/html/search/classes_2.html b/html/search/classes_2.html deleted file mode 100644 index 956405e..0000000 --- a/html/search/classes_2.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/classes_2.js b/html/search/classes_2.js deleted file mode 100644 index 52a2a88..0000000 --- a/html/search/classes_2.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['inotify_84',['INotify',['../classcore_1_1INotify.html',1,'core']]], - ['ipaddress_85',['IPAddress',['../classcore_1_1IPAddress.html',1,'core']]], - ['ipaddresslist_86',['IPAddressList',['../classcore_1_1IPAddressList.html',1,'core']]] -]; diff --git a/html/search/classes_3.html b/html/search/classes_3.html deleted file mode 100644 index d33343b..0000000 --- a/html/search/classes_3.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/classes_3.js b/html/search/classes_3.js deleted file mode 100644 index fab7e92..0000000 --- a/html/search/classes_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['object_87',['Object',['../classcore_1_1Object.html',1,'core']]] -]; diff --git a/html/search/classes_4.html b/html/search/classes_4.html deleted file mode 100644 index 8430b07..0000000 --- a/html/search/classes_4.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/classes_4.js b/html/search/classes_4.js deleted file mode 100644 index b960d89..0000000 --- a/html/search/classes_4.js +++ /dev/null @@ -1,9 +0,0 @@ -var searchData= -[ - ['sessionfilter_88',['SessionFilter',['../classcore_1_1SessionFilter.html',1,'core']]], - ['socket_89',['Socket',['../classcore_1_1Socket.html',1,'core']]], - ['subscription_90',['Subscription',['../classcore_1_1Subscription.html',1,'core']]], - ['subscriptionhandler_91',['SubscriptionHandler',['../classcore_1_1SubscriptionHandler.html',1,'core']]], - ['subscriptionhandlerfactory_92',['SubscriptionHandlerFactory',['../classcore_1_1SubscriptionHandlerFactory.html',1,'core']]], - ['subscriptionmanager_93',['SubscriptionManager',['../classcore_1_1SubscriptionManager.html',1,'core']]] -]; diff --git a/html/search/classes_5.html b/html/search/classes_5.html deleted file mode 100644 index c2f1b76..0000000 --- a/html/search/classes_5.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/classes_5.js b/html/search/classes_5.js deleted file mode 100644 index 8de1f07..0000000 --- a/html/search/classes_5.js +++ /dev/null @@ -1,13 +0,0 @@ -var searchData= -[ - ['tcpserver_94',['TCPServer',['../classcore_1_1TCPServer.html',1,'core']]], - ['tcpsession_95',['TCPSession',['../classcore_1_1TCPSession.html',1,'core']]], - ['tcpsession2_96',['TCPSession2',['../classcore_1_1TCPSession2.html',1,'core']]], - ['tcpsocket_97',['TCPSocket',['../classcore_1_1TCPSocket.html',1,'core']]], - ['terminalsession_98',['TerminalSession',['../classcore_1_1TerminalSession.html',1,'core']]], - ['thread_99',['Thread',['../classcore_1_1Thread.html',1,'core']]], - ['threadscope_100',['ThreadScope',['../classcore_1_1ThreadScope.html',1,'core']]], - ['timer_101',['Timer',['../classcore_1_1Timer.html',1,'core']]], - ['tlsserver_102',['TLSServer',['../classcore_1_1TLSServer.html',1,'core']]], - ['tlssession_103',['TLSSession',['../classcore_1_1TLSSession.html',1,'core']]] -]; diff --git a/html/search/classes_6.html b/html/search/classes_6.html deleted file mode 100644 index e39847c..0000000 --- a/html/search/classes_6.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/classes_6.js b/html/search/classes_6.js deleted file mode 100644 index b0a168b..0000000 --- a/html/search/classes_6.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['udpserversocket_104',['UDPServerSocket',['../classcore_1_1UDPServerSocket.html',1,'core']]], - ['udpsocket_105',['UDPSocket',['../classcore_1_1UDPSocket.html',1,'core']]] -]; diff --git a/html/search/close.png b/html/search/close.png deleted file mode 100644 index 9342d3d..0000000 Binary files a/html/search/close.png and /dev/null differ diff --git a/html/search/close.svg b/html/search/close.svg deleted file mode 100644 index a933eea..0000000 --- a/html/search/close.svg +++ /dev/null @@ -1,31 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - diff --git a/html/search/functions_0.html b/html/search/functions_0.html deleted file mode 100644 index eb4c501..0000000 --- a/html/search/functions_0.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_0.js b/html/search/functions_0.js deleted file mode 100644 index aad17b8..0000000 --- a/html/search/functions_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['add_106',['add',['../classcore_1_1CommandList.html#a7a45e75e3d21a25fd3f7e887acf395e9',1,'core::CommandList']]] -]; diff --git a/html/search/functions_1.html b/html/search/functions_1.html deleted file mode 100644 index ef4088b..0000000 --- a/html/search/functions_1.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_1.js b/html/search/functions_1.js deleted file mode 100644 index 833b34f..0000000 --- a/html/search/functions_1.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['clear_107',['clear',['../classcore_1_1TerminalSession.html#a42bb06857891220a831da04248233935',1,'core::TerminalSession']]], - ['cleareol_108',['clearEOL',['../classcore_1_1TerminalSession.html#aa660768eed03b0b996a749e8a146446c',1,'core::TerminalSession']]], - ['cleartimer_109',['clearTimer',['../classcore_1_1Timer.html#a8e063f46e89dac04364871e909ab940a',1,'core::Timer']]] -]; diff --git a/html/search/functions_2.html b/html/search/functions_2.html deleted file mode 100644 index ca5aa10..0000000 --- a/html/search/functions_2.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_2.js b/html/search/functions_2.js deleted file mode 100644 index e31e64d..0000000 --- a/html/search/functions_2.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['epoll_110',['EPoll',['../classcore_1_1EPoll.html#a2fd5cc4336b5f72990ecc0e7ea3d7641',1,'core::EPoll']]], - ['eventreceived_111',['eventReceived',['../classcore_1_1EPoll.html#a3238b150b5d0a57eb2e1b17daa236d3b',1,'core::EPoll::eventReceived()'],['../classcore_1_1Socket.html#a1a045e15fb5851d666a21be05ac4c5d7',1,'core::Socket::eventReceived()']]] -]; diff --git a/html/search/functions_3.html b/html/search/functions_3.html deleted file mode 100644 index d79f55b..0000000 --- a/html/search/functions_3.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_3.js b/html/search/functions_3.js deleted file mode 100644 index c3f07ba..0000000 --- a/html/search/functions_3.js +++ /dev/null @@ -1,11 +0,0 @@ -var searchData= -[ - ['getclientaddress_112',['getClientAddress',['../classcore_1_1IPAddress.html#ae5e7e28589d026bbbc6c3423d418b008',1,'core::IPAddress']]], - ['getclientaddressandport_113',['getClientAddressAndPort',['../classcore_1_1IPAddress.html#abea870f1a048cb7bba1d2bad98558232',1,'core::IPAddress']]], - ['getclientport_114',['getClientPort',['../classcore_1_1IPAddress.html#a39f706f2d43d7d001296ecead4b587e8',1,'core::IPAddress']]], - ['getdescriptor_115',['getDescriptor',['../classcore_1_1EPoll.html#a1e52017e1deae15c1c87c6b6a099e1ed',1,'core::EPoll::getDescriptor()'],['../classcore_1_1Socket.html#a06ba54744530439d4131e6aba4623d08',1,'core::Socket::getDescriptor()']]], - ['getelapsed_116',['getElapsed',['../classcore_1_1Timer.html#a0df7f1ffc05529b45d6e13713bbc0209',1,'core::Timer']]], - ['getsessionbyalias_117',['getSessionByAlias',['../classcore_1_1TCPServer.html#a9042281193e227a6cd8dab3ff8b46a40',1,'core::TCPServer']]], - ['getsocketaccept_118',['getSocketAccept',['../classcore_1_1ConsoleServer.html#a80d9ea7f3fc5e07c50d5b9e0d4943ca8',1,'core::ConsoleServer::getSocketAccept()'],['../classcore_1_1TCPServer.html#a841f02799ad8529aad7cea132f4de8a9',1,'core::TCPServer::getSocketAccept()']]], - ['grabinput_119',['grabInput',['../classcore_1_1CommandList.html#a72aea93a650f148c639ba25a724da243',1,'core::CommandList']]] -]; diff --git a/html/search/functions_4.html b/html/search/functions_4.html deleted file mode 100644 index 1657cad..0000000 --- a/html/search/functions_4.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_4.js b/html/search/functions_4.js deleted file mode 100644 index 687dcbd..0000000 --- a/html/search/functions_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['isstopping_120',['isStopping',['../classcore_1_1EPoll.html#a301b46b71ac7ac61a687ff723fe269b3',1,'core::EPoll']]] -]; diff --git a/html/search/functions_5.html b/html/search/functions_5.html deleted file mode 100644 index 9301d6b..0000000 --- a/html/search/functions_5.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_5.js b/html/search/functions_5.js deleted file mode 100644 index 7ab8c6e..0000000 --- a/html/search/functions_5.js +++ /dev/null @@ -1,12 +0,0 @@ -var searchData= -[ - ['onblockreceived_121',['onBlockReceived',['../classcore_1_1TCPSession2.html#a6c88775e81dc0074ef0832146be9f4b9',1,'core::TCPSession2::onBlockReceived()'],['../classcore_1_1TCPSession.html#a9c996cbbfa2e592c23cf67ed8b15a32a',1,'core::TCPSession::onBlockReceived(coreutils::ZString &block)']]], - ['onconnected_122',['onConnected',['../classcore_1_1TCPSession.html#a8719952f7bb00bf7239ec40aa2868626',1,'core::TCPSession::onConnected()'],['../classcore_1_1TCPSession2.html#af1913cb444a9e07c0f31a2cd8d934a62',1,'core::TCPSession2::onConnected()']]], - ['ondatareceived_123',['onDataReceived',['../classcore_1_1Socket.html#ac8d6a2c54696eb6fc2024cf6bcf6b4e5',1,'core::Socket::onDataReceived()'],['../classcore_1_1TCPServer.html#a276ccbc8cb9b4380ebd78807b97f0159',1,'core::TCPServer::onDataReceived()'],['../classcore_1_1TCPSession.html#afc2d2a92bc65e1e5122a93d120253a1d',1,'core::TCPSession::onDataReceived()'],['../classcore_1_1TCPSession2.html#a67c473e1a22b10fc100ae54206f7471b',1,'core::TCPSession2::onDataReceived()'],['../classcore_1_1UDPServerSocket.html#a41933ca153c854a800e3d047ab18313e',1,'core::UDPServerSocket::onDataReceived()']]], - ['onlinereceived_124',['onLineReceived',['../classcore_1_1TCPSession.html#a3d9e0f14e7d24357fd1950b3f9b4eaff',1,'core::TCPSession::onLineReceived()'],['../classcore_1_1TCPSession2.html#a6cd36b444d9548d1024190c6ba747e18',1,'core::TCPSession2::onLineReceived()']]], - ['onregister_125',['onRegister',['../classcore_1_1TLSSession.html#a76cec7cf4851eb27abe77a2339344c6d',1,'core::TLSSession::onRegister()'],['../classcore_1_1Socket.html#a81e5ee3e17834166d97c6e8b7dfe0da0',1,'core::Socket::onRegister()']]], - ['onregistered_126',['onRegistered',['../classcore_1_1Socket.html#a23b9824653bbe4652a716acb828665b1',1,'core::Socket::onRegistered()'],['../classcore_1_1TCPSession.html#aed4ed499b978bcea57a8efefe929fc98',1,'core::TCPSession::onRegistered()'],['../classcore_1_1TCPSession2.html#a76096659b82c5dcbf6eac1d916511e60',1,'core::TCPSession2::onRegistered()'],['../classcore_1_1TLSSession.html#a8e26fdc9e8a6c573b5a504a1f1b137a9',1,'core::TLSSession::onRegistered()']]], - ['ontimeout_127',['onTimeout',['../classcore_1_1Timer.html#ae51704ff08d985bbc30e3ff4c9b3c6ca',1,'core::Timer']]], - ['onunregistered_128',['onUnregistered',['../classcore_1_1Socket.html#ae9be59697c2b2e5efb19aaae3ba943d2',1,'core::Socket']]], - ['output_129',['output',['../classcore_1_1Command.html#ab6352ce5650e70a5c76c3d6e4eefd292',1,'core::Command::output()'],['../classcore_1_1TCPServer.html#a49e3ead1bf4e7830685780e73c4db5db',1,'core::TCPServer::output()'],['../classcore_1_1TCPSession.html#a50037cbfc515650e04054e5481785981',1,'core::TCPSession::output()'],['../classcore_1_1TCPSession2.html#ae7648a7759570a00d3d4a8c169183291',1,'core::TCPSession2::output()'],['../classcore_1_1TCPSocket.html#afacf7528ff3c9ac077d7b5a49e2116fd',1,'core::TCPSocket::output()'],['../classcore_1_1TLSSession.html#ae55de8a035d1ddc560cf619b2030af43',1,'core::TLSSession::output()']]] -]; diff --git a/html/search/functions_6.html b/html/search/functions_6.html deleted file mode 100644 index 9c4f5fc..0000000 --- a/html/search/functions_6.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_6.js b/html/search/functions_6.js deleted file mode 100644 index b39f679..0000000 --- a/html/search/functions_6.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['processcommand_130',['processCommand',['../classcore_1_1Command.html#a95176f2532c38ee14e3fee40ee28b1bd',1,'core::Command::processCommand()'],['../classcore_1_1CommandList.html#a1819e1cb377b5d8e5e00b4777e2b4aba',1,'core::CommandList::processCommand()'],['../classcore_1_1EPoll.html#a22b5f1545aff3162040844be043abcce',1,'core::EPoll::processCommand()'],['../classcore_1_1SubscriptionManager.html#aaa30bf772ad72b3f319a790662e4f8ae',1,'core::SubscriptionManager::processCommand()'],['../classcore_1_1TCPServer.html#a6b7a7e1ac4132942fcaf418ed41c1437',1,'core::TCPServer::processCommand()']]], - ['processrequest_131',['processRequest',['../classcore_1_1CommandList.html#abcfb26e37e1ee6ff5655ebc3d33b1818',1,'core::CommandList']]], - ['protocol_132',['protocol',['../classcore_1_1ConsoleSession.html#aa1818efcd33a4152d2089aa545f08833',1,'core::ConsoleSession::protocol()'],['../classcore_1_1TCPSession.html#a98a65da2346b79bee659fca6902e94c7',1,'core::TCPSession::protocol()'],['../classcore_1_1TCPSession2.html#a45df5db21355bf7d3585d68789b371ce',1,'core::TCPSession2::protocol()'],['../classcore_1_1TLSSession.html#a208145cc1fcdc14054602aacc2c51d91',1,'core::TLSSession::protocol()']]] -]; diff --git a/html/search/functions_7.html b/html/search/functions_7.html deleted file mode 100644 index 46b5c0f..0000000 --- a/html/search/functions_7.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_7.js b/html/search/functions_7.js deleted file mode 100644 index 26d844b..0000000 --- a/html/search/functions_7.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['receivedata_133',['receiveData',['../classcore_1_1Socket.html#a46ed2e240852d3fa949979ebbc4ac875',1,'core::Socket::receiveData()'],['../classcore_1_1TLSSession.html#a8507cdcd23ac4b340ce6f6d5f0b26a52',1,'core::TLSSession::receiveData()']]], - ['remove_134',['remove',['../classcore_1_1CommandList.html#aaac684effb9ecf5238d23ca60d3fffaa',1,'core::CommandList']]] -]; diff --git a/html/search/functions_8.html b/html/search/functions_8.html deleted file mode 100644 index 31a1d95..0000000 --- a/html/search/functions_8.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_8.js b/html/search/functions_8.js deleted file mode 100644 index 6d55661..0000000 --- a/html/search/functions_8.js +++ /dev/null @@ -1,13 +0,0 @@ -var searchData= -[ - ['send_135',['send',['../classcore_1_1TCPSession.html#a2b09eeafef5e44009a77d9da43e3b889',1,'core::TCPSession::send()'],['../classcore_1_1TCPSession2.html#aca2f7127b4081fa0e2d2d128083fb0f7',1,'core::TCPSession2::send()']]], - ['sendtoall_136',['sendToAll',['../classcore_1_1TCPServer.html#a7080f7d45e734087e81b83c5e1f8e676',1,'core::TCPServer::sendToAll(std::stringstream &out, TCPSession &sender, SessionFilter filter)'],['../classcore_1_1TCPServer.html#af708df59e1bc60077c16db97f9cc8ff0',1,'core::TCPServer::sendToAll(std::stringstream &out, TCPSession &sender)']]], - ['setblocksize_137',['setBlockSize',['../classcore_1_1TCPSession.html#a836fb3fd5ee543ebc93262a980ae88b5',1,'core::TCPSession::setBlockSize()'],['../classcore_1_1TCPSession2.html#a6f4ed04cd2848e5b903b8331b2e951c8',1,'core::TCPSession2::setBlockSize()']]], - ['setcursorlocation_138',['setCursorLocation',['../classcore_1_1TerminalSession.html#aa9939cbe36c08e1a0b8413a96ca251fa',1,'core::TerminalSession']]], - ['setdescriptor_139',['setDescriptor',['../classcore_1_1Socket.html#ac44f6ae3196a8a3e09a6a85fcf495762',1,'core::Socket']]], - ['settimer_140',['setTimer',['../classcore_1_1Timer.html#ac0a642cdcb76b7f995137162050d3d0b',1,'core::Timer']]], - ['shutdown_141',['shutdown',['../classcore_1_1Socket.html#af2d1b6de7a64a9d446b0305b6ec47b31',1,'core::Socket']]], - ['socket_142',['Socket',['../classcore_1_1Socket.html#a4c3f87fd1de3c9eab4bf5efbb30ce87d',1,'core::Socket']]], - ['start_143',['start',['../classcore_1_1EPoll.html#aaefe2caef75eb538af90cb34682d277b',1,'core::EPoll::start()'],['../classcore_1_1Thread.html#ae6885df9a9b9503669e5776518b19054',1,'core::Thread::start()']]], - ['stop_144',['stop',['../classcore_1_1EPoll.html#a0c2865acd31d14fbf19dbc42cc084ddc',1,'core::EPoll']]] -]; diff --git a/html/search/functions_9.html b/html/search/functions_9.html deleted file mode 100644 index 9a8e429..0000000 --- a/html/search/functions_9.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_9.js b/html/search/functions_9.js deleted file mode 100644 index f21b186..0000000 --- a/html/search/functions_9.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['tcpserver_145',['TCPServer',['../classcore_1_1TCPServer.html#abaecb97c336b757d1029d45277f9fc5b',1,'core::TCPServer']]], - ['terminate_146',['terminate',['../classcore_1_1TCPSession.html#a34936745e8d7669d5400e78d353a56d3',1,'core::TCPSession::terminate()'],['../classcore_1_1TCPSession2.html#a6b999e7ea6551a1b513ee057afaa9e4a',1,'core::TCPSession2::terminate()']]], - ['tlsserver_147',['TLSServer',['../classcore_1_1TLSServer.html#a6460f9872936015efdfd0b8de04aa2fe',1,'core::TLSServer']]] -]; diff --git a/html/search/functions_a.html b/html/search/functions_a.html deleted file mode 100644 index 5ecc152..0000000 --- a/html/search/functions_a.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_a.js b/html/search/functions_a.js deleted file mode 100644 index 6290c80..0000000 --- a/html/search/functions_a.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['write_148',['write',['../classcore_1_1Socket.html#a1413c826307ef0f29d7457770af675e3',1,'core::Socket']]] -]; diff --git a/html/search/functions_b.html b/html/search/functions_b.html deleted file mode 100644 index e301fed..0000000 --- a/html/search/functions_b.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_b.js b/html/search/functions_b.js deleted file mode 100644 index b0b6564..0000000 --- a/html/search/functions_b.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['_7eepoll_149',['~EPoll',['../classcore_1_1EPoll.html#a8e7a2496d684b745a6410f9bd3e88534',1,'core::EPoll']]], - ['_7esocket_150',['~Socket',['../classcore_1_1Socket.html#aa5003845f8ae464ad2fa206176381be0',1,'core::Socket']]], - ['_7etcpserver_151',['~TCPServer',['../classcore_1_1TCPServer.html#a7ccdc057c9eee8504fce796301f82088',1,'core::TCPServer']]], - ['_7etlsserver_152',['~TLSServer',['../classcore_1_1TLSServer.html#ac71db77c796a1bf65357409cb96054c7',1,'core::TLSServer']]] -]; diff --git a/html/search/functions_c.html b/html/search/functions_c.html deleted file mode 100644 index c4f3268..0000000 --- a/html/search/functions_c.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/functions_c.js b/html/search/functions_c.js deleted file mode 100644 index 3ac4d2a..0000000 --- a/html/search/functions_c.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['_7eepoll_151',['~EPoll',['../classcore_1_1EPoll.html#a8e7a2496d684b745a6410f9bd3e88534',1,'core::EPoll']]], - ['_7esocket_152',['~Socket',['../classcore_1_1Socket.html#aa5003845f8ae464ad2fa206176381be0',1,'core::Socket']]], - ['_7etcpserver_153',['~TCPServer',['../classcore_1_1TCPServer.html#a7ccdc057c9eee8504fce796301f82088',1,'core::TCPServer']]], - ['_7etlsserver_154',['~TLSServer',['../classcore_1_1TLSServer.html#ac71db77c796a1bf65357409cb96054c7',1,'core::TLSServer']]] -]; diff --git a/html/search/mag_sel.png b/html/search/mag_sel.png deleted file mode 100644 index 39c0ed5..0000000 Binary files a/html/search/mag_sel.png and /dev/null differ diff --git a/html/search/mag_sel.svg b/html/search/mag_sel.svg deleted file mode 100644 index 03626f6..0000000 --- a/html/search/mag_sel.svg +++ /dev/null @@ -1,74 +0,0 @@ - - - - - - - - image/svg+xml - - - - - - - - - - - diff --git a/html/search/nomatches.html b/html/search/nomatches.html deleted file mode 100644 index 2b9360b..0000000 --- a/html/search/nomatches.html +++ /dev/null @@ -1,13 +0,0 @@ - - - - - - - - -
    -
    No Matches
    -
    - - diff --git a/html/search/search.css b/html/search/search.css deleted file mode 100644 index 9074198..0000000 --- a/html/search/search.css +++ /dev/null @@ -1,257 +0,0 @@ -/*---------------- Search Box */ - -#MSearchBox { - white-space : nowrap; - background: white; - border-radius: 0.65em; - box-shadow: inset 0.5px 0.5px 3px 0px #555; - z-index: 102; -} - -#MSearchBox .left { - display: inline-block; - vertical-align: middle; - height: 1.4em; -} - -#MSearchSelect { - display: inline-block; - vertical-align: middle; - height: 1.4em; - padding: 0 0 0 0.3em; - margin: 0; -} - -#MSearchField { - display: inline-block; - vertical-align: middle; - width: 7.5em; - height: 1.1em; - margin: 0 0.15em; - padding: 0; - line-height: 1em; - border:none; - color: #909090; - outline: none; - font-family: Arial, Verdana, sans-serif; - -webkit-border-radius: 0px; - border-radius: 0px; - background: none; -} - - -#MSearchBox .right { - display: inline-block; - vertical-align: middle; - width: 1.4em; - height: 1.4em; -} - -#MSearchClose { - display: none; - font-size: inherit; - background : none; - border: none; - margin: 0; - padding: 0; - outline: none; - -} - -#MSearchCloseImg { - height: 1.4em; - padding: 0.3em; - margin: 0; -} - -.MSearchBoxActive #MSearchField { - color: #000000; -} - -#main-menu > li:last-child { - /* This
  • object is the parent of the search bar */ - display: flex; - justify-content: center; - align-items: center; - height: 36px; - margin-right: 1em; -} - -/*---------------- Search filter selection */ - -#MSearchSelectWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #90A5CE; - background-color: #F9FAFC; - z-index: 10001; - padding-top: 4px; - padding-bottom: 4px; - -moz-border-radius: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -.SelectItem { - font: 8pt Arial, Verdana, sans-serif; - padding-left: 2px; - padding-right: 12px; - border: 0px; -} - -span.SelectionMark { - margin-right: 4px; - font-family: monospace; - outline-style: none; - text-decoration: none; -} - -a.SelectItem { - display: block; - outline-style: none; - color: #000000; - text-decoration: none; - padding-left: 6px; - padding-right: 12px; -} - -a.SelectItem:focus, -a.SelectItem:active { - color: #000000; - outline-style: none; - text-decoration: none; -} - -a.SelectItem:hover { - color: #FFFFFF; - background-color: #3D578C; - outline-style: none; - text-decoration: none; - cursor: pointer; - display: block; -} - -/*---------------- Search results window */ - -iframe#MSearchResults { - width: 60ex; - height: 15em; -} - -#MSearchResultsWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #000; - background-color: #EEF1F7; - z-index:10000; -} - -/* ----------------------------------- */ - - -#SRIndex { - clear:both; - padding-bottom: 15px; -} - -.SREntry { - font-size: 10pt; - padding-left: 1ex; -} - -.SRPage .SREntry { - font-size: 8pt; - padding: 1px 5px; -} - -body.SRPage { - margin: 5px 2px; -} - -.SRChildren { - padding-left: 3ex; padding-bottom: .5em -} - -.SRPage .SRChildren { - display: none; -} - -.SRSymbol { - font-weight: bold; - color: #425E97; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRScope { - display: block; - color: #425E97; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRSymbol:focus, a.SRSymbol:active, -a.SRScope:focus, a.SRScope:active { - text-decoration: underline; -} - -span.SRScope { - padding-left: 4px; - font-family: Arial, Verdana, sans-serif; -} - -.SRPage .SRStatus { - padding: 2px 5px; - font-size: 8pt; - font-style: italic; - font-family: Arial, Verdana, sans-serif; -} - -.SRResult { - display: none; -} - -div.searchresults { - margin-left: 10px; - margin-right: 10px; -} - -/*---------------- External search page results */ - -.searchresult { - background-color: #F0F3F8; -} - -.pages b { - color: white; - padding: 5px 5px 3px 5px; - background-image: url("../tab_a.png"); - background-repeat: repeat-x; - text-shadow: 0 1px 1px #000000; -} - -.pages { - line-height: 17px; - margin-left: 4px; - text-decoration: none; -} - -.hl { - font-weight: bold; -} - -#searchresults { - margin-bottom: 20px; -} - -.searchpages { - margin-top: 10px; -} - diff --git a/html/search/search.js b/html/search/search.js deleted file mode 100644 index fb226f7..0000000 --- a/html/search/search.js +++ /dev/null @@ -1,816 +0,0 @@ -/* - @licstart The following is the entire license notice for the JavaScript code in this file. - - The MIT License (MIT) - - Copyright (C) 1997-2020 by Dimitri van Heesch - - Permission is hereby granted, free of charge, to any person obtaining a copy of this software - and associated documentation files (the "Software"), to deal in the Software without restriction, - including without limitation the rights to use, copy, modify, merge, publish, distribute, - sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is - furnished to do so, subject to the following conditions: - - The above copyright notice and this permission notice shall be included in all copies or - substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING - BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, - DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - @licend The above is the entire license notice for the JavaScript code in this file - */ -function convertToId(search) -{ - var result = ''; - for (i=0;i do a search - { - this.Search(); - } - } - - this.OnSearchSelectKey = function(evt) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==40 && this.searchIndex0) // Up - { - this.searchIndex--; - this.OnSelectItem(this.searchIndex); - } - else if (e.keyCode==13 || e.keyCode==27) - { - this.OnSelectItem(this.searchIndex); - this.CloseSelectionWindow(); - this.DOMSearchField().focus(); - } - return false; - } - - // --------- Actions - - // Closes the results window. - this.CloseResultsWindow = function() - { - this.DOMPopupSearchResultsWindow().style.display = 'none'; - this.DOMSearchClose().style.display = 'none'; - this.Activate(false); - } - - this.CloseSelectionWindow = function() - { - this.DOMSearchSelectWindow().style.display = 'none'; - } - - // Performs a search. - this.Search = function() - { - this.keyTimeout = 0; - - // strip leading whitespace - var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); - - var code = searchValue.toLowerCase().charCodeAt(0); - var idxChar = searchValue.substr(0, 1).toLowerCase(); - if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair - { - idxChar = searchValue.substr(0, 2); - } - - var resultsPage; - var resultsPageWithSearch; - var hasResultsPage; - - var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); - if (idx!=-1) - { - var hexCode=idx.toString(16); - resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + this.extension; - resultsPageWithSearch = resultsPage+'?'+escape(searchValue); - hasResultsPage = true; - } - else // nothing available for this search term - { - resultsPage = this.resultsPath + '/nomatches' + this.extension; - resultsPageWithSearch = resultsPage; - hasResultsPage = false; - } - - window.frames.MSearchResults.location = resultsPageWithSearch; - var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); - - if (domPopupSearchResultsWindow.style.display!='block') - { - var domSearchBox = this.DOMSearchBox(); - this.DOMSearchClose().style.display = 'inline-block'; - if (this.insideFrame) - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - domPopupSearchResultsWindow.style.position = 'relative'; - domPopupSearchResultsWindow.style.display = 'block'; - var width = document.body.clientWidth - 8; // the -8 is for IE :-( - domPopupSearchResultsWindow.style.width = width + 'px'; - domPopupSearchResults.style.width = width + 'px'; - } - else - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; - var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; - domPopupSearchResultsWindow.style.display = 'block'; - left -= domPopupSearchResults.offsetWidth; - domPopupSearchResultsWindow.style.top = top + 'px'; - domPopupSearchResultsWindow.style.left = left + 'px'; - } - } - - this.lastSearchValue = searchValue; - this.lastResultsPage = resultsPage; - } - - // -------- Activation Functions - - // Activates or deactivates the search panel, resetting things to - // their default values if necessary. - this.Activate = function(isActive) - { - if (isActive || // open it - this.DOMPopupSearchResultsWindow().style.display == 'block' - ) - { - this.DOMSearchBox().className = 'MSearchBoxActive'; - - var searchField = this.DOMSearchField(); - - if (searchField.value == this.searchLabel) // clear "Search" term upon entry - { - searchField.value = ''; - this.searchActive = true; - } - } - else if (!isActive) // directly remove the panel - { - this.DOMSearchBox().className = 'MSearchBoxInactive'; - this.DOMSearchField().value = this.searchLabel; - this.searchActive = false; - this.lastSearchValue = '' - this.lastResultsPage = ''; - } - } -} - -// ----------------------------------------------------------------------- - -// The class that handles everything on the search results page. -function SearchResults(name) -{ - // The number of matches from the last run of . - this.lastMatchCount = 0; - this.lastKey = 0; - this.repeatOn = false; - - // Toggles the visibility of the passed element ID. - this.FindChildElement = function(id) - { - var parentElement = document.getElementById(id); - var element = parentElement.firstChild; - - while (element && element!=parentElement) - { - if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren') - { - return element; - } - - if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes()) - { - element = element.firstChild; - } - else if (element.nextSibling) - { - element = element.nextSibling; - } - else - { - do - { - element = element.parentNode; - } - while (element && element!=parentElement && !element.nextSibling); - - if (element && element!=parentElement) - { - element = element.nextSibling; - } - } - } - } - - this.Toggle = function(id) - { - var element = this.FindChildElement(id); - if (element) - { - if (element.style.display == 'block') - { - element.style.display = 'none'; - } - else - { - element.style.display = 'block'; - } - } - } - - // Searches for the passed string. If there is no parameter, - // it takes it from the URL query. - // - // Always returns true, since other documents may try to call it - // and that may or may not be possible. - this.Search = function(search) - { - if (!search) // get search word from URL - { - search = window.location.search; - search = search.substring(1); // Remove the leading '?' - search = unescape(search); - } - - search = search.replace(/^ +/, ""); // strip leading spaces - search = search.replace(/ +$/, ""); // strip trailing spaces - search = search.toLowerCase(); - search = convertToId(search); - - var resultRows = document.getElementsByTagName("div"); - var matches = 0; - - var i = 0; - while (i < resultRows.length) - { - var row = resultRows.item(i); - if (row.className == "SRResult") - { - var rowMatchName = row.id.toLowerCase(); - rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' - - if (search.length<=rowMatchName.length && - rowMatchName.substr(0, search.length)==search) - { - row.style.display = 'block'; - matches++; - } - else - { - row.style.display = 'none'; - } - } - i++; - } - document.getElementById("Searching").style.display='none'; - if (matches == 0) // no results - { - document.getElementById("NoMatches").style.display='block'; - } - else // at least one result - { - document.getElementById("NoMatches").style.display='none'; - } - this.lastMatchCount = matches; - return true; - } - - // return the first item with index index or higher that is visible - this.NavNext = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index++; - } - return focusItem; - } - - this.NavPrev = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index--; - } - return focusItem; - } - - this.ProcessKeys = function(e) - { - if (e.type == "keydown") - { - this.repeatOn = false; - this.lastKey = e.keyCode; - } - else if (e.type == "keypress") - { - if (!this.repeatOn) - { - if (this.lastKey) this.repeatOn = true; - return false; // ignore first keypress after keydown - } - } - else if (e.type == "keyup") - { - this.lastKey = 0; - this.repeatOn = false; - } - return this.lastKey!=0; - } - - this.Nav = function(evt,itemIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - var newIndex = itemIndex-1; - var focusItem = this.NavPrev(newIndex); - if (focusItem) - { - var child = this.FindChildElement(focusItem.parentNode.parentNode.id); - if (child && child.style.display == 'block') // children visible - { - var n=0; - var tmpElem; - while (1) // search for last child - { - tmpElem = document.getElementById('Item'+newIndex+'_c'+n); - if (tmpElem) - { - focusItem = tmpElem; - } - else // found it! - { - break; - } - n++; - } - } - } - if (focusItem) - { - focusItem.focus(); - } - else // return focus to search field - { - parent.document.getElementById("MSearchField").focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = itemIndex+1; - var focusItem; - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem && elem.style.display == 'block') // children visible - { - focusItem = document.getElementById('Item'+itemIndex+'_c0'); - } - if (!focusItem) focusItem = this.NavNext(newIndex); - if (focusItem) focusItem.focus(); - } - else if (this.lastKey==39) // Right - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'block'; - } - else if (this.lastKey==37) // Left - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'none'; - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } - - this.NavChild = function(evt,itemIndex,childIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - if (childIndex>0) - { - var newIndex = childIndex-1; - document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); - } - else // already at first child, jump to parent - { - document.getElementById('Item'+itemIndex).focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = childIndex+1; - var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); - if (!elem) // last child, jump to parent next parent - { - elem = this.NavNext(itemIndex+1); - } - if (elem) - { - elem.focus(); - } - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } -} - -function setKeyActions(elem,action) -{ - elem.setAttribute('onkeydown',action); - elem.setAttribute('onkeypress',action); - elem.setAttribute('onkeyup',action); -} - -function setClassAttr(elem,attr) -{ - elem.setAttribute('class',attr); - elem.setAttribute('className',attr); -} - -function createResults() -{ - var results = document.getElementById("SRResults"); - for (var e=0; e - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/variables_0.js b/html/search/variables_0.js deleted file mode 100644 index 81d5eb5..0000000 --- a/html/search/variables_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['alias_153',['alias',['../classcore_1_1TCPSession.html#a014ae6b1465bf36606763703aa8a930d',1,'core::TCPSession']]] -]; diff --git a/html/search/variables_1.html b/html/search/variables_1.html deleted file mode 100644 index ea73d9a..0000000 --- a/html/search/variables_1.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/variables_1.js b/html/search/variables_1.js deleted file mode 100644 index 51afd6e..0000000 --- a/html/search/variables_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['blacklist_154',['blackList',['../classcore_1_1TCPServer.html#a82f6bf16e4ab20d8b30da09e034fffff',1,'core::TCPServer']]] -]; diff --git a/html/search/variables_2.html b/html/search/variables_2.html deleted file mode 100644 index 0580462..0000000 --- a/html/search/variables_2.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/variables_2.js b/html/search/variables_2.js deleted file mode 100644 index 950f227..0000000 --- a/html/search/variables_2.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['commands_155',['commands',['../classcore_1_1CommandList.html#ad0aedf95828fe743908d8423f171ff36',1,'core::CommandList::commands()'],['../classcore_1_1TCPServer.html#afcc44802b988e2f4292504e804dccf8b',1,'core::TCPServer::commands()']]] -]; diff --git a/html/search/variables_3.html b/html/search/variables_3.html deleted file mode 100644 index 0d69e76..0000000 --- a/html/search/variables_3.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/variables_3.js b/html/search/variables_3.js deleted file mode 100644 index e73db21..0000000 --- a/html/search/variables_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['maxsockets_156',['maxSockets',['../classcore_1_1EPoll.html#acfcef2513d94f7b9a191fed3dc744d90',1,'core::EPoll']]] -]; diff --git a/html/search/variables_4.html b/html/search/variables_4.html deleted file mode 100644 index a4b6506..0000000 --- a/html/search/variables_4.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/variables_4.js b/html/search/variables_4.js deleted file mode 100644 index 7bf62c1..0000000 --- a/html/search/variables_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['out_157',['out',['../classcore_1_1TCPSession.html#abb302bbb3d7e7bc75490c736364f0d4d',1,'core::TCPSession::out()'],['../classcore_1_1TCPSession2.html#a6b8005e611b6007a00ad3288973a522d',1,'core::TCPSession2::out()']]] -]; diff --git a/html/search/variables_5.html b/html/search/variables_5.html deleted file mode 100644 index 7e345d1..0000000 --- a/html/search/variables_5.html +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/html/search/variables_5.js b/html/search/variables_5.js deleted file mode 100644 index 582617e..0000000 --- a/html/search/variables_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['sessions_158',['sessions',['../classcore_1_1TCPServer.html#aeed1bc55d099667ccda51cd682bfc633',1,'core::TCPServer']]], - ['subscriptions_159',['subscriptions',['../classcore_1_1TCPServer.html#a28302dd844cfc971ee41de2000d24aa0',1,'core::TCPServer']]] -]; diff --git a/html/splitbar.png b/html/splitbar.png deleted file mode 100644 index fe895f2..0000000 Binary files a/html/splitbar.png and /dev/null differ diff --git a/html/sync_off.png b/html/sync_off.png deleted file mode 100644 index 3b443fc..0000000 Binary files a/html/sync_off.png and /dev/null differ diff --git a/html/sync_on.png b/html/sync_on.png deleted file mode 100644 index e08320f..0000000 Binary files a/html/sync_on.png and /dev/null differ diff --git a/html/tab_a.png b/html/tab_a.png deleted file mode 100644 index 3b725c4..0000000 Binary files a/html/tab_a.png and /dev/null differ diff --git a/html/tab_b.png b/html/tab_b.png deleted file mode 100644 index e2b4a86..0000000 Binary files a/html/tab_b.png and /dev/null differ diff --git a/html/tab_h.png b/html/tab_h.png deleted file mode 100644 index fd5cb70..0000000 Binary files a/html/tab_h.png and /dev/null differ diff --git a/html/tab_s.png b/html/tab_s.png deleted file mode 100644 index ab478c9..0000000 Binary files a/html/tab_s.png and /dev/null differ diff --git a/html/tabs.css b/html/tabs.css deleted file mode 100644 index 7d45d36..0000000 --- a/html/tabs.css +++ /dev/null @@ -1 +0,0 @@ -.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0px 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0px 1px 1px rgba(255,255,255,0.9);color:#283A5D;outline:none}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a.current{color:#D23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media (min-width: 768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283A5D transparent transparent transparent;background:transparent;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0px 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a:hover span.sub-arrow{border-color:#fff transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;border-radius:5px !important;box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent #fff}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #D23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#D23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}}