Rosetta  2019.07
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
ObjexxFCL::DynamicIndexRange Class Reference

DynamicIndexRange: Dynamic Index Range. More...

#include <DynamicIndexRange.hh>

Inheritance diagram for ObjexxFCL::DynamicIndexRange:
Inheritance graph
[legend]

Public Types

typedef DimensionExpression Expression
 
- Public Types inherited from ObjexxFCL::IndexRange
typedef std::size_t size_type
 
typedef std::size_t Size
 

Public Member Functions

 DynamicIndexRange ()
 Default Constructor. More...
 
 DynamicIndexRange (DynamicIndexRange const &I)
 Copy Constructor. More...
 
 DynamicIndexRange (IndexRange const &I)
 IndexRange Constructor. More...
 
 DynamicIndexRange (int const u_a)
 Upper Index Constructor. More...
 
 DynamicIndexRange (Star const &star)
 Unbounded Upper Index Constructor. More...
 
 DynamicIndexRange (Dimension const &u_dim_a)
 Upper Dimension Constructor. More...
 
 DynamicIndexRange (Expression const &u_exp_a)
 Upper Expression Constructor. More...
 
 DynamicIndexRange (int const l_a, int const u_a)
 Index Range Constructor. More...
 
 DynamicIndexRange (Dimension const &l_dim_a, Dimension const &u_dim_a)
 Dimension Range Constructor. More...
 
 DynamicIndexRange (Expression const &l_exp_a, Expression const &u_exp_a)
 Expression Range Constructor. More...
 
 DynamicIndexRange (int const l_a, Dimension const &u_dim_a)
 Index and Dimension Constructor. More...
 
 DynamicIndexRange (Dimension const &l_dim_a, int const u_a)
 Dimension and Index Constructor. More...
 
 DynamicIndexRange (int const l_a, Expression const &u_exp_a)
 Index and Expression Constructor. More...
 
 DynamicIndexRange (Expression const &l_exp_a, int const u_a)
 Expression and Index Constructor. More...
 
 DynamicIndexRange (Dimension const &l_dim_a, Expression const &u_exp_a)
 Dimension and Expression Constructor. More...
 
 DynamicIndexRange (Expression const &l_exp_a, Dimension const &u_dim_a)
 Expression and Dimension Constructor. More...
 
 DynamicIndexRange (int const l_a, Star const &star)
 Index and Unbounded Upper Index Constructor. More...
 
 DynamicIndexRange (Dimension const &l_dim_a, Star const &star)
 Dimension and Unbounded Upper Index Constructor. More...
 
 DynamicIndexRange (Expression const &l_exp_a, Star const &star)
 Expression and Unbounded Upper Index Constructor. More...
 
virtual ~DynamicIndexRange ()
 Destructor. More...
 
DynamicIndexRangeoperator= (DynamicIndexRange const &I)
 Copy Assignment. More...
 
DynamicIndexRangeoperator= (IndexRange const &I)
 IndexRange Assignment. More...
 
DynamicIndexRangeoperator= (int const u_a)
 Upper Index Assignment. More...
 
DynamicIndexRangeoperator= (Star const &star)
 Unbounded Upper Index Assignment. More...
 
DynamicIndexRangeoperator= (Dimension const &u_dim_a)
 Upper Dimension Assignment. More...
 
DynamicIndexRangeoperator= (Expression const &u_exp_a)
 Upper Expression Assignment. More...
 
DynamicIndexRangeassign (DynamicIndexRange const &I)
 DynamicIndexRange Assignment. More...
 
DynamicIndexRangeassign (IndexRange const &I)
 IndexRange Assignment. More...
 
DynamicIndexRangeassign (int const u_a)
 Upper Index Assignment. More...
 
DynamicIndexRangeassign (Star const &star)
 Unbounded Upper Index Assignment. More...
 
DynamicIndexRangeassign (Dimension const &u_dim_a)
 Upper Dimension Assignment. More...
 
DynamicIndexRangeassign (Expression const &u_exp_a)
 Upper Expression Assignment. More...
 
DynamicIndexRangeassign (int const l_a, int const u_a)
 Index Range Assignment. More...
 
DynamicIndexRangeassign (Dimension const &l_dim_a, Dimension const &u_dim_a)
 Dimension Range Assignment. More...
 
DynamicIndexRangeassign (Expression const &l_exp_a, Expression const &u_exp_a)
 Expression Range Assignment. More...
 
DynamicIndexRangeassign (int const l_a, Dimension const &u_dim_a)
 Index and Dimension Assignment. More...
 
DynamicIndexRangeassign (Dimension const &l_dim_a, int const u_a)
 Dimension and Index Assignment. More...
 
DynamicIndexRangeassign (int const l_a, Expression const &u_exp_a)
 Index and Expression Assignment. More...
 
DynamicIndexRangeassign (Expression const &l_exp_a, int const u_a)
 Expression and Index Assignment. More...
 
DynamicIndexRangeassign (Dimension const &l_dim_a, Expression const &u_exp_a)
 Dimension and Expression Assignment. More...
 
DynamicIndexRangeassign (Expression const &l_exp_a, Dimension const &u_dim_a)
 Expression and Dimension Assignment. More...
 
DynamicIndexRangeassign (int const l_a, Star const &star)
 Index and Unbounded Upper Index Assignment. More...
 
DynamicIndexRangeassign (Dimension const &l_dim_a, Star const &star)
 Dimension and Unbounded Upper Index Assignment. More...
 
DynamicIndexRangeassign (Expression const &l_exp_a, Star const &star)
 Expression and Unbounded Upper Index Assignment. More...
 
DynamicIndexRangeassign_no_notify (DynamicIndexRange const &I)
 DynamicIndexRange Assignment Without Notification. More...
 
DynamicIndexRangeassign_no_notify (IndexRange const &I)
 IndexRange Assignment Without Notification. More...
 
DynamicIndexRangeassign_no_notify (int const l_a, Star const &star)
 Index and Unbounded Upper Index Assignment Without Notification. More...
 
bool initialized () const
 Initialized? More...
 
bool l_initialized () const
 Lower Initialized? More...
 
bool u_initialized () const
 Upper Initialized? More...
 
bool legal () const
 Legal? More...
 
bool bounded () const
 Bounded? More...
 
bool unbounded () const
 Unbounded? More...
 
bool not_unbounded () const
 Not Unbounded? More...
 
bool positive () const
 Bounded with Positive Size? More...
 
bool contains (int const i) const
 Contains an Index? More...
 
bool contains (IndexRange const &I) const
 Contains Another IndexRange? More...
 
bool intersects (IndexRange const &I) const
 Intersects Another IndexRange? More...
 
DynamicIndexRangel (int const l_a)
 Lower Index Set. More...
 
DynamicIndexRangel (Dimension const &l_dim_a)
 Lower Dimension Set. More...
 
DynamicIndexRangel (Expression const &l_exp_a)
 Lower Expression Set. More...
 
DynamicIndexRangel_no_notify (int const l_a)
 Lower Index Set Without Notification. More...
 
DynamicIndexRangel_no_notify (Dimension const &l_dim_a)
 Lower Dimension Set Without Notification. More...
 
DynamicIndexRangel_no_notify (Expression const &l_exp_a)
 Lower Expression Set Without Notification. More...
 
DynamicIndexRangeu (int const u_a)
 Upper Index Set. More...
 
DynamicIndexRangeu (Star const &star)
 Unbounded Upper Index Set. More...
 
DynamicIndexRangeu (Dimension const &u_dim_a)
 Upper Dimension Set. More...
 
DynamicIndexRangeu (Expression const &u_exp_a)
 Upper Expression Set. More...
 
DynamicIndexRangeu_no_notify (int const u_a)
 Upper Index Set Without Notification. More...
 
DynamicIndexRangeu_no_notify (Star const &star)
 Unbounded Upper Index Set Without Notification. More...
 
DynamicIndexRangeu_no_notify (Dimension const &u_dim_a)
 Upper Dimension Set Without Notification. More...
 
DynamicIndexRangeu_no_notify (Expression const &u_exp_a)
 Upper Expression Set Without Notification. More...
 
DynamicIndexRangecontain (int const i)
 Expand to Contain an Index. More...
 
DynamicIndexRangecontain_nic (int const i)
 Expand to Contain an Index and Notify If Changed. More...
 
DynamicIndexRangecontain (IndexRange const &I)
 Expand to Contain Another IndexRange. More...
 
DynamicIndexRangecontain_nic (IndexRange const &I)
 Expand to Contain Another IndexRange and Notify If Changed. More...
 
DynamicIndexRangeintersect (IndexRange const &I)
 Intersect With Another IndexRange. More...
 
DynamicIndexRangeintersect_nic (IndexRange const &I)
 Intersect With Another IndexRange and Notify If Changed. More...
 
DynamicIndexRangeclear ()
 Clear. More...
 
DynamicIndexRangeclear_no_notify ()
 Clear Without Notification. More...
 
DynamicIndexRangeswap (DynamicIndexRange &I)
 Swap. More...
 
DynamicIndexRangeswap_no_notify (DynamicIndexRange &I)
 Swap Without Notification. More...
 
void update ()
 Update. More...
 
void destructed (Subject const &)
 Update for Destruction of a Subject. More...
 
- Public Member Functions inherited from ObjexxFCL::IndexRange
virtual ~IndexRange ()
 Destructor. More...
 
bool bounded_value () const
 Bounded? More...
 
bool unbounded_value () const
 Unbounded? More...
 
bool positive_value () const
 Bounded with Positive Size? More...
 
int l () const
 Lower Index. More...
 
int lz () const
 Lower Index (Zero if Uninitialized) More...
 
int u () const
 Upper Index. More...
 
int uz () const
 Upper Index (Zero if Uninitialized) More...
 
size_type size () const
 Size. More...
 
int offset (int const i) const
 Offset of an Index. More...
 
- Public Member Functions inherited from ObjexxFCL::ObserverSingle
virtual ~ObserverSingle ()
 Destructor. More...
 
void insert_observer (Observer &observer) const
 Insert an Observer. More...
 
void remove_observer (Observer &observer) const
 Remove an Observer. More...
 
bool has_observer () const
 Has At Least One Observer? More...
 
void notify_destructed () const
 Notify Observers That This Subject is Being Destructed. More...
 
Observerobserver_p () const
 Observer. More...
 
- Public Member Functions inherited from ObjexxFCL::Observer
virtual ~Observer ()
 Destructor. More...
 
void notify () const
 Notify Observers That This Subject Has Changed. More...
 
bool acyclic (Observer &) const
 Acyclic After Adding an Observer of This Subject? More...
 

Private Types

typedef IndexRange Super
 

Private Member Functions

bool legal_dynamic () const
 Legal DynamicIndexRange? More...
 
void size_dynamic ()
 Set Size to Zero if Uninitialized. More...
 
Dimensionl_dim_clone () const
 Lower Dimension Clone. More...
 
Dimensionu_dim_clone () const
 Upper Dimension Clone. More...
 
void insert_as_observer ()
 Insert as Observer of the Dimensions. More...
 
void l_insert_as_observer ()
 Insert as Observer of the Lower Dimension. More...
 
void u_insert_as_observer ()
 Insert as Observer of the Upper Dimension. More...
 
void remove_as_observer ()
 Remove as Observer of the Dimensions. More...
 

Private Attributes

Dimensionl_dim_p_
 Lower Dimension pointer (0 iff no Dimension) More...
 
Dimensionu_dim_p_
 Upper Dimension pointer (0 iff no Dimension) More...
 

Friends

void swap (DynamicIndexRange &a, DynamicIndexRange &b)
 Swap. More...
 
void swap_no_notify (DynamicIndexRange &a, DynamicIndexRange &b)
 Swap. More...
 

Additional Inherited Members

- Static Public Attributes inherited from ObjexxFCL::IndexRange
static size_type const npos = static_cast< size_type >( -1 )
 
static int const l_min = -( static_cast< int >( ( static_cast< unsigned int >( -1 ) / 2u ) ) - 1 )
 
static int const u_max = static_cast< int >( ( static_cast< unsigned int >( -1 ) / 2u ) )
 
- Protected Member Functions inherited from ObjexxFCL::IndexRange
 IndexRange ()
 Default Constructor. More...
 
 IndexRange (IndexRange const &I)
 Copy Constructor. More...
 
 IndexRange (int const u_a)
 Upper Index Constructor. More...
 
 IndexRange (Star const &)
 Unbounded Upper Index Constructor. More...
 
 IndexRange (int const l_a, int const u_a)
 Index Range Constructor. More...
 
 IndexRange (int const l_a, Star const &)
 Index and Unbounded Upper Index Constructor. More...
 
IndexRangeoperator= (IndexRange const &I)
 Copy Assignment. More...
 
bool legal_static () const
 Legal Static Range? More...
 
void swap (IndexRange &I)
 Swap. More...
 
- Protected Member Functions inherited from ObjexxFCL::ObserverSingle
 ObserverSingle ()
 Default Constructor. More...
 
 ObserverSingle (ObserverSingle const &)
 Copy Constructor. More...
 
ObserverSingleoperator= (ObserverSingle const &)
 Copy Assignment. More...
 
- Protected Member Functions inherited from ObjexxFCL::Observer
 Observer ()
 Default Constructor. More...
 
 Observer (Observer const &)
 Copy Constructor. More...
 
Observeroperator= (Observer const &)
 Copy Assignment. More...
 

Detailed Description

DynamicIndexRange: Dynamic Index Range.

Remarks
  • Initialized unless an active Dimension is uninitialized
  • Uninitialized range has ( size == 0 ) and its range values should not be accessed
  • Zero-size range is indicated by ( l - 1 == u ) and ( size == 0 )
  • Upper-unbounded range is indicated by ( l - 2 == u ) and ( size == npos )
  • Legal ranges have ( l - 2 <= u ) with l and u in their allowed ranges

Member Typedef Documentation

Constructor & Destructor Documentation

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( )
inline

Default Constructor.

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( DynamicIndexRange const &  I)
inline

Copy Constructor.

References insert_as_observer(), and legal_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( IndexRange const &  I)
inline

IndexRange Constructor.

References insert_as_observer(), and legal_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( int const  u_a)
inline

Upper Index Constructor.

References ObjexxFCL::IndexRange::legal_static().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Star const &  star)
inline

Unbounded Upper Index Constructor.

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Dimension const &  u_dim_a)
inline

Upper Dimension Constructor.

References legal_dynamic(), size_dynamic(), and u_insert_as_observer().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Expression const &  u_exp_a)
inline

Upper Expression Constructor.

References legal_dynamic(), size_dynamic(), and u_insert_as_observer().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( int const  l_a,
int const  u_a 
)
inline

Index Range Constructor.

References ObjexxFCL::IndexRange::legal_static().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Dimension const &  l_dim_a,
Dimension const &  u_dim_a 
)
inline

Dimension Range Constructor.

References insert_as_observer(), legal_dynamic(), and size_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Expression const &  l_exp_a,
Expression const &  u_exp_a 
)
inline

Expression Range Constructor.

References insert_as_observer(), legal_dynamic(), and size_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( int const  l_a,
Dimension const &  u_dim_a 
)
inline

Index and Dimension Constructor.

References legal_dynamic(), size_dynamic(), and u_insert_as_observer().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Dimension const &  l_dim_a,
int const  u_a 
)
inline

Dimension and Index Constructor.

References l_insert_as_observer(), legal_dynamic(), and size_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( int const  l_a,
Expression const &  u_exp_a 
)
inline

Index and Expression Constructor.

References legal_dynamic(), size_dynamic(), and u_insert_as_observer().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Expression const &  l_exp_a,
int const  u_a 
)
inline

Expression and Index Constructor.

References l_insert_as_observer(), legal_dynamic(), and size_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Dimension const &  l_dim_a,
Expression const &  u_exp_a 
)
inline

Dimension and Expression Constructor.

References insert_as_observer(), legal_dynamic(), and size_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Expression const &  l_exp_a,
Dimension const &  u_dim_a 
)
inline

Expression and Dimension Constructor.

References insert_as_observer(), legal_dynamic(), and size_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( int const  l_a,
Star const &  star 
)
inline

Index and Unbounded Upper Index Constructor.

References ObjexxFCL::IndexRange::legal_static().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Dimension const &  l_dim_a,
Star const &  star 
)

Dimension and Unbounded Upper Index Constructor.

References insert_as_observer(), legal_dynamic(), and size_dynamic().

ObjexxFCL::DynamicIndexRange::DynamicIndexRange ( Expression const &  l_exp_a,
Star const &  star 
)

Expression and Unbounded Upper Index Constructor.

References insert_as_observer(), legal_dynamic(), and size_dynamic().

virtual ObjexxFCL::DynamicIndexRange::~DynamicIndexRange ( )
inlinevirtual

Destructor.

References l_dim_p_, and u_dim_p_.

Member Function Documentation

DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( DynamicIndexRange const &  I)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( IndexRange const &  I)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( int const  u_a)
inlinevirtual
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Star const &  star)
inlinevirtual

Unbounded Upper Index Assignment.

Reimplemented from ObjexxFCL::IndexRange.

References l_dim_p_, ObjexxFCL::Observer::notify(), ObjexxFCL::IndexRange::operator=(), and u_dim_p_.

DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Dimension const &  u_dim_a)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Expression const &  u_exp_a)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( int const  l_a,
int const  u_a 
)
inlinevirtual
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Dimension const &  l_dim_a,
Dimension const &  u_dim_a 
)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Expression const &  l_exp_a,
Expression const &  u_exp_a 
)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( int const  l_a,
Dimension const &  u_dim_a 
)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Dimension const &  l_dim_a,
int const  u_a 
)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( int const  l_a,
Expression const &  u_exp_a 
)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Expression const &  l_exp_a,
int const  u_a 
)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Dimension const &  l_dim_a,
Expression const &  u_exp_a 
)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( Expression const &  l_exp_a,
Dimension const &  u_dim_a 
)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign ( int const  l_a,
Star const &  star 
)
inlinevirtual

Index and Unbounded Upper Index Assignment.

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::IndexRange::assign(), l_dim_p_, ObjexxFCL::IndexRange::legal_static(), ObjexxFCL::Observer::notify(), and u_dim_p_.

DynamicIndexRange & ObjexxFCL::DynamicIndexRange::assign ( Dimension const &  l_dim_a,
Star const &  star 
)
DynamicIndexRange & ObjexxFCL::DynamicIndexRange::assign ( Expression const &  l_exp_a,
Star const &  star 
)
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign_no_notify ( DynamicIndexRange const &  I)
inline

DynamicIndexRange Assignment Without Notification.

References l_dim_clone(), l_dim_p_, l_insert_as_observer(), legal_dynamic(), ObjexxFCL::IndexRange::operator=(), u_dim_clone(), u_dim_p_, and u_insert_as_observer().

Referenced by contain(), ObjexxFCL::FArray1D< double >::dimension(), ObjexxFCL::KeyFArray1D< typename >::dimension(), ObjexxFCL::FArray2D< double >::dimension(), ObjexxFCL::KeyFArray2D< typename >::dimension(), ObjexxFCL::FArray3D< typename >::dimension(), ObjexxFCL::KeyFArray3D< typename >::dimension(), ObjexxFCL::FArray4D< typename >::dimension(), ObjexxFCL::KeyFArray4D< typename >::dimension(), ObjexxFCL::FArray5D< typename >::dimension(), ObjexxFCL::KeyFArray5D< typename >::dimension(), ObjexxFCL::FArray1P< typename >::dimension(), ObjexxFCL::FArray6D< typename >::dimension(), ObjexxFCL::KeyFArray6D< typename >::dimension(), ObjexxFCL::FArray2P< typename >::dimension(), ObjexxFCL::FArray3P< typename >::dimension(), ObjexxFCL::FArray4P< typename >::dimension(), ObjexxFCL::FArray5P< typename >::dimension(), ObjexxFCL::FArray6P< typename >::dimension(), ObjexxFCL::FArray1D< double >::dimension_assign(), ObjexxFCL::KeyFArray1D< typename >::dimension_assign(), ObjexxFCL::FArray2D< double >::dimension_assign(), ObjexxFCL::FArray3D< typename >::dimension_assign(), ObjexxFCL::KeyFArray3D< typename >::dimension_assign(), ObjexxFCL::KeyFArray2D< typename >::dimension_assign(), ObjexxFCL::FArray1P< typename >::dimension_assign(), ObjexxFCL::FArray4D< typename >::dimension_assign(), ObjexxFCL::KeyFArray4D< typename >::dimension_assign(), ObjexxFCL::FArray2P< typename >::dimension_assign(), ObjexxFCL::FArray5D< typename >::dimension_assign(), ObjexxFCL::KeyFArray5D< typename >::dimension_assign(), ObjexxFCL::FArray6D< typename >::dimension_assign(), ObjexxFCL::KeyFArray6D< typename >::dimension_assign(), ObjexxFCL::FArray3P< typename >::dimension_assign(), ObjexxFCL::FArray4P< typename >::dimension_assign(), ObjexxFCL::FArray5P< typename >::dimension_assign(), and ObjexxFCL::FArray6P< typename >::dimension_assign().

DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign_no_notify ( IndexRange const &  I)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::assign_no_notify ( int const  l_a,
Star const &  star 
)
inline

Index and Unbounded Upper Index Assignment Without Notification.

References ObjexxFCL::IndexRange::assign(), l_dim_p_, ObjexxFCL::IndexRange::legal_static(), and u_dim_p_.

bool ObjexxFCL::DynamicIndexRange::bounded ( ) const
inlinevirtual
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::clear ( )
inlinevirtual
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::clear_no_notify ( )
inline
DynamicIndexRange & ObjexxFCL::DynamicIndexRange::contain ( int const  i)
virtual
DynamicIndexRange & ObjexxFCL::DynamicIndexRange::contain ( IndexRange const &  I)
virtual
DynamicIndexRange & ObjexxFCL::DynamicIndexRange::contain_nic ( int const  i)
DynamicIndexRange & ObjexxFCL::DynamicIndexRange::contain_nic ( IndexRange const &  I)
bool ObjexxFCL::DynamicIndexRange::contains ( int const  i) const
inlinevirtual

Contains an Index?

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::Dimension::initialized_, ObjexxFCL::IndexRange::l_, l_dim_p_, ObjexxFCL::IndexRange::npos, ObjexxFCL::IndexRange::size_, ObjexxFCL::IndexRange::u_, and u_dim_p_.

Referenced by ObjexxFCL::FArray1D< double >::a(), ObjexxFCL::KeyFArray1D< typename >::a(), ObjexxFCL::FArray3D< typename >::a(), ObjexxFCL::KeyFArray3D< typename >::a(), ObjexxFCL::FArray4D< typename >::a(), ObjexxFCL::KeyFArray4D< typename >::a(), ObjexxFCL::FArray2D< double >::a(), ObjexxFCL::KeyFArray2D< typename >::a(), ObjexxFCL::FArray5D< typename >::a(), ObjexxFCL::KeyFArray5D< typename >::a(), ObjexxFCL::FArray6D< typename >::a(), ObjexxFCL::KeyFArray6D< typename >::a(), ObjexxFCL::FArray1P< typename >::a(), ObjexxFCL::FArray2P< typename >::a(), ObjexxFCL::FArray3P< typename >::a(), ObjexxFCL::FArray4P< typename >::a(), ObjexxFCL::FArray5P< typename >::a(), ObjexxFCL::FArray6P< typename >::a(), ObjexxFCL::FArray1D< double >::contains(), ObjexxFCL::KeyFArray1D< typename >::contains(), ObjexxFCL::FArray3D< typename >::contains(), ObjexxFCL::KeyFArray3D< typename >::contains(), ObjexxFCL::FArray4D< typename >::contains(), ObjexxFCL::KeyFArray4D< typename >::contains(), ObjexxFCL::FArray2D< double >::contains(), ObjexxFCL::KeyFArray2D< typename >::contains(), ObjexxFCL::FArray5D< typename >::contains(), ObjexxFCL::KeyFArray5D< typename >::contains(), ObjexxFCL::FArray6D< typename >::contains(), ObjexxFCL::KeyFArray6D< typename >::contains(), ObjexxFCL::FArray1P< typename >::contains(), ObjexxFCL::FArray2P< typename >::contains(), ObjexxFCL::FArray3P< typename >::contains(), ObjexxFCL::FArray4P< typename >::contains(), ObjexxFCL::FArray5P< typename >::contains(), ObjexxFCL::FArray6P< typename >::contains(), ObjexxFCL::FArray1D< double >::operator()(), ObjexxFCL::KeyFArray1D< typename >::operator()(), ObjexxFCL::KeyFArray3D< typename >::operator()(), ObjexxFCL::FArray3D< typename >::operator()(), ObjexxFCL::KeyFArray4D< typename >::operator()(), ObjexxFCL::FArray4D< typename >::operator()(), ObjexxFCL::KeyFArray2D< typename >::operator()(), ObjexxFCL::FArray2D< double >::operator()(), ObjexxFCL::KeyFArray5D< typename >::operator()(), ObjexxFCL::FArray5D< typename >::operator()(), ObjexxFCL::KeyFArray6D< typename >::operator()(), ObjexxFCL::FArray6D< typename >::operator()(), ObjexxFCL::FArray1P< typename >::operator()(), ObjexxFCL::FArray2P< typename >::operator()(), ObjexxFCL::FArray3P< typename >::operator()(), ObjexxFCL::FArray4P< typename >::operator()(), ObjexxFCL::FArray5P< typename >::operator()(), and ObjexxFCL::FArray6P< typename >::operator()().

bool ObjexxFCL::DynamicIndexRange::contains ( IndexRange const &  I) const
inlinevirtual
void ObjexxFCL::DynamicIndexRange::destructed ( Subject const &  )
inlinevirtual

Update for Destruction of a Subject.

Implements ObjexxFCL::Observer.

bool ObjexxFCL::DynamicIndexRange::initialized ( ) const
inlinevirtual

Initialized?

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::Dimension::initialized_, l_dim_p_, and u_dim_p_.

Referenced by ObjexxFCL::FArray1D< double >::dimensions_initialized(), ObjexxFCL::KeyFArray1D< typename >::dimensions_initialized(), ObjexxFCL::FArray3D< typename >::dimensions_initialized(), ObjexxFCL::KeyFArray3D< typename >::dimensions_initialized(), ObjexxFCL::FArray4D< typename >::dimensions_initialized(), ObjexxFCL::KeyFArray4D< typename >::dimensions_initialized(), ObjexxFCL::FArray2D< double >::dimensions_initialized(), ObjexxFCL::KeyFArray2D< typename >::dimensions_initialized(), ObjexxFCL::FArray5D< typename >::dimensions_initialized(), ObjexxFCL::KeyFArray5D< typename >::dimensions_initialized(), ObjexxFCL::FArray6D< typename >::dimensions_initialized(), ObjexxFCL::KeyFArray6D< typename >::dimensions_initialized(), ObjexxFCL::FArray1P< typename >::dimensions_initialized(), ObjexxFCL::FArray2P< typename >::dimensions_initialized(), ObjexxFCL::FArray3P< typename >::dimensions_initialized(), ObjexxFCL::FArray4P< typename >::dimensions_initialized(), ObjexxFCL::FArray5P< typename >::dimensions_initialized(), ObjexxFCL::FArray6P< typename >::dimensions_initialized(), ObjexxFCL::FArray1D< double >::index(), ObjexxFCL::KeyFArray1D< typename >::index(), ObjexxFCL::FArray3D< typename >::index(), ObjexxFCL::KeyFArray3D< typename >::index(), ObjexxFCL::FArray4D< typename >::index(), ObjexxFCL::KeyFArray4D< typename >::index(), ObjexxFCL::FArray2D< double >::index(), ObjexxFCL::KeyFArray2D< typename >::index(), ObjexxFCL::FArray5D< typename >::index(), ObjexxFCL::KeyFArray5D< typename >::index(), ObjexxFCL::FArray6D< typename >::index(), ObjexxFCL::KeyFArray6D< typename >::index(), ObjexxFCL::FArray1P< typename >::index(), ObjexxFCL::FArray2P< typename >::index(), ObjexxFCL::FArray3P< typename >::index(), ObjexxFCL::FArray4P< typename >::index(), ObjexxFCL::FArray5P< typename >::index(), and ObjexxFCL::FArray6P< typename >::index().

void ObjexxFCL::DynamicIndexRange::insert_as_observer ( )
inlineprivate

Insert as Observer of the Dimensions.

References ObjexxFCL::ObserverMulti::insert_observer(), l_dim_p_, and u_dim_p_.

Referenced by DynamicIndexRange(), swap(), and swap_no_notify().

DynamicIndexRange & ObjexxFCL::DynamicIndexRange::intersect ( IndexRange const &  I)
virtual
DynamicIndexRange & ObjexxFCL::DynamicIndexRange::intersect_nic ( IndexRange const &  I)
bool ObjexxFCL::DynamicIndexRange::intersects ( IndexRange const &  I) const
inlinevirtual
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::l ( int const  l_a)
inlinevirtual

Lower Index Set.

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::IndexRange::l(), l_dim_p_, legal_dynamic(), ObjexxFCL::Observer::notify(), and size_dynamic().

Referenced by ObjexxFCL::FArray1D< double >::FArray1D(), ObjexxFCL::FArray2D< double >::FArray2D(), ObjexxFCL::FArray3D< typename >::FArray3D(), ObjexxFCL::FArray4D< typename >::FArray4D(), ObjexxFCL::FArray5D< typename >::FArray5D(), ObjexxFCL::FArray6D< typename >::FArray6D(), ObjexxFCL::KeyFArray1D< typename >::KeyFArray1D(), ObjexxFCL::KeyFArray2D< typename >::KeyFArray2D(), ObjexxFCL::KeyFArray3D< typename >::KeyFArray3D(), ObjexxFCL::KeyFArray4D< typename >::KeyFArray4D(), ObjexxFCL::KeyFArray5D< typename >::KeyFArray5D(), ObjexxFCL::KeyFArray6D< typename >::KeyFArray6D(), ObjexxFCL::FArray1D< double >::l(), ObjexxFCL::KeyFArray1D< typename >::l(), ObjexxFCL::FArray1P< typename >::l(), ObjexxFCL::FArray1D< double >::l1(), ObjexxFCL::KeyFArray1D< typename >::l1(), ObjexxFCL::FArray3D< typename >::l1(), ObjexxFCL::KeyFArray3D< typename >::l1(), ObjexxFCL::FArray4D< typename >::l1(), ObjexxFCL::KeyFArray4D< typename >::l1(), ObjexxFCL::FArray2D< double >::l1(), ObjexxFCL::KeyFArray2D< typename >::l1(), ObjexxFCL::FArray5D< typename >::l1(), ObjexxFCL::KeyFArray5D< typename >::l1(), ObjexxFCL::FArray6D< typename >::l1(), ObjexxFCL::KeyFArray6D< typename >::l1(), ObjexxFCL::FArray1P< typename >::l1(), ObjexxFCL::FArray2P< typename >::l1(), ObjexxFCL::FArray3P< typename >::l1(), ObjexxFCL::FArray4P< typename >::l1(), ObjexxFCL::FArray5P< typename >::l1(), ObjexxFCL::FArray6P< typename >::l1(), ObjexxFCL::FArray3D< typename >::l2(), ObjexxFCL::KeyFArray3D< typename >::l2(), ObjexxFCL::FArray4D< typename >::l2(), ObjexxFCL::KeyFArray4D< typename >::l2(), ObjexxFCL::FArray2D< double >::l2(), ObjexxFCL::KeyFArray2D< typename >::l2(), ObjexxFCL::FArray5D< typename >::l2(), ObjexxFCL::KeyFArray5D< typename >::l2(), ObjexxFCL::FArray6D< typename >::l2(), ObjexxFCL::KeyFArray6D< typename >::l2(), ObjexxFCL::FArray2P< typename >::l2(), ObjexxFCL::FArray3P< typename >::l2(), ObjexxFCL::FArray4P< typename >::l2(), ObjexxFCL::FArray5P< typename >::l2(), ObjexxFCL::FArray6P< typename >::l2(), ObjexxFCL::FArray3D< typename >::l3(), ObjexxFCL::KeyFArray3D< typename >::l3(), ObjexxFCL::FArray4D< typename >::l3(), ObjexxFCL::KeyFArray4D< typename >::l3(), ObjexxFCL::FArray5D< typename >::l3(), ObjexxFCL::KeyFArray5D< typename >::l3(), ObjexxFCL::FArray6D< typename >::l3(), ObjexxFCL::KeyFArray6D< typename >::l3(), ObjexxFCL::FArray3P< typename >::l3(), ObjexxFCL::FArray4P< typename >::l3(), ObjexxFCL::FArray5P< typename >::l3(), ObjexxFCL::FArray6P< typename >::l3(), ObjexxFCL::FArray4D< typename >::l4(), ObjexxFCL::KeyFArray4D< typename >::l4(), ObjexxFCL::FArray5D< typename >::l4(), ObjexxFCL::KeyFArray5D< typename >::l4(), ObjexxFCL::FArray6D< typename >::l4(), ObjexxFCL::KeyFArray6D< typename >::l4(), ObjexxFCL::FArray4P< typename >::l4(), ObjexxFCL::FArray5P< typename >::l4(), ObjexxFCL::FArray6P< typename >::l4(), ObjexxFCL::FArray5D< typename >::l5(), ObjexxFCL::KeyFArray5D< typename >::l5(), ObjexxFCL::FArray6D< typename >::l5(), ObjexxFCL::KeyFArray6D< typename >::l5(), ObjexxFCL::FArray5P< typename >::l5(), ObjexxFCL::FArray6P< typename >::l5(), ObjexxFCL::FArray6D< typename >::l6(), ObjexxFCL::KeyFArray6D< typename >::l6(), and ObjexxFCL::FArray6P< typename >::l6().

DynamicIndexRange& ObjexxFCL::DynamicIndexRange::l ( Dimension const &  l_dim_a)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::l ( Expression const &  l_exp_a)
inline
Dimension* ObjexxFCL::DynamicIndexRange::l_dim_clone ( ) const
inlineprivatevirtual

Lower Dimension Clone.

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::Dimension::clone(), and l_dim_p_.

Referenced by assign(), assign_no_notify(), and operator=().

bool ObjexxFCL::DynamicIndexRange::l_initialized ( ) const
inlinevirtual

Lower Initialized?

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::Dimension::initialized_, and l_dim_p_.

void ObjexxFCL::DynamicIndexRange::l_insert_as_observer ( )
inlineprivate
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::l_no_notify ( int const  l_a)
inline

Lower Index Set Without Notification.

References ObjexxFCL::IndexRange::l(), l_dim_p_, legal_dynamic(), and size_dynamic().

Referenced by contain(), contain_nic(), intersect(), and intersect_nic().

DynamicIndexRange& ObjexxFCL::DynamicIndexRange::l_no_notify ( Dimension const &  l_dim_a)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::l_no_notify ( Expression const &  l_exp_a)
inline
bool ObjexxFCL::DynamicIndexRange::legal ( ) const
inlinevirtual
bool ObjexxFCL::DynamicIndexRange::legal_dynamic ( ) const
inlineprivate
bool ObjexxFCL::DynamicIndexRange::not_unbounded ( ) const
inlinevirtual
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::operator= ( DynamicIndexRange const &  I)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::operator= ( IndexRange const &  I)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::operator= ( int const  u_a)
inlinevirtual
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::operator= ( Star const &  star)
inlinevirtual

Unbounded Upper Index Assignment.

Reimplemented from ObjexxFCL::IndexRange.

References l_dim_p_, ObjexxFCL::Observer::notify(), ObjexxFCL::IndexRange::operator=(), and u_dim_p_.

DynamicIndexRange& ObjexxFCL::DynamicIndexRange::operator= ( Dimension const &  u_dim_a)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::operator= ( Expression const &  u_exp_a)
inline
bool ObjexxFCL::DynamicIndexRange::positive ( ) const
inlinevirtual

Bounded with Positive Size?

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::Dimension::initialized_, l_dim_p_, ObjexxFCL::IndexRange::positive(), and u_dim_p_.

void ObjexxFCL::DynamicIndexRange::remove_as_observer ( )
inlineprivate

Remove as Observer of the Dimensions.

References l_dim_p_, ObjexxFCL::ObserverMulti::remove_observer(), and u_dim_p_.

Referenced by swap(), and swap_no_notify().

void ObjexxFCL::DynamicIndexRange::size_dynamic ( )
inlineprivate
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::swap ( DynamicIndexRange I)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::swap_no_notify ( DynamicIndexRange I)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::u ( int const  u_a)
inlinevirtual

Upper Index Set.

Reimplemented from ObjexxFCL::IndexRange.

References legal_dynamic(), ObjexxFCL::Observer::notify(), size_dynamic(), ObjexxFCL::IndexRange::u(), and u_dim_p_.

Referenced by ObjexxFCL::FArray1D< double >::FArray1D(), ObjexxFCL::FArray2D< double >::FArray2D(), ObjexxFCL::FArray3D< typename >::FArray3D(), ObjexxFCL::FArray4D< typename >::FArray4D(), ObjexxFCL::FArray5D< typename >::FArray5D(), ObjexxFCL::FArray6D< typename >::FArray6D(), ObjexxFCL::KeyFArray1D< typename >::KeyFArray1D(), ObjexxFCL::KeyFArray2D< typename >::KeyFArray2D(), ObjexxFCL::KeyFArray3D< typename >::KeyFArray3D(), ObjexxFCL::KeyFArray4D< typename >::KeyFArray4D(), ObjexxFCL::KeyFArray5D< typename >::KeyFArray5D(), ObjexxFCL::KeyFArray6D< typename >::KeyFArray6D(), ObjexxFCL::FArray1D< double >::u(), ObjexxFCL::KeyFArray1D< typename >::u(), ObjexxFCL::FArray1P< typename >::u(), ObjexxFCL::FArray1D< double >::u1(), ObjexxFCL::KeyFArray1D< typename >::u1(), ObjexxFCL::FArray3D< typename >::u1(), ObjexxFCL::KeyFArray3D< typename >::u1(), ObjexxFCL::FArray4D< typename >::u1(), ObjexxFCL::KeyFArray4D< typename >::u1(), ObjexxFCL::FArray2D< double >::u1(), ObjexxFCL::KeyFArray2D< typename >::u1(), ObjexxFCL::FArray5D< typename >::u1(), ObjexxFCL::KeyFArray5D< typename >::u1(), ObjexxFCL::FArray6D< typename >::u1(), ObjexxFCL::KeyFArray6D< typename >::u1(), ObjexxFCL::FArray1P< typename >::u1(), ObjexxFCL::FArray2P< typename >::u1(), ObjexxFCL::FArray3P< typename >::u1(), ObjexxFCL::FArray4P< typename >::u1(), ObjexxFCL::FArray5P< typename >::u1(), ObjexxFCL::FArray6P< typename >::u1(), ObjexxFCL::FArray3D< typename >::u2(), ObjexxFCL::KeyFArray3D< typename >::u2(), ObjexxFCL::FArray4D< typename >::u2(), ObjexxFCL::KeyFArray4D< typename >::u2(), ObjexxFCL::FArray2D< double >::u2(), ObjexxFCL::KeyFArray2D< typename >::u2(), ObjexxFCL::FArray5D< typename >::u2(), ObjexxFCL::KeyFArray5D< typename >::u2(), ObjexxFCL::FArray6D< typename >::u2(), ObjexxFCL::KeyFArray6D< typename >::u2(), ObjexxFCL::FArray2P< typename >::u2(), ObjexxFCL::FArray3P< typename >::u2(), ObjexxFCL::FArray4P< typename >::u2(), ObjexxFCL::FArray5P< typename >::u2(), ObjexxFCL::FArray6P< typename >::u2(), ObjexxFCL::FArray3D< typename >::u3(), ObjexxFCL::KeyFArray3D< typename >::u3(), ObjexxFCL::FArray4D< typename >::u3(), ObjexxFCL::KeyFArray4D< typename >::u3(), ObjexxFCL::FArray5D< typename >::u3(), ObjexxFCL::KeyFArray5D< typename >::u3(), ObjexxFCL::FArray6D< typename >::u3(), ObjexxFCL::KeyFArray6D< typename >::u3(), ObjexxFCL::FArray3P< typename >::u3(), ObjexxFCL::FArray4P< typename >::u3(), ObjexxFCL::FArray5P< typename >::u3(), ObjexxFCL::FArray6P< typename >::u3(), ObjexxFCL::FArray4D< typename >::u4(), ObjexxFCL::KeyFArray4D< typename >::u4(), ObjexxFCL::FArray5D< typename >::u4(), ObjexxFCL::KeyFArray5D< typename >::u4(), ObjexxFCL::FArray6D< typename >::u4(), ObjexxFCL::KeyFArray6D< typename >::u4(), ObjexxFCL::FArray4P< typename >::u4(), ObjexxFCL::FArray5P< typename >::u4(), ObjexxFCL::FArray6P< typename >::u4(), ObjexxFCL::FArray5D< typename >::u5(), ObjexxFCL::KeyFArray5D< typename >::u5(), ObjexxFCL::FArray6D< typename >::u5(), ObjexxFCL::KeyFArray6D< typename >::u5(), ObjexxFCL::FArray5P< typename >::u5(), ObjexxFCL::FArray6P< typename >::u5(), ObjexxFCL::FArray6D< typename >::u6(), ObjexxFCL::KeyFArray6D< typename >::u6(), and ObjexxFCL::FArray6P< typename >::u6().

DynamicIndexRange & ObjexxFCL::DynamicIndexRange::u ( Star const &  star)
virtual
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::u ( Dimension const &  u_dim_a)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::u ( Expression const &  u_exp_a)
inline
Dimension* ObjexxFCL::DynamicIndexRange::u_dim_clone ( ) const
inlineprivatevirtual

Upper Dimension Clone.

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::Dimension::clone(), and u_dim_p_.

Referenced by assign(), assign_no_notify(), and operator=().

bool ObjexxFCL::DynamicIndexRange::u_initialized ( ) const
inlinevirtual

Upper Initialized?

Reimplemented from ObjexxFCL::IndexRange.

References ObjexxFCL::Dimension::initialized_, and u_dim_p_.

void ObjexxFCL::DynamicIndexRange::u_insert_as_observer ( )
inlineprivate
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::u_no_notify ( int const  u_a)
inline
DynamicIndexRange & ObjexxFCL::DynamicIndexRange::u_no_notify ( Star const &  star)

Unbounded Upper Index Set Without Notification.

References l_dim_p_, legal_dynamic(), size_dynamic(), ObjexxFCL::IndexRange::u(), u_dim_p_, and u_insert_as_observer().

DynamicIndexRange& ObjexxFCL::DynamicIndexRange::u_no_notify ( Dimension const &  u_dim_a)
inline
DynamicIndexRange& ObjexxFCL::DynamicIndexRange::u_no_notify ( Expression const &  u_exp_a)
inline
bool ObjexxFCL::DynamicIndexRange::unbounded ( ) const
inlinevirtual
void ObjexxFCL::DynamicIndexRange::update ( )
inlinevirtual

Friends And Related Function Documentation

void swap ( ObjexxFCL::DynamicIndexRange a,
ObjexxFCL::DynamicIndexRange b 
)
friend

Swap.

void swap_no_notify ( DynamicIndexRange a,
DynamicIndexRange b 
)
friend

Swap.

Member Data Documentation

Dimension* ObjexxFCL::DynamicIndexRange::l_dim_p_
private
Dimension* ObjexxFCL::DynamicIndexRange::u_dim_p_
private

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