libRoadRunner C API  1.0.0
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
rrc_cpp_support.h File Reference

roadRunner C API 2012 More...

#include <vector>
#include "rr-libstruct/lsMatrix.h"
#include "rrRoadRunnerData.h"
#include "rrcStringList.h"
#include "rrArrayList.h"
#include "rrc_types.h"
#include "rrc_exporter.h"

Go to the source code of this file.


void setError (const string &err)
 Set API error. More...
RoadRunner * castToRoadRunner (RRHandle rrHandle)
 Cast a handle to RoadRunner instance pointer, throws if it fails. More...
bool copyVector (const RRVector *source, vector< double > &dest)
 Copy a C vector to a std::vector. More...
RRVectorcreateVector (const vector< double > &vec)
 Creates a C vector from a std::vector. More...
RRComplexVectorcreateVector (const vector< ls::Complex > &vec)
 Creates a C Complex vector from a std::vector<ls::Complex> More...
vector< double > createVector (const RRVector *vec)
 Creates a std vector from a C vector. More...
RRDoubleMatrixcreateMatrix (const ls::DoubleMatrix *mat)
 Creates a C matrix from a ls::DoubleMatrix, supplied as a pointer. More...
ls::DoubleMatrix * createMatrix (const RRDoubleMatrixPtr mat)
 Creates a ls::DoubleMatrix from a RRMatrix, supplied as a pointer. More...
RRComplexMatrixcreateMatrix (const ls::ComplexMatrix *mat)
 Creates a C complex matrix from a ls::ComplexMatrix, supplied as a pointer. More...
RRStringArrayPtr createList (const rrc::StringList &list)
 Creates a C StringArray from a rr::StringList. More...
RRListcreateArrayList (const ArrayList &list)
 Creates a heterogenoeus RRList from a rr::ArrayList. More...
RRCDataPtr createRRCData (const rr::RoadRunner &)

Detailed Description

roadRunner C API 2012

Totte Karlsson & Herbert M Sauro

<-----------------------------------------------------------— This file is part of cRoadRunner. See for more details.

Copyright (C) 2012-2013 University of Washington, Seattle, WA, USA

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

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.

In plain english this means:

You CAN freely download and use this software, in whole or in part, for personal, company internal, or commercial purposes;

You CAN use the software in packages or distributions that you create.

You SHOULD include a copy of the license in any redistribution you may make;

You are NOT required include the source of software, or of any modifications you may have made to it, in any redistribution you may assemble that includes it.


redistribute any piece of this software without proper attribution;