ROSE 0.11.145.147
ConcreteResult.h
1#ifndef ROSE_BinaryAnalysis_Concolic_ConcreteResult_H
2#define ROSE_BinaryAnalysis_Concolic_ConcreteResult_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_CONCOLIC_TESTING
5#include <Rose/BinaryAnalysis/Concolic/BasicTypes.h>
6
7#include <Sawyer/SharedObject.h>
8#include <Sawyer/SharedPointer.h>
9
10namespace Rose {
11namespace BinaryAnalysis {
12namespace Concolic {
13
24class ConcreteResult: public Sawyer::SharedObject {
25public:
27 using Ptr = ConcreteResultPtr;
28
29private:
30 double rank_;
31 bool isInteresting_;
32
33protected:
34 // Allocating constructors are named "instance" in the subclasses
35 ConcreteResult();
36
37 explicit ConcreteResult(double rank);
38
39public:
40 virtual ~ConcreteResult();
41
42public:
51 double rank() const;
52 void rank(double r);
58 bool isInteresting() const;
59 void isInteresting(bool b);
62private:
63 friend class boost::serialization::access;
64
65 template<class S>
66 void serialize(S &s, const unsigned /*version*/) {
67 s & BOOST_SERIALIZATION_NVP(rank_);
68 s & BOOST_SERIALIZATION_NVP(isInteresting_);
69 }
70};
71
72} // namespace
73} // namespace
74} // namespace
75
76#endif
77#endif
Base class for reference counted objects.
Sawyer::SharedPointer< Node > Ptr
Reference counting pointer.
void serialize(std::ostream &output, Graph &graph)
Serialize a graph into a stream of bytes.
The ROSE library.