Program Listing for File config.h
↰ Return to documentation for file (rc_genicam_api/config.h)
/*
* This file is part of the rc_genicam_api package.
*
* Copyright (c) 2017 Roboception GmbH
* All rights reserved
*
* Author: Heiko Hirschmueller
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
*
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* 3. Neither the name of the copyright holder nor the names of its contributors
* may be used to endorse or promote products derived from this software without
* specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
#ifndef RC_GENICAM_API_CONFIG
#define RC_GENICAM_API_CONFIG
#include <GenApi/GenApi.h>
#include <GenApi/ChunkAdapter.h>
#include <memory>
#include <string>
#include <vector>
/*
This module provides convenience functions for setting and retrieving values
from a GenICam nodemap.
*/
namespace rcg
{
bool callCommand(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
bool exception=false);
bool setBoolean(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
bool value, bool exception=false);
bool setInteger(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
int64_t value, bool exception=false);
bool setIPV4Address(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
const char *value, bool exception);
bool setFloat(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
double value, bool exception=false);
bool setEnum(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
const char *value, bool exception=false);
size_t setRegister(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
const uint8_t *buffer, size_t len, bool exception=false);
bool setString(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
const char *value, bool exception=false);
bool getBoolean(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
bool exception=false, bool igncache=false);
int64_t getInteger(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
int64_t *vmin=0, int64_t *vmax=0, bool exception=false, bool igncache=false);
double getFloat(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
double *vmin=0, double *vmax=0, bool exception=false, bool igncache=false);
std::string getEnum(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
bool exception=false);
std::string getEnum(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
std::vector<std::string> &list, bool exception=false);
size_t getRegister(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
uint8_t *buffer, size_t len, size_t *total=0, bool exception=false, bool igncache=false);
std::string getString(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
bool exception=false, bool igncache=false);
void checkFeature(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
const char *value, bool igncache=false);
std::shared_ptr<GenApi::CChunkAdapter> getChunkAdapter(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap,
const std::string &tltype);
class Buffer;
std::string getComponetOfPart(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap,
const Buffer *buffer, uint32_t part);
std::string loadFile(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
bool exception=false);
bool saveFile(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
const std::string &data, bool exception=false);
bool loadStreamableParameters(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
bool exception=false);
bool saveStreamableParameters(const std::shared_ptr<GenApi::CNodeMapRef> &nodemap, const char *name,
bool exception=false);
}
#endif