blob: 97d7dc7bfef271a5a57aaf94d634c187cb7edbe7 [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2016 CEA LIST.
*
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Created on: 27 nov. 2012
*
* Contributors:
* Arnault Lapitre (CEA LIST) arnault.lapitre@cea.fr
* - Initial API and implementation
******************************************************************************/
#include "AvmOperationExpression.h"
#include <fml/executable/BaseInstanceForm.h>
#include <fml/operator/OperatorManager.h>
#include <fml/infrastructure/Variable.h>
namespace sep
{
std::map< std::string , Operator * > AvmOperationExpression::theOtherMap;
/**
* LOADER
*/
void AvmOperationExpression::load()
{
putOther("random" , OperatorManager::OPERATOR_RANDOM);
putOther("abs" , OperatorManager::OPERATOR_ABS);
putOther("ceil" , OperatorManager::OPERATOR_CEIL);
putOther("floor" , OperatorManager::OPERATOR_FLOOR);
putOther("round" , OperatorManager::OPERATOR_ROUND);
putOther("trunc" , OperatorManager::OPERATOR_TRUNCATE);
// EXP - LOG
putOther("sqrt" , OperatorManager::OPERATOR_SQRT);
putOther("exp" , OperatorManager::OPERATOR_EXP);
putOther("ln" , OperatorManager::OPERATOR_LN);
putOther("log" , OperatorManager::OPERATOR_LOG);
// TRIGONOMETRIC
putOther("sin" , OperatorManager::OPERATOR_SIN);
putOther("cos" , OperatorManager::OPERATOR_COS);
putOther("tan" , OperatorManager::OPERATOR_TAN);
putOther("sinh" , OperatorManager::OPERATOR_SINH);
putOther("cosh" , OperatorManager::OPERATOR_COSH);
putOther("tanh" , OperatorManager::OPERATOR_TANH);
putOther("asin" , OperatorManager::OPERATOR_ASIN);
putOther("acos" , OperatorManager::OPERATOR_ACOS);
putOther("atan" , OperatorManager::OPERATOR_ATAN);
putOther("atan2" , OperatorManager::OPERATOR_ATAN2);
putOther("asinh" , OperatorManager::OPERATOR_ASINH);
putOther("acosh" , OperatorManager::OPERATOR_ACOSH);
putOther("atanh" , OperatorManager::OPERATOR_ATANH);
}
/**
* DISPOSER
*/
void AvmOperationExpression::dispose()
{
theOtherMap.clear();
}
} /* namespace sep */