OSVR Framework (Internal Development Docs)
0.6-1962-g59773924
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Modules
Pages
SharedMemoryClient.cpp
Go to the documentation of this file.
1
11
// Copyright 2015 Sensics, Inc.
12
//
13
// Licensed under the Apache License, Version 2.0 (the "License");
14
// you may not use this file except in compliance with the License.
15
// You may obtain a copy of the License at
16
//
17
// http://www.apache.org/licenses/LICENSE-2.0
18
//
19
// Unless required by applicable law or agreed to in writing, software
20
// distributed under the License is distributed on an "AS IS" BASIS,
21
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22
// See the License for the specific language governing permissions and
23
// limitations under the License.
24
25
// Internal Includes
26
#include <
osvr/Common/IPCRingBuffer.h
>
27
28
// Library/third-party includes
29
// - none
30
31
// Standard includes
32
#include <thread>
33
#include <chrono>
34
#include <iostream>
35
36
int
main() {
37
auto
opts
=
osvr::common::IPCRingBuffer::Options
(
"Test"
);
38
auto
buf =
osvr::common::IPCRingBuffer::find
(
opts
);
39
if
(!buf) {
40
std::cout <<
"Couldn't find it."
<< std::endl;
41
return
1;
42
}
43
44
std::cout <<
"Capacity: "
<< buf->getEntries() <<
" entries.\n"
;
45
std::cout <<
"Entry size: "
<< buf->getEntrySize() <<
" bytes per entry."
46
<< std::endl;
47
48
osvr::common::IPCRingBuffer::sequence_type
seq(0);
49
while
(
true
) {
50
std::cin.ignore();
51
std::cout <<
"Sequence number "
<< seq <<
": "
;
52
auto
res = buf->get(seq);
53
if
(res) {
54
std::cout << (res.get())[0] << (res.get())[1] << (res.get())[2];
55
}
else
{
56
std::cout <<
"Not available"
;
57
}
58
std::cout << std::endl;
59
seq++;
60
}
61
62
return
0;
63
}
osvr::common::IPCRingBuffer::Options
Definition:
IPCRingBuffer.h:72
osvr::common::IPCRingBuffer::find
static IPCRingBufferPtr find(Options const &opts)
Named constructor, for use by client processes: accesses an IPC ring buffer using the options structu...
osvr::common::IPCRingBuffer::sequence_type
uint32_t sequence_type
The sequence number is automatically incremented with each "put" into the buffer. Note that...
Definition:
IPCRingBuffer.h:149
IPCRingBuffer.h
Header.
osvr::util::projection_options
Definition:
ProjectionMatrix.h:77
examples
internals
SharedMemoryClient.cpp
Generated on Tue May 16 2017 15:22:20 for OSVR Framework (Internal Development Docs) by
Doxygen
1.8.8