Example #1
0
        // public static factory method
        public static IBlauSpaceLattice create(IBlauSpace space, int[] steps)
        {
            BlauSpaceLattice s = new BlauSpaceLattice(space, steps);

            BlauSpaceLatticeRegistry.Instance().add(s);
            BlauSpaceLattice s_validated = BlauSpaceLatticeRegistry.Instance().validate(s);

            return(s_validated);
        }
 // getter which swaps in pre-existing identical blauspace lattice, if one exists
 public BlauSpaceLattice validate(BlauSpaceLattice s)
 {
     if (!_lattices.ContainsKey(s.HashedName))
     {
         return(s);
     }
     else
     {
         return(_lattices[s.HashedName]);
     }
 }
 // add a blauspace lattice to the registry
 public void add(BlauSpaceLattice s)
 {
     if (!_lattices.ContainsKey(s.HashedName))
     {
         if (LoggerDiags.Enabled)
         {
             SingletonLogger.Instance().InfoLog(typeof(BlauSpaceLatticeRegistry), "BlauSpaceLatticeRegistry is adding " + s.HashedName);
         }
         _lattices.Add(s.HashedName, s);
         if (LoggerDiags.Enabled)
         {
             SingletonLogger.Instance().InfoLog(typeof(BlauSpaceLatticeRegistry), "BlauSpaceLatticeRegistry size is now " + _lattices.Count);
         }
     }
 }
Example #4
0
        // proxy reference
        public Object GetRealObject(StreamingContext context)
        {
            BlauSpaceLattice s_validated = BlauSpaceLatticeRegistry.Instance().validate(this);

            return(s_validated);
        }