Merge "Fix extension support checks in negative api tests" into nougat-cts-dev am...
[platform/upstream/VK-GL-CTS.git] / executor / xeLocalTcpIpLink.hpp
1 #ifndef _XELOCALTCPIPLINK_HPP
2 #define _XELOCALTCPIPLINK_HPP
3 /*-------------------------------------------------------------------------
4  * drawElements Quality Program Test Executor
5  * ------------------------------------------
6  *
7  * Copyright 2014 The Android Open Source Project
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *      http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  *//*!
22  * \file
23  * \brief Tcp/Ip link that manages execserver process.
24  *//*--------------------------------------------------------------------*/
25
26 #include "xeDefs.hpp"
27 #include "xeCommLink.hpp"
28 #include "xeTcpIpLink.hpp"
29 #include "deProcess.h"
30
31 namespace xe
32 {
33
34 class LocalTcpIpLink : public CommLink
35 {
36 public:
37                                                                 LocalTcpIpLink                  (void);
38                                                                 ~LocalTcpIpLink                 (void);
39
40         // LocalTcpIpLink -specific API
41         void                                            start                                   (const char* execServerPath, const char* workDir, int port);
42         void                                            stop                                    (void);
43
44         // CommLink API
45         void                                            reset                                   (void);
46
47         CommLinkState                           getState                                (void) const;
48         CommLinkState                           getState                                (std::string& error) const;
49
50         void                                            setCallbacks                    (StateChangedFunc stateChangedCallback, LogDataFunc testLogDataCallback, LogDataFunc infoLogDataCallback, void* userPtr);
51
52         void                                            startTestProcess                (const char* name, const char* params, const char* workingDir, const char* caseList);
53         void                                            stopTestProcess                 (void);
54
55 private:
56         TcpIpLink                                       m_link;
57         deProcess*                                      m_process;
58 };
59
60 } // xe
61
62 #endif // _XELOCALTCPIPLINK_HPP