#include <DtsObject.h>
Inheritance diagram for DtsObject_:
An object is read-only except for initializaiton, when it is assumed to only have a single user (and therefore not require locking.). Only the field cache is locked for thread safety.
Reference Counting | |
Programmers should NOT use these methods directly | |
void | intrusive_ptr_add_ref (DtsObject_ *o) |
Used by DtsObject (boost::intrusive_ptr). | |
void | intrusive_ptr_release (DtsObject_ *o) |
Used by DtsObject (boost::intrusive_ptr). | |
Public Member Functions | |
DtsObject_ (DTS *dts, int size, int type) | |
void | init (int size, dts_typeid type) |
(Re-)initialize the object to the given size and type | |
DtsObject | make_writable () |
void | prime_all_fields () |
void | prime_field (dts_field_info *) |
std::vector< DtsObject > | fieldcache () |
Get a copy of the entire field cache. | |
int | write (struct pickle *pickle, int fd) |
void | send (dts_field_element fieldnum, dts_comparison *comparisons) |
void | send (DtsField &field, dts_comparison *comparisons) |
int | match (dts_comparison *comps) |
double | eval_arith_operand (struct dts_operand *op) |
Expr module uses this. | |
DTS * | getDts () const |
Pointer to the DTS used by this type. | |
Copy Constructors | |
DtsObject | dup () |
Return a new object with a copy of the data and a private field vector. | |
DtsObject | private_copy () |
Return a new object with shared data, but a private field vector. | |
Meta-data Methods | |
void | setsize (int size) |
int | getsize () const |
unsigned long | getid () const |
unsigned char * | getdata () const |
dts_typeid | gettype () const |
void | settype (int type) |
Initializers | |
void | setdata (void *data) |
void | setdatacopy (const void *src) |
int | set_fromstring (const char *datastr) |
Field Access | |
DtsObject | getfield (DtsField &fieldv, bool nowarn=false) |
Return a field object. | |
DtsObject | getfield (char *s, bool nowarn=false) |
Less efficient lookup by string. | |
void | attach_field (DtsField &field, DtsObject field_data) |
Friends | |
DtsObject | DTS::msg_check (DtsObject, dts_field_element) |
|
Return a new object with a copy of the data and a private field vector. The field vector is a copy of the original. |
|
Return a new object with shared data, but a private field vector. The field vector is a copy of the original. |