/usr/include/choreonoid-1.1/cnoid/src/Base/PutPropertyFunction.h is in libcnoid-dev 1.1.0+dfsg-6.1+b4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | /**
@author Shin'ichiro Nakaoka
*/
#ifndef CNOID_GUIBASE_PUT_PROPERTY_FUNCTION_H_INCLUDED
#define CNOID_GUIBASE_PUT_PROPERTY_FUNCTION_H_INCLUDED
#include <vector>
#include <string>
#include <boost/function.hpp>
namespace cnoid {
class Selection
{
public:
inline Selection(std::vector<std::string> labels, int which = 0) : labels(labels), which(which) { }
inline std::string label() const { return labels[which]; }
std::vector<std::string> labels;
int which;
};
class PutPropertyFunction
{
public:
virtual ~PutPropertyFunction() { }
// bool
virtual void operator()(const std::string& name, bool value) = 0;
virtual void operator()(const std::string& name, bool value, const boost::function<bool(bool)>& changeFunc) = 0;
// int
virtual void operator()(const std::string& name, int value) = 0;
virtual void operator()(const std::string& name, int value, const boost::function<bool(int)>& changeFunc) = 0;
// double
virtual void operator()(const std::string& name, double value) = 0;
virtual void operator()(const std::string& name, double value, const boost::function<bool(double)>& changeFunc) = 0;
// string
virtual void operator()(const std::string& name, const std::string& value) = 0;
virtual void operator()(const std::string& name, const std::string& value,
const boost::function<bool(const std::string&)>& changeFunc) = 0;
// selection
virtual void operator()(const std::string& name, Selection selection) = 0;
virtual void operator()(const std::string& name, Selection selection,
const boost::function<bool(int which)>& changeFunc) = 0;
};
}
#endif
|