xc
Public Types | Public Member Functions | Friends | List of all members

Vector of integers. More...

#include <ID.h>

Inheritance diagram for XC::ID:
Inheritance graph
[legend]
Collaboration diagram for XC::ID:
Collaboration graph
[legend]

Public Types

typedef std::vector< int > v_int
 
- Public Types inherited from EntityWithProperties
typedef std::map< std::string, boost::python::object > PythonDict
 

Public Member Functions

 ID (void)
 Default constructor, sets size = 0;.
 
 ID (const int &)
 Constructor used to allocate a ID of size size. More...
 
 ID (const v_int &)
 
 ID (const boost::python::list &)
 Constructor (Python interface).
 
 ID (const std::set< int > &)
 
template<class InputIterator >
 ID (InputIterator first, InputIterator last)
 
int Size (void) const
 Returns the vector size.
 
void Zero (void)
 Zeros out the ID, i.e. More...
 
const int * getDataPtr (void) const
 Returns a const pointer to the vector data.
 
int * getDataPtr (void)
 Returns a const pointer to the vector data.
 
bool isEmpty (void) const
 Returns true if the vector is empty.
 
int resize (const int &newSize, const int &fill_value=0)
 Changes the size of the array.
 
void fill (const int &fill_value)
 Fills the array with the argument.
 
const int & max (void) const
 Returns the maximum of vector components.
 
const int & min (void) const
 Returns the minimum of vector components.
 
bool checkRange (const int &) const
 check if argument is inside range [0,sz-1]
 
int & operator() (const int &)
 Returns a reference to the element at position i in the container (does not range checking unless _G3DEBUG is set => faster than [] operator). More...
 
const int & operator() (const int &) const
 Returns a const reference to the element at position i in the container (does not range checking unless _G3DEBUG is set => faster than [] operator). More...
 
int & operator[] (const int &i)
 Returns a reference to the element at position i in the container (does range checking => slower than () operator). More...
 
const int & operator[] (const int &i) const
 Returns a reference to the element at position i in the container (does range checking => slower than () operator). More...
 
int getLocation (const int &) const
 Returns the position of 'value' in the vector. More...
 
int getLocationOrdered (const int &) const
 
int removeValue (const int &)
 Remove value from the array. More...
 
void reverse (void)
 Reverse sequence.
 
ID getReversed (void) const
 Return the reversed sequence.
 
- Public Member Functions inherited from CommandEntity
 CommandEntity (CommandEntity *owr=nullptr)
 Default constructor.
 
CommandEntityOwner (void)
 Return a pointer to the object owner.
 
const CommandEntityOwner (void) const
 Return un puntero al objeto propietario de ESTE.
 
const StandardOutputWrappergetStandardOutputWrapper (void) const
 Return the regular output stream wrapper.
 
StandardOutputWrappergetStandardOutputWrapper (void)
 Return the regular output stream wrapper.
 
const std::string & getLogFileName (void) const
 Returns log file name.
 
void setLogFileName (const std::string &)
 Sets log file name.
 
const std::string & getErrFileName (void) const
 Returns err file name.
 
void setErrFileName (const std::string &)
 Sets error file name.
 
const std::string & getOutputFileName (void) const
 Returns regular output file name.
 
void setOutputFileName (const std::string &)
 Sets regular output file name.
 
boost::python::object evalPy (boost::python::object dict, const std::string &)
 Return the Python object that results from evaluating the argument.
 
boost::python::object execPy (boost::python::object dict, const std::string &)
 Return the Python objects that results from executing the code in the string argument.
 
boost::python::object execFilePy (boost::python::object dict, const std::string &)
 Return the Python object that results from executing the code in the file.
 
- Public Member Functions inherited from EntityWithProperties
 EntityWithProperties (EntityWithProperties *owr=nullptr)
 Default constructor.
 
virtual bool operator== (const EntityWithProperties &) const
 Comparison operator.
 
void clearPyProps (void)
 Clear python properties map.
 
bool hasPyProp (const std::string &)
 Returns true if property exists.
 
boost::python::object getPyProp (const std::string &str)
 Return the Python object with the name being passed as parameter.
 
void setPyProp (std::string str, boost::python::object val)
 Sets/appends a value tho the Python object's dictionary.
 
void copyPropsFrom (const EntityWithProperties &)
 Copy the properties from the argument.
 
boost::python::list getPropNames (void) const
 Return the names of the object properties weightings.
 
const PythonDict & getPropertiesDict (void) const
 Return a std::map container with the properties of the object.
 
boost::python::dict getPyDict (void) const
 Return a Python dictionary containing the object members values.
 
void setPyDict (const boost::python::dict &)
 Set the values of the object members from a Python dictionary.
 
- Public Member Functions inherited from EntityWithOwner
 EntityWithOwner (EntityWithOwner *owr=nullptr)
 Default constructor.
 
 EntityWithOwner (const EntityWithOwner &)
 Copy constructor.
 
EntityWithOwneroperator= (const EntityWithOwner &)
 Assignment operator.
 
virtual bool operator== (const EntityWithOwner &) const
 Comparison operator.
 
virtual ~EntityWithOwner (void)
 Virtual destructor.
 
virtual std::string getClassName (void) const
 Returns demangled class name.
 
void set_owner (EntityWithOwner *owr)
 Assigns the owner of the object.
 
EntityWithOwnerOwner (void)
 
const EntityWithOwnerOwner (void) const
 

Friends

class UDP_Socket
 
class TCP_Socket
 
class TCP_SocketNoDelay
 
class MPI_Channel
 
std::ostream & operator<< (std::ostream &, const ID &)
 

Additional Inherited Members

- Static Public Member Functions inherited from CommandEntity
static void resetStandardOutput (void)
 Reset the standard output streams to its defaults buffers.
 
- Static Public Member Functions inherited from EntityWithOwner
static int getVerbosityLevel (void)
 Get the value of the verbosity level.
 
static void setVerbosityLevel (const int &)
 Set the value of the verbosity level.
 
- Protected Member Functions inherited from CommandEntity
template<class T >
void string_to (T &, const std::string &) const
 
- Static Protected Member Functions inherited from CommandEntity
static CommandEntityentcmd_cast (boost::any &data)
 
- Static Protected Attributes inherited from EntityWithOwner
static int verbosity = 1
 Object that owns THIS ONE. More...
 

Detailed Description

Vector of integers.

The ID class provides the abstraction for an integer Vector. The class is introduced in addition to the Vector class, to save memory and casting when integer arrays are required. An ID of order {size} is an ordered 1d array of size integer values. For example an ID id of order 5:

\(id = [id_0\) \(id_1\) \(id_2\) \(id_3\) \(id_4]\)

In the ID class, the data is stored in a 1d integer array of length equal to arraySize, where order <= arraySize. Creating an ID with storage capacity greater than that required allows the ID object to grow without the need to deallocate and allocate more memory. At present time none of the methods are declared as being virtual. THIS MAY CHANGE.

Constructor & Destructor Documentation

◆ ID()

XC::ID::ID ( const int &  size)
explicit

Constructor used to allocate a ID of size size.

To construct a ID of size idSize. The constructor creates an integer array of size idSize to store the data and zeroes this array by invoking Zero() on itself. If not enough memory is available an error message is printed and an ID of size \(0\) is returned.

Member Function Documentation

◆ getLocation()

int XC::ID::getLocation ( const int &  value) const

Returns the position of 'value' in the vector.

Will return the location the first location in the ID of the integer x. If x is not in the ID a \(-1\) is returned.

◆ operator()() [1/2]

int & XC::ID::operator() ( const int &  i)
inline

Returns a reference to the element at position i in the container (does not range checking unless _G3DEBUG is set => faster than [] operator).

◆ operator()() [2/2]

const int & XC::ID::operator() ( const int &  i) const
inline

Returns a const reference to the element at position i in the container (does not range checking unless _G3DEBUG is set => faster than [] operator).

◆ operator[]() [1/2]

int& XC::ID::operator[] ( const int &  i)
inline

Returns a reference to the element at position i in the container (does range checking => slower than () operator).

◆ operator[]() [2/2]

const int& XC::ID::operator[] ( const int &  i) const
inline

Returns a reference to the element at position i in the container (does range checking => slower than () operator).

◆ removeValue()

int XC::ID::removeValue ( const int &  value)

Remove value from the array.

Will return the last location in the ID of the integer x. If x is not in the ID a \(-1\) is returned. All the integer components x are removed from the ID and the length of the ID is reduced by the number of the removed components. The arraySize remains unchanged.

◆ Zero()

void XC::ID::Zero ( void  )

Zeros out the ID, i.e.

sets all the components of the ID to \(0\).


The documentation for this class was generated from the following files: