tobicore
7.0.0
Main Page
Modules
Classes
Files
Examples
File List
All
Classes
Functions
Variables
Typedefs
Enumerator
Friends
Groups
Pages
TPiC.cpp
1
/*
2
Copyright (C) 2009-2011 EPFL (Ecole Polytechnique Fédérale de Lausanne)
3
Michele Tavella <michele.tavella@epfl.ch>
4
5
This program is free software: you can redistribute it and/or modify
6
it under the terms of the GNU General Public License as published by
7
the Free Software Foundation, either version 3 of the License, or
8
(at your option) any later version.
9
10
This program is distributed in the hope that it will be useful,
11
but WITHOUT ANY WARRANTY; without even the implied warranty of
12
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13
GNU General Public License for more details.
14
15
You should have received a copy of the GNU General Public License
16
along with this program. If not, see <http://www.gnu.org/licenses/>.
17
*/
18
19
#ifndef TPIC_CPP
20
#define TPIC_CPP
21
22
#include "TPiC.hpp"
23
24
int
TPiC::Set
(
ICSerializer
* serializer) {
25
if
(
TPInterface::_com
== NULL)
26
return
TPInterface::ErrorSocket
;
27
if
(
TPInterface::_endpoint
!= NULL)
28
return
TPInterface::ErrorNotSupported
;
29
if
(
TPInterface::_com
->IsConnected() ==
false
)
30
return
TPInterface::ErrorSocket
;
31
32
serializer->
Serialize
(&this->_cache);
33
return
(
TPInterface::_com
->Send(TPInterface::_cache) > 0 ?
34
TPInterface::Successful
:
TPInterface::ErrorSocket
);
35
}
36
37
int
TPiC::Get
(
ICSerializer
* serializer) {
38
if
(
TPInterface::_com
== NULL)
39
return
TPInterface::ErrorSocket
;
40
if
(
TPInterface::_endpoint
== NULL)
41
return
TPInterface::ErrorNotSupported
;
42
if
(
TPInterface::_com
->IsConnected() ==
false
)
43
return
TPInterface::ErrorSocket
;
44
45
TPInterface::_cache.clear();
46
TPInterface::_com
->
Recv
(&this->_cache);
47
TPInterface::_stream
.
Append
(TPInterface::_cache);
48
49
std::string buffer;
50
if
(
TPInterface::_stream
.Extract(&buffer,
"<tobiic"
,
"</tobiic>"
) ==
true
) {
51
serializer->
Deserialize
(&buffer);
52
return
TPInterface::Successful
;
53
}
54
return
TPInterface::Unsuccessful
;
55
}
56
57
#endif
tobiplatform
TPiC.cpp
Generated on Tue Oct 23 2012 13:15:34 for tobicore by
1.8.1.2