38#ifndef __EST_FEATURES_H__
39#define __EST_FEATURES_H__
44#include "EST_TIterator.h"
54EST_Val est_val(
const EST_Item_featfunc f);
66 void save_fpair(ostream &outf,
70 static EST_Val feature_default_value;
262 {
f.save(s);
return s; }
271 float F(
EST_Litem *p)
const {
return features->
list(p).v.Float(); }
282 void point_to_first(
IPointer &ip)
const
283 { ip.i.begin(*features);}
284 void move_pointer_forwards(IPointer &ip)
const
286 bool points_to_something(
const IPointer &ip)
const
287 {
return ip.i != 0; }
316 EST_write_status
save(ostream &outf)
const;
318 EST_write_status
save_sexpr(ostream &outf)
const;
324{(void)a; (void)b;
return false;}
void set(const EST_String &name, const char *cval)
EST_Features & A(const EST_String &path) const
void set(const EST_String &name, int ival)
EST_Features & operator=(const EST_Features &a)
const EST_Val & val(const char *name) const
const EST_Val & operator()(const EST_String &path) const
void set_path(const EST_String &name, const EST_Val &sval)
void remove(const EST_String &name)
friend ostream & operator<<(ostream &s, const EST_Features &f)
const EST_String S(const EST_String &path, const EST_String &def) const
void set_function(const EST_String &name, const EST_String &f)
const EST_Val & f(const EST_String &path, const EST_Val &def) const
void set_val(const EST_String &name, const EST_Val &sval)
EST_read_status load(EST_TokenStream &ts)
load features from already opened EST_TokenStream
EST_read_status load_sexpr(EST_TokenStream &ts)
load features from sexpression, contained in already opened EST_TokenStream
void set(const EST_String &name, EST_Features &f)
EST_write_status save(ostream &outf) const
save features in already opened ostream
const float F(const EST_String &path) const
const EST_String S(const EST_String &path) const
const int I(const EST_String &path, int def) const
const EST_Val & f(const EST_String &path) const
int present(const EST_String &name) const
EST_write_status save_sexpr(ostream &outf) const
save features as s-expression in already opened ostream
const int I(const EST_String &path) const
void set(const EST_String &name, float fval)
void set(const EST_String &name, const EST_String &sval)
const EST_Val & val_path(const EST_String &path) const
const float F(const EST_String &path, float def) const
void set(const EST_String &name, double dval)
const int length() const
number of key value pairs in list
int remove_item(const K &rkey, int quiet=0)
remove key and val pair from list
int add_item(const K &rkey, const V &rval, int no_search=0)
add key-val pair to list
EST_TList< EST_TKVI< K, V > > list
Linked list of key-val pairs. Don't use this as it will be made private in the future.
const EST_String & string(void) const
const int Int(void) const
const float Float(void) const