def __init__(self, data, eps, number_clusters, threshold = <NUM_LIT:0.5>, ccore = True):
self.__pointer_data = data;<EOL>self.__eps = eps;<EOL>self.__number_clusters = number_clusters;<EOL>self.__threshold = threshold;<EOL>self.__clusters = None;<EOL>self.__ccore = ccore;<EOL>if (self.__ccore):<EOL><INDENT>self.__ccore = ccore_library.workable();<EOL><DEDENT>self.__degree_normalization = <NUM_LIT:1.0> + <NUM_LIT> * ( (<NUM_LIT:1.0> - threshold) / (<NUM_LIT:1.0> + threshold) );<EOL>self.__adjacency_matrix = None;<EOL>self.__create_adjacency_matrix()<EOL>
!
        @brief Constructor of clustering algorithm ROCK.

        @param[in] data (list): Input data - list of points where each point is represented by list of coordinates.
        @param[in] eps (double): Connectivity radius (similarity threshold), points are neighbors if distance between them is less than connectivity radius.
        @param[in] number_clusters (uint): Defines number of clusters that should be allocated from the input data set.
        @param[in] threshold (double): Value that defines degree of normalization that influences on choice of clusters for merging during processing.
        @param[in] ccore (bool): Defines should be CCORE (C++ pyclustering library) used instead of Python code or not.