Skip to content

Commit 7423b88

Browse files
committed
add MESSAGE_TYPE_UNKNOWN_ENTITY
1 parent 4b35fca commit 7423b88

File tree

2 files changed

+10
-9
lines changed

2 files changed

+10
-9
lines changed

IfcPlusPlus/src/ifcpp/model/StatusCallback.h

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,14 @@ class IFCQUERY_EXPORT StatusCallback
3232
public:
3333
enum MessageType
3434
{
35-
MESSAGE_TYPE_UNKNOWN,
35+
MESSAGE_TYPE_UNDEFINED,
3636
MESSAGE_TYPE_GENERAL_MESSAGE,
3737
MESSAGE_TYPE_PROGRESS_VALUE, //\brief Progress mechanism to update progress bar or similar.
3838
MESSAGE_TYPE_PROGRESS_TEXT, //\brief Progress mechanism to update text in progress bar or similar.
3939
MESSAGE_TYPE_MINOR_WARNING,
4040
MESSAGE_TYPE_WARNING,
4141
MESSAGE_TYPE_ERROR,
42+
MESSAGE_TYPE_UNKNOWN_ENTITY,
4243
MESSAGE_TYPE_CLEAR_MESSAGES,
4344
MESSAGE_TYPE_CANCELED
4445
};
@@ -51,7 +52,7 @@ class IFCQUERY_EXPORT StatusCallback
5152
//\brief Default constructor.
5253
Message()
5354
{
54-
m_message_type = MessageType::MESSAGE_TYPE_UNKNOWN;
55+
m_message_type = MessageType::MESSAGE_TYPE_UNDEFINED;
5556
m_reporting_function = "";
5657
m_entity = nullptr;
5758
m_progress_value = -1;
@@ -115,7 +116,7 @@ class IFCQUERY_EXPORT StatusCallback
115116
{
116117
switch (m->m_message_type)
117118
{
118-
case MESSAGE_TYPE_UNKNOWN:
119+
case MESSAGE_TYPE_UNDEFINED:
119120
case MESSAGE_TYPE_GENERAL_MESSAGE:
120121
case MESSAGE_TYPE_MINOR_WARNING:
121122
case MESSAGE_TYPE_WARNING:

IfcPlusPlus/src/ifcpp/reader/ReaderSTEP.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -812,7 +812,7 @@ void ReaderSTEP::readData(std::istream& read_in, std::streampos file_size, share
812812
return;
813813
}
814814
std::string file_schema_version = model->getIfcSchemaVersionOfLoadedFile();
815-
messageCallback(std::string("Detected IFC version: ") + file_schema_version, StatusCallback::MESSAGE_TYPE_GENERAL_MESSAGE, "");
815+
messageCallback(std::string("Detected IFC version: ") + file_schema_version, StatusCallback::MESSAGE_TYPE_GENERAL_MESSAGE, __FUNC__);
816816

817817
size_t read_size = model->getFileHeader().size();
818818
std::stringstream err;
@@ -918,11 +918,6 @@ void ReaderSTEP::readData(std::istream& read_in, std::streampos file_size, share
918918
++lineCount;
919919
}
920920
}
921-
catch (UnknownEntityException& e)
922-
{
923-
std::string unknown_keyword = e.m_keyword;
924-
err << __FUNC__ << ": unknown entity: " << unknown_keyword.c_str() << std::endl;
925-
}
926921
catch (BuildingException& e)
927922
{
928923
err << e.what();
@@ -936,6 +931,11 @@ void ReaderSTEP::readData(std::istream& read_in, std::streampos file_size, share
936931
err << __FUNC__ << ": error occurred" << std::endl;
937932
}
938933

934+
if (err_unknown_entity.tellp() > 0)
935+
{
936+
messageCallback(err_unknown_entity.str(), StatusCallback::MESSAGE_TYPE_UNKNOWN_ENTITY, __FUNC__);
937+
}
938+
939939
// copy entities into map so that they can be found during entity attribute initialization
940940
std::unordered_map<int, shared_ptr<BuildingEntity> >& map_entities = model->getMapIfcEntities();
941941
for (auto& entity_read_object : vec_entities)

0 commit comments

Comments
 (0)