-// Copyright (C) 2014-2019 CEA/DEN, EDF R&D
+// Copyright (C) 2014-2022 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-#include "FiltersPlugin_Plugin.h"
-#include "FiltersPlugin_Selection.h"
-#include "FiltersPlugin_HorizontalFace.h"
-#include "FiltersPlugin_VerticalFace.h"
#include "FiltersPlugin_BelongsTo.h"
-#include "FiltersPlugin_OnPlane.h"
-#include "FiltersPlugin_OnLine.h"
+#include "FiltersPlugin_ContinuousFaces.h"
+#include "FiltersPlugin_EdgeSize.h"
+#include "FiltersPlugin_ExternalFaces.h"
+#include "FiltersPlugin_FaceSize.h"
+#include "FiltersPlugin_FeatureEdges.h"
+#include "FiltersPlugin_HorizontalFace.h"
#include "FiltersPlugin_OnGeometry.h"
+#include "FiltersPlugin_OnLine.h"
+#include "FiltersPlugin_OnPlane.h"
#include "FiltersPlugin_OnPlaneSide.h"
#include "FiltersPlugin_OppositeToEdge.h"
+#include "FiltersPlugin_Plugin.h"
+#include "FiltersPlugin_RelativeToSolid.h"
+#include "FiltersPlugin_Selection.h"
+#include "FiltersPlugin_Validators.h"
+#include "FiltersPlugin_VerticalFace.h"
+#include "FiltersPlugin_VolumeSize.h"
+
+#include <Config_ModuleReader.h>
#include <ModelAPI_Session.h>
#include <ModelAPI_FiltersFactory.h>
FiltersPlugin_Plugin::FiltersPlugin_Plugin()
{
- // register validators
+ // register filters
SessionPtr aMgr = ModelAPI_Session::get();
ModelAPI_FiltersFactory* aFactory = aMgr->filters();
aFactory->registerFilter("HorizontalFaces", new FiltersPlugin_HorizontalFace);
aFactory->registerFilter("OnGeometry", new FiltersPlugin_OnGeometry);
aFactory->registerFilter("OnPlaneSide", new FiltersPlugin_OnPlaneSide);
aFactory->registerFilter("OppositeToEdge", new FiltersPlugin_OppositeToEdge);
+ aFactory->registerFilter("RelativeToSolid", new FiltersPlugin_RelativeToSolid);
+ aFactory->registerFilter("ExternalFaces", new FiltersPlugin_ExternalFaces);
+ aFactory->registerFilter("EdgeSize", new FiltersPlugin_EdgeSize);
+ aFactory->registerFilter("FaceSize", new FiltersPlugin_FaceSize);
+ aFactory->registerFilter("VolumeSize", new FiltersPlugin_VolumeSize);
+ aFactory->registerFilter("FeatureEdges", new FiltersPlugin_FeatureEdges);
+ aFactory->registerFilter("ContinuousFaces", new FiltersPlugin_ContinuousFaces);
+
+ Config_ModuleReader::loadScript("FiltersPlugin_TopoConnectedFaces");
+
+ // register validators
+ ModelAPI_ValidatorsFactory* aValidators = aMgr->validators();
+ aValidators->registerValidator("FiltersPlugin_ShapeType",
+ new FiltersPlugin_ShapeTypeValidator);
ModelAPI_Session::get()->registerPlugin(this);
}