31namespace LinguisticProcessing {
32namespace EventAnalysis {
47 m_entities[type].push_back(e);
52 std::vector<MediaticData::EntityType> types;
54 it=m_entities.begin(),it_end=m_entities.end();it!=it_end;it++) {
55 types.push_back((*it).first);
63 std::map<MediaticData::EntityType,std::vector<Entity> >::const_iterator
66 for (std::vector<Entity>::const_iterator it=(*entities).second.begin(),
67 it_end=(*entities).second.end();it!=it_end;it++) {
68 if ((*it).getMain()) {
79 for( std::vector< EventParagraph* >::iterator pars = event->begin() ;
80 pars !=
event->end() ; pars++ ) {
81 LDEBUG <<
"EventData::convertToEvents: try paragraph ( "
82 << (*pars)->
getPosition() <<
", " << (*pars)->getEnd() <<
" )...";
83 if( (entity->
getPosition() >= (*pars)->getPosition()) &&
103 events->push_back(event);
108 std::vector<Lima::LinguisticProcessing::Segment>
const &segments = segmData->
getSegments();
111 LDEBUG <<
"EventData::convertToEvents: looking for main segment...";
112 for( std::vector<Lima::LinguisticProcessing::Segment>::const_iterator sIter = segments.begin() ;
113 sIter != segments.end() ; sIter++ ) {
114 LDEBUG <<
"EventData::convertToEvents: type of segment is " << sIter->getType();
115 if( !sIter->getType().compare(
"MAIN_EVENT") ) {
117 LDEBUG <<
"EventData::convertToEvents: location is ( "
118 << sIter->getPosBegin() <<
", " << sIter->getPosEnd() <<
" )";
122 eventPar->
setId(parNum++);
123 event->push_back(eventPar);
132 MediaticData::MediaticData::single().getEntityName((*it).first));
133 LDEBUG <<
"EventData::convertToEvents: process entity of type " << entityName;
134 for(std::vector<Entity>::const_iterator e=(*it).second.begin(),e_end=(*it).second.end();e!=e_end;e++)
142 if( eventPar == 0 ) {
143 LWARN <<
"EventData::convertToEvents: cannot find paragraph where to place event "
144 << entityName <<
" ( " << e->getPosition() <<
", "
145 << (e->getPosition()+e->getLength()-1) <<
" )";
147 else if( !entityName.compare(
"Seisme.SEISMIC_EVENT" ) )
149 LDEBUG <<
"EventData::convertToEvents: addEventEntity( "
150 << entityName <<
", " << e->getOutputUTF8String() <<
" )";
155 LDEBUG <<
"EventData::convertToEvents: addEntity( "
156 << entityName <<
", " << e->getOutputUTF8String() <<
" )";
157 eventPar->
addEntity( (*it).first, entity );
161 LDEBUG <<
"EventData::convertToEvents: end...";
#define EVENTANALYSISLOGINIT
just for semantics: base class for analysisData
uint64_t getLength(void) const
uint64_t getPosition(void) const
virtual Entity * clone() const
std::map< Common::MediaticData::EntityType, std::vector< Entity > > & getEntities()
const Entity & getMainEntity(const Common::MediaticData::EntityType &type) const
EventParagraph * locate(Event *event, const Entity *entity) const
std::vector< Common::MediaticData::EntityType > getEntityTypes() const
void addEntity(const Common::MediaticData::EntityType &type, const Entity &e)
Events * convertToEvents(const Lima::LinguisticProcessing::SegmentationData *segmData) const
void setPosition(uint64_t position)
void setLength(uint64_t length)
void addEventEntity(const Common::MediaticData::EntityType &type, Entity *entity)
void addEntity(const Common::MediaticData::EntityType &type, Entity *entity)
uint64_t getPosition() const
This class represents a list of elements, that are pointers on polymmorphic annotations that can be d...
const std::vector< Segment > & getSegments() const
std::string limastring2utf8stdstring(const Lima::LimaString &phrase, uint32_t size0)
Convert a wide string to a string , in dest up to size bytes.
static const struct TextHtmlEntity entities[]