This code deletes n columns from ExSan(n, m) ---> ExSan(p, q-n)

ExSan++ ExSan

     1 /***********START***************/

     2 //legend

     3 // n: north   s: south  e: east  w: west  ptr: pointer

     4 // This code deletes N columns from the data structure ExSan

     5 void Net::colDeleteNet(NETPTR net,   unsigned short deleteNcols) { // the number of deleted c

     6    

     7    ROWPTR  rptr(nullptr);

     8 

     9    if (net->get_net_cols() > 2) {

    10       for (unsigned short col = 1; deleteNcols; col++) {

    11          //opposite to insert         

    12          rptr = net->go_to_row(net, 1);

    13          for (unsigned short row = 1; row <= net->get_net_rows(); row++) {//ok

    14             rptr->get_backward_ptr()->get_previous_ptr()->set_next_ptr(nullptr);  //pending in inse

    15             rptr->get_backward_ptr()->set_previous_ptr(nullptr);  //pending in insert

    16 

    17             if (row == 1) {//ok                              

    18                rptr->get_backward_ptr()->get_sw_ptr()->set_ne_ptr(nullptr);

    19                rptr->get_backward_ptr()->set_sw_ptr(nullptr);

    20 

    21                rptr->get_backward_ptr()->get_s_ptr()->set_n_ptr(nullptr);

    22                rptr->get_backward_ptr()->set_s_ptr(nullptr);

    23             }

    24             else if (row == net->get_net_rows()) {//ok

    25                rptr->get_backward_ptr()->get_n_ptr()->set_s_ptr(nullptr);

    26                rptr->get_backward_ptr()->set_n_ptr(nullptr);

    27 

    28                rptr->get_backward_ptr()->get_nw_ptr()->set_se_ptr(nullptr);

    29                rptr->get_backward_ptr()->set_nw_ptr(nullptr);

    30 

    31             }

    32             else {

    33                rptr->get_backward_ptr()->get_n_ptr()->set_s_ptr(nullptr);

    34                rptr->get_backward_ptr()->set_n_ptr(nullptr);

    35 

    36                rptr->get_backward_ptr()->get_nw_ptr()->set_se_ptr(nullptr);

    37                rptr->get_backward_ptr()->set_nw_ptr(nullptr);

    38 

    39                rptr->get_backward_ptr()->get_sw_ptr()->set_ne_ptr(nullptr);

    40                rptr->get_backward_ptr()->set_sw_ptr(nullptr);

    41 

    42                rptr->get_backward_ptr()->get_s_ptr()->set_n_ptr(nullptr);

    43                rptr->get_backward_ptr()->set_s_ptr(nullptr);

    44             }

    45             rptr = rptr->get_down_ptr();

    46          }

    47          net->set_net_cols(net->get_net_cols() - 1);

    48          if (net->get_net_cols() == 2) break;  //limit has been reached

    49       }

    50    }

    51    else { fout << "\n\tthere is already min lim of net cols reached --> 2 "; }

    52 }

    53 /***********END Net::colDeleteNet*****************/

Polulating ExSan with Market Data Tick by Tick
Previous         Low Latency Systematic Trading Algorithm         Next

+ + C   E x S a n   C + +
D o   N o t   A c c e p t   D e f a u l t s
T h i n k   D i f f e r e n t

Flag Counter

Comments

Popular posts from this blog

This code adds one column to ExSan Grid // ExSan(n, m) ----> Exsan(n, m + 1)

How to scramble the lines of a txt file