My Project
Public Types | Public Member Functions | Static Public Member Functions
Gcalc_function Class Reference

List of all members.

Public Types

enum  op_type {
  op_shape = 0, op_not = 0x80000000, op_union = 0x10000000, op_intersection = 0x20000000,
  op_symdifference = 0x30000000, op_difference = 0x40000000, op_backdifference = 0x50000000, op_any = 0x70000000
enum  shape_type { shape_point = 0, shape_line = 1, shape_polygon = 2, shape_hole = 3 }

Public Member Functions

gcalc_shape_info add_new_shape (uint32 shape_id, shape_type shape_kind)
int single_shape_op (shape_type shape_kind, gcalc_shape_info *si)
void add_operation (op_type operation, uint32 n_operands)
void add_not_operation (op_type operation, uint32 n_operands)
uint32 get_next_operation_pos ()
void add_operands_to_op (uint32 operation_pos, uint32 n_operands)
void set_operands_to_op (uint32 operation_pos, uint32 n_operands)
void set_cur_obj (uint32 cur_obj)
int reserve_shape_buffer (uint n_shapes)
int reserve_op_buffer (uint n_ops)
uint get_nshapes () const
shape_type get_shape_kind (gcalc_shape_info si) const
void set_states (int *shape_states)
int alloc_states ()
void invert_state (gcalc_shape_info shape)
int get_state (gcalc_shape_info shape)
int count ()
void clear_state ()
void reset ()
int find_function (Gcalc_scan_iterator &scan_it)
void debug_print_function_buffer ()

Static Public Member Functions

static const char * op_name (int code)
static const char * shape_name (int code)

Member Function Documentation

void Gcalc_function::add_operands_to_op ( uint32  operation_pos,
uint32  n_operands 

Read operand number from the given position and add more operands.

Print function buffer created after shape transformation into mysqld log and into client side warnings. Printing to mysqld log is useful when server crashed during an operation. Printing to client side warnings is useful for mtr purposes.

static const char* Gcalc_function::op_name ( int  code) [static]

Convert operation code to its readable name.

void Gcalc_function::set_operands_to_op ( uint32  operation_pos,
uint32  n_operands 

Set operand number at the given position (replace the old operand number).

static const char* Gcalc_function::shape_name ( int  code) [static]

Convert shape code to its readable name.

The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines