/usr/include/JAGS/graph/ScalarLogicalNode.h is in jags 4.2.0-2.
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 | #ifndef SCALAR_LOGICAL_NODE_H_
#define SCALAR_LOGICAL_NODE_H_
#include <graph/LogicalNode.h>
#include <vector>
namespace jags {
class ScalarFunction;
/**
* @short Scalar Node defined by the BUGS-language operator <-
*
* A ScalarLogicalNode is a logical node that uses a ScalarFunction as
* the defining function and is not vectorized.
*/
class ScalarLogicalNode : public LogicalNode {
ScalarFunction const * const _func;
public:
/**
* A scalar logical node is defined by a scalar function (which
* may be an inline operator in the BUGS language) and its
* parameters.
*/
ScalarLogicalNode(ScalarFunction const *func, unsigned int nchain,
std::vector<Node const*> const ¶meters);
/**
* Calculates the value of the node based on the parameters.
*/
void deterministicSample(unsigned int chain);
/**
* @see ScalarFunction#checkParameterValue.
*/
bool checkParentValues(unsigned int chain) const;
//DeterministicNode *clone(std::vector<Node const *> const &parents) const;
};
} /* namespace jags */
#endif /* SCALAR_LOGICAL_NODE_H_ */
|