Tesseract 0.28.4
Loading...
Searching...
No Matches
utils.h File Reference

Tesseract Collision utils. More...

#include <tesseract/collision/types.h>
#include <tesseract/collision/contact_result_validator.h>
#include <tesseract/common/contact_allowed_validator.h>

Functions

tesseract::common::ContactAllowedValidator::ConstPtr tesseract::collision::combineContactAllowedValidators (tesseract::common::ContactAllowedValidator::ConstPtr original, tesseract::common::ContactAllowedValidator::ConstPtr override, ACMOverrideType type=ACMOverrideType::OR)
 Combines two ContactAllowedValidator using the override type.
 
template<typename ManagerType >
void tesseract::collision::applyContactAllowedValidatorOverride (ManagerType &manager, const tesseract::common::AllowedCollisionMatrix &acm, ACMOverrideType type)
 Applies ACM to contact manager using override type.
 
template<typename ManagerType >
void tesseract::collision::applyModifyObjectEnabled (ManagerType &manager, const std::unordered_map< std::string, bool > &modify_object_enabled)
 Loops over the map and for every object string either enables or disables it based on the value (true=enable, false=disable)
 

Detailed Description

Tesseract Collision utils.

Author
Levi Armstrong
Matthew Powelson
Date
December 1, 2021
License
Software License Agreement (Apache License)
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Function Documentation

◆ combineContactAllowedValidators()

tesseract::common::ContactAllowedValidator::ConstPtr tesseract::collision::combineContactAllowedValidators ( tesseract::common::ContactAllowedValidator::ConstPtr  original,
tesseract::common::ContactAllowedValidator::ConstPtr  override,
ACMOverrideType  type = ACMOverrideType::OR 
)

Combines two ContactAllowedValidator using the override type.

Parameters
originalOriginal ContactAllowedValidator. This will be returned if ACMOverrideType is None
overrideOverriding ContactAllowedValidator. This will be returned if ACMOverrideType is ASSIGN
typeOverride type used to combine the ContactAllowedValidator
Returns
One ContactAllowedValidator that combines the two

◆ applyContactAllowedValidatorOverride()

template<typename ManagerType >
void tesseract::collision::applyContactAllowedValidatorOverride ( ManagerType &  manager,
const tesseract::common::AllowedCollisionMatrix acm,
ACMOverrideType  type 
)
inline

Applies ACM to contact manager using override type.

Parameters
managerManager whose ContactAllowedValidator will be overwritten
acmACM used to create ContactAllowedValidator
typeDetermines how the two ContactAllowedValidator are combined

◆ applyModifyObjectEnabled()

template<typename ManagerType >
void tesseract::collision::applyModifyObjectEnabled ( ManagerType &  manager,
const std::unordered_map< std::string, bool > &  modify_object_enabled 
)
inline

Loops over the map and for every object string either enables or disables it based on the value (true=enable, false=disable)

Parameters
managerManager that will be modified
modify_object_enabledMap of [key]:value = [object name]:disable or enable