function GoogleMapUtilsCreateMarker(map, name, lat, lng, infoWindowHtml, iconDefinition) {
    
    var icono = new GIcon(G_DEFAULT_ICON);

    if (iconDefinition) {
        if (iconDefinition.IconUrl) icono.image = iconDefinition.IconUrl;
        if (iconDefinition.ShadowUrl) icono.shadow = iconDefinition.ShadowUrl;

        if (iconDefinition.IconSizeWidth) icono.iconSize = new GSize(iconDefinition.IconSizeWidth, iconDefinition.IconSizeHeight);
        if (iconDefinition.ShadowSizeWidth) icono.shadowSize = new GSize(iconDefinition.ShadowSizeWidth, iconDefinition.ShadowSizeHeight);

        if (iconDefinition.AnchorX) icono.iconAnchor = new GPoint(iconDefinition.AnchorX, iconDefinition.AnchorY); 
    }

    icono.title = name;
    var marker = new GMarker(new GLatLng(lat, lng), icono);

    if (infoWindowHtml) {
        GEvent.addListener(marker, "click", function () {
            map.openInfoWindowHtml(new GLatLng(lat, lng), infoWindowHtml);
        });
    }

    return marker;
}
