creativity  v1.3.0
Agent-based model of creativity and piracy
BookCopy.hpp
1 #pragma once
2 #include <eris/types.hpp>
3 
4 namespace creativity {
5 
7 class BookCopy final {
8  public:
10  enum class Status {
11  wrote,
14  pirated
15  };
16 
18  BookCopy(double quality, Status status, eris::eris_time_t acquired)
19  : quality(quality), status(status), acquired(acquired) {}
20 
21  const double quality;
22  const Status status;
23  const eris::eris_time_t acquired;
24 
26  bool wrote() const { return status == Status::wrote; }
27 
29  bool pirated() const { return status == Status::pirated; }
30 
32  bool purchased_market() const { return status == Status::purchased_market; }
33 
35  bool purchased_public() const { return status == Status::purchased_public; }
36 
37 };
38 
39 }
Primary namespace for all Creativity library code.
Definition: config.hpp:4
BookCopy(double quality, Status status, eris::eris_time_t acquired)
Creates a BookCopy.
Definition: BookCopy.hpp:18
bool purchased_public() const
Alias for status == BookCopy::Status::purchased_public
Definition: BookCopy.hpp:35
const eris::eris_time_t acquired
The simulation period when this copy was acquired.
Definition: BookCopy.hpp:23
bool wrote() const
Alias for status == BookCopy::Status::wrote
Definition: BookCopy.hpp:26
const double quality
The reader&#39;s perceived quality of the book.
Definition: BookCopy.hpp:21
The reader bought this book from the public provider.
Status
The status a book copy can have.
Definition: BookCopy.hpp:10
Container class storing the data associated with a reader&#39;s copy of a book.
Definition: BookCopy.hpp:7
The reader bought this book on the private market.
bool pirated() const
Alias for status == BookCopy::Status::pirated
Definition: BookCopy.hpp:29
const Status status
The status of the book (wrote, purchased, or pirated)
Definition: BookCopy.hpp:22
The reader pirated this book.
bool purchased_market() const
Alias for status == BookCopy::Status::purchased_market
Definition: BookCopy.hpp:32
This is the author&#39;s own copy of his book.