@classmethod
def grassAsciiRasterToWKB(cls, session, grassRasterPath, srid, noData=0,
    dataType='32BF'):
    """
        Load GRASS ASCII rasters directly using the makeSingleBandWKBRaster method. Do this to eliminate the raster2pgsql
        dependency.
        :param session: SQLAlchemy session object bound to a PostGIS enabled database
        :param grassRasterPath: Path to the GRASS ASCII raster to read into the database.
        :param srid: SRID of the raster
        :param noData: Value of cells to be considered as cells containing no cells
        :param dataType: Data type of the values of the raster. One of "1BB", "2BUI", "4BUI", "8BSI", "8BUI", "16BSI", "16BUI", "32BSI", "32BUI", "32BF", or "64BF". Defaults to "32BF".
        """
    NUM_HEADER_LINES = 6
    north = 0.0
    east = 0.0
    west = 0.0
    rows = 0
    columns = 0
    if grassRasterPath is not None:
        with open(grassRasterPath, 'r') as f:
            rasterLines = f.readlines()
    else:
        print('RASTER LOAD ERROR: Must provide the path the raster.')
        raise
    for line in rasterLines[0:NUM_HEADER_LINES]:
        spline = line.split()
        if 'north' in spline[0].lower():
            north = float(spline[1])
        elif 'east' in spline[0].lower():
            east = float(spline[1])
        elif 'west' in spline[0].lower():
            west = float(spline[1])
        elif 'rows' in spline[0].lower():
            rows = int(spline[1])
        elif 'cols' in spline[0].lower():
            columns = int(spline[1])
    width = columns
    height = rows
    upperLeftX = west
    upperLeftY = north
    cellSizeX = int(abs(west - east) / columns)
    cellSizeY = -1 * cellSizeX
    dataArrayList = []
    for line in rasterLines[NUM_HEADER_LINES:len(rasterLines)]:
        dataArrayList.append('[{0}]'.format(', '.join(line.split())))
    dataArrayString = '[{0}]'.format(', '.join(dataArrayList))
    wellKnownBinary = cls.makeSingleBandWKBRaster(session=session, width=
        width, height=height, upperLeftX=upperLeftX, upperLeftY=upperLeftY,
        cellSizeX=cellSizeX, cellSizeY=cellSizeY, skewX=0, skewY=0, srid=
        srid, dataArray=dataArrayString, noDataValue=noData, dataType=dataType)
    return wellKnownBinary
