Medial Code Documentation
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Data Fields | Protected Attributes
MedSamplingStrategy Class Referenceabstract

An abstract class with sampling methods over registry records to convert to MedSamples. More...

#include <MedSamplingStrategy.h>

Inheritance diagram for MedSamplingStrategy:
SerializableObject MedSamplingAge MedSamplingDates MedSamplingFixedTime MedSamplingTimeWindow MedSamplingStick MedSamplingYearly

Public Member Functions

virtual void init_sampler (MedRepository &rep)
 The sampler need repository for Age filters if exist and some samplers also uses bdate.
 
void get_sampling_options (const unordered_map< int, vector< pair< int, int > > > &pid_time_ranges, unordered_map< int, vector< int > > &pid_options) const
 The sampling options - calls _get_sampling_options, before that applies filters.
 
virtual void _get_sampling_options (const unordered_map< int, vector< pair< int, int > > > &pid_time_ranges, unordered_map< int, vector< int > > &pid_options) const =0
 The specific sampler get_options to implement.
 
void set_filters (const string &filtering_str)
 stores filters prior to sampling
 
- Public Member Functions inherited from SerializableObject
virtual int version () const
 Relevant for serializations.
 
virtual string my_class_name () const
 For better handling of serializations it is highly recommended that each SerializableObject inheriting class will implement the next method.
 
virtual void serialized_fields_name (vector< string > &field_names) const
 The names of the serialized fields.
 
virtual void * new_polymorphic (string derived_name)
 for polymorphic classes that want to be able to serialize/deserialize a pointer * to the derived class given its type one needs to implement this function to return a new to the derived class given its type (as in my_type)
 
virtual void pre_serialization ()
 
virtual void post_deserialization ()
 
virtual size_t get_size ()
 Gets bytes sizes for serializations.
 
virtual size_t serialize (unsigned char *blob)
 Serialiazing object to blob memory. return number ob bytes wrote to memory.
 
virtual size_t deserialize (unsigned char *blob)
 Deserialiazing blob to object. returns number of bytes read.
 
size_t serialize_vec (vector< unsigned char > &blob)
 
size_t deserialize_vec (vector< unsigned char > &blob)
 
virtual size_t serialize (vector< unsigned char > &blob)
 
virtual size_t deserialize (vector< unsigned char > &blob)
 
virtual int read_from_file (const string &fname)
 read and deserialize model
 
virtual int write_to_file (const string &fname)
 serialize model and write to file
 
virtual int read_from_file_unsafe (const string &fname)
 read and deserialize model without checking version number - unsafe read
 
int init_from_string (string init_string)
 Init from string.
 
int init_params_from_file (string init_file)
 
int init_param_from_file (string file_str, string &param)
 
virtual int init (map< string, string > &map)
 Virtual to init object from parsed fields.
 
int update_from_string (const string &init_string)
 
virtual int update (map< string, string > &map)
 Virtual to update object from parsed fields.
 
virtual string object_json () const
 

Static Public Member Functions

static MedSamplingStrategymake_sampler (const string &sampler_name)
 
static MedSamplingStrategymake_sampler (const string &sampler_name, const string &init_params)
 

Data Fields

FilterParams filtering_params
 the filtering constraints prior to sampling
 

Protected Attributes

unordered_map< int, int > pids_bdates
 

Detailed Description

An abstract class with sampling methods over registry records to convert to MedSamples.

Member Function Documentation

◆ _get_sampling_options()

virtual void MedSamplingStrategy::_get_sampling_options ( const unordered_map< int, vector< pair< int, int > > > &  pid_time_ranges,
unordered_map< int, vector< int > > &  pid_options 
) const
pure virtual

The specific sampler get_options to implement.

Implemented in MedSamplingTimeWindow, MedSamplingAge, MedSamplingDates, MedSamplingFixedTime, and MedSamplingStick.

◆ init_sampler()

void MedSamplingStrategy::init_sampler ( MedRepository rep)
virtual

The sampler need repository for Age filters if exist and some samplers also uses bdate.

Reimplemented in MedSamplingStick.

◆ make_sampler() [1/2]

MedSamplingStrategy * MedSamplingStrategy::make_sampler ( const string &  sampler_name)
static
if (sampler_name == "time_window")
sampler = new MedSamplingTimeWindow;
else if (sampler_name == "yearly")
sampler = new MedSamplingYearly;
else if (sampler_name == "age")
sampler = new MedSamplingAge;
else if (sampler_name == "dates")
sampler = new MedSamplingDates;
else if (sampler_name == "fixed_time")
sampler = new MedSamplingFixedTime;
else if (sampler_name == "stick")
sampler = new MedSamplingStick;
else
MTHROW_AND_ERR("Unsupported Sampling method %s\n", sampler_name.c_str());
A Class which samples by age from age to age by jump and find match in registry.
Definition MedSamplingStrategy.h:76
Samples between given dates for ech patient.
Definition MedSamplingStrategy.h:97
A Class which samples from start_time to end_time by jump and find match in registry.
Definition MedSamplingStrategy.h:124
A Sampler to sample on one of signals test.
Definition MedSamplingStrategy.h:166
A Class which samples records on registry for certain time window.
Definition MedSamplingStrategy.h:55
DEPRECATED - A Class which samples by year from year to year by jump and find match in registry.
Definition MedSamplingStrategy.h:155

[MedSamplingStrategy::make_sampler]

[MedSamplingStrategy::make_sampler]

◆ make_sampler() [2/2]

MedSamplingStrategy * MedSamplingStrategy::make_sampler ( const string &  sampler_name,
const string &  init_params 
)
static
if (sampler_name == "time_window")
sampler = new MedSamplingTimeWindow;
else if (sampler_name == "yearly")
sampler = new MedSamplingYearly;
else if (sampler_name == "age")
sampler = new MedSamplingAge;
else if (sampler_name == "dates")
sampler = new MedSamplingDates;
else if (sampler_name == "fixed_time")
sampler = new MedSamplingFixedTime;
else if (sampler_name == "stick")
sampler = new MedSamplingStick;
else
MTHROW_AND_ERR("Unsupported Sampling method %s\n", sampler_name.c_str());

The documentation for this class was generated from the following files: