::size_type;
/** \details
Constructor.
*/
PSDQTOList();
/** \details
Destructor.
*/
~PSDQTOList();
/** \details
Clears the list.
*/
void clear();
/** \details
Returns the length of the array object.
\returns The number of elements in the array object.
*/
size_type length() const
{
return m_psdqto.length();
}
/** \details
Indicates whether the array is empty.
\returns The true value if the array is empty, or false otherwise.
*/
bool isEmpty() const
{
return m_psdqto.isEmpty();
}
/** \remarks
Returns the element of the array object at the specified index.
\param index [in] Index of the array object.
\returns Pointer to PSDQTO instance at the the specified index.
*/
PSDQTO* operator [](size_type index)
{
return m_psdqto[index].get();
}
/** \remarks
Returns the element of the array object at the specified index.
\param index [in] Index of the array object.
\returns Pointer to PSDQTO instance at the the specified index.
*/
const PSDQTO* operator [](size_type index) const
{
return m_psdqto[index].get();
}
/** \details
Returns the element of the array object at the specified index.
\param index [in] Index of the array object.
\returns Pointer to the element at the specified index.
*/
PSDQTO* at(size_type index)
{
return m_psdqto.at(index).get();
}
/** \details
Returns the element of the array object at the specified index.
\param index [in] Index of the array object.
\returns Pointer to the element at the specified index.
*/
const PSDQTO* at(size_type index) const
{
return m_psdqto.at(index).get();
}
/** \details
Sets the element of the array object at the specified index.
\param index [in] Index of the array object element to set.
\param value [in] Value to set.
*/
void setAt(size_type index, PSDQTO* value)
{
m_psdqto.setAt(index, value);
}
/** \details
Returns the element of the array object at the specified position.
\param index [in] Index of the array object element to return.
\returns Reference to the element at the specified position.
*/
const PSDQTO* getAt(size_type index) const
{
return m_psdqto.getAt(index).get();
}
/** \details
Appends the specified value to the end of the array object.
\param value [in] Value to append.
\returns The index of the new last element.
*/
size_type append(PSDQTO* value)
{
return m_psdqto.append(value);
}
/** \details
Inserts the specified value into this Array object at the specified index using move semantics.
\param index [in] Array index.
\param value [in] Value to insert.
\remarks
If the specified value supports move semantics value is moved, otherwise value is saved.
Elements starting at arrayIndex will have their indices incremented.
0 <= arrayIndex <= length()
Returns a reference to this Array object.
*/
void insertAt(size_type index, PSDQTO* value)
{
m_psdqto.insertAt(index, value);
}
/** \details
Removes the element at the specified index from the array object.
\param index [in] Index of the element to remove.
\remarks
0 <= arrayIndex < length()
Elements starting at arrayIndex+1 will have their indices decremented.
*/
void removeAt(size_type index)
{
m_psdqto.removeAt(index);
}
/** \details
Swaps the specified elements in the array object.
\param firstIndex [in] Index of first element.
\param secondIndex [in] Index of second element.
*/
void swap(size_type firstIndex, size_type secondIndex)
{
m_psdqto.swap(firstIndex, secondIndex);
}
/** \details
Reads a Step Physical File that contains PSD/QTO definitions according PSDQTO EXPRESS schema.
\param fileName [in] OdString that contains input file name.
\param name [in] The name to assign to the object (optional).
\param comment [in] The comment to assign to the object (optional).
\param applicableVersion [in] File version allowed for loading (optional).
\returns Reference to the new PSDQTO element loaded from the file, otherwise returns null.
*/
PSDQTO* loadFromFile(
const OdString& fileName,
const char* name = nullptr,
const char* comment = nullptr,
const char* applicableVersion = nullptr);
private:
OdArray m_psdqto;
};
/** \details
A data type that represents a smart pointer to an PSDQTOList object.
*/
typedef OdSharedPtr PSDQTOListPtr;
#include "TD_PackPop.h"
#endif //_IFC_PSD_QTO_H