Adding config getter and file list getter to interface

parent c44f3e50
......@@ -203,29 +203,116 @@ public:
//! Adds a search path to the core instance
/**
* \param sPath Local relative or absolute path
* \return True, if path is valid at core side
* @param[in] sPath Local relative or absolute path
* @return True, if path is valid at core side
*/
virtual bool AddSearchPath( const std::string& sPath );
//! Returns a struct with entries for each search paths
/**
* @return Encapsulated search paths
*/
virtual CVAStruct GetSearchPaths() const = 0;
//! Returns files that are accessible through search paths
/**
* @param[in] bRecursive Search recursively in paths
* @param[in] sFileSuffixFilter File suffix / type filtering, i.e. "wav" or "daff". "*" or empty string will list all.
*
* @return Encapsulated file paths
*
* @warn This call may take a while and can result in a lot of return data.
*/
virtual CVAStruct GetFileList( const bool bRecursive = true, const std::string& sFileSuffixFilter = "*" ) const = 0;
//! Returns a struct with the core configuration
/**
* @param[in] bFilterEnabled If true, only include enabled sections.
*
* @return Encapsulated core configuration (as used to load/store and work in core)
*/
virtual CVAStruct GetCoreConfiguration( const bool bFilterEnabled = true ) const = 0;
//! Returns a struct with the hardware configuration
/**
* @param[in] bFilterEnabled If true, only include enabled sections.
*
* @return Encapsulated hardware configuration
*/
virtual CVAStruct GetHardwareConfiguration( const bool bFilterEnabled = true ) const = 0;
//! Create a directivity from a set of parameters
/**
* @param[in] oParams Parameters
* @param[in] sName Versatile name
*
* @return Directivity identifier
*/
virtual int CreateDirectivityFromParameters( const CVAStruct& oParams, const std::string& sName = "" ) = 0;
//! Create a directivity from a file path
/**
* @param[in] sFilePath File path (relative or absolute or macro)
* @param[in] sName Versatile name
*
* @return Directivity identifier
*/
inline int CreateDirectivityFromFile( const std::string& sFilePath, const std::string& sName = "" )
{
CVAStruct oParams;
oParams[ "filepath" ] = sFilePath;
return CreateDirectivityFromParameters( oParams, sName );
};
//! Delete a directivity
/**
* @param[in] iID Identifier
*
* @return True, if directivity was found and could be released (was not in use)
*/
virtual bool DeleteDirectivity( const int iID ) = 0;
//! Directivity info getter
/**
* @param[in] iID Identifier
*
* @return Directivity information
*/
virtual CVADirectivityInfo GetDirectivityInfo( const int iID ) const = 0;
//! Directivity info getter
/**
* @param[out] voDest Directivity information vector
*/
virtual void GetDirectivityInfos( std::vector< CVADirectivityInfo >& voDest ) const = 0;
//! Directivity name setter
/**
* @param[in] iID Identifier
* @param[in] sName Versatile name
*/
virtual void SetDirectivityName( const int iID, const std::string& sName ) = 0;
//! Directivity name getter
/**
* @param[in] iID Identifier
* @return Versatile name
*/
virtual std::string GetDirectivityName( const int iID ) const = 0;
//! Directivity parameter setter
/**
* @param[in] iID Identifier
* @param[in] oParams Parameters
*/
virtual void SetDirectivityParameters( const int iID, const CVAStruct& oParams ) = 0;
//! Directivity parameter getter
/**
* @param[in] iID Identifier
* @return Parameters
*/
virtual CVAStruct GetDirectivityParameters( const int iID, const CVAStruct& oParams ) const = 0;
......@@ -245,15 +332,38 @@ public:
virtual void SetAcousticMaterialParameters( const int iID, const CVAStruct& oParams ) = 0;
virtual CVAStruct GetAcousticMaterialParameters( const int iID, const CVAStruct& oParams ) const = 0;
//! Create a geometry mesh with mesh infos
/**
* @param[in] oMesh Geometry mesh information
* @param[in] sName Versatile name
*
* @return Geometry mesh identifier
*/
virtual int CreateGeometryMesh( const CVAGeometryMesh& oMesh, const std::string& sName = "" ) = 0;
//! Create a geometry mesh from parameters
/**
* @param[in] oParams Geometry mesh parameters
* @param[in] sName Versatile name
*
* @return Geometry mesh identifier
*/
virtual int CreateGeometryMeshFromParameters( const CVAStruct& oParams, const std::string& sName = "" ) = 0;
//! Create a geometry mesh from file
/**
* @param[in] sFilePath Geometry mesh file path (relative or absolute or macro)
* @param[in] sName Versatile name
*
* @return Geometry mesh identifier
*/
inline int CreateGeometryMeshFromFile( const std::string& sFilePath, const std::string& sName = "" )
{
CVAStruct oParams;
oParams[ "filepath" ] = sFilePath;
return CreateGeometryMeshFromParameters( oParams, sName );
};
virtual bool DeleteGeometryMesh( const int iID ) = 0;
virtual CVAGeometryMesh GetGeometryMesh( const int iID ) const = 0;
virtual void GetGeometryMeshIDs( std::vector< int >& viIDs ) const = 0;
......@@ -541,7 +651,7 @@ public:
oParams[ "value" ] = sFilePath;
SetSignalSourceParameters( sSignalSourceID, oParams );
};
// TODO: AlterSoundPlayback?
//! Set parameters for a signal source
......@@ -563,7 +673,7 @@ public:
* \return Parameter structure
*/
virtual CVAStruct GetSignalSourceParameters( const std::string& sSignalSourceID, const CVAStruct& oParams ) const = 0;
//! Add sequencer sample from file path
inline int AddSignalSourceSequencerSample( const std::string& sSignalSourceID, const std::string sFilePath )
{
......@@ -989,7 +1099,7 @@ public:
//! Get scene info
virtual CVASceneInfo GetSceneInfo( const std::string& sID ) const = 0;
//! Returns the name of a portal
virtual std::string GetSceneName( const std::string& sID ) const = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment