def _get_type(points, soma_class):
assert soma_class in (SOMA_CONTOUR, SOMA_CYLINDER)<EOL>npoints = len(points)<EOL>if soma_class == SOMA_CONTOUR:<EOL><INDENT>return {<NUM_LIT:0>: None,<EOL><NUM_LIT:1>: SomaSinglePoint,<EOL><NUM_LIT:2>: None}.get(npoints, SomaSimpleContour)<EOL><DEDENT>if(npoints == <NUM_LIT:3> and<EOL>points[<NUM_LIT:0>][COLS.P] == -<NUM_LIT:1> and<EOL>points[<NUM_LIT:1>][COLS.P] == <NUM_LIT:1> and<EOL>points[<NUM_LIT:2>][COLS.P] == <NUM_LIT:1>):<EOL><INDENT>L.warning('<STR_LIT>')<EOL>return SomaNeuromorphoThreePointCylinders<EOL><DEDENT>return {<NUM_LIT:0>: None,<EOL><NUM_LIT:1>: SomaSinglePoint}.get(npoints, SomaCylinders)<EOL>
get the type of the soma

    Args:
        points: Soma points
        soma_class(str): one of 'contour' or 'cylinder' to specify the type