xref: /haiku/src/apps/haikudepot/model/RatingStability.h (revision a5e4976d39d790942b064f777d107518ea95be83)
1*a5e4976dSAndrew Lindesay /*
2*a5e4976dSAndrew Lindesay  * Copyright 2020, Andrew Lindesay <apl@lindesay.co.nz>.
3*a5e4976dSAndrew Lindesay  * All rights reserved. Distributed under the terms of the MIT License.
4*a5e4976dSAndrew Lindesay  */
5*a5e4976dSAndrew Lindesay #ifndef RATING_STABILITY_H
6*a5e4976dSAndrew Lindesay #define RATING_STABILITY_H
7*a5e4976dSAndrew Lindesay 
8*a5e4976dSAndrew Lindesay 
9*a5e4976dSAndrew Lindesay #include <Referenceable.h>
10*a5e4976dSAndrew Lindesay #include <String.h>
11*a5e4976dSAndrew Lindesay 
12*a5e4976dSAndrew Lindesay 
13*a5e4976dSAndrew Lindesay class RatingStability : public BReferenceable {
14*a5e4976dSAndrew Lindesay public:
15*a5e4976dSAndrew Lindesay 								RatingStability();
16*a5e4976dSAndrew Lindesay 								RatingStability(
17*a5e4976dSAndrew Lindesay 									const BString& code,
18*a5e4976dSAndrew Lindesay 									const BString& name,
19*a5e4976dSAndrew Lindesay 									int64 ordering);
20*a5e4976dSAndrew Lindesay 								RatingStability(
21*a5e4976dSAndrew Lindesay 									const RatingStability& other);
22*a5e4976dSAndrew Lindesay 
23*a5e4976dSAndrew Lindesay 			RatingStability&
24*a5e4976dSAndrew Lindesay 								operator=(const RatingStability& other);
25*a5e4976dSAndrew Lindesay 			bool				operator==(const RatingStability& other)
26*a5e4976dSAndrew Lindesay 									const;
27*a5e4976dSAndrew Lindesay 			bool				operator!=(const RatingStability& other)
28*a5e4976dSAndrew Lindesay 									const;
29*a5e4976dSAndrew Lindesay 
Code()30*a5e4976dSAndrew Lindesay 			const BString&		Code() const
31*a5e4976dSAndrew Lindesay 									{ return fCode; }
Name()32*a5e4976dSAndrew Lindesay 			const BString&		Name() const
33*a5e4976dSAndrew Lindesay 									{ return fName; }
Ordering()34*a5e4976dSAndrew Lindesay 				int64			Ordering() const
35*a5e4976dSAndrew Lindesay 									{ return fOrdering; }
36*a5e4976dSAndrew Lindesay 
37*a5e4976dSAndrew Lindesay 			int					Compare(const RatingStability& other)
38*a5e4976dSAndrew Lindesay 									const;
39*a5e4976dSAndrew Lindesay private:
40*a5e4976dSAndrew Lindesay 			BString				fCode;
41*a5e4976dSAndrew Lindesay 			BString				fName;
42*a5e4976dSAndrew Lindesay 			int64				fOrdering;
43*a5e4976dSAndrew Lindesay };
44*a5e4976dSAndrew Lindesay 
45*a5e4976dSAndrew Lindesay 
46*a5e4976dSAndrew Lindesay typedef BReference<RatingStability> RatingStabilityRef;
47*a5e4976dSAndrew Lindesay 
48*a5e4976dSAndrew Lindesay 
49*a5e4976dSAndrew Lindesay extern bool IsRatingStabilityBefore(const RatingStabilityRef& rs1,
50*a5e4976dSAndrew Lindesay 	const RatingStabilityRef& rs2);
51*a5e4976dSAndrew Lindesay 
52*a5e4976dSAndrew Lindesay 
53*a5e4976dSAndrew Lindesay #endif // RATING_STABILITY_H
54