DSS C-API and dss.hpp
DSS C-API and dss.hpp expose a customized and extended implementation of OpenDSS to C and C++.
|
Public Member Functions | |
ILoadShapes (dss::APIUtil *util) | |
strings | AllNames () |
Array of strings with all LoadShape names in the circuit. | |
int32_t | Count () |
Number of LoadShape objects in active circuit. | |
int32_t | First () |
Sets the first LoadShape active. More... | |
string | Name () |
Get the name of the current active LoadShape. | |
ILoadShapes & | Name (const char *value) |
Sets the active LoadShape by Name. | |
ILoadShapes & | Name (const string &value) |
int32_t | Next () |
Sets the next LoadShape active. More... | |
int32_t | idx () |
Get active LoadShape by index; index is 1-based: 1..count. | |
void | idx (int32_t value) |
Get active LoadShape by index; index is 1-based: 1..count. | |
int32_t | New (const char *Name) |
int32_t | New (const string &Name) |
void | Normalize () |
double | HrInterval () |
Fixed interval time value, hours. | |
ILoadShapes & | HrInterval (double value) |
double | MinInterval () |
Fixed Interval time value, in minutes. | |
ILoadShapes & | MinInterval (double value) |
int32_t | Npts () |
Get/set Number of points in active Loadshape. | |
ILoadShapes & | Npts (int32_t value) |
double | PBase () |
ILoadShapes & | PBase (double value) |
template<typename VectorT = Eigen::Matrix<double, Eigen::Dynamic, 1>> | |
VectorT | Pmult () |
Array of doubles for the P multiplier in the Loadshape. | |
template<typename VectorT = Eigen::Matrix<double, Eigen::Dynamic, 1>> | |
ILoadShapes & | Pmult (const VectorT &value) |
double | QBase () |
Base for normalizing Q curve. More... | |
ILoadShapes & | QBase (double value) |
template<typename VectorT = Eigen::Matrix<double, Eigen::Dynamic, 1>> | |
VectorT | Qmult () |
Array of doubles containing the Q multipliers. | |
template<typename VectorT = Eigen::Matrix<double, Eigen::Dynamic, 1>> | |
ILoadShapes & | Qmult (const VectorT &value) |
template<typename VectorT = Eigen::Matrix<double, Eigen::Dynamic, 1>> | |
VectorT | TimeArray () |
Time array in hours correscponding to P and Q multipliers when the Interval=0. | |
template<typename VectorT = Eigen::Matrix<double, Eigen::Dynamic, 1>> | |
ILoadShapes & | TimeArray (const VectorT &value) |
bool | UseActual () |
Boolean flag to let Loads know to use the actual value in the curve rather than use the value as a multiplier. | |
ILoadShapes & | UseActual (bool value) |
double | sInterval () |
ILoadShapes & | sInterval (double value) |
void | UseFloat32 () |
Converts the current LoadShape data to float32/single precision. More... | |
void | UseFloat64 () |
Converts the current LoadShape data to float64/double precision. More... | |
Public Member Functions inherited from dss::ContextState | |
ContextState (APIUtil *util) | |
Additional Inherited Members | |
Public Attributes inherited from dss::ContextState | |
void * | ctx |
Pointer to the DSSContext for easy access. | |
APIUtil * | api_util |
API utility functions. | |
|
inline |
Sets the first LoadShape active.
Returns 0 if no more.
|
inline |
Sets the next LoadShape active.
Returns 0 if no more.
|
inline |
Base for normalizing Q curve.
If left at zero, the peak value is used.
|
inline |
Converts the current LoadShape data to float32/single precision.
If there is no data or the data is already represented using float32, nothing is done.
(API Extension)
|
inline |
Converts the current LoadShape data to float64/double precision.
If there is no data or the data is already represented using float64, nothing is done.
(API Extension)