<commit_before>/*
    open source routing machine
    Copyright (C) <NAME>, 2010

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU AFFERO General Public License as published by
the Free Software Foundation; either version 3 of the License, or
any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
or see http://www.gnu.org/licenses/agpl.txt.
 */

#ifndef PHANTOMNODES_H_
#define PHANTOMNODES_H_

#include "ExtractorStructs.h"

struct PhantomNodes {
    PhantomNodes() : startNode1(UINT_MAX), startNode2(UINT_MAX), targetNode1(UINT_MAX), targetNode2(UINT_MAX), startRatio(1.), targetRatio(1.) {}
    NodeID startNode1;
    NodeID startNode2;
    NodeID targetNode1;
    NodeID targetNode2;
    double startRatio;
    double targetRatio;
    _Coordinate startCoord;
    _Coordinate targetCoord;
};

#endif /* PHANTOMNODES_H_ */<commit_msg>Adding operator<<() and Reset() functions to PhantomNodes<commit_after>/*
    open source routing machine
    Copyright (C) <NAME>, 2010

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU AFFERO General Public License as published by
the Free Software Foundation; either version 3 of the License, or
any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
or see http://www.gnu.org/licenses/agpl.txt.
 */

#ifndef PHANTOMNODES_H_
#define PHANTOMNODES_H_

#include "ExtractorStructs.h"

struct PhantomNodes {
    PhantomNodes() : startNode1(UINT_MAX), startNode2(UINT_MAX), targetNode1(UINT_MAX), targetNode2(UINT_MAX), startRatio(1.), targetRatio(1.) {}
    NodeID startNode1;
    NodeID startNode2;
    NodeID targetNode1;
    NodeID targetNode2;
    double startRatio;
    double targetRatio;
    _Coordinate startCoord;
    _Coordinate targetCoord;
    void Reset() {
        startNode1 = UINT_MAX;
        startNode2 = UINT_MAX;
        targetNode1 = UINT_MAX;
        targetNode2 = UINT_MAX;
        startRatio = 1.;
        targetRatio = 1.;
    }
};

std::ostream& operator<<(std::ostream &out, const PhantomNodes & pn){
    out << "startNode1: " << pn.startNode1 << std::endl;
    out << "startNode2: " << pn.startNode2 << std::endl;
    out << "targetNode1: " << pn.targetNode1 << std::endl;
    out << "targetNode2: " << pn.targetNode2 << std::endl;
    out << "startCoord: " << pn.startCoord << std::endl;
    out << "targetCoord: " << pn.targetCoord << std::endl;
    return out;
}

struct NodesOfEdge {
    NodeID startID;
    NodeID destID;
    double ratio;
    _Coordinate projectedPoint;
};

#endif /* PHANTOMNODES_H_ */
{'fraction_non_alphanumeric': 0.08680248007085917, 'fraction_numerical': 0.021257750221434897, 'mean_word_length': 3.9315866084425037, 'pattern_counts': {'":': 0, '<': 45, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7031800', 'n_tokens_mistral': 1049, 'n_tokens_neox': 1003, 'n_words': 376}