24 #if !defined (octave_ov_class_h)
25 #define octave_ov_class_h 1
53 parent_list (), obsolete_copies (0)
57 const std::list<std::string>& plist)
59 parent_list (plist), obsolete_copies (0)
67 parent_list (s.parent_list), obsolete_copies (0) { }
87 const std::list<octave_value_list>& idx)
94 const std::list<octave_value_list>& idx,
100 return subsref (
"(", std::list<octave_value_list> (1, idx), nargout);
104 const std::string&
type);
107 { map.assign (k, rhs); };
110 const std::list<octave_value_list>& idx,
114 const std::list<octave_value_list>& idx,
117 idx_vector index_vector (
bool require_integers =
false)
const;
121 size_t byte_size (
void)
const;
133 size_t nparents (
void)
const {
return parent_list.size (); }
151 bool is_map (
void)
const {
return false; }
160 {
return parent_list; }
169 bool is_instance_of (
const std::string&)
const;
173 void print (std::ostream& os,
bool pr_as_read_syntax =
false);
175 void print_raw (std::ostream& os,
bool pr_as_read_syntax =
false)
const;
177 bool print_name_tag (std::ostream& os,
const std::string& name)
const;
179 void print_with_name (std::ostream& os,
const std::string& name,
180 bool print_padding =
true);
182 bool reconstruct_exemplar (
void);
184 static void clear_exemplar_map (
void);
186 bool reconstruct_parents (
void);
188 bool save_ascii (std::ostream& os);
190 bool load_ascii (std::istream& is);
192 bool save_binary (std::ostream& os,
bool& save_as_floats);
194 bool load_binary (std::istream& is,
bool swap,
197 bool save_hdf5 (
octave_hdf5_id loc_id,
const char *name,
bool save_as_floats);
201 mxArray *as_mxArray (
void)
const;
216 static void register_type (
void);
226 std::string get_current_method_class (
void);
229 const std::string&
type,
230 const std::list<octave_value_list>& idx,
247 : field_names (x.field_names),
248 parent_class_names (x.parent_class_names) { }
262 size_t nparents (
void)
const {
return parent_class_names.size (); }
266 std::list<std::string>
parents (
void)
const {
return parent_class_names; }
279 typedef std::map<std::string, exemplar_info>::iterator
281 typedef std::map<std::string, exemplar_info>::const_iterator
std::list< std::string > parent_class_name_list(void) const
static std::string static_class_name(void)
std::list< std::string > parents(void) const
octave_value reshape(const dim_vector &new_dims) const
octave_base_value * clone(void) const
octave_idx_type length(void) const
dim_vector dims(void) const
octave_idx_type nfields(void) const
std::string type_name(void) const
static bool in_class_method(const cdef_class &cls)
static const std::string t_name
void assign(const std::string &k, const octave_value &rhs)
octave_class(const octave_map &m, const std::string &id, const std::list< std::string > &plist)
octave_base_value * empty_clone(void) const
string_vector parent_class_names(void) const
octave_idx_type numel(int n=0) const
Number of elements that a matrix with this dimensions would have.
string_vector field_names
octave_map map_value(void) const
std::map< std::string, exemplar_info >::const_iterator exemplar_const_iterator
static std::map< std::string, exemplar_info > exemplar_map
size_t nparents(void) const
size_t size(T const (&)[z])
std::list< std::string > parent_class_names
bool is_defined(void) const
static std::string static_type_name(void)
size_t nparents(void) const
octave_idx_type nfields(void) const
octave_class(const octave_class &s)
std::list< std::string > parent_list
octave_idx_type numel(void) const
bool is_object(void) const
octave_map reshape(const dim_vector &dv) const
octave_value subsref(const std::string &type, const std::list< octave_value_list > &idx)
octave_value_list do_multi_index_op(int nargout, const octave_value_list &idx)
void resize(const dim_vector &dv, bool fill=false)
exemplar_info(const exemplar_info &x)
octave_value resize(const dim_vector &dv, bool=false) const
std::map< std::string, exemplar_info >::iterator exemplar_iterator
string_vector fields(void) const
static int static_type_id(void)
return octave_value(v1.char_array_value().concat(v2.char_array_value(), ra_idx),((a1.is_sq_string()||a2.is_sq_string())? '\'': '"'))
F77_RET_T const double * x
std::string class_name(void) const