From: Hyunbin Lee Date: Fri, 12 Jul 2013 00:13:45 +0000 (+0900) Subject: Revise doxygen X-Git-Tag: submit/tizen/20131210.080830^2^2~265 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=11e5ea78492ddf821ec3fd92dd2e271a5e6d8628;p=platform%2Fframework%2Fnative%2Fappfw.git Revise doxygen Change-Id: Id395f358953b533d9b81e4970a76266292b8dd03 Signed-off-by: Hyunbin Lee --- diff --git a/inc/FAppSqlDataControl.h b/inc/FAppSqlDataControl.h index 264dd8d..8b7c98e 100755 --- a/inc/FAppSqlDataControl.h +++ b/inc/FAppSqlDataControl.h @@ -45,7 +45,7 @@ class ISqlDataControlResponseListener; /** * @class SqlDataControl - * @brief This class represents the SQL-type data control behavior. + * @brief This class represents the SQL-friendly interface based data control behavior. * * @since 2.0 * @@ -122,7 +122,7 @@ public: /** * Selects the specified columns to be queried. @n - * The result set of the specified columns is retrieved from a table owned by an SQL-type data control provider. @n + * The result set of the specified columns is retrieved from a table owned by an SQL-friendly interface based data control provider. @n * The %Select() method is asynchronous. * For receiving the response from the data control provider, set the listener with * SqlDataControl::SetSqlDataControlResponseListener(). @n @@ -169,7 +169,7 @@ public: int pageNo = 1, int countPerPage = 20); /** - * Inserts new rows into a table owned by an SQL-type data control provider. @n + * Inserts new rows into a table owned by an SQL-friendly interface based data control provider. @n * The %Insert() method is asynchronous. * For receiving the response from the data control provider, set the listener with * SqlDataControl::SetSqlDataControlResponseListener(). @n @@ -202,7 +202,7 @@ public: result Insert(const Tizen::Base::String& dataId, const Tizen::Base::Collection::IMap& insertMap, RequestId& reqId); /** - * Updates values of a table owned by an SQL-type data control provider. @n + * Updates values of a table owned by an SQL-friendly interface based data control provider. @n * The %Update() method is asynchronous. * For receiving the response from the data control provider, set the listener with * SqlDataControl::SetSqlDataControlResponseListener(). @n @@ -242,7 +242,7 @@ public: const Tizen::Base::String* pWhere, RequestId& reqId); /** - * Deletes rows of a table owned by an SQL-type data control provider. @n + * Deletes rows of a table owned by an SQL-friendly interface based data control provider. @n * The %Delete() method is asynchronous. * For receiving the response from the data control provider, set the listener with * SqlDataControl::SetSqlDataControlResponseListener(). @n @@ -277,7 +277,7 @@ public: result Delete(const Tizen::Base::String& dataId, const Tizen::Base::String* pWhere, RequestId& reqId); /** - * Sets an SQL-type data control listener to this instance. + * Sets an SQL-friendly interface based data control listener to this instance. * * @since 2.0 * diff --git a/inc/FIoDataRow.h b/inc/FIoDataRow.h index 710eaf1..62ae288 100755 --- a/inc/FIoDataRow.h +++ b/inc/FIoDataRow.h @@ -1,185 +1,186 @@ -// -// Copyright (c) 2013 Samsung Electronics Co., Ltd. -// -// 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 -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// 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. -// - -/** -* @file FIoDataRow.h -* @brief This is the header file for the %DataRow class. -* -* This header file contains the declarations of the %DataRow class. -*/ - -#ifndef _FIO_DATA_ROW_H_ -#define _FIO_DATA_ROW_H_ - -#include -#include -#include - -namespace Tizen { namespace Io -{ - -/** -* @class DataRow - -* @brief This class provides methods to create a row in in-memory table. -* -* @since 2.1 -* -* @final This class is not intended for extension. -* -* The %DataRow class provides methods to create a row in in-memory table. -* -* @see Tizen::Io::DataSet -*/ -class _OSP_EXPORT_ DataRow - : public Tizen::Base::Object -{ - -public: - /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.1 - */ - virtual ~DataRow(void); - - /** - * Sets a Tizen::Base::ByteBuffer value to the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is set @n - * The column index starts from 0. - * @param[in] pValue The value to set @n - * The specified @c pValue is a pointer to user-provided Tizen::Base::ByteBuffer type buffer. - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG Either of the following conditions has occurred: @n - * - The specified @c columnIndex is out of range. - * - The specified @c pValue is @c null. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - * @remarks This method performs a shallow copy. It copies only the pointer; not the element itself. @n - * The platform will take the ownership of @c pValue after calling this method. - */ - result SetBlobAt(int columnIndex, Tizen::Base::ByteBuffer* pValue); - - - /** - * Sets a Tizen::Base::DateTime value to the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is set @n - * The column index starts from 0. - * @param[in] value The value to set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - */ - result SetDateTimeAt(int columnIndex, const Tizen::Base::DateTime& value); - - - /** - * Sets a @c double value to the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is set @n - * The column index starts from 0. - * @param[in] value The value to set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - */ - result SetDoubleAt(int columnIndex, double value); - - /** - * Sets an @c int value to the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is set @n - * The column index starts from 0. - * @param[in] value The value to set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - */ - result SetIntAt(int columnIndex, int value); - - /** - * Sets a @c long @c long value to the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is set @n - * The column index starts from 0. - * @param[in] value The value to set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - */ - result SetInt64At(int columnIndex, long long value); - - /** - * Sets a Tizen::Base::String value to the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is set @n - * The column index starts from 0. - * @param[in] value The value to set - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - */ - result SetStringAt(int columnIndex, const Tizen::Base::String& value); - -private: - // - // This default constructor is intentionally declared as private so that only the platform can create an instance. - // - // @since 2.1 - // - DataRow(void); - - // - // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // - // @since 2.1 - // - DataRow(const DataRow& rhs); - - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // - // @since 2.1 - // - DataRow& operator =(const DataRow& rhs); - - class _DataRowImpl* __pDataRowImpl; - friend class _DataRowImpl; - -}; // DataRow - -}} // Tizen::Io - -#endif // _FIO_DATA_ROW_H_ +// +// Copyright (c) 2013 Samsung Electronics Co., Ltd. +// +// 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 +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// 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. +// + +/** +* @file FIoDataRow.h +* @brief This is the header file for the %DataRow class. +* +* This header file contains the declarations of the %DataRow class. +*/ + +#ifndef _FIO_DATA_ROW_H_ +#define _FIO_DATA_ROW_H_ + +#include +#include +#include + +namespace Tizen { namespace Io +{ + +/** +* @class DataRow + +* @brief This class provides methods to create a row in in-memory table. +* +* @since 2.1 +* +* @final This class is not intended for extension. +* +* The %DataRow class provides methods to create a row in in-memory table. +* +* @see Tizen::Io::DataSet +*/ +class _OSP_EXPORT_ DataRow + : public Tizen::Base::Object +{ + +public: + /** + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.1 + */ + virtual ~DataRow(void); + + /** + * Sets a Tizen::Base::ByteBuffer value to the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is set @n + * The column index starts from 0. + * @param[in] pValue The value to set @n + * The specified @c pValue is a pointer to user-provided Tizen::Base::ByteBuffer type buffer. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG Either of the following conditions has occurred: @n + * - The specified @c columnIndex is out of range. + * - The specified @c pValue is @c null. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + * @remarks This method performs a shallow copy. It copies only the pointer; not the element itself. @n + * The platform will take the ownership of @c pValue after calling this method. + */ + result SetBlobAt(int columnIndex, Tizen::Base::ByteBuffer* pValue); + + + /** + * Sets a Tizen::Base::DateTime value to the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is set @n + * The column index starts from 0. + * @param[in] value The value to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + * @remarks Tizen::Io::DbColumnType of the specified @c value is DB_COLUMNTYPE_TEXT. + */ + result SetDateTimeAt(int columnIndex, const Tizen::Base::DateTime& value); + + + /** + * Sets a @c double value to the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is set @n + * The column index starts from 0. + * @param[in] value The value to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + */ + result SetDoubleAt(int columnIndex, double value); + + /** + * Sets an @c int value to the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is set @n + * The column index starts from 0. + * @param[in] value The value to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + */ + result SetIntAt(int columnIndex, int value); + + /** + * Sets a @c long @c long value to the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is set @n + * The column index starts from 0. + * @param[in] value The value to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + */ + result SetInt64At(int columnIndex, long long value); + + /** + * Sets a Tizen::Base::String value to the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is set @n + * The column index starts from 0. + * @param[in] value The value to set + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + */ + result SetStringAt(int columnIndex, const Tizen::Base::String& value); + +private: + // + // This default constructor is intentionally declared as private so that only the platform can create an instance. + // + // @since 2.1 + // + DataRow(void); + + // + // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + // + // @since 2.1 + // + DataRow(const DataRow& rhs); + + // + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + // + // @since 2.1 + // + DataRow& operator =(const DataRow& rhs); + + class _DataRowImpl* __pDataRowImpl; + friend class _DataRowImpl; + +}; // DataRow + +}} // Tizen::Io + +#endif // _FIO_DATA_ROW_H_ diff --git a/inc/FIoDataSet.h b/inc/FIoDataSet.h index ef61e6e..1a1597c 100755 --- a/inc/FIoDataSet.h +++ b/inc/FIoDataSet.h @@ -1,159 +1,159 @@ -// -// Copyright (c) 2013 Samsung Electronics Co., Ltd. -// -// 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 -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// 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. -// - -/** -* @file FIoDataSet.h -* @brief This is the header file for the %DataSet class. -* -* This header file contains the declarations of the %DataSet class. -*/ - -#ifndef _FIO_DATA_SET_H_ -#define _FIO_DATA_SET_H_ - -#include -#include -#include -#include - -namespace Tizen { namespace Io -{ - -/** -* @class DataSet -* @brief This class provides methods to manipulate in-memory table. -* -* @since 2.1 -* -* @final This class is not intended for extension. -* -* The %DataSet class provides methods to manipulate in-memory table. -*/ -class _OSP_EXPORT_ DataSet - : public Tizen::Base::Object -{ - -public: - /** - * The object is not fully constructed after this constructor is called. For full construction, - * the Construct() method must be called right after calling this constructor. - * - * @since 2.1 - */ - DataSet(void); - - /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.1 - */ - virtual ~DataSet(void); - - /** - * Creates in-memory table. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnNames The list of column names to create @n - * The object type in the specified list should be String. - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_ARG The specified @c columnNames has no element. - */ - result Construct(const Tizen::Base::Collection::IList& columnNames); - - /** - * Creates a row in the table. - * - * @since 2.1 - * - * @return A pointer to the DataRow instance, @n - * else @c null if the memory is insufficient - * @remarks The column type is decided by the type of each element inserted in first row. - * If a specific column element on the first row is not inserted, then the column's type is @c DB_COLUMNTYPE_NULL - * In that case, when a new column element is added later, - * then the column's type will be changed according to the new element. - */ - DataRow* CreateDataRowN(void); - - /** - * Gets a table enumerator. - * - * @since 2.1 - * - * @return A pointer to the DataSetEnumerator instance, @n - * else @c null if the memory is insufficient - */ - DataSetEnumerator* GetDataSetEnumeratorN(void); - - - /** - * Gets a copy of this instance. - * - * @since 2.1 - * - * @return A pointer to the copy of the %DataSet instance, @n - * else @c null if the memory is insufficient - */ - DataSet* CloneN(void) const; - - /** - * Checks whether the value of a specified instance of Tizen::Base::Object is equal to the value of a current instance of - * %DataSet. - * - * @since 2.1 - * - * @return @c true if the value of the specified instance of Tizen::Base::Object is equal to the value of the current - * instance of %DataSet, @n - * else @c false - * @param[in] obj An instance of Tizen::Base::Object to compare - * @remarks This method returns @c false if the specified @c obj is not a %DataSet instance. - */ - virtual bool Equals(const Tizen::Base::Object& obj) const; - - /** - * Gets the hash value of a current instance. - * - * @since 2.1 - * - * @return The hash value of the current instance - */ - virtual int GetHashCode(void) const; - -private: - // - // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // - // @since 2.1 - // - - DataSet(const DataSet& value); - - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // - // @since 2.1 - // - DataSet& operator =(const DataSet& rhs); - - class _DataSetImpl* __pDataSetImpl; - friend class _DataSetImpl; - -}; // DataSet - -}} // Tizen::Io - -#endif // _FIO_DATA_SET_H_ +// +// Copyright (c) 2013 Samsung Electronics Co., Ltd. +// +// 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 +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// 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. +// + +/** +* @file FIoDataSet.h +* @brief This is the header file for the %DataSet class. +* +* This header file contains the declarations of the %DataSet class. +*/ + +#ifndef _FIO_DATA_SET_H_ +#define _FIO_DATA_SET_H_ + +#include +#include +#include +#include + +namespace Tizen { namespace Io +{ + +/** +* @class DataSet +* @brief This class provides methods to manipulate in-memory table. +* +* @since 2.1 +* +* @final This class is not intended for extension. +* +* The %DataSet class provides methods to manipulate in-memory table. +*/ +class _OSP_EXPORT_ DataSet + : public Tizen::Base::Object +{ + +public: + /** + * The object is not fully constructed after this constructor is called. For full construction, + * the Construct() method must be called right after calling this constructor. + * + * @since 2.1 + */ + DataSet(void); + + /** + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.1 + */ + virtual ~DataSet(void); + + /** + * Creates in-memory table. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnNames The list of column names to create @n + * The object type in the specified list should be String. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_ARG The specified @c columnNames has no element. + */ + result Construct(const Tizen::Base::Collection::IList& columnNames); + + /** + * Creates a row in the table. + * + * @since 2.1 + * + * @return A pointer to the DataRow instance, @n + * else @c null if the memory is insufficient + * @remarks The column type is decided by the type of each element inserted in first row. + * If a specific column element on the first row is not inserted, then the column's type is @c DB_COLUMNTYPE_NULL + * In that case, when a new column element is added later, + * then the column's type will be changed according to the new element. + */ + DataRow* CreateDataRowN(void); + + /** + * Gets a table enumerator. + * + * @since 2.1 + * + * @return A pointer to the DataSetEnumerator instance, @n + * else @c null if the memory is insufficient + */ + DataSetEnumerator* GetDataSetEnumeratorN(void); + + + /** + * Gets a copy of this instance. + * + * @since 2.1 + * + * @return A pointer to the copy of the %DataSet instance, @n + * else @c null if the memory is insufficient + */ + DataSet* CloneN(void) const; + + /** + * Checks whether the value of a specified instance of Tizen::Base::Object is equal to the value of a current instance of + * %DataSet. + * + * @since 2.1 + * + * @return @c true if the value of the specified instance of Tizen::Base::Object is equal to the value of the current + * instance of %DataSet, @n + * else @c false + * @param[in] obj An instance of Tizen::Base::Object to compare + * @remarks This method returns @c false if the specified @c obj is not a %DataSet instance. + */ + virtual bool Equals(const Tizen::Base::Object& obj) const; + + /** + * Gets the hash value of a current instance. + * + * @since 2.1 + * + * @return The hash value of the current instance + */ + virtual int GetHashCode(void) const; + +private: + // + // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + // + // @since 2.1 + // + + DataSet(const DataSet& value); + + // + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + // + // @since 2.1 + // + DataSet& operator =(const DataSet& rhs); + + class _DataSetImpl* __pDataSetImpl; + friend class _DataSetImpl; + +}; // DataSet + +}} // Tizen::Io + +#endif // _FIO_DATA_SET_H_ diff --git a/inc/FIoDataSetEnumerator.h b/inc/FIoDataSetEnumerator.h index 59a0373..6873f50 100755 --- a/inc/FIoDataSetEnumerator.h +++ b/inc/FIoDataSetEnumerator.h @@ -1,378 +1,378 @@ -// -// Copyright (c) 2013 Samsung Electronics Co., Ltd. -// -// 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 -// -// http://www.apache.org/licenses/LICENSE-2.0 -// -// 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. -// - -/** -* @file FIoDataSetEnumerator.h -* @brief This is the header file for the %DataSetEnumerator class. -* -* This header file contains the declarations of the %DataSetEnumerator class. -*/ - -#ifndef _FIO_DATA_SET_ENUMERATOR_H_ -#define _FIO_DATA_SET_ENUMERATOR_H_ - -#include -#include -#include -#include -#include - -namespace Tizen { namespace Base -{ -class String; -class ByteBuffer; -class DateTime; -}} - -namespace Tizen { namespace Io -{ - -/** -* @class DataSetEnumerator -* @brief This class provides methods for navigating the set of data in in-memory table. -* -* @since 2.1 -* -* @final This class is not intended for extension. -* -* The %DataSetEnumerator class provides methods for navigating the set of data in in-memory table. -* -* @see Tizen::Io::DataSet -*/ -class _OSP_EXPORT_ DataSetEnumerator - : public Tizen::Base::Object - , public Tizen::Io::IDbEnumerator -{ - -public: - /** - * This destructor overrides Tizen::Base::Object::~Object(). - * - * @since 2.1 - */ - virtual ~DataSetEnumerator(void); - - /** - * Moves the enumerator to the next position. - * - * @since 2.1 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_OUT_OF_RANGE The enumerator has reached out of the data set. - * @exception E_OBJECT_LOCKED The DataSet instance is locked. - * @exception E_INVALID_FORMAT The in-memory data is malformed. - * @exception E_IO Either of the following conditions has occurred: @n - * - An unexpected device failure has occurred as the media ejected suddenly. @n - * - %File corruption is detected. - * @exception E_SYSTEM The method cannot proceed due to a severe system error. - * @remarks After getting this %DataSetEnumerator instance, - * if this method is called first, the cursor goes to the first position. - * @see Tizen::Io::DataSetEnumerator::MovePrevious() - * @see Tizen::Io::DataSetEnumerator::MoveFirst() - * @see Tizen::Io::DataSetEnumerator::MoveLast() - */ - virtual result MoveNext(void); - - - /** - * Moves the enumerator to the previous position. - * - * @since 2.1 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_OUT_OF_RANGE The enumerator has reached out of the data set. - * @exception E_OBJECT_LOCKED The DataSet instance is locked. - * @exception E_INVALID_FORMAT The in-memory data is malformed. - * @exception E_IO Either of the following conditions has occurred: @n - * - An unexpected device failure has occurred as the media ejected suddenly. @n - * - %File corruption is detected. - * @exception E_SYSTEM The method cannot proceed due to a severe system error. - * @see Tizen::Io::DataSetEnumerator::MoveNext() - * @see Tizen::Io::DataSetEnumerator::MoveFirst() - * @see Tizen::Io::DataSetEnumerator::MoveLast() - */ - virtual result MovePrevious(void); - - /** - * Moves the enumerator to the first position. - * - * @since 2.1 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_OBJECT_LOCKED The DataSet instance is locked. - * @exception E_INVALID_FORMAT The in-memory data is malformed. - * @exception E_IO Either of the following conditions has occurred: @n - * - An unexpected device failure has occurred as the media ejected suddenly. @n - * - %File corruption is detected. - * @exception E_SYSTEM The method cannot proceed due to a severe system error. - * @see Tizen:Io::DataSetEnumerator::MoveNext() - * @see Tizen:Io::DataSetEnumerator::MovePrevious() - * @see Tizen:Io::DataSetEnumerator::MoveLast() - */ - virtual result MoveFirst(void); - - /** - * Moves the enumerator to the last position. - * - * @since 2.1 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_OBJECT_LOCKED The DataSet instance is locked. - * @exception E_INVALID_FORMAT The in-memory data is malformed. - * @exception E_IO Either of the following conditions has occurred: @n - * - An unexpected device failure has occurred as the media ejected suddenly. @n - * - %File corruption is detected. - * @exception E_SYSTEM The method cannot proceed due to a severe system error. - * @see Tizen:Io::DataSetEnumerator::MoveNext() - * @see Tizen:Io::DataSetEnumerator::MovePrevious() - * @see Tizen:Io::DataSetEnumerator::MoveFirst() - */ - virtual result MoveLast(void); - - /** - * Resets the calling %DataSetEnumerator instance back to its initial state. - * - * @since 2.1 - * - * @return An error code - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_OBJECT_LOCKED The DataSet instance is locked. - * @exception E_SYSTEM The method cannot proceed due to a severe system error. - * @remarks After this method is called, if MoveNext() is called the cursor goes to the first position. - */ - virtual result Reset(void); - - /** - * Gets an @c int value from the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is required - * @param[in,out] value The integer value obtained from the specified column - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - */ - virtual result GetIntAt(int columnIndex, int& value) const; - - /** - * Gets a @c long @c long value from the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is required - * @param[in,out] value The 64-bit integer value obtained from the specified column - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - */ - virtual result GetInt64At(int columnIndex, long long& value) const; - - /** - * Gets a @c double value from the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is required - * @param[in,out] value The double value obtained from the specified column - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - */ - virtual result GetDoubleAt(int columnIndex, double& value) const; - - /** - * Gets a Tizen::Base::String value from the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is required - * @param[in,out] value The Tizen::Base::String value obtained from the specified column - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - * @exception E_INVALID_ENCODING_RANGE The string conversion has failed due to invalid encoding range. - */ - virtual result GetStringAt(int columnIndex, Tizen::Base::String& value) const; - - /** - * Gets a Tizen::Base::ByteBuffer value from the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is required - * @param[in,out] value The Tizen::Base::ByteBuffer value obtained from the specified column @n - * The %Tizen::Base::ByteBuffer will be filled from the current position and data copy - * will be continued until %Tizen::Base::ByteBuffer limitation is reached or no more - * blob data remains. - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - * @exception E_OVERFLOW The specified Tizen::Base::ByteBuffer @c value is insufficient to save the data. - * @see Tizen::Base::ByteBuffer - */ - virtual result GetBlobAt(int columnIndex, Tizen::Base::ByteBuffer& value) const; - - /** - * Gets a blob data from the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is required - * @param[in,out] buffer The user-provided buffer used to receive the blob data - * @param[in] size The maximum buffer length in bytes - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG Either the specified @c columnIndex is out of range or the specified @c size is invalid. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - * @exception E_OVERFLOW The specified @c buffer is insufficient to save the data. - */ - virtual result GetBlobAt(int columnIndex, void* buffer, int size) const; - - /** - * Gets a Tizen::Base::DateTime value from the column whose index is specified. - * - * @since 2.1 - * - * @return An error code - * @param[in] columnIndex The index of the column whose value is required - * @param[in,out] value The Tizen::Base::DateTime value obtained from the specified column - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. - * @exception E_INVALID_FORMAT The date is not correctly formatted, or the method is trying to access column of type String. @n - * The date format should be 'mm/dd/yyyy hh:mm:ss'. - * @exception E_OUT_OF_RANGE Either the year, month, day, hour, minute, or second value is out of range, - * or the method is trying to access a column of type String. - */ - virtual result GetDateTimeAt(int columnIndex, Tizen::Base::DateTime& value) const; - - /** - * Gets the number of columns for this enumerator. - * - * @since 2.1 - * - * @return The number of columns in the calling enumerator, @n - * else @c -1 if an exception occurs - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @remarks This method must be called after MoveNext(), MoveFirst(), or MoveLast(). @n - * The specific error code can be accessed using the GetLastResult() method. - */ - virtual int GetColumnCount(void) const; - - /** - * Gets the type of the column indicated by a specified index. - * - * @since 2.1 - * - * @return The type of column, @n - * else @c DB_COLUMNTYPE_UNDEFINED if an exception occurs - * @param[in] columnIndex The index of the destination column - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @remarks This method must be called after MoveNext(), MoveFirst(), or MoveLast(). @n - * Currently, @c DB_COLUMNTYPE_INT is returned for a 64-bit integer. @n - * The specific error code can be accessed using the GetLastResult() method. - */ - virtual DbColumnType GetColumnType(int columnIndex) const; - - /** - * Gets the name of the column indicated by a specified index. - * - * @since 2.1 - * - * @return The name of the column, @n - * else an empty string if an exception occurs - * @param[in] columnIndex The index of the destination column - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @exception E_INVALID_ENCODING_RANGE The string conversion has failed due to invalid encoding range. - * @remarks This method must be called after MoveNext(), MoveFirst(), or MoveLast(). @n - * The specific error code can be accessed using the GetLastResult() method. - */ - virtual Tizen::Base::String GetColumnName(int columnIndex) const; - - /** - * Gets the size of data in bytes. - * - * @since 2.1 - * - * @return The size of the data in bytes, @n - * else @c -1 if an exception occurs - * @param[in] columnIndex The index of the destination column - * @exception E_SUCCESS The method is successful. - * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. - * @exception E_INVALID_ARG The specified @c columnIndex is out of range. - * @remarks This method must be called after MoveNext(), MoveFirst(), or MoveLast(). @n - * If the destination column is of type String, this method returns the @c byte length excluding - * the @c null terminator character. @n - * The specific error code can be accessed using the GetLastResult() method. - */ - virtual int GetColumnSize(int columnIndex) const; - -private: - // - // This default constructor is intentionally declared as private so that only the platform can create an instance. - // - // @since 2.1 - // - DataSetEnumerator(void); - - // - // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. - // - // @since 2.1 - // - DataSetEnumerator(const DataSetEnumerator& rhs); - - // - // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. - // @since 2.1 - // - DataSetEnumerator& operator =(const DataSetEnumerator& rhs); - - class _DataSetEnumeratorImpl* __pDataSetEnumeratorImpl; - friend class _DataSetEnumeratorImpl; - -}; // DataSetEnumerator - -}} // Tizen::Io - -#endif // _FIO_DATA_SET_ENUMERATOR_H_ +// +// Copyright (c) 2013 Samsung Electronics Co., Ltd. +// +// 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 +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// 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. +// + +/** +* @file FIoDataSetEnumerator.h +* @brief This is the header file for the %DataSetEnumerator class. +* +* This header file contains the declarations of the %DataSetEnumerator class. +*/ + +#ifndef _FIO_DATA_SET_ENUMERATOR_H_ +#define _FIO_DATA_SET_ENUMERATOR_H_ + +#include +#include +#include +#include +#include + +namespace Tizen { namespace Base +{ +class String; +class ByteBuffer; +class DateTime; +}} + +namespace Tizen { namespace Io +{ + +/** +* @class DataSetEnumerator +* @brief This class provides methods for navigating the set of data in in-memory table. +* +* @since 2.1 +* +* @final This class is not intended for extension. +* +* The %DataSetEnumerator class provides methods for navigating the set of data in in-memory table. +* +* @see Tizen::Io::DataSet +*/ +class _OSP_EXPORT_ DataSetEnumerator + : public Tizen::Base::Object + , public Tizen::Io::IDbEnumerator +{ + +public: + /** + * This destructor overrides Tizen::Base::Object::~Object(). + * + * @since 2.1 + */ + virtual ~DataSetEnumerator(void); + + /** + * Moves the enumerator to the next position. + * + * @since 2.1 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_OUT_OF_RANGE The enumerator has reached out of the data set. + * @exception E_OBJECT_LOCKED The DataSet instance is locked. + * @exception E_INVALID_FORMAT The in-memory data is malformed. + * @exception E_IO Either of the following conditions has occurred: @n + * - An unexpected device failure has occurred as the media ejected suddenly. @n + * - %File corruption is detected. + * @exception E_SYSTEM The method cannot proceed due to a severe system error. + * @remarks After getting this %DataSetEnumerator instance, + * if this method is called first, the cursor goes to the first position. + * @see Tizen::Io::DataSetEnumerator::MovePrevious() + * @see Tizen::Io::DataSetEnumerator::MoveFirst() + * @see Tizen::Io::DataSetEnumerator::MoveLast() + */ + virtual result MoveNext(void); + + + /** + * Moves the enumerator to the previous position. + * + * @since 2.1 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_OUT_OF_RANGE The enumerator has reached out of the data set. + * @exception E_OBJECT_LOCKED The DataSet instance is locked. + * @exception E_INVALID_FORMAT The in-memory data is malformed. + * @exception E_IO Either of the following conditions has occurred: @n + * - An unexpected device failure has occurred as the media ejected suddenly. @n + * - %File corruption is detected. + * @exception E_SYSTEM The method cannot proceed due to a severe system error. + * @see Tizen::Io::DataSetEnumerator::MoveNext() + * @see Tizen::Io::DataSetEnumerator::MoveFirst() + * @see Tizen::Io::DataSetEnumerator::MoveLast() + */ + virtual result MovePrevious(void); + + /** + * Moves the enumerator to the first position. + * + * @since 2.1 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_OBJECT_LOCKED The DataSet instance is locked. + * @exception E_INVALID_FORMAT The in-memory data is malformed. + * @exception E_IO Either of the following conditions has occurred: @n + * - An unexpected device failure has occurred as the media ejected suddenly. @n + * - %File corruption is detected. + * @exception E_SYSTEM The method cannot proceed due to a severe system error. + * @see Tizen:Io::DataSetEnumerator::MoveNext() + * @see Tizen:Io::DataSetEnumerator::MovePrevious() + * @see Tizen:Io::DataSetEnumerator::MoveLast() + */ + virtual result MoveFirst(void); + + /** + * Moves the enumerator to the last position. + * + * @since 2.1 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_OBJECT_LOCKED The DataSet instance is locked. + * @exception E_INVALID_FORMAT The in-memory data is malformed. + * @exception E_IO Either of the following conditions has occurred: @n + * - An unexpected device failure has occurred as the media ejected suddenly. @n + * - %File corruption is detected. + * @exception E_SYSTEM The method cannot proceed due to a severe system error. + * @see Tizen:Io::DataSetEnumerator::MoveNext() + * @see Tizen:Io::DataSetEnumerator::MovePrevious() + * @see Tizen:Io::DataSetEnumerator::MoveFirst() + */ + virtual result MoveLast(void); + + /** + * Resets the calling %DataSetEnumerator instance back to its initial state. + * + * @since 2.1 + * + * @return An error code + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_OBJECT_LOCKED The DataSet instance is locked. + * @exception E_SYSTEM The method cannot proceed due to a severe system error. + * @remarks After this method is called, if MoveNext() is called the cursor goes to the first position. + */ + virtual result Reset(void); + + /** + * Gets an @c int value from the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is required + * @param[in,out] value The integer value obtained from the specified column + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + */ + virtual result GetIntAt(int columnIndex, int& value) const; + + /** + * Gets a @c long @c long value from the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is required + * @param[in,out] value The 64-bit integer value obtained from the specified column + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + */ + virtual result GetInt64At(int columnIndex, long long& value) const; + + /** + * Gets a @c double value from the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is required + * @param[in,out] value The double value obtained from the specified column + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + */ + virtual result GetDoubleAt(int columnIndex, double& value) const; + + /** + * Gets a Tizen::Base::String value from the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is required + * @param[in,out] value The Tizen::Base::String value obtained from the specified column + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + * @exception E_INVALID_ENCODING_RANGE The string conversion has failed due to invalid encoding range. + */ + virtual result GetStringAt(int columnIndex, Tizen::Base::String& value) const; + + /** + * Gets a Tizen::Base::ByteBuffer value from the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is required + * @param[in,out] value The Tizen::Base::ByteBuffer value obtained from the specified column @n + * The %Tizen::Base::ByteBuffer will be filled from the current position and data copy + * will be continued until %Tizen::Base::ByteBuffer limitation is reached or no more + * blob data remains. + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + * @exception E_OVERFLOW The specified Tizen::Base::ByteBuffer @c value is insufficient to save the data. + * @see Tizen::Base::ByteBuffer + */ + virtual result GetBlobAt(int columnIndex, Tizen::Base::ByteBuffer& value) const; + + /** + * Gets a blob data from the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is required + * @param[in,out] buffer The user-provided buffer used to receive the blob data + * @param[in] size The maximum buffer length in bytes + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG Either the specified @c columnIndex is out of range or the specified @c size is invalid. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + * @exception E_OVERFLOW The specified @c buffer is insufficient to save the data. + */ + virtual result GetBlobAt(int columnIndex, void* buffer, int size) const; + + /** + * Gets a Tizen::Base::DateTime value from the column whose index is specified. + * + * @since 2.1 + * + * @return An error code + * @param[in] columnIndex The index of the column whose value is required + * @param[in,out] value The Tizen::Base::DateTime value obtained from the specified column + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_TYPE_MISMATCH The operation has attempted to access columns of different types. + * @exception E_INVALID_FORMAT The date is not correctly formatted, or the method is trying to access column of type String. @n + * The date format should be 'mm/dd/yyyy hh:mm:ss'. + * @exception E_OUT_OF_RANGE Either the year, month, day, hour, minute, or second value is out of range, + * or the method is trying to access a column of type String. + */ + virtual result GetDateTimeAt(int columnIndex, Tizen::Base::DateTime& value) const; + + /** + * Gets the number of columns for this enumerator. + * + * @since 2.1 + * + * @return The number of columns in the calling enumerator, @n + * else @c -1 if an exception occurs + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @remarks This method must be called after MoveNext(), MoveFirst(), or MoveLast(). @n + * The specific error code can be accessed using the GetLastResult() method. + */ + virtual int GetColumnCount(void) const; + + /** + * Gets the type of the column indicated by a specified index. + * + * @since 2.1 + * + * @return The type of column, @n + * else @c DB_COLUMNTYPE_UNDEFINED if an exception occurs + * @param[in] columnIndex The index of the destination column + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @remarks This method must be called after MoveNext(), MoveFirst(), or MoveLast(). @n + * Currently, @c DB_COLUMNTYPE_INT is returned for a 64-bit integer. @n + * The specific error code can be accessed using the GetLastResult() method. + */ + virtual DbColumnType GetColumnType(int columnIndex) const; + + /** + * Gets the name of the column indicated by a specified index. + * + * @since 2.1 + * + * @return The name of the column, @n + * else an empty string if an exception occurs + * @param[in] columnIndex The index of the destination column + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @exception E_INVALID_ENCODING_RANGE The string conversion has failed due to invalid encoding range. + * @remarks This method must be called after MoveNext(), MoveFirst(), or MoveLast(). @n + * The specific error code can be accessed using the GetLastResult() method. + */ + virtual Tizen::Base::String GetColumnName(int columnIndex) const; + + /** + * Gets the size of data in bytes. + * + * @since 2.1 + * + * @return The size of the data in bytes, @n + * else @c -1 if an exception occurs + * @param[in] columnIndex The index of the destination column + * @exception E_SUCCESS The method is successful. + * @exception E_INVALID_STATE The DataSet instance associated with this instance is deleted. + * @exception E_INVALID_ARG The specified @c columnIndex is out of range. + * @remarks This method must be called after MoveNext(), MoveFirst(), or MoveLast(). @n + * If the destination column is of type String, this method returns the @c byte length excluding + * the @c null terminator character. @n + * The specific error code can be accessed using the GetLastResult() method. + */ + virtual int GetColumnSize(int columnIndex) const; + +private: + // + // This default constructor is intentionally declared as private so that only the platform can create an instance. + // + // @since 2.1 + // + DataSetEnumerator(void); + + // + // The implementation of this copy constructor is intentionally blank and declared as private to prohibit copying of objects. + // + // @since 2.1 + // + DataSetEnumerator(const DataSetEnumerator& rhs); + + // + // The implementation of this copy assignment operator is intentionally blank and declared as private to prohibit copying of objects. + // @since 2.1 + // + DataSetEnumerator& operator =(const DataSetEnumerator& rhs); + + class _DataSetEnumeratorImpl* __pDataSetEnumeratorImpl; + friend class _DataSetEnumeratorImpl; + +}; // DataSetEnumerator + +}} // Tizen::Io + +#endif // _FIO_DATA_SET_ENUMERATOR_H_