QisMExploder API

The QisMExploder group of functions is intended to control how "vectors" are returned and to collect the vectors in the 'view window' when requested to do so.

api and classes for qislibm.so QisMlib API QisMFile API QisMExplode API QisMDraw API QisMBool API QisMView Super Class

Click on any of the API class boxes in the illustration to get details on specific functions.

Setting Up the QisMExploder

Convert paths to boundaries during database traversal or retrieve them as is

  virtual void Set_convert_paths_to_boundaries(const bool set = true) = 0;

Verify (Get) Path Conversion Flag Setting

  virtual bool Get_vector_paths() const = 0;

Set Enclose or Crossing Flag

Return only those vectors that completely lie inside the view window (enclose) or return any vector that crosses the view window during database traversal (crossing)

virtual void Set_vector_fully_inside(const bool set_ = true) = 0;

Verify (Get) Setting of Enclose/Crossing Flag

  virtual bool Get_vector_fully_inside() const = 0;

Control how elements of an array are processed during database traversal

virtual void Set_array_mode(const QisMExploderArray::Mode mode) = 0; 

Array mode flags

struct QisMExploderArray
  enum Mode {
     NONE   = 0 /* No array elements processed */
    ,OUTER  = 1 /* Only the outer row, column elements processed */
    ,ALL    = 2 /* All array elements processed */

Get the array mode setting

virtual QisMExploderArray::Mode Get_array_mode() const = 0;

Starting the Exploder

Traverse the QisMFile database (the layout file you loaded) with the current view (exploder) settings to retrieve boundary, path, text, references) in that view (vector) On the client side, an object must have been created that includes a handler for this notification and processes the data that is returned.

  virtual bool Get_vector_data
      QisMNotify* target, void* clientHandle = 0, 
      const bool createThread = false
    = 0;