Help with generics - extending hashmap

I'm trying to extend the HashMap class to accept multiple values per key. I'd like .put(key,value) to put a single key/value pair. I'd like .get(key) to return a Vector<V> of all the values associated with key, and .get(key, index) to return a single value of type V for that key. I am using Eclipse 3.2 and Java 1.5.
The problem I am having is my .put(K key,V value) method won't compile, I get the error:
Name clash: The method put(K,V) of type OneToManyHashMap<K,V> has the same erasure as put(K,V> of type HashMap<K,V> but does not override it
My code (roughly):
public class OneToManyHashMap<K,V> extends HashMap<K, Vector<V>> {
    public V get(Object key, int index) { return get(key).get(index); }
    public V put(K key, V value) { ... }
    public V remove(Object key, int index) { return get(key)
}Yes, I know there is an extra > in the code. It's wasn't there when I typed the message and it's not there when I try and edit the message to remove it :(
Message was edited by:
jiggersplat

This is what was meant by a "has-a" relation:
public class OneToManyHashMap&#60;K, V extends List&#60;V>> {
    public Map&#60;K, List&#60;V>> map;
    public OneToManyHashMap() { map = new HashMap&#60;K, List&#60;V>>(); }
    public V get(K key, int index) { return map.get(key).get(index); }
    public void put(K key, V value) { map.get(key).add(value); }
    public void remove(K key, int index) { map.get(key).remove(index); }
}Needless to say, you will have to perform some checks to handle eventual NPE's.

Similar Messages

  • Need help with generics

    I have written a java program using jdk1.5. After completing my program I noticed that the compiler was outputting a warning. It tells me that there were a few unsafe operations in my code. Anyway I found out that my code needed to include generics. I was able to figure out how too include some of the generics. I am having trouble with the following:
    [javac] /home/paul/Documents/java/PersonalInfo/src/personalInfo/logic/DB.java:105: warning: [unchecked] unchecked conversion
    [javac] found : personalInfo.logic.FNComparator
    [javac] required: java.util.Comparator<? super java.lang.Object>
    [javac] Arrays.sort(sort, fn);
    [javac] ^
    [javac] /home/paul/Documents/java/PersonalInfo/src/personalInfo/logic/DB.java:105: warning: [unchecked] unchecked method invocation: <T>sort(T[],java.util.Comparator<? super T>) in java.util.Arrays is applied to (java.lang.Object[],personalInfo.logic.FNComparator)
    [javac] Arrays.sort(sort, fn);
    [javac] ^
    [javac] /home/paul/Documents/java/PersonalInfo/src/personalInfo/logic/DB.java:109: warning: [unchecked] unchecked conversion
    [javac] found : personalInfo.logic.LNComparator
    [javac] required: java.util.Comparator<? super java.lang.Object>
    [javac] Arrays.sort(sort, ln);
    [javac] ^
    [javac] /home/paul/Documents/java/PersonalInfo/src/personalInfo/logic/DB.java:109: warning: [unchecked] unchecked method invocation: <T>sort(T[],java.util.Comparator<? super T>) in java.util.Arrays is applied to (java.lang.Object[],personalInfo.logic.LNComparator)
    [javac] Arrays.sort(sort, ln);
    [javac] ^
    The FN/LNComparator class implements the java.util.Comparator class. I have looked at the generics tutorial on the java.sun.com website. I can't figure out what I replace the <T> with to make the code compile and the warning to go away. I have tried <Comparator> but that just gives me an error that says FNComparator does not take any parameters.
    If anyone knows how to fix these warnings let me know
    -Hockeyfan

    I know how to fix it.
    Step 1. Stop writing subject-lines like "Need help with generics". Everyone who starts a topic needs help, that's why people post here!
    Step 2. Don't just post the error message, post the relevant code. In [code ][code ] tags of course.
    Step 3. Stop watching hockey, it'll stunt your growth
    Step 4. Have the FN/LNComparator implement, not the raw Comparator, but Comparator<Object>

  • Help with generics...

    Hi, I'm writing a program, and as specified by my instructor I'm implementing generics.
    I get most of generics, but some of it is still blurry to me.
    Here is my code:
    public class ListSortedArrayBased<ListType extends Comparable<ListType>>
    implements ListSortedInterface<ListType>, Iterable<ListType>
         private int size;
         private ListType[] list;
         private int arraySize;
        public ListSortedArrayBased()
             size = 0;
             arraySize = 2;
             list = (ListType[]) new Comparable[arraySize];
         public boolean isEmpty()
              return size == 0;
         public int size()
              return size;
         public void add(ListType item) throws ListException
              int index = locateIndex(item, true);
              if(index == -1)
                   throw new ListException("Item already exists in the list.  Add failed.");
              else
                   add(item, index);
                   if(size == arraySize)     //check for resize after adding (more efficient than checking before so that
                        arrayResize(size*2);  //locateIndex will never go out of bounds of the array in case of a full array.
         private void add(ListType item, int index)
              shift(size - 1, index, true); //shift the items to the right to make room for the new item
              list[index] = item;
              size++;
         public void remove(ListType item) throws ListException
              int index = locateIndex(item, false);
              if(index == -1)
                   throw new ListException("Item does not exist in the list.  Remove failed.");
              else
                   shift(index, size - 1, false); //shifts the items to the left, writing over the item we removed.
                   size--;
                   if(size < (arraySize/2))
                        if(size != 0)                //list of size 0 has an array of size 2.
                             arrayResize(arraySize/2);
         public void removeAll()
              size = 0;
              list = (ListType[]) new Comparable[2];
              arraySize = 2;
         public Iterator<ListType> iterator()
              return new ListArrayIterator<ListType>(list);
    I'm getting the following compile-time error:
    ListSortedArrayBased.java:89: incompaitlbe types
    found : ListArrayIterator<ListType>
    required: java.util.Iterator<ListType>
    return new ListArrayIterator<ListType>(list);
    ^
    Any help would be greatly appreciated...
    Thanks in advance!
    Andrew

    Sorry for not posting it already...here's ListArrayIterator:
    import java.util.Iterator;
    class ListArrayIterator<ListType extends Comparable<ListType>> implements Iterator<Comparable<ListType>>
        *  Keeps track of current iteration index.
        *  The next object returned will be at this index.
       private int index;
       /** The list to be iterated through. */
       private ListType[] items;
       public ListArrayIterator(ListType[] items)
           index = 0;
           this.items = items;
       public void remove()
          throw new UnsupportedOperationException ("Remove not implemented.");
       public boolean hasNext()
          return (index < items.length) && (items[index] != null);
       public ListType next()
          if (hasNext())  //should be used in conjunction with hasNext(), but just in case...
             return(items[index++]);
          else
             throw new ListException("End of list.");
    }

  • Need help with generic class with comparable type

    Hi. I'm at University, and I have some coursework to do on writing a generic class which offers ordered binary trees of items which implement the comparable interface.
    I cant get the code to compile which I have written.
    I get the error: OBTComparable.java uses unchecked or unsafe operations
    this is the more detailed information of the error when I compile with -Xlint:unchecked
    OBTComparable.java:62: warning: [unchecked] unchecked call to insert(OBTType) as
    a member of the raw type OBTComparable
    left.insert(insertValue);
    ^
    OBTComparable.java:64: warning: [unchecked] unchecked call to insert(OBTType) as
    a member of the raw type OBTComparable
    right.insert(insertValue);
    ^
    OBTComparable.java:75: warning: [unchecked] unchecked call to find(OBTType) as a
    member of the raw type OBTComparable
    return left.find(findValue);
    ^
    OBTComparable.java:77: warning: [unchecked] unchecked call to find(OBTType) as a
    member of the raw type OBTComparable
    return right.find(findValue);
    ^
    and here is my code for the class
    public class OBTComparable<OBTType extends Comparable<OBTType>>
      // A tree is either empty or not
      private boolean empty;
      // If the tree is not empty then it has
      // a value, a left and a right.
      // These are not used it empty == true
      private OBTType value;
      private OBTComparable left;
      private OBTComparable right;
      // Create an empty tree.
      public OBTComparable()
        setEmpty();
      } // OBTComparable
      // Make this tree into an empty tree.
      private void setEmpty()
        empty = true;
        value = null; // arbitrary
        left = null;
        right = null;
      } // setEmpty
      // See if this is an empty (Sub)tree.
      public boolean isEmpty()
      { return empty; }
      // Get the value which is here.
      public OBTType getValue()
      { return value; }
      // Get the left sub-tree.
      public OBTComparable getLeft()
      { return left; }
      // Get the right sub-tree.
      public OBTComparable getRight()
      { return right; }
      // Store a value at this position in the tree.
      private void setValue(OBTType requiredValue)
        if (empty)
          empty = false;
          left = new OBTComparable<OBTType>(); // Makes a new empty tree.
          right = new OBTComparable<OBTType>(); // Makes a new empty tree.
        } // if
        value = requiredValue;
      } // setValue
      // Insert a value, allowing multiple instances.
      public void insert(OBTType insertValue)
        if (empty)
          setValue(insertValue);
        else if (insertValue.compareTo(value) < 0)
          left.insert(insertValue);
        else
          right.insert(insertValue);
      } // insert
      // Find a value
      public boolean find(OBTType findValue)
        if (empty)
          return false;
        else if (findValue.equals(value))
          return true;
        else if (findValue.compareTo(value) < 0)
          return left.find(findValue);
        else
          return right.find(findValue);
      } // find
    } // OBTComparableI am unsure how to check the types of OBTType I am comparing, I know this is the error. It is the insert method and the find method that are causing it not to compile, as they require comparing one value to another. How to I put the check in the program to see if these two are of the same type so they can be compared?
    If anyone can help me with my problem that would be great!
    Sorry for the long post, I just wanted to put in all the information I know to make it easier for people to answer.
    Thanks in advance
    David

    I have good news and undecided news.
    First the good news. Your code has compiled. Those are warnings not errors. A warning is the compiler's way of saying "I understand what you are asking but maybe you didn't fully think through the consequences and I just thought I would let you know that...[something] "
    In this case it's warning you that you aren't using generics. But like I said this isn't stopping it from compiling.
    The undecided news is the complier is warning you about not using generics. Are you supposed to use generics for this assignment. My gut says no and if that's true then you have no problem. If you are supposed to use generics well then you have some more work.

  • Need help with an extended star schema.

    I have the following data in spreadsheet form and I need to transpose this into an extended star schema in order to prdouce my characteristics and key figures, however I'm having a little trouble understanding where to include the Product Group in the star schema and also what to do with the Sales Doc (Invoice Number) in the sales information spreadsheet. 
    I need to summarise the data into the following also:
    1.     Total quantity and revenue for each Channel and product group
    2.     Total quantity and revenue for each Channel and product group (July 2009 to September 2009)
    3.      Total Quantity and Revenue for iphone sales
    So my question in short is what would the star schema look like?  I'm hoping somebody can help me over this hurdle.
    The following are the details from the spreadsheet:
    Product Details (Attributes)
    File Name:  Product_Details.csv
    Structure     FieldName     Length     Description
         ProdID     5     Uniquely identifies a product
         PG_Group     20     Identifies products in specific groups (Navigational field)
    Sample Data
    ProdID,PG_Group
    PDS01,COMPUTER
    PDS02,COMPUTER
    PDS03,COMPUTER
    PDS04,ACCESSORIES
    PDS05,ACCESSORIES
    PDS06,ACCESSORIES
    PDS07,ACCESSORIES
    PDS08,HARDWARE
    Product Description (Text)
    File Name:  Product.csv
    Structure     FieldName     Length     Description
         ProdID     5     Uniquely identifies a product
         Prod_Desc     Medium Text     Represents the product description
    (Navigational field)
         Language     2     Represents the language descriptor
    Sample Data
    ProdID,Prod_Desc,Language
    PDS01,Notebook Speedy I,EN
    PDS02,Notebook Speedy II,EN
    PDS03,PC Thinkbox I,EN
    PDS04,USB Adaptor,EN
    PDS05,iPhones PX2,EN
    PDS06, Stereo Kit,EN
    PDS07,Camera Connector,EN
    PDS08,USB Storage,EN
    Transactional Data
    Sales information
    File Name:  Sales.txt
    Structure     FieldName     Length     Description
         Product     5     Uniquely identifies a product
         Sales Doc     4     Sales Document number (Invoice Number)
         Calendar Year     8     YYYYMMDD format
         Channel     1     Represents the distribution channel the product was sold by
         Quantity     4     Numeric value indicating the number of each product sold on a specific sales document
         Unit     2     Refers the unit specified by the quantity
         Revenue     8     Refers the sales amount of a specific product on a specific sales document
         Currency     3     Relates the revenue currency type
    Sample Data
    Product;Sales Doc ,Calendar Day,Channel,Quantity,Unit;Revenue,Currency
    ZD_PROD,0DOC_NUMBER,0CALDAY,ZD_CHAN,ZD_QTY,0UNIT,ZD_REV,0CURRENCY
    PDS07,7389,20090705,A,95,EA,151905,USD
    PDS08,7389,20090705,A,115,EA,264385,USD
    PDS02,7473,20090706,B,55,EA,3580445,USD
    PDS01,7472,20090706,C,110,EA,604989,USD
    PDS02,7472,20090706,C,43,EA,2799257,USD
    PDS03,7472,20090706,C,75,EA,4507425,USD
    PDS04,7472,20090706,A,339,EA,301032,USD
    PDS06,7472,20090706,A,120,EA,47976,USD
    PDS01,7473,20090718,D,55,EA,3024945,USD
    PDS02,6845,20090806,B,30,EA,195297,USD
    PDS07,6877,20090807,C,800,EA,12792,USD
    PDS08,6877,20090807,C,250,EA,57475,USD
    PDS03,6912,20090812,C,250,EA,1502475,USD
    PDS04,6900,20090812,B,70,EA,6216,USD
    PDS01,6899,20090812,C,12,EA,659988,USD
    PDS04,6899,20090812,D,55,EA,4884,USD
    PDS04,7479,20090815,C,80,EA,7104,USD
    PDS05,7479,20090815,C,300,EA,70497,USD
    PDS05,6809,20090818,A,1000,EA,234990,USD
    PDS06,6809,20090818,A,130,EA,51974,USD
    PDS03,6831,20090822,C,15,EA,901485,USD
    PDS04,6831,20090822,C,500,EA,4440,USD
    PDS03,6830,20090822,C,125,EA,7512375,USD
    PDS06,6830,20090822,C,400,EA,15992,USD
    PDS04,6841,20090825,C,53,EA,47064,USD
    PDS05,6841,20090825,C,350,EA,822465,USD
    Distribution Channel
    Channel (text)
    File Name:  Channel.csv
    Structure     FieldName     Length     Description
         ChanID     1     Uniquely identifies a specific distribution channel
         Chan_Desc     Medium
    Text     Full name of each distribution channel
    (Navigational field)
    Sample Data
    ChanID, Chan_Desc
    A,Phone
    B,Fax
    C,Internet
    D,Other
    Star Schema Model:

    Potentially the issue may be the combination of actual distance and the presence of any Wi-Fi interference at the location of the AirPort Express that may be the culprit here. The bottom line is you would want the Express to be within a 25+ dB range of the Extreme to be sure that it can consistently stay connected to it.
    For more details on proper base station placement, check out the following AirPort User tip. Please post back your results.

  • Help with using 'extend' while creating a class between two other classes

    I have an assignment, basically to take a Date class and make it so it can output the date to a String, so if it was 4/2006, it would do April 2006.
    Now my question is, where and when do I put super? I can post what I have and I can post the two programs that are given to us.
    http://faculty.stcc.edu/silvestri/csci401/CourseArea/supplements/Date.java
    is the Date class
    http://faculty.stcc.edu/silvestri/csci401/CourseArea/solutions/ExtDateDriver.java
    Is the class test used to run we have to create. Thanks for your time.

    Awesome, should have just read a couple of threads to see that all of you guys are ass holes, by the way dip shit, instead of being a lazy fuck you are, why don't you fucking try and read the question I'm asking, the homework question, and try to answer my fucking question,
    I have already started the class for it, and I don't need your fucking retarded statments in MY thread, so just either help, or shut you little 4 year old mouth up.

  • Need help with this Generics Warning

    Hi All,
    I could not understand what the following Generics Warning means
    Type safety: The cast from Object to HashMap<String,Object> is actually checking against the erased type HashMap
    Could anyone please help me with this.
    Here is the erring line of Code :
    HashMap<FDTColumInfoKey, ColumnInfo> designMap = (HashMap<FDTColumInfoKey, ColumnInfo>)wdContext.currentContextElement().getColumnInfoMap();
    Thanks !

    SloMoe wrote:
    Hi Malcolm,
    tnx for taking time to answer my query, but doesn't Generics give an exception during compile time as opposed to Run Time ? I mean if the attributes type in the Generic definition does not match with the type of the attributes during Compile time, An exception will be thrown. So why the warning ?Because, in this case, there's no way that the compiler can check the correctness of the generics. You're telling the compiler that the object you retrieve is of the relevant generic types but the compiler can't verify it.
    That's also true with an ordinary cast from Object, of course, but if with an ordinary cast at least the run time will verify that the object is actually of the required type where the cast is made and throw a CastClassException immediately. So it's easy to debug.
    With generics the run time doesn't have access to the generics data. This is what is meant by "erasure". So it can check that the object is a HashMap when casting, but not that it contains the right type of entries. This means that, at some later point in the code, it might retrieve an object from the map and discover that it's of the wrong type, thus causing a ClassCastException in a statement with no explicit cast.

  • Help with image ready on ps3 extended

    I am pretty new to photo shop and have cs3 extended.
    I have a Yorkie website where I cut out my Yorkies and paste them to differnet backgrounds.... a lady that does the ANIMATED pictures  HAS DID A COUPLE FOR ME ....BUT I NEED TO LEARN TO DO THIS MYSELF.  She will not tell folks how to do:)
    The problem is once you work with a pic that is animated already then try to  add a dog.....by pasting....it removes the animation in the background pic.... and the picture no longer moves once the dog is added ?....She said she puts thru IMAGE READY...which I do not see anywhere on CS3 extended.  I will try to insert a pic she did for me and any help would be greatly appreciated....as I can do but then the picture is no longer animated once altered in my photoshop but she is doing somehow.....so has to be poss ?  If I were to do this pic it would stop moving once the dogs were added....plus not as good as her but practicing........could it be the fact she is doing in layers and I am doing copy and paste...I do know she puts thru Image ready and I do not know where this is located on cs3 extended or how to do?
    am

    well...........l when I try to open Gif with the import and chose the video frames to layers...am getting a message saying I need Quicktime 7.1 to be able to do??? and when selecting import that is the only option I have to open my animated picture?...YOU HAVE BEEN SO MUCH HELP!   THANK YOU SO MUCH...! 
       BLUE MONDAY EXCLUSIVES   
    Date: Sat, 17 Apr 2010 20:23:27 -0600
    From: [email protected]
    To: [email protected]
    Subject: Re: Help with image ready on ps3 extended
    I'm not sure anyone mentioned this but if not to open GIFs using the import you have to enter the GIF name as GIF isn't listed as one of the options.
    It sounds like you are viewing the images in a maximized screen mode. To view more than one document, press F to cycle through the screen modes. FYI, only the contents of the currently selected document can be viewed in the layers palette.
    I'll just talk about copy/paste so as not to confuse...
    If you are going to copy/paste, click the frame around the dog document to target it. Your layers palette will now contain the contents of the dog document. Click on the layer in the layers palette with the selected dog over transparency. With that layer highlighted in your layers palette, press Ctrl A; then Ctrl C. (Select<Select All; Edit<copy if you prefer using the menu.) This will copy that layer into your clipboard.
    Next, click the frame of the document containing the animation. Click the topmost layer in the layers palette because we want you dog to be in the top layer. Press Ctrl + V. (Edit<Paste if you prefer using the menu).
    Your dog is most likely going to be too big. Use Edit<Free Transform to size and move the dog to the desired location.
    At this point, your dog should be showing in each frame in the animation palette.
    Example:
    http://forums.adobe.com/servlet/JiveServlet/downloadImage/25315/with-palettes-open.jpg
    I'm using the older Image Ready me method. The highlighted place in the palette is where you switch methods between the old method and the new timeline. Notice, I have the layers and animation palette both in the workspace...and I'm not in a maximized mode. The red arrow shows the correlation between the frame and the layer represented by it in the layers palette.
    Image:second-image.jpg
    Here I have a second image to slip into my animation. I have the creature selected and on it's own layer with transparency around it. Notice that the the layer with the isolated creature is highlighted. At this stage, I'll press Ctrl + A; then Ctrl + C to select and save this image to my clipboard.
    Image:creature-added.jpg
    Here, I've pasted (Ctrl + V or Edit<Paste) in my creature and resized it (Ctrl + T or Edit<free transform) so he can be jumped. I also added a shadow under my creature which I added to a layer under my creature. Notice that when Frame on is selected in the animation palette that the eye is on both the creature and the shadow. If I click the eye to turn them (creature and shadow layer) off, they disappear from the entire animation. I can make them appear at any frame by clicking the desired frame in the animation then turning on the eye icon for the creature and shadow layer in the layers palette. I can also adjust opacity if desired.
    You could even more than the one image if you want the dog to appear to move. Use the eyeball visibility to determine which pose will be used for that frame.
    Example:
    Image:jump-creature-gif.gif
    Here, I used transform warp to adjust the pose of the creature for a few frames as he's jumping the creature...just for fun.
    >

  • Help with extending the range of Motorola cable modem

    After struggling with AT&T DSL (with slow speed and intermittent drops), I switched to Time Warner Cable, and now sport blazing-fast connection via Ethernet cable into my 27" iMac. They gave me a Motorola Surfboard sbg6850 wi-fi modem, but I'm finding the range of the wi-fi to be totally inadequate... I get drops and unreliable connections only 20 feet away with iPads and Macbooks. I want a pleasing dome of wi-fi all over my house!
    Through other discussions on this board, I see that Airport Express is NOT compatible with the Surfboard, a fact which surprised and disappointed me. What are my options for extending the wi-fi range?
    —Could I buy a non-Apple product (router) to extend the wireless range? Can it be managed from a Mac?
    —Could I connect an Airport Extreme to the Surfboard via Ethernet cable, and use the Airport Extreme as the router to extend the network via Airport Express?
    —Could I use the Airport card in the ethernet-connected computer (in this case, a 27" iMac) to create a network that COULD be extended via Airport Express? (I'm using it now to share the Internet, rather than connecting directly to the Surfboard, but when the iMac sleeps, the network is unavailable.)
    There's got to be a way...

    Since you went with your option 2, you basically have the fundamentals for a roaming network as both routers are interconnected by Ethernet. This also means that the 802.11n AirPort Extreme Base Station (AEBSn) should be reconfigured as a bridge, i.e., Connection Sharing = Off (Bridge Mode) in AirPort Utility (v5.x). This would allow the TW combination cable modem / wireless router (or gateway) to provide both NAT & DHCP services for the entire network.
    Now with the AEBSn configured as a bridge, you can add the 802.11n AirPort Express Base Stations (AXn), via a wireless connection to the AEBSn, in an extended network configuration. Note: The extended network works in a "wheel" like fashion with the extended base station at the hub of the wheel. Each extending base station would be spokes on that same wheel ... so how successful you will be extending the wireless network will be based on proper placement of each of the extending stations for full coverage. Please take a look at the following AirPort User Tip for proper placement details.
    The other thing to take into account is the potential Wi-Fi interference between the TW wireless gateway and the AEBSn. Either disable the gateway's wireless radio, or be sure to allow for sufficient radio channel separation between radios on the same band.

  • The best way to get help with logic

    I was posting in a thread on support for logic which appears to have been deleted. anyway, what I was going to say I think is useful info for people, so I'm going to post it anyway. to the mods - it doesn't contain any speculation about policies or anything like that. just an explanation of my views on the best way to deal with issues people have with logic, which I think is a valuable contribution to this forum.
    I think there's a need for perspective. when you buy an apple product you get 90 days of free phone support to get everything working nice and neat. you can call them whenever, and you could actually keep them on the phone all day if you wanted, making them explain to you how to copy a file, install microsoft office, or any number of little questions no matter how simple - what is that red button thingy in my window for?.. on top of that, you've got a 14 day dead on arrival period (or 10 days I can't remember) in which if your machine has any kind of hardware fault whatsoever it's exchanged for a totally new one, no questions asked. a lot of people complain that applecare is overpriced.. and if you think of it just as an extended warranty, then it is a little pricey. but if you are someone that could use a lot of phone support, then it's actually potentially a total bargain. the fact that 2 or more years after you bought a computer, you could still be calling them every single day, asking for any kind of advice on how to use anything on the machine, is quite something. many people on this forum have had problems when they made the mistake of upgrading to 10.4.9 without first creating a system clone or checking first with their 3rd party plug in vendors to make sure it was ok. so, with apple care, you could call them and keep a technician on the phone _all day_ talking you through step-by-step how to back up all of your user data, how to go through and preserve your preferences and any other specific settings you might not want to lose, and then how to rollback to an earlier OS version.. they'll hold your hand through the whole thing if you need them to.
    as for applecare support for pro apps like logic, I'd be the first person to agree that it's not great for anyone except beginners and first time users. if you look at what it takes to get even the highest level of logic certification, it's all pretty basic stuff. and logic doesn't exist in a vacuum, there is an entire universe of 3rd party software and hardware, as well as studio culture and advanced user techniques that are going to be totally invisible to some poor phone support guy at apple that did a logic 101. but it's not hard to see that apple are trying to promote a different kind of support culture, it's up to you to decide whether you want to buy into it or not.
    the idea is that they are able to provide basic setup support for new users, including troubleshooting. because it's a simpler level of support, at least they can do this well. so there's no reason why any new user with say a new imac and logic can't get up and running with the 90 days of phone support they get for free.
    but the thing is, for extremely high end pro users it's a different matter altogether. pro use of logic within the context of say, a studio or a film composition scenario is a very different world. it's almost a nonsense to imagine that apple could even hire people capable of giving useful support for this end of the spectrum, over the phone. there are so many variables, and so many things that require a very experienced studio person or in-work composer to even begin to understand the setup, let alone troubleshoot it. and it's a constantly evolving world, you actually have to be working in it and aware of developments on 3rd party fronts as well as changes in hardware.. not to mention even changes in the culture of studio production and the changed expectations that come from that. there's no way some poor little guy sitting at a help desk at apple can even hope to be privy to that kind of knowledge. it's already good enough that they don't outsource their support staff to india, let alone go out to studios and hire the very people with the skills that should be staying in the studio! not answering phones for apple.
    so, given this reality.. companies have two choices. they can either offer an email based support ticket system, which others do. but in my opinion.. this can just be frustrating and only a half-solution. sure you 'feel' like you are getting a response from the people that make the software and therefore must know it.. but it's not really the case due to what I said above. DAWs don't exist in a vacuum, and so much of what you need to understand to help people requires an intimate knowledge of the music industry in which they are working. you still won't get that from steinberg, even if they sort of answer your emails. the other problem is that this kind of system can mean sporadic answers, a lot of tail-chasing, and quite often you won't get an answer that helps you in the end anyway.
    the other model is to foster a strong user support culture. some people react in the wrong way to this idea.. they just think it's a big brush off from the manufacturer, saying we don't care, go sort it out yourselves.. but this isn't true. apple has a classification for pro resellers called 'apple solutions expert - audio'. what this means is that these dealers are recognised as audio specialists and they can receive extra support and training from apple for this. but more importantly than this.. most of them are music stores, or pro gear dealerships that are also mac and logic dealers. they already employ people that have worked or do work in the music industry, and are constantly on top of all of this stuff. apple encourages these dealers to run workshops, and to provide expert sales advice in the very niche area that logic is in, which they can do far better than some generic apple store ever could. but most importantly, they are encouraged to offer their own expert after-sales support and whatever other value-adding expertise they can, to get sales. because margins in computer gear are so tight nowadays, discounting is not really a viable option for these dealers to guarantee getting musicians to buy computers and logic setups from them. the only companies that can entice people with a lower price a big online wholesalers or big chain stores. so the best idea for these niche expert stores to get sales is to offer you their own experts to help with configuration, ongoing support and to generally make it a better idea that you bought your system from them rather than from some anonymous online store. I can see the wisdom of this.. it puts the support back out there on the ground where it's needed, and also where it can work best. apple could never hope to offer the same level of expertise in helping a film composer work through some issues with a specific interface or some highly specific issue they have with getting a task done. no big software manufacturer could do this anywhere near as well as people out there that have worked in studios or currently do work in studios. so in my opinion it's a far better model to foster this kind of support culture, along with training courses, books and training video support. also user forums like this one are possibly one of the most valuable ports of call anyone could ask for. apple couldn't replicate this with their own staff, even if they tried. and even if they made a system where some of the people close to logic development were able to answer emails, it would still be nowhere near as useful, as rapid or as capable of being up to speed with logic use out in the real world with 3rd pary gear, as any of these other methods are.
    the only thing I think they could do better would be to publish a list of known bugs which are officially recognised. this would help everyone and put an end to a lot of wasted time and speculation on if something is a bug totally to do with logic, or if it's a specific issue raised by a particular configuration.
    but really, in my view, a 3rd party support and training culture through a combination of specialist dealers, consultants that literally run a business setting up computers for pro-users and helping them keep it all working, online user-to-user forums and published materials really are the way forward.

    In all honesty this is currently the 3rd "logicboard" (motherboard)
    in my powerbook due to a design flaw regarding the 2nd memory slot....
    Yep. Mine failed five weeks after I bought it. However, I bought it for work and couldn't afford being without it for four weeks while they fixed it, so I had to live with it. My serial number did not entitle me to a replacement either, post Applecare.
    My firewire ports have burnt out from a third-party defective device (no hot-plugging involved)
    My screen is blotchy (my PW serial number did not entitle me to a replacement).
    My battery serial number did not entitle me to a replacement, and is not that good these days.
    My guaranteed Powerbook-compatible RAM is actually not, causing RAM related problems, most notably these days meaning that as soon as I switch to battery power, the laptop crashes, so I can only use mains power. The company I bought it from stopped taking my calls and wouldn't replace it after they replaced it once, so I'm stuck with it. And of course, only one ram slot is working, so I can't even use my original stick in the first slot, which would shift the dodgy stuff away from the lower system area.
    My power supply failed at the weak spot and caught fire. I managed to break apart the power supply and recable it so I didn't have to buy a new power supply, although the connection at the laptop end is loose (all the more fun that as soon as power is lost, the laptop crashes - see above). The power supply is held together with gaffa tape. Silver gaffer tape though, so it's still kind of 'Appley"...
    My internal hard drive is dying - four or five times now it clicks and won't power up, causing the laptop to die.
    One foot has fallen off (but glued back on).
    The lid is warped.
    The hinge is loosish.
    The S-Video adaptor cable is intermittent.
    But aside from all that, I have looked after it well, and I love it to death. Just as well, because it doesn't look like it will be that long...
    But it still "just works". Apart from the battery power obviously. And the ram slot. And the ram. And the screen. And the hard drive. And the firewire ports. And the feet.
    But everything apart from the main board, the screen, the case, the hard drive and the power supply works fine. So thats... er..
    Hmm.

  • Help With Crash Code  In PRE8 Please

    In an interest to turn some of my recent discussions in a more positive direction and in keeping with the primary function of this forum (seeking advice and solutions) and in a further effort to not continually ***** about PRE8, can someone please help with and interpret the following crash codes recently generated by PRE8?
    Thanks in advance for any help.
    Glenn
    Description
    A problem caused this program to stop interacting with Windows.
    Problem signature
    Problem Event Name:                      AppHangXProcB1
    Application Name:                           Adobe Premiere Elements.exe
    Application Version:                         8.0.0.0
    Application Timestamp:                   4aa5c87c
    Hang Signature:                                ba8e
    Hang Type:                                        32
    Waiting on Application Name:       ElementsOrganizerSyncAgent.exe
    Waiting on Application Version:    8.0.0.0
    OS Version:                                        6.0.6001.2.1.0.256.1
    Locale ID:                                           1033
    Additional Hang Signature 1:         cb0b340a390054264815ceb8e3574d53
    Additional Hang Signature 2:         84f3
    Additional Hang Signature 3:         f0a90877ec38c16fd285cc410c83433d
    Additional Hang Signature 4:         ba8e
    Additional Hang Signature 5:         cb0b340a390054264815ceb8e3574d53
    Additional Hang Signature 6:         84f3
    Additional Hang Signature 7:         f0a90877ec38c16fd285cc410c83433d
    Extra information about the problem
    Bucket ID:                                          749899167
    Description
    A problem caused this program to stop interacting with Windows.
    Problem signature
    Problem Event Name:                      AppHangXProcB1
    Application Name:                           Adobe Premiere Elements.exe
    Application Version:                         8.0.0.0
    Application Timestamp:                   4aa5c87c
    Hang Signature:                                ba8e
    Hang Type:                                        32
    Waiting on Application Name:       ElementsOrganizerSyncAgent.exe
    Waiting on Application Version:    8.0.0.0
    OS Version:                                        6.0.6001.2.1.0.256.1
    Locale ID:                                           1033
    Additional Hang Signature 1:         cb0b340a390054264815ceb8e3574d53
    Additional Hang Signature 2:         84f3
    Additional Hang Signature 3:         f0a90877ec38c16fd285cc410c83433d
    Additional Hang Signature 4:         ba8e
    Additional Hang Signature 5:         cb0b340a390054264815ceb8e3574d53
    Additional Hang Signature 6:         84f3
    Additional Hang Signature 7:         f0a90877ec38c16fd285cc410c83433d
    Extra information about the problem
    Bucket ID:                                          749899167
    Description
    A problem caused this program to stop interacting with Windows.
    Problem signature
    Problem Event Name:                      AppHangXProcB1
    Application Name:                           Adobe Premiere Elements.exe
    Application Version:                         8.0.0.0
    Application Timestamp:                   4aa5c87c
    Hang Signature:                                ba8e
    Hang Type:                                        32
    Waiting on Application Name:       ElementsOrganizerSyncAgent.exe
    Waiting on Application Version:    8.0.0.0
    OS Version:                                        6.0.6001.2.1.0.256.1
    Locale ID:                                           1033
    Additional Hang Signature 1:         cb0b340a390054264815ceb8e3574d53
    Additional Hang Signature 2:         84f3
    Additional Hang Signature 3:         f0a90877ec38c16fd285cc410c83433d
    Additional Hang Signature 4:         ba8e
    Additional Hang Signature 5:         cb0b340a390054264815ceb8e3574d53
    Additional Hang Signature 6:         84f3
    Additional Hang Signature 7:         f0a90877ec38c16fd285cc410c83433d
    Extra information about the problem
    Bucket ID:                                          749899167
    Description
    A problem caused this program to stop interacting with Windows.
    Problem signature
    Problem Event Name:                      AppHangB1
    Application Name:                           Adobe Premiere Elements.exe
    Application Version:                         8.0.0.0
    Application Timestamp:                   4aa5c87c
    Hang Signature:                                af71
    Hang Type:                                        0
    OS Version:                                        6.0.6001.2.1.0.256.1
    Locale ID:                                           1033
    Additional Hang Signature 1:         37a5e7ba79ac8a533571e7d8f2e8acd0
    Additional Hang Signature 2:         d900
    Additional Hang Signature 3:         431be4795d1c061aba02734aa57c4950
    Additional Hang Signature 4:         af71
    Additional Hang Signature 5:         37a5e7ba79ac8a533571e7d8f2e8acd0
    Additional Hang Signature 6:         d900
    Additional Hang Signature 7:         431be4795d1c061aba02734aa57c4950
    Extra information about the problem
    Bucket ID:                                          811067413
    Description
    A problem caused this program to stop interacting with Windows.
    Problem signature
    Problem Event Name:                      AppHangB1
    Application Name:                           Adobe Premiere Elements.exe
    Application Version:                         8.0.0.0
    Application Timestamp:                   4aa5c87c
    Hang Signature:                                7008
    Hang Type:                                        0
    OS Version:                                        6.0.6001.2.1.0.256.1
    Locale ID:                                           1033
    Additional Hang Signature 1:         f0af3d01fb74f43241231d4e61778ffa
    Additional Hang Signature 2:         0fb3
    Additional Hang Signature 3:         a5f1d311bc7bfa26f067b42cbdeac6af
    Additional Hang Signature 4:         7008
    Additional Hang Signature 5:         f0af3d01fb74f43241231d4e61778ffa
    Additional Hang Signature 6:         0fb3
    Additional Hang Signature 7:         a5f1d311bc7bfa26f067b42cbdeac6af
    Extra information about the problem
    Bucket ID:                                          781893170

    Here are my system specs.  Let me know if you need anything else.
    Thanks
    Glenn
    Operating System
    MS Windows Vista Ultimate SP2
               Installation Date: 06 March 2009, 02:58
               Intel Mobile Core 2 Duo T9550
                   Cores                       2
                   Threads                     2
                   Name                        Intel Mobile Core 2 Duo T9550
                   Code Name                   Penryn
                   Package                     Socket P (478)
                   Technology                  45nm
                   Specification               Intel Core2 Duo CPU  T9550 @ 2.66GHz
                   Family                      6
                   Extended family             6
                   Model                       7
                   Extended model              17
                   Stepping                    A
                   Revision                    E0
                   Instructions                MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, EM64T
                   Bus speed                   266.0 MHz
                   Rated Bus speed             1064.0 MHz
                   Stock core speed            2666 MHz
                   Stock bus speed             266 MHz
                   Average Temperature         36 °C
                   Cache
                       L1 data cache size              2 x 32 KBytes
                       L1 instructions cache size      2 x 32 KBytes
                       L2 unified cache size           6144 KBytes
                   Core 1
                       Core speed            1596.0 MHz
                       Multiplier            x 6.0
                       Bus speed             266.0 MHz
                       Rated Bus speed       1064.0 MHz
                       Temperature           37 °C
                       Thread 1
                           APIC ID     0
                   Core 2
                       Core speed            2660.0 MHz
                       Multiplier            x 6.0
                       Bus speed             266.0 MHz
                       Rated Bus speed       1064.0 MHz
                       Temperature           36 °C
                       Thread 1
                           APIC ID     1
          Memory
                   Type                                DDR2
                   Size                                4096 MBytes
                   Channels #                          Dual
                   DRAM frequency                      399.0 MHz
                   CAS# Latency (CL)                   6.0 clocks
                  RAS# to CAS# delay (tRCD)           6 clocks
                   RAS# precharge (tRP)                6 clocks
                   Cycle time (tRAS)                   18 clocks
               SPD
                   Number of SPD modules          2
                   Slot #1
                       Type                DDR2
                       Size                2048 MBytes
                       Manufacturer        Hyundai Electronics
                       Max bandwidth       PC2-6400 (400 MHz)
                       Part number         HYMP125S64CP8-S6 
                       Serial number       00007112
                       Week/year           52 / 08
                       SPD Ext.            EPP
                       JEDEC #3
                           Frequency             400.000000 MHz
                           CAS# latency          6.0
                           RAS# to CAS#          6
                           RAS# Precharge        6
                           tRAS                  18
                           tRC                   24
                           Voltage               1.8 V
                       JEDEC #2
                           Frequency             333.333344 MHz
                           CAS# latency          5.0
                           RAS# to CAS#          6
                           RAS# Precharge        6
                           tRAS                  16
                           tRC                   21
                           Voltage               1.8 V
                       JEDEC #1
                           Frequency             266.666656 MHz
                           CAS# latency          4.0
                           RAS# to CAS#          4
                           RAS# Precharge        4
                           tRAS                  12
                           tRC                   16
                           Voltage               1.8 V
                   Slot #2
                       Type                DDR2
                       Size                2048 MBytes
                       Manufacturer        Hyundai Electronics
                       Max bandwidth       PC2-6400 (400 MHz)
                       Part number         HYMP125S64CP8-S6 
                       Serial number       02008065
                       Week/year           52 / 08
                       SPD Ext.            EPP
                       JEDEC #3
                           Frequency             400.000000 MHz
                           CAS# latency          6.0
                           RAS# to CAS#          6
                           RAS# Precharge        6
                           tRAS                  18
                          tRC                   24
                           Voltage               1.8 V
                       JEDEC #2
                           Frequency             333.333344 MHz
                           CAS# latency          5.0
                           RAS# to CAS#          6
                           RAS# Precharge        6
                           tRAS                  16
                           tRC                   21
                           Voltage               1.8 V
                       JEDEC #1
                           Frequency             266.666656 MHz
                           CAS# latency          4.0
                           RAS# to CAS#          4
                           RAS# Precharge        4
                           tRAS                  12
                           tRC                   16
                           Voltage               1.8 V
    Mother Board
    Manufacturer   Dell, Inc.
               Model                      0P786H
               Version                    A04
               Chipset vendor             Intel
               Chipset model              PM45
               Chipset revision           07
               Southbridge vendor         Intel
               Southbridge model          82801IM (ICH9-M)
               Southbridge revision       03
               BIOS
                   Brand       Dell Inc.
                   Version     A04
                   Date        11/26/2008
               Monitor
                   Name                    Generic PnP Monitor on ATI Mobility Radeon HD 3650
                   State                   enable
                   State                   primary
                   Monitor Width           1920
                   Monitor Height          1200
                   Monitor Bit             32
                   Monitor Frequency       60
                   Device:                 \\.\DISPLAY1\Monitor0
                   Name                    Default Monitor on ATI Mobility Radeon HD 3650
                   State                   disabled
                   State                   removable
                   Monitor Width           800
                   Monitor Height          600
                   Monitor Bit             32
                   Monitor Frequency      60
                   Device:                 \\.\DISPLAY2
               ATI Mobility Radeon HD 3650
                   GPU                         M86
                   Device ID                   1002-9591
                   Subvendor                   Dell (1028)
              

  • Need some help with my xorg.conf My screen "flickers".

    Hello. I have a problem with the refresh rate on my screen. I don't know what values to use in my xorg.conf.
    It's a lenovo thinkpad x61 (not tablet).
    The problem is that when something is moving on the screen, the image flickers and I get some lines across the screen (horizontal only). Like 1part of the screen doesn't follow the other part of the screen.
    Section "ServerLayout"
    Identifier "Xorg Configured"
    Screen 0 "Screen0" 0 0
    InputDevice "Keyboard0" "CoreKeyboard"
    # PS/2 Mouse not detected
    # Serial Mouse not detected
    InputDevice "USB Mouse" "CorePointer"
    EndSection
    Section "ServerFlags"
    Option "AllowMouseOpenFail" "true"
    EndSection
    Section "Files"
    RgbPath "/usr/share/X11/rgb"
    ModulePath "/usr/lib/xorg/modules"
    FontPath "/usr/share/fonts/misc:unscaled"
    FontPath "/usr/share/fonts/misc"
    FontPath "/usr/share/fonts/75dpi:unscaled"
    FontPath "/usr/share/fonts/75dpi"
    FontPath "/usr/share/fonts/100dpi:unscaled"
    FontPath "/usr/share/fonts/100dpi"
    FontPath "/usr/share/fonts/PEX"
    # Additional fonts: Locale, Gimp, TTF...
    FontPath "/usr/share/fonts/cyrillic"
    # FontPath "/usr/share/lib/X11/fonts/latin2/75dpi"
    # FontPath "/usr/share/lib/X11/fonts/latin2/100dpi"
    # True type and type1 fonts are also handled via xftlib, see /etc/X11/XftConfig!
    FontPath "/usr/share/fonts/Type1"
    FontPath "/usr/share/fonts/ttf/western"
    FontPath "/usr/share/fonts/ttf/decoratives"
    FontPath "/usr/share/fonts/truetype"
    FontPath "/usr/share/fonts/truetype/openoffice"
    FontPath "/usr/share/fonts/truetype/ttf-bitstream-vera"
    FontPath "/usr/share/fonts/latex-ttf-fonts"
    FontPath "/usr/share/fonts/defoma/CID"
    FontPath "/usr/share/fonts/defoma/TrueType"
    EndSection
    Section "Module"
    Load "ddc" # ddc probing of monitor
    Load "dbe"
    Load "dri"
    Load "extmod"
    Load "glx"
    Load "bitmap" # bitmap-fonts
    Load "type1"
    Load "freetype"
    Load "record"
    # Load "synaptics"
    EndSection
    Section "InputDevice"
    Identifier "Keyboard0"
    Driver "keyboard"
    Option "CoreKeyboard"
    Option "XkbRules" "xorg"
    Option "XkbModel" "thinkpad60"
    Option "XkbLayout" "se"
    Option "XkbVariant" ""
    EndSection
    Section "InputDevice"
    Identifier "Serial Mouse"
    Driver "mouse"
    Option "Protocol" "Microsoft"
    Option "Device" "/dev/ttyS0"
    Option "Emulate3Buttons" "true"
    Option "Emulate3Timeout" "70"
    Option "SendCoreEvents" "true"
    EndSection
    Section "InputDevice"
    Identifier "PS/2 Mouse"
    Driver "mouse"
    Option "Protocol" "auto"
    Option "ZAxisMapping" "4 5"
    Option "Device" "/dev/psaux"
    Option "Emulate3Buttons" "true"
    Option "Emulate3Timeout" "70"
    Option "SendCoreEvents" "true"
    EndSection
    Section "InputDevice"
    Identifier "USB Mouse"
    Driver "mouse"
    Option "Device" "/dev/input/mice"
    Option "SendCoreEvents" "true"
    Option "Protocol" "IMPS/2"
    Option "ZAxisMapping" "4 5"
    Option "Buttons" "5"
    EndSection
    # Auto-generated by Archie mkxcfg
    Section "Monitor"
    Identifier "Monitor0"
    Option "DPMS" "true"
    # HorizSync 28.0 - 78.0 # Warning: This may fry very old Monitors
    HorizSync 50.0 - 105.0 # Warning: This may fry old Monitors
    VertRefresh 40.0 - 50.0 # Very conservative. May flicker.
    # VertRefresh 50.0 - 62.0 # Extreme conservative. Will flicker. TFT default.
    # Default modes distilled from
    # "VESA and Industry Standards and Guide for Computer Display Monitor
    # Timing", version 1.0, revision 0.8, adopted September 17, 1998.
    # $XFree86: xc/programs/Xserver/hw/xfree86/etc/vesamodes,v 1.4 1999/11/18 16:52:17 tsi Exp $
    # 640x350 @ 85Hz (VESA) hsync: 37.9kHz
    ModeLine "640x350" 31.5 640 672 736 832 350 382 385 445 +hsync -vsync
    # 640x400 @ 85Hz (VESA) hsync: 37.9kHz
    ModeLine "640x400" 31.5 640 672 736 832 400 401 404 445 -hsync +vsync
    # 720x400 @ 85Hz (VESA) hsync: 37.9kHz
    ModeLine "720x400" 35.5 720 756 828 936 400 401 404 446 -hsync +vsync
    # 640x480 @ 60Hz (Industry standard) hsync: 31.5kHz
    ModeLine "640x480" 25.2 640 656 752 800 480 490 492 525 -hsync -vsync
    # 640x480 @ 72Hz (VESA) hsync: 37.9kHz
    ModeLine "640x480" 31.5 640 664 704 832 480 489 491 520 -hsync -vsync
    # 640x480 @ 75Hz (VESA) hsync: 37.5kHz
    ModeLine "640x480" 31.5 640 656 720 840 480 481 484 500 -hsync -vsync
    # 640x480 @ 85Hz (VESA) hsync: 43.3kHz
    ModeLine "640x480" 36.0 640 696 752 832 480 481 484 509 -hsync -vsync
    # 800x600 @ 56Hz (VESA) hsync: 35.2kHz
    ModeLine "800x600" 36.0 800 824 896 1024 600 601 603 625 +hsync +vsync
    # 800x600 @ 60Hz (VESA) hsync: 37.9kHz
    ModeLine "800x600" 40.0 800 840 968 1056 600 601 605 628 +hsync +vsync
    # 800x600 @ 72Hz (VESA) hsync: 48.1kHz
    ModeLine "800x600" 50.0 800 856 976 1040 600 637 643 666 +hsync +vsync
    # 800x600 @ 75Hz (VESA) hsync: 46.9kHz
    ModeLine "800x600" 49.5 800 816 896 1056 600 601 604 625 +hsync +vsync
    # 800x600 @ 85Hz (VESA) hsync: 53.7kHz
    ModeLine "800x600" 56.3 800 832 896 1048 600 601 604 631 +hsync +vsync
    # 1024x768i @ 43Hz (industry standard) hsync: 35.5kHz
    ModeLine "1024x768" 44.9 1024 1032 1208 1264 768 768 776 817 +hsync +vsync Interlace
    # 1024x768 @ 60Hz (VESA) hsync: 48.4kHz
    ModeLine "1024x768" 65.0 1024 1048 1184 1344 768 771 777 806 -hsync -vsync
    # 1024x768 @ 70Hz (VESA) hsync: 56.5kHz
    ModeLine "1024x768" 75.0 1024 1048 1184 1328 768 771 777 806 -hsync -vsync
    # 1024x768 @ 75Hz (VESA) hsync: 60.0kHz
    ModeLine "1024x768" 78.8 1024 1040 1136 1312 768 769 772 800 +hsync +vsync
    # 1024x768 @ 85Hz (VESA) hsync: 68.7kHz
    ModeLine "1024x768" 94.5 1024 1072 1168 1376 768 769 772 808 +hsync +vsync
    # 1152x864 @ 75Hz (VESA) hsync: 67.5kHz
    ModeLine "1152x864" 108.0 1152 1216 1344 1600 864 865 868 900 +hsync +vsync
    # 1280x960 @ 60Hz (VESA) hsync: 60.0kHz
    ModeLine "1280x960" 108.0 1280 1376 1488 1800 960 961 964 1000 +hsync +vsync
    # 1280x960 @ 85Hz (VESA) hsync: 85.9kHz
    ModeLine "1280x960" 148.5 1280 1344 1504 1728 960 961 964 1011 +hsync +vsync
    # 1280x1024 @ 60Hz (VESA) hsync: 64.0kHz
    ModeLine "1280x1024" 108.0 1280 1328 1440 1688 1024 1025 1028 1066 +hsync +vsync
    # 1280x1024 @ 75Hz (VESA) hsync: 80.0kHz
    ModeLine "1280x1024" 135.0 1280 1296 1440 1688 1024 1025 1028 1066 +hsync +vsync
    # 1280x1024 @ 85Hz (VESA) hsync: 91.1kHz
    ModeLine "1280x1024" 157.5 1280 1344 1504 1728 1024 1025 1028 1072 +hsync +vsync
    # 1600x1200 @ 60Hz (VESA) hsync: 75.0kHz
    ModeLine "1600x1200" 162.0 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
    # 1600x1200 @ 65Hz (VESA) hsync: 81.3kHz
    ModeLine "1600x1200" 175.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
    # 1600x1200 @ 70Hz (VESA) hsync: 87.5kHz
    ModeLine "1600x1200" 189.0 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
    # 1600x1200 @ 75Hz (VESA) hsync: 93.8kHz
    ModeLine "1600x1200" 202.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
    # 1600x1200 @ 85Hz (VESA) hsync: 106.3kHz
    ModeLine "1600x1200" 229.5 1600 1664 1856 2160 1200 1201 1204 1250 +hsync +vsync
    # 1792x1344 @ 60Hz (VESA) hsync: 83.6kHz
    ModeLine "1792x1344" 204.8 1792 1920 2120 2448 1344 1345 1348 1394 -hsync +vsync
    # 1792x1344 @ 75Hz (VESA) hsync: 106.3kHz
    ModeLine "1792x1344" 261.0 1792 1888 2104 2456 1344 1345 1348 1417 -hsync +vsync
    # 1856x1392 @ 60Hz (VESA) hsync: 86.3kHz
    ModeLine "1856x1392" 218.3 1856 1952 2176 2528 1392 1393 1396 1439 -hsync +vsync
    # 1856x1392 @ 75Hz (VESA) hsync: 112.5kHz
    ModeLine "1856x1392" 288.0 1856 1984 2208 2560 1392 1393 1396 1500 -hsync +vsync
    # 1920x1440 @ 60Hz (VESA) hsync: 90.0kHz
    ModeLine "1920x1440" 234.0 1920 2048 2256 2600 1440 1441 1444 1500 -hsync +vsync
    # 1920x1440 @ 75Hz (VESA) hsync: 112.5kHz
    ModeLine "1920x1440" 297.0 1920 2064 2288 2640 1440 1441 1444 1500 -hsync +vsync
    # Additional modelines
    ModeLine "1800x1440" 230 1800 1896 2088 2392 1440 1441 1444 1490 +HSync +VSync
    ModeLine "1800x1440" 250 1800 1896 2088 2392 1440 1441 1444 1490 +HSync +VSync
    # Extended modelines with GTF timings
    # 640x480 @ 100.00 Hz (GTF) hsync: 50.90 kHz; pclk: 43.16 MHz
    ModeLine "640x480" 43.16 640 680 744 848 480 481 484 509 -HSync +Vsync
    # 768x576 @ 60.00 Hz (GTF) hsync: 35.82 kHz; pclk: 34.96 MHz
    ModeLine "768x576" 34.96 768 792 872 976 576 577 580 597 -HSync +Vsync
    # 768x576 @ 72.00 Hz (GTF) hsync: 43.27 kHz; pclk: 42.93 MHz
    ModeLine "768x576" 42.93 768 800 880 992 576 577 580 601 -HSync +Vsync
    # 768x576 @ 75.00 Hz (GTF) hsync: 45.15 kHz; pclk: 45.51 MHz
    ModeLine "768x576" 45.51 768 808 888 1008 576 577 580 602 -HSync +Vsync
    # 768x576 @ 85.00 Hz (GTF) hsync: 51.42 kHz; pclk: 51.84 MHz
    ModeLine "768x576" 51.84 768 808 888 1008 576 577 580 605 -HSync +Vsync
    # 768x576 @ 100.00 Hz (GTF) hsync: 61.10 kHz; pclk: 62.57 MHz
    ModeLine "768x576" 62.57 768 816 896 1024 576 577 580 611 -HSync +Vsync
    # 800x600 @ 100.00 Hz (GTF) hsync: 63.60 kHz; pclk: 68.18 MHz
    ModeLine "800x600" 68.18 800 848 936 1072 600 601 604 636 -HSync +Vsync
    # 1024x768 @ 100.00 Hz (GTF) hsync: 81.40 kHz; pclk: 113.31 MHz
    ModeLine "1024x768" 113.31 1024 1096 1208 1392 768 769 772 814 -HSync +Vsync
    # 1152x864 @ 60.00 Hz (GTF) hsync: 53.70 kHz; pclk: 81.62 MHz
    ModeLine "1152x864" 81.62 1152 1216 1336 1520 864 865 868 895 -HSync +Vsync
    # 1152x864 @ 85.00 Hz (GTF) hsync: 77.10 kHz; pclk: 119.65 MHz
    ModeLine "1152x864" 119.65 1152 1224 1352 1552 864 865 868 907 -HSync +Vsync
    # 1152x864 @ 100.00 Hz (GTF) hsync: 91.50 kHz; pclk: 143.47 MHz
    ModeLine "1152x864" 143.47 1152 1232 1360 1568 864 865 868 915 -HSync +Vsync
    # 1280x960 @ 72.00 Hz (GTF) hsync: 72.07 kHz; pclk: 124.54 MHz
    ModeLine "1280x960" 124.54 1280 1368 1504 1728 960 961 964 1001 -HSync +Vsync
    # 1280x960 @ 75.00 Hz (GTF) hsync: 75.15 kHz; pclk: 129.86 MHz
    ModeLine "1280x960" 129.86 1280 1368 1504 1728 960 961 964 1002 -HSync +Vsync
    # 1280x960 @ 100.00 Hz (GTF) hsync: 101.70 kHz; pclk: 178.99 MHz
    ModeLine "1280x960" 178.99 1280 1376 1520 1760 960 961 964 1017 -HSync +Vsync
    # 1280x1024 @ 100.00 Hz (GTF) hsync: 108.50 kHz; pclk: 190.96 MHz
    ModeLine "1280x1024" 190.96 1280 1376 1520 1760 1024 1025 1028 1085 -HSync +Vsync
    # 1400x1050 @ 60.00 Hz (GTF) hsync: 65.22 kHz; pclk: 122.61 MHz
    ModeLine "1400x1050" 122.61 1400 1488 1640 1880 1050 1051 1054 1087 -HSync +Vsync
    # 1400x1050 @ 72.00 Hz (GTF) hsync: 78.77 kHz; pclk: 149.34 MHz
    ModeLine "1400x1050" 149.34 1400 1496 1648 1896 1050 1051 1054 1094 -HSync +Vsync
    # 1400x1050 @ 75.00 Hz (GTF) hsync: 82.20 kHz; pclk: 155.85 MHz
    ModeLine "1400x1050" 155.85 1400 1496 1648 1896 1050 1051 1054 1096 -HSync +Vsync
    # 1400x1050 @ 85.00 Hz (GTF) hsync: 93.76 kHz; pclk: 179.26 MHz
    ModeLine "1400x1050" 179.26 1400 1504 1656 1912 1050 1051 1054 1103 -HSync +Vsync
    # 1400x1050 @ 100.00 Hz (GTF) hsync: 111.20 kHz; pclk: 214.39 MHz
    ModeLine "1400x1050" 214.39 1400 1512 1664 1928 1050 1051 1054 1112 -HSync +Vsync
    # 1600x1200 @ 100.00 Hz (GTF) hsync: 127.10 kHz; pclk: 280.64 MHz
    ModeLine "1600x1200" 280.64 1600 1728 1904 2208 1200 1201 1204 1271 -HSync +Vsync
    EndSection
    # Auto-generated by Archie mkxcfg
    Section "Device"
    Identifier "Card0"
    Driver "intel"
    VendorName "All"
    BoardName "All"
    EndSection
    Section "Screen"
    Identifier "Screen0"
    Device "Card0"
    Monitor "Monitor0"
    DefaultColorDepth 24
    SubSection "Display"
    Depth 1
    Modes "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 4
    Modes "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 8
    Modes "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 15
    Modes "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 16
    Modes "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 24
    Modes "1024x768" "800x600" "640x480"
    EndSubSection
    SubSection "Display"
    Depth 32
    Modes "1024x768" "800x600" "640x480"
    EndSubSection
    EndSection
    Section "DRI"
    Mode 0666
    EndSection

    I've tried that xorg in both kubuntu&Arch.
    It worked in kubuntu but not in Arch.
    I've tried alot of media players and both intel&vesa drivers.
    Tried Xgl (don't know if it's working) but there is no change.
    Maybe if the codecs are bad of the way the media players handles the files.
    I need help with this. Or else I can't live with arch.
    This is my xorg.conf atm:
    # xorg.conf (X.Org X Window System server configuration file)
    # This file was generated by dexconf, the Debian X Configuration tool, using
    # values from the debconf database.
    # Edit this file with caution, and see the xorg.conf manual page.
    # (Type "man xorg.conf" at the shell prompt.)
    # This file is automatically updated on xserver-xorg package upgrades *only*
    # if it has not been modified since the last upgrade of the xserver-xorg
    # package.
    # If you have edited this file but would like it to be automatically updated
    # again, run the following command:
    # sudo dpkg-reconfigure -phigh xserver-xorg
    Section "InputDevice"
    Identifier "Generic Keyboard"
    Driver "kbd"
    Option "XkbRules" "xorg"
    Option "XkbModel" "thinkpad60"
    Option "XkbLayout" "se"
    EndSection
    Section "InputDevice"
    Identifier "Configured Mouse"
    Driver "mouse"
    Option "CorePointer"
    EndSection
    Section "InputDevice"
    Identifier "Synaptics Touchpad"
    Driver "synaptics"
    Option "SendCoreEvents" "true"
    Option "Device" "/dev/psaux"
    Option "Protocol" "auto-dev"
    Option "HorizEdgeScroll" "0"
    EndSection
    Section "Device"
    Identifier "Configured Video Device"
    Boardname "intel"
    Busid "PCI:0:2:0"
    Driver "intel"
    Screen 0
    EndSection
    Section "Monitor"
    DisplaySize 245 184
    HorizSync 30-81
    Identifier "InternalLCD"
    ModelName "ThinkPad LCD 1024x768"
    Option "DPMS"
    VendorName "Lenovo"
    VertRefresh 60-75
    Modeline "1024x768" 69.71 1024 1080 1184 1344 768 769 772 798
    Gamma 1.0
    EndSection
    Section "Screen"
    Identifier "Default Screen"
    Monitor "Configured Monitor"
    Device "Configured Video Device"
    Defaultdepth 24
    SubSection "Display"
    Depth 24
    Virtual 1024 768
    Modes "1024x768"
    EndSubSection
    EndSection
    Section "ServerLayout"
    Identifier "Default Layout"
    screen 0 "Default Screen" 0 0
    Inputdevice "Synaptics Touchpad"
    EndSection
    Section "Module"
    Load "glx"
    Load "GLcore"
    Load "v4l"
    EndSection
    Section "device" #
    Identifier "device1"
    Boardname "intel"
    Busid "PCI:0:2:0"
    Driver "vesa"
    Screen 1
    EndSection
    Section "screen" #
    Identifier "screen1"
    Device "device1"
    Defaultdepth 24
    Monitor "monitor1"
    EndSection
    Section "monitor" #
    Identifier "monitor1"
    Gamma 1.0
    EndSection
    Section "device" #
    Identifier "device2"
    Boardname "VESA driver (generic)"
    Busid "PCI:0:2:1"
    Driver "vesa"
    Screen 0
    EndSection
    Section "screen" #
    Identifier "screen2"
    Device "device2"
    Defaultdepth 24
    Monitor "monitor2"
    EndSection
    Section "monitor" #
    Identifier "monitor2"
    Gamma 1.0
    EndSection
    Section "ServerFlags"
    EndSection
    Last edited by bredin (2008-08-03 19:53:55)

  • Please help with BufferedImage

    hi,
    I'm making a space invaders game and need some help with image buffering. I so far have classes for:
    ImageHandler - which should handle the loading of images
    GameEntities - which contains methods for the ship movements etc
    AlienEntitiy - which will draw an alien and have methods for its movement, shooting etc.
    SpaceInvaders - which extends Canvas and handles the main game
    The problem is that when I create a new alien which has a call to the setImageName(String name) method, which should call the getImage(String imageName) method in ImageHandler, a null pointer exception is thrown.
    I have searched my code and can't trace the error (by the way, this is the first ime I've used buffered image). Can someone PLEASE help.
    Here's my code:
    package InvadersGame;
    import java.awt.image.BufferedImage;
    import java.io.PrintStream;
    import java.util.HashMap;
    import javax.imageio.ImageIO;
    public class ImageHandler
        private HashMap images;
        public ImageHandler()
            images = new HashMap();
        public BufferedImage loadImage(String name)
            try
                java.net.URL url = null;
                url = getClass().getResource(name);
                return ImageIO.read(url);
            catch(Exception e)
                System.exit(0);
                System.out.println("image not found");
                return null;
        public BufferedImage getImage(String name)
            BufferedImage image = (BufferedImage)images.get(name);
            return image;
        public HashMap getImages()
            return images;
        public void setImages(HashMap val)
            images = val;
    }and
    package InvadersGame;
    import java.awt.Graphics;
    import java.awt.*;
    import java.awt.image.BufferedImage;
    import java.awt.Graphics2D;
    public class GameEntities {
        private double x, y;
        private int width, height;
        private String imageName;
        private boolean deletionMark = false;
        private SpaceInvaders invaders;
        private ImageHandler imageHandler;
        public GameEntities(SpaceInvaders invaders)
            this.invaders = invaders;
            imageHandler = invaders.getImageHandler();
        public double getX()
            return x;
        public double getY()
            return y;
        public int getWidth()
            return width;
        public int getHeight()
            return height;
        public Rectangle getBounds()
            return new Rectangle((int)x, (int)y, width, height);
        public void setX(int x)
            this.x = x;
        public void setY(int y)
            this.y = y;
        public void setWidth(int width)
            this.width = width;
        public void setHeight(int height)
            this.height = height;
        public boolean deletionMarked()
            return deletionMark;
        public void setDeletionMarkedTrue(boolean value)
            deletionMark = value;
       public String getImageName()
            return imageName;
        public void setImageName(String name)
            imageName = name;
            BufferedImage image = imageHandler.getImage(imageName);
            height = image.getHeight();
            width = image.getWidth();
        public boolean collidesWith(GameEntities other)
            Rectangle thisEntity = new Rectangle();
            Rectangle otherEntity = new Rectangle();       
            thisEntity.setBounds((int)this.getX(), (int)this.getY(), this.getWidth(), this.getHeight());
            otherEntity.setBounds((int)other.getX(),(int)other.getY(), other.getWidth(), other.getHeight());
            return thisEntity.intersects(otherEntity);
        public void move(){}
        public void paint(Graphics2D g)
             g.drawImage(imageHandler.getImage(imageName), (int)x, (int)y, invaders);
    }and
    package InvadersGame;
    import java.awt.*;
    import java.awt.geom.*;
    import java.awt.event.*;
    import java.awt.Graphics2D;
    import java.lang.Math;
    import java.util.Random;
    public class AlienEntity extends GameEntities {
        double x, y;
        int alienType;
        int speedx = 2;
        int speedy = 2;
        public AlienEntity(SpaceInvaders invaders)
            super(invaders); 
            setImageName("alien4.gif");
        public void move()
            y = y + speedy;      
    }and finally..
    package InvadersGame;
    import javax.swing.*;
    import java.awt.*;
    import java.awt.event.*;
    import java.awt.Graphics2D;
    import java.awt.geom.*;
    import java.util.ArrayList;
    import java.util.Random;
    import java.awt.image.BufferStrategy;
    public class SpaceInvaders extends Canvas{
        JPanel panel;
        //AlienEntity al, al2;
        Graphics2D g2;
        boolean gameRunning = true;
        ArrayList<GameEntities> entitiesList;
        AnimationThread thread;
        AlienEntity alien;
        private BufferStrategy buffer;
        ImageHandler imageHandler;
        class AnimationThread extends Thread
            public void run()
                while(true)
                    //paintAlien();
                    try
                        sleep(50);
                    catch(InterruptedException e){}
        public SpaceInvaders()
            super();
            imageHandler = new ImageHandler();
            JFrame window = new JFrame("Space Invaders");
            JPanel panel = (JPanel)window.getContentPane();
            setBounds(0, 0, 800, 600);
            panel.add(this);
            window.setBounds(0, 0, 800, 600);
            window.setVisible(true);         
            window.addWindowListener(new WindowAdapter()
                public void windowClosing(WindowEvent e)
                    System.exit(0);
            setFocusable(true);
            this.createBufferStrategy(2);
            buffer = getBufferStrategy();
            thread = new AnimationThread();  
           paintAlien();
        public void paintAlien()
            Graphics2D g = (Graphics2D)buffer.getDrawGraphics();
            g.setColor(Color.black);
            g.fillRect(0, 0, getWidth(), getHeight());
            alien = new AlienEntity(this);
            alien.paint(g);
            buffer.show();
        public void setBufferstrategy(BufferStrategy buffer)
            buffer = buffer;
        public ImageHandler getImageHandler()
            return imageHandler;
        public static void main(String[] args)
            SpaceInvaders canvas = new SpaceInvaders();  
            canvas.thread.start();
    }Can someone please take the time an give me some pointers.
    Cheers

    I've tracked the problem to this bit of the code in the ImageHandler class:
    public BufferedImage loadImage(String name)
            try
                java.net.URL url = null;
                url = getClass().getResource(name);
                System.out.println(url); //to check whether the image was found
                return ImageIO.read(url);           
            catch(Exception e)
                System.exit(0);
                System.out.println("image not found");
                return null;
        For some reason the url = getClass().getResource(name); equals null even though the name I supply as an argument is exactly the same as the file name (alien4.gif).
    I'm not too sure whether the problem's with my code or the way netbeans is setup. Can someone please help.

  • Help with Defining a Class

    I wrote a program that reads files and parses the contents. This information is stored in a vector and then this vector is stored in another vector.
    This is a simplified version of the code.
    Vector Row = new Vector();
    Vector Field = new Vector();
    Field.addElement("Date");
    Field.addElement("Title");
    Field.addElement("Version");
    Row.addElement(Field);How can I do this by defining a class? I don't have to use a Vector for the Field information. ArrayList will do the job. I want to be able to store the information that I parse from the fill using something like:
    myDocument Fields = new myDocument;
    Fields.addDate("Date");
    Fields.addTitle("Title");
    etc...
    Row.addElement(Fields);All the information parsed out is a String. When I used the .addDate, it should convert the String into a Date.
    .addVersion would convert the String to an integer.
    This class stuff sure is confusing.
    I think I need to do something like:
    class myDocument extends ArrayList {
         Date myDate;
         String myTitle;
         int myVersion;
    public myDocument() {
    /code                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    That does help. I wasn't sure if I was on the right track with how to define the class. I added some comments to the code below. Do my comments make sense? Do I understand the terminology and flow of this class?
    So my class would look like this:
    class myDocument extends HashMap{
         Date myDate;  //these are called class variables???
         String myTitle;
         int myVersion;
    public addDate(String dateString) {
          SimpleDateFormat dtFormat = new SimpleDateFormat("MM/dd/yyyy");
          myDate = dtFormat.parse(dateString);
          this.put("Data", myDate);
    public addTitle(String titleString) {
          myTitle = titleString;  //Don't think I need this. Can just this.put("Title", titleString);???
          this.put("Title", myTitle);
    public addVersion(String versionString) {
          int myVersion = Integer.parseInt(versionString);
          this.put("Version", myVersion);
    public myDocument() { //constructor???  Do nothing in here because I am creating a simple HashMap???
    }The program would call the class like this:???
    Vector Row = new Vector();
    myDocument Field = new myDocument(); //This creates a Field object that really is a HashMap with some new methods???
    Field.addDate(parsedString);// Calls the .addDate method in the myDocument class;  In the method, this.put would be the same as Field.put if Field was a HashMap not a myDocument???
    Field.addVersion(parsedString);
    Row.addElement(Field); // Store the new class in a Vector called Row

  • Help with HP Laser Printer 1200se

    HP Support Line,
    Really need your assistance.  I have tried both contacting HP by phone (told they no longer support our printer via phone help), the tech told me that I needed to contact HP by e-mail for assistance.   I then sent an e-mail for assistance and got that reply today, the reply is as follows  "Randall, unfortunately, HP does not offer support via e-mail for your product.  However many resources are available on the HP web site that may provide the answer to your inquiry.  Support is also available via telephone.  A list of technical support numbers can be round at the following URL........."  The phone numbers listed are the ones I called and the ones that told me I needed to contact the e-mail support for help.
    So here I am looking for your help with my issue.
    We just bought a new HP Pavillion Slimline Desk Top PC (as our 6 year old HP Pavillion PC died on us).  We have 2 HP printers, one (an all-in-one type printer, used maily for copying and printing color, when needed) is connected and it is working fine with the exception of the scanning option (not supported by Windows 7).  However we use our Laser Printer for all of our regular prining needs.  This is the HP LaserPrinter 1200se, which is about 6 years old but works really well.  For this printer we currently only have a parallel connection type cord and there is not a parallel port on the Slimline HP PC.  The printer also has the option to connedt a USB cable (we do not currently have this type of cable).
    We posed the following two questions:
    1.  Is the Laser Jet 1200se compatible with Windows 7?
    and if this is the case
    2.  Can we purchase either a) a USC connection cord (generic or do we need a printer specific cord)? or b) is there there a printer cable converter adapater to attach to our parallel cable to convert to a USB connection?
    We do not want to purchase the USB cable if Windows 7 will not accept the connection, or if doing this will harm the PC.
    We really would appreciate any assitance that you might give us.
    Thank you,
    Randy and Leslie Gibson

    Sorry, both cannot be enabled by design.  That said, devices on a network do not care how others are connected.  You can print from a wireless connection to a wired (Ethernet) printer and v/v.
    Say thanks by clicking "Kudos" "thumbs up" in the post that helped you.
    I am employed by HP

Maybe you are looking for

  • IPod touch Mail crash

    I'm having trouble with my iPod touch and the January Software Update. I had to restore my iPod a few days ago and now every time that I open Mail, it crashes. Is there a way to fix this, possible without having to restore my iPod again?

  • Final Cut crash on 'Log and Capture' selection

    Hi guys, So I have a BlackMagic Decklink Extreme card installed, and hooked up to a Sony J-3 DigiBeta Deck. When I attempt to 'log and capture' final cut crashes before the capture window pops up. This happens on all setup's (10-bit/8-bit/JPEG) when

  • Skip check no. in Automatic payment program F110

    Dear Gurus, I am facing problem while printing chek from F110. Actually system is skipping the check no. from check lot and automatically voids the check no. Ex. 1st system printing the check no. 10000 correctly but same time automatically void the n

  • Problem in BDC for MM02

    Hi, I am working on a BDC for the tcode MM02 in which i have to insert the Inspection Type in the Quality Managment View of materials. i had executed the code which was working fine,but when i executed it ,it remains on the same screen where the afte

  • Calculating count from two fact tables

    Hi Guys, My requirement, i have two fact table F1, F2 connected with a D1 dimension table, all table connected with a id column F1 ---------D1------------F2 n 1 1 n i want to find out the distinct count from Fact F1 where the value also present in F2