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

A abstract class that represents a signal used to create registry and it's filter conditions to change outcome values based on current time point usefull if the registry depends seperatly by each signal / only one signal. More...

#include <MedRegistry.h>

Inheritance diagram for RegistrySignal:
SerializableObject RegistrySignalAnd RegistrySignalAny RegistrySignalDrug RegistrySignalRange RegistrySignalSet

Public Member Functions

 RegistrySignal ()
 Default init ctor for object, that won't contain garbage when not initialized specifically.
 
virtual bool get_outcome (const UniversalSigVec &s, int current_i, float &result)=0
 a function that retrive current outcome based on new time point
 
int init (map< string, string > &mapper)
 The parsed fields from init command.
 
virtual void _init (const map< string, string > &mapper)
 Each specific init function for pther arguments - called from init.
 
void * new_polymorphic (string dname)
 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)
 
- 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 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)
 
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 RegistrySignalmake_registry_signal (const string &type, MedRepository &rep, const string &path_to_cfg_file)
 creates Registry rule.
 
static RegistrySignalmake_registry_signal (const string &type, MedRepository &rep, const string &init_string, const string &path_to_cfg_file)
 creates Registry rule and uses init_string to initialize the type
 
static void parse_registry_rules (const string &reg_cfg, MedRepository &rep, vector< RegistrySignal * > &result)
 parsing of registry signal rules - each line is new signal rule in this format:
Each line is TAB seperated by RegistrySignal type and RegistrySignal init string calling RegistrySignal::make_registry_signal
 

Data Fields

string signalName
 the signal name
 
int duration_flag
 the duration for each positive to merge time ranges
 
int buffer_duration
 a buffer duration between positive to negative
 
bool take_only_first
 if True will take only first occournce
 
int channel
 the channel number the rule operates on
 
float outcome_value
 the outcome value when condition holds
 

Detailed Description

A abstract class that represents a signal used to create registry and it's filter conditions to change outcome values based on current time point usefull if the registry depends seperatly by each signal / only one signal.

Member Function Documentation

◆ _init()

virtual void RegistrySignal::_init ( const map< string, string > &  mapper)
inlinevirtual

Each specific init function for pther arguments - called from init.

Reimplemented in RegistrySignalSet, RegistrySignalRange, RegistrySignalDrug, and RegistrySignalAnd.

◆ get_outcome()

virtual bool RegistrySignal::get_outcome ( const UniversalSigVec &  s,
int  current_i,
float &  result 
)
pure virtual

a function that retrive current outcome based on new time point

Implemented in RegistrySignalSet, RegistrySignalRange, RegistrySignalDrug, and RegistrySignalAnd.

◆ init()

int RegistrySignal::init ( map< string, string > &  mapper)
virtual

The parsed fields from init command.


if (it->first == "signalName")
signalName = it->second;
else if (it->first == "duration_flag")
duration_flag = stoi(it->second);
else if (it->first == "buffer_duration")
buffer_duration = stoi(it->second);
else if (it->first == "take_only_first")
take_only_first = stoi(it->second) > 0;
else if (it->first == "outcome_value")
outcome_value = stof(it->second);
else if (it->first == "channel")
channel = stoi(it->second);
else
rest_arguments[it->first] = it->second;
int duration_flag
the duration for each positive to merge time ranges
Definition MedRegistry.h:209
int buffer_duration
a buffer duration between positive to negative
Definition MedRegistry.h:210
string signalName
the signal name
Definition MedRegistry.h:208
int channel
the channel number the rule operates on
Definition MedRegistry.h:212
bool take_only_first
if True will take only first occournce
Definition MedRegistry.h:211
float outcome_value
the outcome value when condition holds
Definition MedRegistry.h:213

[RegistrySignal::init]

[RegistrySignal::init]

Reimplemented from SerializableObject.

◆ make_registry_signal()

RegistrySignal * RegistrySignal::make_registry_signal ( const string &  type,
MedRepository rep,
const string &  path_to_cfg_file 
)
static

creates Registry rule.

can have "set" for RegistrySignalSet and "range" for RegistrySignalRange. ///

if (type == "set")
return new RegistrySignalSet(empty_str, 0, 0, false, rep, empty_arr, path_to_cfg_file);
else if (type == "range")
return new RegistrySignalRange(empty_str, 0, 0, false, 0, 0);
else if (type == "drug")
return new RegistrySignalDrug(rep, path_to_cfg_file);
else if (type == "and")
return new RegistrySignalAnd(rep);
else if (type == "any")
return new RegistrySignalAny;
else
MTHROW_AND_ERR("Error: Unsupported type \"%s\" for RegistrySignal::make_registry_signal\n", type.c_str());
A Registry Signal class wrapper for AND condition on multiple Registry signal channels.
Definition MedRegistry.h:341
A Class that conditions nothing, just exising of the signal.
Definition MedRegistry.h:307
A Registry operator to handle drugs with condition on drug type and dosage range.
Definition MedRegistry.h:318
A Class that condition a value range.
Definition MedRegistry.h:286
A Class that condition a set of codes in dictionary.
Definition MedRegistry.h:261

[RegistrySignal::make_registry_signal]

[RegistrySignal::make_registry_signal]

◆ new_polymorphic()

void * RegistrySignal::new_polymorphic ( string  derived_name)
virtual

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)

Reimplemented from SerializableObject.


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