MeshKit  1.0
iRel Class Reference

C++ interface to ITAPS iRel interface. More...

#include <iRel.hpp>

List of all members.

Classes

class  PairHandle
 Class for storing, querying and modifying relations data. More...

Public Types

enum  IfaceType {
  IGEOM_IFACE = 0, IMESH_IFACE, IFIELD_IFACE, IREL_IFACE,
  FBIGEOM_IFACE
}
enum  RelationType { ENTITY = 0, SET, BOTH }
enum  RelationStatus { ACTIVE = 0, INACTIVE, NOTEXIST }
typedef iBase_ErrorType Error

Public Member Functions

 iRel (const char *options=0)
 iRel (iRel_Instance instance)
 ~iRel ()
iRel_Instance instance ()
iRel::IfaceType iface_type () const
Error getErrorType ()
std::string getDescription ()
Error createPair (iBase_Instance iface1, const RelationType ent_or_set1, const IfaceType iface_type1, const RelationStatus status1, iBase_Instance iface2, const RelationType ent_or_set2, const IfaceType iface_type2, const RelationStatus status2, PairHandle *&pair)
template<typename T , typename U >
Error createPair (T &iface1, const RelationType ent_or_set1, const RelationStatus status1, U &iface2, const RelationType ent_or_set2, const RelationStatus status2, PairHandle *&pair)
Error findPairs (iBase_Instance iface, std::vector< PairHandle * > &pairs)

Protected Member Functions

Error add_pair (PairHandle *pair)
Error remove_pair (PairHandle *pair)

Private Member Functions

 iRel (const iRel &)
void operator= (const iRel &)

Private Attributes

iRel_Instance mInstance
bool iRelInstanceOwner
std::vector< PairHandle * > relPairs

Detailed Description

C++ interface to ITAPS iRel interface.

This class is a simple wrapper for the ITAPS iRel interface. The primary benefit to using this class instead of iRel directly is that lists of handles are passed as std::vectors instead of pointers to handle arrays. This file includes both declaration and definition of all iRel class functions, i.e. all functions are inlined. The class can be constructed and destructed in the standard C++ way; the implementation of those functions call into the standard iRel C functions newRel and dtor.

For complete documentation of these functions, see the [http://trac.mcs.anl.gov/projects/ITAPS/browser/Lasso/trunk/iRel.h iRel header] in the Lasso source (for now).

Definition at line 33 of file iRel.hpp.


Member Typedef Documentation

typedef iBase_ErrorType Error

Definition at line 35 of file iRel.hpp.


Member Enumeration Documentation

enum IfaceType
Enumerator:
IGEOM_IFACE 
IMESH_IFACE 
IFIELD_IFACE 
IREL_IFACE 
FBIGEOM_IFACE 

Definition at line 44 of file iRel.hpp.

Enumerator:
ACTIVE 
INACTIVE 
NOTEXIST 

Definition at line 57 of file iRel.hpp.

Enumerator:
ENTITY 
SET 
BOTH 

Definition at line 52 of file iRel.hpp.


Constructor & Destructor Documentation

iRel ( const char *  options = 0) [inline]

Definition at line 261 of file iRel.hpp.

iRel ( iRel_Instance  instance) [inline]

Definition at line 273 of file iRel.hpp.

~iRel ( ) [inline]

Definition at line 279 of file iRel.hpp.

iRel ( const iRel ) [inline, private]

Definition at line 256 of file iRel.hpp.


Member Function Documentation

iRel::Error add_pair ( PairHandle pair) [inline, protected]

Definition at line 347 of file iRel.hpp.

iRel::Error createPair ( iBase_Instance  iface1,
const RelationType  ent_or_set1,
const IfaceType  iface_type1,
const RelationStatus  status1,
iBase_Instance  iface2,
const RelationType  ent_or_set2,
const IfaceType  iface_type2,
const RelationStatus  status2,
PairHandle *&  pair 
) [inline]
Examples:
example_volice.cpp.

Definition at line 301 of file iRel.hpp.

iRel::Error createPair ( T &  iface1,
const RelationType  ent_or_set1,
const RelationStatus  status1,
U &  iface2,
const RelationType  ent_or_set2,
const RelationStatus  status2,
PairHandle *&  pair 
) [inline]

Definition at line 318 of file iRel.hpp.

iRel::Error findPairs ( iBase_Instance  iface,
std::vector< PairHandle * > &  pairs 
) [inline]

Definition at line 335 of file iRel.hpp.

std::string getDescription ( ) [inline]

Definition at line 294 of file iRel.hpp.

iRel::Error getErrorType ( ) [inline]

Definition at line 287 of file iRel.hpp.

iRel::IfaceType iface_type ( ) const [inline]

Definition at line 62 of file iRel.hpp.

iRel_Instance instance ( ) [inline]

Definition at line 42 of file iRel.hpp.

void operator= ( const iRel ) [inline, private]

Definition at line 257 of file iRel.hpp.

iRel::Error remove_pair ( PairHandle pair) [inline, protected]

Definition at line 354 of file iRel.hpp.


Member Data Documentation

bool iRelInstanceOwner [private]

Definition at line 251 of file iRel.hpp.

iRel_Instance mInstance [private]

Definition at line 249 of file iRel.hpp.

std::vector<PairHandle*> relPairs [private]

Definition at line 253 of file iRel.hpp.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines