OSVR Framework (Internal Development Docs)  0.6-1962-g59773924
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
ParametersC.cpp
Go to the documentation of this file.
1 
11 // Copyright 2014 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
28 
29 // Library/third-party includes
30 // - none
31 
32 // Standard includes
33 // - none
34 
36  const char path[],
37  size_t *len) {
38  if (ctx == nullptr) {
39  return OSVR_RETURN_FAILURE;
40  }
41  if (len == nullptr) {
42  return OSVR_RETURN_FAILURE;
43  }
44  std::string val = ctx->getStringParameter(path);
45  *len = val.empty() ? 0 : (val.size() + 1);
46  return OSVR_RETURN_SUCCESS;
47 }
48 
50  const char path[], char *buf,
51  size_t len) {
52  if (ctx == nullptr) {
53  return OSVR_RETURN_FAILURE;
54  }
55  if (buf == nullptr) {
56  return OSVR_RETURN_FAILURE;
57  }
58 
59  std::string val = ctx->getStringParameter(path);
60  if (val.size() + 1 > len) {
62  return OSVR_RETURN_FAILURE;
63  }
64  val.copy(buf, val.size());
65  buf[val.size()] = '\0';
66  return OSVR_RETURN_SUCCESS;
67 }
std::string getStringParameter(std::string const &path) const
Gets a string parameter value.
OSVR_ReturnCode osvrClientGetStringParameterLength(OSVR_ClientContext ctx, const char path[], size_t *len)
Get the length of a string parameter associated with the given path.
Definition: ParametersC.cpp:35
#define OSVR_RETURN_FAILURE
The "failure" value for an OSVR_ReturnCode.
Definition: ReturnCodesC.h:47
#define OSVR_RETURN_SUCCESS
The "success" value for an OSVR_ReturnCode.
Definition: ReturnCodesC.h:45
OSVR_ReturnCode osvrClientGetStringParameter(OSVR_ClientContext ctx, const char path[], char *buf, size_t len)
Get a string parameter associated with the given path.
Definition: ParametersC.cpp:49