StaticRatingsWithDateTime Class Reference

Rating data structure for ratings with time stamps. More...

Inheritance diagram for StaticRatingsWithDateTime:
StaticRatings Ratings IRatings

List of all members.

Public Member Functions

void Add (double item)
virtual void Add (int user_id, int item_id, byte rating)
 Add byte-valued rating to the collection.
virtual void Add (int user_id, int item_id, float rating)
 Add float-valued rating to the collection.
override void Add (int user_id, int item_id, double rating)
 Add a new rating.
void Add (int user_id, int item_id, double rating, DateTime datetime)
void BuildByItemCounts ()
void BuildByUserCounts ()
void BuildItemIndices ()
 Build the item indices.
void BuildRandomIndex ()
 Build the random index.
void BuildUserIndices ()
 Build the user indices.
void Clear ()
bool Contains (double item)
void CopyTo (double[] array, int index)
virtual double Get (int user_id, int item_id, ICollection< int > indexes)
 Directly access rating by user and item.
double Get (int user_id, int item_id)
 Directly access rating by user and item.
int GetIndex (int user_id, int item_id, ICollection< int > indexes)
 Get index of rating for given user and item.
int GetIndex (int user_id, int item_id)
 Get index of rating for given user and item.
HashSet< int > GetItems (IList< int > indices)
 Get all items that are referenced by a given list of indices.
HashSet< int > GetUsers (IList< int > indices)
 Get all users that are referenced by a given list of indices.
int IndexOf (double item)
void Insert (int index, double item)
bool Remove (double item)
override void RemoveAt (int index)
override void RemoveItem (int item_id)
 Remove all ratings of a given item.
override void RemoveUser (int user_id)
 Remove all ratings by a given user.
 StaticRatingsWithDateTime (int size)
 Create a new StaticRatingsWithDateTime object.
virtual bool TryGet (int user_id, int item_id, ICollection< int > indexes, out double rating)
 Try to retrieve a rating for a given user-item combination.
virtual bool TryGet (int user_id, int item_id, out double rating)
 Try to retrieve a rating for a given user-item combination.
bool TryGetIndex (int user_id, int item_id, ICollection< int > indexes, out int index)
 Try to get the index for given user and item.
bool TryGetIndex (int user_id, int item_id, out int index)
 Try to get the index for given user and item.

Protected Attributes

int pos = 0
 The position where the next rating will be stored.
IList< double > Values

Properties

HashSet< int > AllItems [get]
 all item IDs in the dataset
HashSet< int > AllUsers [get]
 all user IDs in the dataset
double Average [get]
 average rating in the dataset
IList< IList< int > > ByItem [get]
 indices by item
IList< IList< int > > ByUser [get]
 indices by user
override int Count [get]
IList< int > CountByItem [get]
 rating count by item
IList< int > CountByUser [get]
 rating count by user
IList< DateTime > DateTimes [get, set]
 List of DateTime values for each rating event.
bool IsReadOnly [get]
IList< int > Items [get, set]
 the item entries
int MaxItemID [get, set]
 the maximum item ID in the dataset
int MaxUserID [get, set]
 the maximum user ID in the dataset
IList< int > RandomIndex [get]
 get a randomly ordered list of all indices
virtual double this [int index] [get, set]
 Directly access rating by user and item.
IList< int > Users [get, set]
 the user entries

Detailed Description

Rating data structure for ratings with time stamps.

This data structure does NOT support online updates.


Constructor & Destructor Documentation

StaticRatingsWithDateTime ( int  size  ) 

Create a new StaticRatingsWithDateTime object.

Parameters:
size the number of ratings

Member Function Documentation

virtual void Add ( int  user_id,
int  item_id,
byte  rating 
) [virtual, inherited]

Add byte-valued rating to the collection.

Parameters:
user_id the user ID
item_id the item ID
rating the rating

Implements IRatings.

Reimplemented in StaticByteRatings, and StaticFloatRatings.

virtual void Add ( int  user_id,
int  item_id,
float  rating 
) [virtual, inherited]

Add float-valued rating to the collection.

Parameters:
user_id the user ID
item_id the item ID
rating the rating

Implements IRatings.

Reimplemented in StaticFloatRatings.

override void Add ( int  user_id,
int  item_id,
double  rating 
) [virtual, inherited]

Add a new rating.

Parameters:
user_id the user ID
item_id the item ID
rating the rating value

Reimplemented from Ratings.

Reimplemented in StaticByteRatings, and StaticFloatRatings.

void BuildItemIndices (  )  [inherited]

Build the item indices.

Implements IRatings.

void BuildRandomIndex (  )  [inherited]

Build the random index.

Implements IRatings.

void BuildUserIndices (  )  [inherited]

Build the user indices.

Implements IRatings.

virtual double Get ( int  user_id,
int  item_id,
ICollection< int >  indexes 
) [virtual, inherited]

Directly access rating by user and item.

Parameters:
user_id the user ID
item_id the item ID
indexes the indexes to look at
Returns:
the first rating encountered that matches the user ID and item ID

Implements IRatings.

Reimplemented in StaticByteRatings, and StaticFloatRatings.

double Get ( int  user_id,
int  item_id 
) [inherited]

Directly access rating by user and item.

Parameters:
user_id the user ID
item_id the item ID
Returns:
the first found rating of the given item by the given user

Implements IRatings.

int GetIndex ( int  user_id,
int  item_id,
ICollection< int >  indexes 
) [inherited]

Get index of rating for given user and item.

Parameters:
user_id the user ID
item_id the item ID
indexes the indexes to look at
Returns:
the index of the first rating encountered that matches the user ID and item ID

Implements IRatings.

int GetIndex ( int  user_id,
int  item_id 
) [inherited]

Get index of rating for given user and item.

Parameters:
user_id the user ID
item_id the item ID
Returns:
the index of the first rating encountered that matches the user ID and item ID

Implements IRatings.

HashSet<int> GetItems ( IList< int >  indices  )  [inherited]

Get all items that are referenced by a given list of indices.

Parameters:
indices the indices to take into account
Returns:
the set of itemss

Implements IRatings.

HashSet<int> GetUsers ( IList< int >  indices  )  [inherited]

Get all users that are referenced by a given list of indices.

Parameters:
indices the indices to take into account
Returns:
the set of users

Implements IRatings.

override void RemoveItem ( int  item_id  )  [virtual, inherited]

Remove all ratings of a given item.

Parameters:
item_id the item ID

Reimplemented from Ratings.

override void RemoveUser ( int  user_id  )  [virtual, inherited]

Remove all ratings by a given user.

Parameters:
user_id the user ID

Reimplemented from Ratings.

virtual bool TryGet ( int  user_id,
int  item_id,
ICollection< int >  indexes,
out double  rating 
) [virtual, inherited]

Try to retrieve a rating for a given user-item combination.

Parameters:
user_id the user ID
item_id the item ID
indexes the indexes to look at
rating will contain the first rating encountered that matches the user ID and item ID
Returns:
true if a rating was found for the user and item

Implements IRatings.

Reimplemented in StaticByteRatings, and StaticFloatRatings.

virtual bool TryGet ( int  user_id,
int  item_id,
out double  rating 
) [virtual, inherited]

Try to retrieve a rating for a given user-item combination.

Parameters:
user_id the user ID
item_id the item ID
rating will contain the first rating encountered that matches the user ID and item ID
Returns:
true if a rating was found for the user and item

Implements IRatings.

Reimplemented in StaticByteRatings, and StaticFloatRatings.

bool TryGetIndex ( int  user_id,
int  item_id,
ICollection< int >  indexes,
out int  index 
) [inherited]

Try to get the index for given user and item.

Parameters:
user_id the user ID
item_id the item ID
indexes the indexes to look at
index will contain the index of the first rating encountered that matches the user ID and item ID
Returns:
true if an index was found for the user and item

Implements IRatings.

bool TryGetIndex ( int  user_id,
int  item_id,
out int  index 
) [inherited]

Try to get the index for given user and item.

Parameters:
user_id the user ID
item_id the item ID
index will contain the index of the first rating encountered that matches the user ID and item ID
Returns:
true if an index was found for the user and item

Implements IRatings.


Member Data Documentation

int pos = 0 [protected, inherited]

The position where the next rating will be stored.


Property Documentation

HashSet<int> AllItems [get, inherited]

all item IDs in the dataset

Implements IRatings.

HashSet<int> AllUsers [get, inherited]

all user IDs in the dataset

Implements IRatings.

double Average [get, inherited]

average rating in the dataset

Implements IRatings.

IList<IList<int> > ByItem [get, inherited]

indices by item

Should be implemented as a lazy data structure

Implements IRatings.

IList<IList<int> > ByUser [get, inherited]

indices by user

Should be implemented as a lazy data structure

Implements IRatings.

IList<int> CountByItem [get, inherited]

rating count by item

Should be implemented as a lazy data structure

Implements IRatings.

IList<int> CountByUser [get, inherited]

rating count by user

Should be implemented as a lazy data structure

Implements IRatings.

IList<DateTime> DateTimes [get, set]

List of DateTime values for each rating event.

IList<int> Items [get, set, inherited]

the item entries

Implements IRatings.

int MaxItemID [get, set, inherited]

the maximum item ID in the dataset

Implements IRatings.

int MaxUserID [get, set, inherited]

the maximum user ID in the dataset

Implements IRatings.

IList<int> RandomIndex [get, inherited]

get a randomly ordered list of all indices

Should be implemented as a lazy data structure

Implements IRatings.

double this [get, set, inherited]

Directly access rating by user and item.

Parameters:
user_id the user ID
item_id the item ID

Implements IRatings.

Reimplemented in StaticByteRatings, and StaticFloatRatings.

IList<int> Users [get, set, inherited]

the user entries

Implements IRatings.


The documentation for this class was generated from the following file:
Generated on Tue May 24 12:44:17 2011 for MyMediaLite by  doxygen 1.6.3